|
@@ -716,8 +716,29 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void tellBackOrer(JdOrderDto jdOrderDto) {
|
|
|
+ //参数校验
|
|
|
+ if(ObjectUtil.isNull(jdOrderDto.getId())){
|
|
|
+ throw new RuntimeException("参数错误");
|
|
|
+ }
|
|
|
+ if(ObjectUtil.isNull(jdOrderDto.getDeliveryTime())){
|
|
|
+ throw new RuntimeException("预计送达时间不能为空");
|
|
|
+ }
|
|
|
+ List<JdOrderDetails> jdOrderDetailsList = jdOrderDto.getJdOrderDetailsList();
|
|
|
+ if(CollectionUtil.isEmpty(jdOrderDetailsList)){
|
|
|
+ throw new RuntimeException("采购单明细不能为空");
|
|
|
+ }
|
|
|
+ for (JdOrderDetails jdOrderDetails : jdOrderDetailsList) {
|
|
|
+ if(ObjectUtil.isNull(jdOrderDetails.getWareId())){
|
|
|
+ throw new RuntimeException("京东商品编号为空");
|
|
|
+ }
|
|
|
+ if(ObjectUtil.isNull(jdOrderDetails.getConfirmNum())){
|
|
|
+ throw new RuntimeException("京东商品编号:"+jdOrderDetails.getWareId()+"确认数量为空");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ JdOrder jdOrder = getById(jdOrderDto.getId());
|
|
|
+
|
|
|
TellBackOrderVO tellBackOrderVO = new TellBackOrderVO();
|
|
|
- tellBackOrderVO.setOrderId(jdOrderDto.getOrderId());
|
|
|
+ tellBackOrderVO.setOrderId(jdOrder.getOrderId());
|
|
|
tellBackOrderVO.setDeliveryTime(jdOrderDto.getDeliveryTime());
|
|
|
List<TellBackOrderVO.BackInfo> backInfos = BeanUtil.copyToList(jdOrderDto.getJdOrderDetailsList(), TellBackOrderVO.BackInfo.class);
|
|
|
tellBackOrderVO.setBackInfo(backInfos);
|
|
@@ -728,11 +749,10 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
|
|
|
.set(JdOrder::getDeliveryTime, jdOrderDto.getDeliveryTime())
|
|
|
.eq(JdOrder::getId,jdOrderDto.getId()).update();
|
|
|
//修改明细信息
|
|
|
- List<JdOrderDetails> jdOrderDetailsList = jdOrderDto.getJdOrderDetailsList();
|
|
|
for (JdOrderDetails jdOrderDetails : jdOrderDetailsList) {
|
|
|
jdOrderDetailsService.lambdaUpdate()
|
|
|
.set(JdOrderDetails::getConfirmNum,jdOrderDetails.getConfirmNum())
|
|
|
- .set(JdOrderDetails::getDeliverCenterId,jdOrderDto.getDeliverCenterId())
|
|
|
+ .set(JdOrderDetails::getDeliverCenterId,jdOrder.getDeliverCenterId())
|
|
|
.set(JdOrderDetails::getNonDeliveryReason,jdOrderDetails.getNonDeliveryReason())
|
|
|
.eq(JdOrderDetails::getId,jdOrderDetails.getId()).update();
|
|
|
}
|