fix: print overseas warehouse address on BOL
This commit is contained in:
+10
-3
@@ -102,9 +102,12 @@ public class DispatchBolPrintService {
|
|||||||
List<String> parts = new ArrayList<>();
|
List<String> parts = new ArrayList<>();
|
||||||
add(parts, address.addressLine1());
|
add(parts, address.addressLine1());
|
||||||
add(parts, address.addressLine2());
|
add(parts, address.addressLine2());
|
||||||
add(parts, address.city());
|
String city = trimmed(address.city());
|
||||||
add(parts, address.stateProvince());
|
String state = trimmed(address.stateProvince());
|
||||||
add(parts, address.postalCode());
|
String postalCode = trimmed(address.postalCode());
|
||||||
|
String region = city == null ? state : state == null ? city : city + ", " + state;
|
||||||
|
if (postalCode != null) region = region == null ? postalCode : region + " " + postalCode;
|
||||||
|
add(parts, region);
|
||||||
add(parts, address.countryCode());
|
add(parts, address.countryCode());
|
||||||
return parts.isEmpty() ? "—" : String.join(", ", parts);
|
return parts.isEmpty() ? "—" : String.join(", ", parts);
|
||||||
} catch (FeignException exception) {
|
} catch (FeignException exception) {
|
||||||
@@ -116,6 +119,10 @@ public class DispatchBolPrintService {
|
|||||||
if (value != null && !value.isBlank()) parts.add(value.strip());
|
if (value != null && !value.isBlank()) parts.add(value.strip());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String trimmed(String value) {
|
||||||
|
return value == null || value.isBlank() ? null : value.strip();
|
||||||
|
}
|
||||||
|
|
||||||
static int pageCount(int rowCount) {
|
static int pageCount(int rowCount) {
|
||||||
if (rowCount <= FIRST_PAGE_ROWS) return 1;
|
if (rowCount <= FIRST_PAGE_ROWS) return 1;
|
||||||
return 1 + (rowCount - FIRST_PAGE_ROWS + CONTINUATION_PAGE_ROWS - 1) / CONTINUATION_PAGE_ROWS;
|
return 1 + (rowCount - FIRST_PAGE_ROWS + CONTINUATION_PAGE_ROWS - 1) / CONTINUATION_PAGE_ROWS;
|
||||||
|
|||||||
+1
-1
@@ -73,6 +73,6 @@ class DispatchBolPrintServiceTest {
|
|||||||
verify(print).generateDispatchBol(eq("internal-test-token"), eq("request-1"), request.capture());
|
verify(print).generateDispatchBol(eq("internal-test-token"), eq("request-1"), request.capture());
|
||||||
assertThat(request.getValue().documents()).singleElement().satisfies(document ->
|
assertThat(request.getValue().documents()).singleElement().satisfies(document ->
|
||||||
assertThat(document.shipFromAddress()).isEqualTo(
|
assertThat(document.shipFromAddress()).isEqualTo(
|
||||||
"10767 7th Street, Rancho Cucamonga, California, 91730, US"));
|
"10767 7th Street, Rancho Cucamonga, California 91730, US"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -95,7 +95,19 @@ assert.deepEqual(fixedWarehouses.map((row) => row.timezone), [
|
|||||||
'UTC-8',
|
'UTC-8',
|
||||||
'UTC-5',
|
'UTC-5',
|
||||||
])
|
])
|
||||||
assert.ok(fixedWarehouses.every((row) => row.address_line1.includes('待维护') || row.address_line1.includes('pending maintenance')))
|
assert.deepEqual(
|
||||||
|
fixedWarehouses.filter((row) => row.warehouse_type === 'OVERSEAS').map((row) => ({
|
||||||
|
warehouse_code: row.warehouse_code,
|
||||||
|
state_province: row.state_province,
|
||||||
|
city: row.city,
|
||||||
|
postal_code: row.postal_code,
|
||||||
|
address_line1: row.address_line1,
|
||||||
|
})),
|
||||||
|
[
|
||||||
|
{ warehouse_code: 'US-LAX-01', state_province: 'California', city: 'Rancho Cucamonga', postal_code: '91730', address_line1: '10767 7th Street' },
|
||||||
|
{ warehouse_code: 'US-NYC-01', state_province: 'New Jersey', city: 'Edison', postal_code: '08817', address_line1: 'Door 13-14, 75 Carter Dr' },
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
assert.match(sql, /CREATE TEMPORARY TABLE tmp_wh_fixed_platform_warehouse/)
|
assert.match(sql, /CREATE TEMPORARY TABLE tmp_wh_fixed_platform_warehouse/)
|
||||||
assert.match(sql, /'CN-YIWU-01','义乌仓','DOMESTIC','CN','UTC\+8'/)
|
assert.match(sql, /'CN-YIWU-01','义乌仓','DOMESTIC','CN','UTC\+8'/)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
warehouse_id_seed,address_id_seed,warehouse_code,warehouse_name,warehouse_type,country_code,timezone,state_province,city,postal_code,address_line1,note
|
warehouse_id_seed,address_id_seed,warehouse_code,warehouse_name,warehouse_type,country_code,timezone,state_province,city,postal_code,address_line1,note
|
||||||
193000000000200001,193000000000300001,CN-YIWU-01,义乌仓,DOMESTIC,CN,UTC+8,浙江省,义乌市,322000,义乌仓通用地址待维护,按用户确认生成通用格式;后续运营可维护真实地址。
|
193000000000200001,193000000000300001,CN-YIWU-01,义乌仓,DOMESTIC,CN,UTC+8,浙江省,义乌市,322000,义乌仓通用地址待维护,按用户确认生成通用格式;后续运营可维护真实地址。
|
||||||
193000000000200002,193000000000300002,CN-DONGGUAN-01,东莞仓,DOMESTIC,CN,UTC+8,广东省,东莞市,523000,东莞仓通用地址待维护,按用户确认生成通用格式;后续运营可维护真实地址。
|
193000000000200002,193000000000300002,CN-DONGGUAN-01,东莞仓,DOMESTIC,CN,UTC+8,广东省,东莞市,523000,东莞仓通用地址待维护,按用户确认生成通用格式;后续运营可维护真实地址。
|
||||||
193000000000200003,193000000000300003,US-LAX-01,洛杉矶仓,OVERSEAS,US,UTC-8,CA,Los Angeles,90001,Los Angeles warehouse generic address pending maintenance,按用户确认生成通用格式;后续运营可维护真实地址。
|
193000000000200003,193000000000300003,US-LAX-01,洛杉矶仓,OVERSEAS,US,UTC-8,California,Rancho Cucamonga,91730,10767 7th Street,用户确认的真实海外仓地址。
|
||||||
193000000000200004,193000000000300004,US-NYC-01,纽约仓,OVERSEAS,US,UTC-5,NY,New York,10001,New York warehouse generic address pending maintenance,按用户确认生成通用格式;后续运营可维护真实地址。
|
193000000000200004,193000000000300004,US-NYC-01,纽约仓,OVERSEAS,US,UTC-5,New Jersey,Edison,08817,"Door 13-14, 75 Carter Dr",用户确认的真实海外仓地址。
|
||||||
|
|||||||
|
Reference in New Issue
Block a user