...
|
...
|
@@ -2,6 +2,7 @@ package com.yohoufo.order.service.impl; |
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import com.yoho.error.ServiceError;
|
|
|
import com.yoho.error.exception.ServiceException;
|
|
|
import com.yohobuy.ufo.model.order.common.*;
|
...
|
...
|
@@ -703,12 +704,30 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
serviceOrderProcessor.findGoodsServiceInstance(orderCode).platformReceiveGoods(orderCode);
|
|
|
|
|
|
ServiceOrderProcessor.ExistenceNode existenceNode = serviceOrderProcessor.findGoodsServiceInstanceAndExt(orderCode);
|
|
|
|
|
|
// 确认收货过来的是子订单号
|
|
|
Long parentOrderCode = existenceNode.getAppraiseOrder().getParentOrderCode();
|
|
|
if (parentOrderCode == null){
|
|
|
// 平台收货 内部调拨信息
|
|
|
EnumExpressType expressType = EnumExpressType.EXPRESS_TYPE_JUDGE_CENTER;
|
|
|
EnumExpressDataType expressDataType = EnumExpressDataType.operate_transfer;
|
|
|
EnumExpressDataOperateTransferCode operateTransferCode = EnumExpressDataOperateTransferCode.platform_receive;
|
|
|
expressInfoService.saveOperateTransferExpressInfo(existenceNode.getAppraiseOrder().getUid(), orderCode ,expressType.getCode(),expressDataType,operateTransferCode);
|
|
|
return;
|
|
|
}
|
|
|
List<Integer> status = Lists.newArrayList(AppraiseOrderStatus.PLATFORM_RECEIVE.getCode(), AppraiseOrderStatus.CHECKING_FAKE.getCode());
|
|
|
int cnt = serviceOrderProcessor.getSubOrderCntNotDefinedStatus(parentOrderCode, status);
|
|
|
logger.info("no confirm delivery sub order cnt is {}, parentOrderCode {}", cnt, parentOrderCode);
|
|
|
|
|
|
// 父订单下所有的子订单都是 [平台已收货] or [虚假发货] 的情况
|
|
|
if (cnt == 0){
|
|
|
// 平台收货 内部调拨信息
|
|
|
EnumExpressType expressType = EnumExpressType.EXPRESS_TYPE_JUDGE_CENTER;
|
|
|
EnumExpressDataType expressDataType = EnumExpressDataType.operate_transfer;
|
|
|
EnumExpressDataOperateTransferCode operateTransferCode = EnumExpressDataOperateTransferCode.platform_receive;
|
|
|
expressInfoService.saveOperateTransferExpressInfo(existenceNode.getAppraiseOrder().getUid(),parentOrderCode ,expressType.getCode(),expressDataType,operateTransferCode);
|
|
|
}
|
|
|
|
|
|
// 平台收货 内部调拨信息
|
|
|
EnumExpressType expressType = EnumExpressType.EXPRESS_TYPE_JUDGE_CENTER;
|
|
|
EnumExpressDataType expressDataType = EnumExpressDataType.operate_transfer;
|
|
|
EnumExpressDataOperateTransferCode operateTransferCode = EnumExpressDataOperateTransferCode.platform_receive;
|
|
|
expressInfoService.saveOperateTransferExpressInfo(existenceNode.getAppraiseOrder().getUid(),orderCode,expressType.getCode(),expressDataType,operateTransferCode);
|
|
|
return;
|
|
|
}
|
|
|
|
...
|
...
|
|