订单比对加上状态
This commit is contained in:
+15
-2
@@ -497,6 +497,13 @@ public class TmsPriceQuoteServiceImpl implements ITmsPriceQuoteService
|
||||
productCode, productName, cc, cn, zone.zoneCode, weight, bizDate);
|
||||
if (hit != null)
|
||||
{
|
||||
// Billing requires product catalog price (产品价); package hit alone is not enough.
|
||||
if (request instanceof TmsPriceBillRequest && !hasProductCatalogPrice(catalog))
|
||||
{
|
||||
missCode = Math.max(missCode,
|
||||
diagnoseCatalogMiss(productCode, cc, cn, zone.zoneCode, bizDate));
|
||||
continue;
|
||||
}
|
||||
stampRequestMeta(request, hit);
|
||||
return hit;
|
||||
}
|
||||
@@ -504,7 +511,7 @@ public class TmsPriceQuoteServiceImpl implements ITmsPriceQuoteService
|
||||
}
|
||||
else if (TYPE_DISCOUNT.equals(setType))
|
||||
{
|
||||
if (catalog == null)
|
||||
if (!hasProductCatalogPrice(catalog))
|
||||
{
|
||||
missCode = Math.max(missCode, diagnoseCatalogMiss(productCode, cc, cn, zone.zoneCode, bizDate));
|
||||
continue;
|
||||
@@ -747,7 +754,13 @@ public class TmsPriceQuoteServiceImpl implements ITmsPriceQuoteService
|
||||
return out;
|
||||
}
|
||||
|
||||
/** Catalog match for product_amount / DISCOUNT base; null is allowed for FIXED sales. */
|
||||
/** True when product catalog row has a usable freight price (产品价). */
|
||||
private static boolean hasProductCatalogPrice(BmsProductCountry catalog)
|
||||
{
|
||||
return catalog != null && catalog.getFreightPrice() != null;
|
||||
}
|
||||
|
||||
/** Catalog match for product_amount / DISCOUNT base; quote FIXED may still hit without catalog. */
|
||||
private BmsProductCountry softMatchCatalog(String productCode, String countryCode, String countryName,
|
||||
String zoneCode, BigDecimal weight, Date bizDate, PrcZone resolvedZone)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user