支持按提货时间重新计费

This commit is contained in:
wuweihua
2026-10-23 17:36:03 +08:00
parent dac0c0f252
commit 48d938c4f7
3 changed files with 32 additions and 11 deletions
@@ -28,4 +28,6 @@ public class LocalRebillRequest implements Serializable
private String creditArrearsStatus;
private String beginBizDate;
private String endBizDate;
private String beginPickupDate;
private String endPickupDate;
}
@@ -1007,16 +1007,24 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
: request.getCountryCode().trim().toUpperCase();
String beginBizDate = StringUtils.isEmpty(request.getBeginBizDate()) ? null : request.getBeginBizDate().trim();
String endBizDate = StringUtils.isEmpty(request.getEndBizDate()) ? null : request.getEndBizDate().trim();
boolean hasFilter = (orderNos != null && !orderNos.isEmpty())
String beginPickupDate = StringUtils.isEmpty(request.getBeginPickupDate()) ? null
: request.getBeginPickupDate().trim();
String endPickupDate = StringUtils.isEmpty(request.getEndPickupDate()) ? null
: request.getEndPickupDate().trim();
boolean hasIdentifier = (orderNos != null && !orderNos.isEmpty())
|| (trackingNos != null && !trackingNos.isEmpty())
|| (transferNos != null && !transferNos.isEmpty())
|| (orderIdentifiers != null && !orderIdentifiers.isEmpty())
|| (customerCodes != null && !customerCodes.isEmpty())
|| (productCodes != null && !productCodes.isEmpty())
|| (orderIdentifiers != null && !orderIdentifiers.isEmpty());
boolean hasCustomer = customerCodes != null && !customerCodes.isEmpty();
boolean hasBizDate = StringUtils.isNotEmpty(beginBizDate) && StringUtils.isNotEmpty(endBizDate);
boolean hasPickupDate = StringUtils.isNotEmpty(beginPickupDate) && StringUtils.isNotEmpty(endPickupDate);
boolean hasOtherFilter = (productCodes != null && !productCodes.isEmpty())
|| StringUtils.isNotEmpty(creditArrearsStatus)
|| StringUtils.isNotEmpty(countryCode)
|| StringUtils.isNotEmpty(beginBizDate)
|| StringUtils.isNotEmpty(endBizDate);
|| StringUtils.isNotEmpty(countryCode);
// Same gate as order-list UI: identifiers, or customer + (bizDate or pickupDate).
boolean hasFilter = hasIdentifier
|| (hasCustomer && (hasBizDate || hasPickupDate))
|| hasOtherFilter;
if (!hasFilter)
{
throw new ServiceException(MessageUtils.message("price.bill.recalc.filterRequired"));
@@ -1039,6 +1047,14 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
{
query.getParams().put("endBizDate", endBizDate);
}
if (beginPickupDate != null)
{
query.getParams().put("beginPickupDate", beginPickupDate);
}
if (endPickupDate != null)
{
query.getParams().put("endPickupDate", endPickupDate);
}
return query;
}