更改产品获取数据

This commit is contained in:
wuweihua
2026-10-20 18:43:33 +08:00
parent 7655713319
commit 66d95a0da9
9 changed files with 38 additions and 7 deletions
@@ -75,6 +75,10 @@ public class PrcOrderBillExt implements Serializable
private Integer payType;
private String lineCode;
private String lineName;
/** 上游产品代码 PRODUCT_CODE */
private String productCode;
/** 上游产品名称 PRODUCT_NAME */
private String productName;
private String productType;
private String lineType;
private String cargoName;
@@ -36,6 +36,8 @@ public class TmsPriceBillRequest extends TmsPriceQuoteRequest
/** 客服员编码 */
private String serviceManCode;
private String customerName;
/** From upstream LINE_NAME (fallback PRODUCT_NAME). */
private String productName;
private Integer pieces;
private BigDecimal actualWeight;
/** Upstream TAB_ORDER.WEIGHT (receive weight) */
@@ -81,6 +81,8 @@ public final class OracleOrderBillExtFiller
ext.setPayType(integer(row, "PAY_TYPE"));
ext.setLineCode(str(row, "LINE_CODE"));
ext.setLineName(str(row, "LINE_NAME"));
ext.setProductCode(str(row, "PRODUCT_CODE"));
ext.setProductName(str(row, "PRODUCT_NAME"));
ext.setProductType(str(row, "PRODUCT_TYPE"));
ext.setLineType(str(row, "LINE_TYPE"));
ext.setCargoName(str(row, "CARGO_NAME"));
@@ -35,13 +35,14 @@ public class OracleOrderBillMapper
req.setUpstreamRow(row);
req.setCustomerCode(firstStr(row, "CUSTOMER_CODE"));
req.setCustomerName(firstStr(row, "CUSTOMER_NAME"));
String product = firstStr(row, "PRODUCT_CODE");
// Map LINE_CODE/LINE_NAME to product_code/product_name; fallback PRODUCT_*.
String product = firstStr(row, "LINE_CODE", "PRODUCT_CODE");
if (StringUtils.isEmpty(product))
{
product = defaultProductCode;
}
// Keep upstream product code; package miss then maps via product_code_mapping in doQuote.
req.setProductCode(product);
req.setProductName(firstStr(row, "LINE_NAME", "PRODUCT_NAME"));
req.setCountryCode(firstStr(row, "COUNTRY"));
String countryName = firstStr(row, "COUNTRY_NAME", "COUNTRY_EINGTH_NAME", "COUNTRY");
req.setCountryName(countryName);
@@ -2492,6 +2492,7 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
bill.setPickupDate(request.getPickupDate());
bill.setOrderRemark(request.getOrderRemark());
bill.setProductCode(request.getProductCode());
bill.setProductName(request.getProductName());
bill.setCountryCode(request.getCountryCode());
bill.setCountryName(request.getCountryName());
bill.setWeight(request.getWeight());
@@ -388,7 +388,15 @@ public class TmsPriceQuoteServiceImpl implements ITmsPriceQuoteService
// Charge weight keeps 3 decimals; freight unit price keeps 2 (see buildFromRates).
BigDecimal weight = request.getWeight().setScale(3, RoundingMode.HALF_UP);
String destPostcode = emptyToNull(request.getDestPostcode());
String productName = resolveProductName(productCode, bizDate);
String productName = null;
if (request instanceof TmsPriceBillRequest)
{
productName = emptyToNull(((TmsPriceBillRequest) request).getProductName());
}
if (StringUtils.isEmpty(productName))
{
productName = resolveProductName(productCode, bizDate);
}
List<PrcCustomerPriceSet> binds;
if (StringUtils.isNotEmpty(request.getCustomerCode()))