运费设置 fix bug
This commit is contained in:
parent
e04b693f5d
commit
4cbb05b0a0
@ -8305,18 +8305,18 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
|
||||
* 2、商家的详细地址、电话和经纬度
|
||||
* 3、收货人的姓名、电话、详细地址、经纬度
|
||||
*
|
||||
* @param orderId
|
||||
* @param shopOrderId 商城订单id
|
||||
* @return
|
||||
*/
|
||||
public SFCreateOrderReq buildSFOrderData(Integer devId, String orderId, Long orderPickupNum) {
|
||||
if (StrUtil.isBlank(orderId)) {
|
||||
public SFCreateOrderReq buildSFOrderData(Integer devId, String shopOrderId, Long orderPickupNum) {
|
||||
if (StrUtil.isBlank(shopOrderId)) {
|
||||
logger.error("缺少订单Id");
|
||||
return null;
|
||||
}
|
||||
|
||||
ShopOrderBase shopOrderBase = shopOrderBaseService.getById(orderId);
|
||||
ShopOrderBase shopOrderBase = shopOrderBaseService.getById(shopOrderId);
|
||||
QueryWrapper<ShopOrderItem> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("order_id", orderId);
|
||||
queryWrapper.eq("order_id", shopOrderId);
|
||||
List<ShopOrderItem> shopOrderItemList = shopOrderItemService.list(queryWrapper);
|
||||
if (shopOrderBase == null || CollUtil.isEmpty(shopOrderItemList)) {
|
||||
logger.error("无法获取订单信息!");
|
||||
@ -8331,7 +8331,7 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
|
||||
|
||||
ShopStoreBase shopStoreBase = shopStoreBaseService.get(storeId);
|
||||
ShopStoreInfo shopStoreInfo = shopStoreInfoService.get(storeId);
|
||||
ShopOrderDeliveryAddress shopOrderDeliveryAddress = shopOrderDeliveryAddressService.selectByOrderId(orderId);
|
||||
ShopOrderDeliveryAddress shopOrderDeliveryAddress = shopOrderDeliveryAddressService.selectByOrderId(shopOrderId);
|
||||
ShopStoreSameCityTransportBase shopStoreSameCityTransportBase = shopStoreSameCityTransportBaseService.getShopStoreSameCityTransportBaseById(storeId.longValue());
|
||||
if (shopStoreBase == null || shopStoreInfo == null || shopOrderDeliveryAddress == null || shopStoreSameCityTransportBase == null) {
|
||||
logger.error("无法获取店铺信息!");
|
||||
@ -8355,7 +8355,7 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
|
||||
sfCreateOrderReq.setDev_id(devId);
|
||||
sfCreateOrderReq.setShop_id(shopId); // TODO 顺丰同城业务员给的店铺id
|
||||
sfCreateOrderReq.setPush_time(DateUtil.currentSeconds());
|
||||
sfCreateOrderReq.setShop_order_id(orderId);
|
||||
sfCreateOrderReq.setShop_order_id(shopOrderId);
|
||||
sfCreateOrderReq.setOrder_time(shopOrderBase.getOrder_time().getTime() / 1000);
|
||||
sfCreateOrderReq.setOrder_source("小发同城"); //订单来源
|
||||
sfCreateOrderReq.setOrder_sequence(orderPickupNumStr); //拣货编号
|
||||
|
||||
@ -260,7 +260,10 @@ public class ShopOrderInfoServiceImpl extends BaseServiceImpl<ShopOrderInfoMappe
|
||||
}
|
||||
|
||||
// 远程调用 更改交易订单状态
|
||||
payService.changePayConsumeTradeState(orderId, orderStatus, 0);
|
||||
if (!payService.changePayConsumeTradeState(orderId, orderStatus, 0)) {
|
||||
logger.error("远程调用更改交易订单状态失败!");
|
||||
return false;
|
||||
}
|
||||
|
||||
// 写入订单状态更改日志
|
||||
ShopOrderStateLog shopOrderStateLog = new ShopOrderStateLog();
|
||||
|
||||
@ -140,15 +140,24 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
|
||||
/**
|
||||
* 内部顺丰同城订单下单
|
||||
*
|
||||
* @param orderId
|
||||
* @param shopOrderId
|
||||
* @param orderPickupNum
|
||||
* @return
|
||||
*/
|
||||
@Transactional
|
||||
@Override
|
||||
public Pair<Boolean, String> innerCreateSfExpressOrder(String orderId, Long orderPickupNum) {
|
||||
public Pair<Boolean, String> innerCreateSfExpressOrder(String shopOrderId, Long orderPickupNum) {
|
||||
if(StrUtil.isBlank(shopOrderId) || orderPickupNum == null|| orderPickupNum <=0) {
|
||||
return Pair.of(false, "顺丰同城下单时,缺少必要参数!");
|
||||
}
|
||||
|
||||
// 检查 shop_store_sf_order 订单是否已存在?
|
||||
if(shopStoreSfOrderService.exists(devId,shopOrderId)){
|
||||
return Pair.of(false, "顺丰同城下单时,发现订单已存在!");
|
||||
}
|
||||
|
||||
// 从商家订单中,组件顺丰的订单信息,注:关键的函数
|
||||
SFCreateOrderReq sfCreateOrderReq = shopOrderBaseService.buildSFOrderData(devId, orderId, orderPickupNum);
|
||||
SFCreateOrderReq sfCreateOrderReq = shopOrderBaseService.buildSFOrderData(devId, shopOrderId, orderPickupNum);
|
||||
if (sfCreateOrderReq == null) {
|
||||
logger.error("顺丰同城下单异常,无法获取下单记录!");
|
||||
return Pair.of(false, "顺丰同城下单异常,无法获取下单记录!");
|
||||
@ -194,7 +203,7 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
|
||||
// String pickupCode = shopStoreSfOrder.getPickup_code() != null ? shopStoreSfOrder.getPickup_code().toString() : "";
|
||||
|
||||
// 商城订单状态:从 2020-待配货/待出库审核 到 2030-待发货
|
||||
shopOrderInfoService.changeOrderStatus(orderId, StateCode.ORDER_STATE_WAIT_SHIPPING, 0, 0);
|
||||
shopOrderInfoService.changeOrderStatus(shopOrderId, StateCode.ORDER_STATE_WAIT_SHIPPING, 0, 0);
|
||||
|
||||
return Pair.of(true, "顺丰同城下单成功!");
|
||||
}
|
||||
|
||||
@ -38,5 +38,13 @@ public interface ShopStoreSfOrderService extends IBaseService<ShopStoreSfOrder>
|
||||
* @return
|
||||
*/
|
||||
Boolean updateShopStoreSfOrderStatus(ShopStoreSfOrder record);
|
||||
|
||||
/**
|
||||
* 检查顺丰同城开发者id下,某个订单是否已经存在
|
||||
* @param devId
|
||||
* @param shopOrderId 商城订单号
|
||||
* @return
|
||||
*/
|
||||
Boolean exists(Integer devId, String shopOrderId);
|
||||
}
|
||||
|
||||
|
||||
@ -250,16 +250,33 @@ public class ShopStoreSameCityTransportBaseServiceImpl extends BaseServiceImpl<S
|
||||
return Pair.of(0L, "缺少店铺Id必要参数!");
|
||||
}
|
||||
|
||||
if (transportBase.getDistance_base() == null || transportBase.getDistance_base() <= 0) {
|
||||
return Pair.of(0L, "请输入距离!");
|
||||
if (transportBase.getDistance_base() == null || transportBase.getDistance_base() < 0) {
|
||||
transportBase.setDistance_base(0);
|
||||
// return Pair.of(0L, "请输入距离!");
|
||||
}
|
||||
|
||||
if (transportBase.getWeight_base() == null || transportBase.getWeight_base() <= 0) {
|
||||
return Pair.of(0L, "请输入重量!");
|
||||
if (transportBase.getWeight_base() == null || transportBase.getWeight_base() < 0) {
|
||||
// return Pair.of(0L, "请输入重量!");
|
||||
transportBase.setWeight_base(0);
|
||||
}
|
||||
|
||||
if (transportBase.getDelivery_base_fee() == null || BigDecimal.ZERO.compareTo(transportBase.getDelivery_base_fee()) >= 0) {
|
||||
return Pair.of(0L, "请输入配送运费!");
|
||||
if (transportBase.getDelivery_base_fee() == null || BigDecimal.ZERO.compareTo(transportBase.getDelivery_base_fee()) > 0) {
|
||||
// return Pair.of(0L, "请输入配送运费!");
|
||||
transportBase.setDelivery_base_fee(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
if (transportBase.getDistance_increase_km() == null || transportBase.getDistance_increase_km() < 0) {
|
||||
transportBase.setDistance_increase_km(0);
|
||||
}
|
||||
if (transportBase.getDistance_increase_fee() == null || BigDecimal.ZERO.compareTo(transportBase.getDistance_increase_fee()) > 0) {
|
||||
transportBase.setDistance_increase_fee(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
if (transportBase.getWeight_increase_kg() == null || transportBase.getWeight_increase_kg() < 0) {
|
||||
transportBase.setWeight_increase_kg(0);
|
||||
}
|
||||
if (transportBase.getWeight_increase_fee() == null || BigDecimal.ZERO.compareTo(transportBase.getWeight_increase_fee()) > 0) {
|
||||
transportBase.setWeight_increase_fee(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
QueryWrapper<ShopStoreSameCityTransportBase> queryWrapper = new QueryWrapper<>();
|
||||
|
||||
@ -176,4 +176,24 @@ public class ShopStoreSfOrderServiceImpl extends BaseServiceImpl<ShopStoreSfOrde
|
||||
|
||||
return update(updateWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查顺丰同城开发者id下,某个订单是否已经存在
|
||||
*
|
||||
* @param devId
|
||||
* @param shopOrderId 商城订单号
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Boolean exists(Integer devId, String shopOrderId) {
|
||||
if (StrUtil.isBlank(shopOrderId) || devId == null || devId <= 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
QueryWrapper<ShopStoreSfOrder> wrapper = new QueryWrapper<>();
|
||||
wrapper.eq("sf_order_id", shopOrderId);
|
||||
wrapper.eq("dev_id", devId);
|
||||
|
||||
return count(wrapper) > 0;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user