平台内部配送费的逻辑新增。日志打印

This commit is contained in:
Jack 2025-12-11 17:49:16 +08:00
parent 78dce9f77b
commit c96983ec72
3 changed files with 49 additions and 20 deletions

View File

@ -417,7 +417,6 @@ public class AccountBaseConfigServiceImpl extends BaseServiceImpl<AccountBaseCon
// 调用通用计算方法 // 调用通用计算方法
Integer innerDeliveryFee = calculateInnerMinDeliveryFee( Integer innerDeliveryFee = calculateInnerMinDeliveryFee(
args.getStore_id(), args.getStore_id(),
args.getDelivery_type_id(),
args.getDa_longitude(), args.getDa_longitude(),
args.getDa_latitude(), args.getDa_latitude(),
args.getOrder_weight_gram(), args.getOrder_weight_gram(),
@ -451,6 +450,9 @@ public class AccountBaseConfigServiceImpl extends BaseServiceImpl<AccountBaseCon
public Integer getInnerMinDeliveryFee(Integer deliveryTypeId, Integer storeId, String orderLongitude, public Integer getInnerMinDeliveryFee(Integer deliveryTypeId, Integer storeId, String orderLongitude,
String orderLatitude, Integer orderWeightGram, BigDecimal orderProductAmount, String orderLatitude, Integer orderWeightGram, BigDecimal orderProductAmount,
BigDecimal orderDiscountAmount, BigDecimal orderPayAmount) { BigDecimal orderDiscountAmount, BigDecimal orderPayAmount) {
log.debug("[内部配送费] 计算开始deliveryTypeId: {}, storeId: {}, orderLongitude: {}, orderLatitude: {}, orderWeightGram: {}, orderProductAmount: {}, orderDiscountAmount: {}, orderPayAmount: {}",
deliveryTypeId, storeId, orderLongitude, orderLatitude, orderWeightGram, orderProductAmount, orderDiscountAmount, orderPayAmount);
// 参数校验 // 参数校验
if (deliveryTypeId == null || storeId == null) { if (deliveryTypeId == null || storeId == null) {
log.warn("[内部配送费] 参数校验失败deliveryTypeId: {}storeId: {}", deliveryTypeId, storeId); log.warn("[内部配送费] 参数校验失败deliveryTypeId: {}storeId: {}", deliveryTypeId, storeId);
@ -467,7 +469,6 @@ public class AccountBaseConfigServiceImpl extends BaseServiceImpl<AccountBaseCon
// 调用通用计算方法 // 调用通用计算方法
Integer innerDeliveryFee = calculateInnerMinDeliveryFee( Integer innerDeliveryFee = calculateInnerMinDeliveryFee(
storeId, storeId,
deliveryTypeId,
orderLongitude, orderLongitude,
orderLatitude, orderLatitude,
orderWeightGram, orderWeightGram,
@ -488,7 +489,6 @@ public class AccountBaseConfigServiceImpl extends BaseServiceImpl<AccountBaseCon
* 通用内部最低配送费计算方法 * 通用内部最低配送费计算方法
* *
* @param storeId 店铺ID * @param storeId 店铺ID
* @param deliveryTypeId 配送方式ID
* @param orderLongitude 订单经度 * @param orderLongitude 订单经度
* @param orderLatitude 订单纬度 * @param orderLatitude 订单纬度
* @param orderWeightGram 订单重量() * @param orderWeightGram 订单重量()
@ -497,7 +497,7 @@ public class AccountBaseConfigServiceImpl extends BaseServiceImpl<AccountBaseCon
* @param orderPayAmount 订单支付金额 * @param orderPayAmount 订单支付金额
* @return 内部配送费(单位 : ) * @return 内部配送费(单位 : )
*/ */
private Integer calculateInnerMinDeliveryFee(Integer storeId, Integer deliveryTypeId, String orderLongitude, private Integer calculateInnerMinDeliveryFee(Integer storeId, String orderLongitude,
String orderLatitude, Integer orderWeightGram, BigDecimal orderProductAmount, String orderLatitude, Integer orderWeightGram, BigDecimal orderProductAmount,
BigDecimal orderDiscountAmount, BigDecimal orderPayAmount) { BigDecimal orderDiscountAmount, BigDecimal orderPayAmount) {
// 根据配置计算平台配送费 // 根据配置计算平台配送费

View File

@ -768,7 +768,7 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
throw new ApiException(I18nUtil._("无该订单访问权限!")); throw new ApiException(I18nUtil._("无该订单访问权限!"));
} }
// 是否禁止退款 // 订单是否禁止退款
int isOrderDenyReturn = shopOrderReturnService.isOrderDenyReturn(order_id) ? 1 : 2; int isOrderDenyReturn = shopOrderReturnService.isOrderDenyReturn(order_id) ? 1 : 2;
data.put("is_deny_return", isOrderDenyReturn); data.put("is_deny_return", isOrderDenyReturn);
@ -963,8 +963,8 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
item_row.put("product_number", product_number); item_row.put("product_number", product_number);
} }
// 不支持退货 // 订单是否禁止退货
is_denyreturn = shopOrderReturnService.ifDenyReturn(order_item_id); is_denyreturn = shopOrderReturnService.isOrderDenyReturn(order_id); //shopOrderReturnService.ifDenyReturn(order_item_id);
item_row.put("contains", is_denyreturn); item_row.put("contains", is_denyreturn);
item_row.put("is_denyreturn", is_denyreturn); item_row.put("is_denyreturn", is_denyreturn);
@ -7865,6 +7865,8 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
String longitude = Convert.toStr(address.get("ud_longitude")); String longitude = Convert.toStr(address.get("ud_longitude"));
String latitude = Convert.toStr(address.get("ud_latitude")); String latitude = Convert.toStr(address.get("ud_latitude"));
log.info("平台内部配送费计算:经纬度:{}", longitude + ":" + latitude);
// 检查经纬度是否有效 // 检查经纬度是否有效
if (StrUtil.isNotBlank(longitude) && StrUtil.isNotBlank(latitude)) { if (StrUtil.isNotBlank(longitude) && StrUtil.isNotBlank(latitude)) {
// 平台最低配送费单位 // 平台最低配送费单位
@ -8419,7 +8421,8 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
Integer payment_type_id = Convert.toInt(order_info_row.get("payment_type_id")); Integer payment_type_id = Convert.toInt(order_info_row.get("payment_type_id"));
Integer order_is_paid = Convert.toInt(order_info_row.get("order_is_paid")); Integer order_is_paid = Convert.toInt(order_info_row.get("order_is_paid"));
boolean is_denyreturn = shopOrderReturnService.ifDenyReturn(Convert.toLong(order_info_row.get("order_item_id"))); // 订单是否禁止退货
boolean is_denyreturn = shopOrderReturnService.isOrderDenyReturn(Convert.toStr(order_info_row.get("order_id"))); //shopOrderReturnService.ifDenyReturn(Convert.toLong(order_info_row.get("order_item_id")));
order_info_row.put("if_buyer_cancel", isOrderCancelable(order_state_id, order_is_paid) || !is_denyreturn); order_info_row.put("if_buyer_cancel", isOrderCancelable(order_state_id, order_is_paid) || !is_denyreturn);
order_info_row.put("if_logistics", ifLogistics(order_state_id)); order_info_row.put("if_logistics", ifLogistics(order_state_id));
order_info_row.put("order_shipping_fee", order_data_row.get("order_shipping_fee")); order_info_row.put("order_shipping_fee", order_data_row.get("order_shipping_fee"));

View File

@ -2693,26 +2693,52 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
* 若商品索引为空抛出异常 * 若商品索引为空抛出异常
* 调用另一个重载方法 ifDenyReturn(...) 进行具体的退货规则判断 * 调用另一个重载方法 ifDenyReturn(...) 进行具体的退货规则判断
* *
* @param order_item_id * @param order_item_id 订单商品ID
* @return * @return 是否禁止退货
*/ */
@Override @Override
public boolean ifDenyReturn(Long order_item_id) { public boolean ifDenyReturn(Long order_item_id) {
ShopOrderItem shopOrderItem = shopOrderItemService.get(order_item_id); // 参数校验
if (shopOrderItem == null) { if (order_item_id == null) {
throw new ApiException(I18nUtil._("此订单商品订单数据有误!")); logger.warn("[禁止退货检查] 订单商品ID为空");
return true;
} }
String order_id = shopOrderItem.getOrder_id(); try {
ShopOrderItem shopOrderItem = shopOrderItemService.get(order_item_id);
if (shopOrderItem == null) {
logger.warn("[禁止退货检查] 订单商品不存在orderItemId: {}", order_item_id);
// throw new ApiException(I18nUtil._("此订单商品订单数据有误!"));
return true;
}
ShopOrderInfo shopOrderInfo = shopOrderInfoService.get(order_id); String order_id = shopOrderItem.getOrder_id();
ShopProductIndex shopProductIndex = shopProductIndexService.get(shopOrderItem.getProduct_id()); if (StrUtil.isBlank(order_id)) {
logger.warn("[禁止退货检查] 订单ID为空orderItemId: {}", order_item_id);
// throw new ApiException(I18nUtil._("订单信息异常!"));
return true;
}
if (shopProductIndex == null) { ShopOrderInfo shopOrderInfo = shopOrderInfoService.get(order_id);
throw new ApiException(I18nUtil._("此订单商品数据有误!")); if (shopOrderInfo == null) {
logger.warn("[禁止退货检查] 订单信息不存在orderId: {}", order_id);
// throw new ApiException(I18nUtil._("订单信息不存在!"));
return true;
}
ShopProductIndex shopProductIndex = shopProductIndexService.get(shopOrderItem.getProduct_id());
if (shopProductIndex == null) {
logger.warn("[禁止退货检查] 商品索引信息不存在productId: {}", shopOrderItem.getProduct_id());
// throw new ApiException(I18nUtil._("此订单商品数据有误!"));
return true;
}
return ifDenyReturn(shopOrderInfo, shopOrderItem, shopProductIndex);
} catch (Exception e) {
logger.error("[禁止退货检查] 处理异常orderItemId: {}", order_item_id, e);
// 为保证系统稳定性异常情况下默认禁止退货
return true;
} }
return ifDenyReturn(shopOrderInfo, shopOrderItem, shopProductIndex);
} }
/** /**