|  |  | 
 |  |  | import org.springframework.stereotype.Service; | 
 |  |  | import org.springframework.transaction.annotation.Transactional; | 
 |  |  |  | 
 |  |  | import java.util.Arrays; | 
 |  |  | import java.util.List; | 
 |  |  |  | 
 |  |  | @Slf4j | 
 |  |  | 
 |  |  |     @Override | 
 |  |  |     @Transactional | 
 |  |  |     public FebsResponse leaderOrderConfirm(ApiLeaderOrderConfirmDto apiLeaderOrderConfirmDto) { | 
 |  |  |         MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectByOrderNo(apiLeaderOrderConfirmDto.getOrderNo()); | 
 |  |  |         if(ObjectUtil.isEmpty(mallOrderInfo)){ | 
 |  |  |             return new FebsResponse().fail().message("订单不存在"); | 
 |  |  |         String ids = apiLeaderOrderConfirmDto.getIds(); | 
 |  |  |         if(StrUtil.isEmpty(ids)){ | 
 |  |  |             return new FebsResponse().fail().message("请选择订单"); | 
 |  |  |         } | 
 |  |  |         Integer status = mallOrderInfo.getStatus(); | 
 |  |  |         if(OrderStatusEnum.WAIT_FINISH.getValue() != status){ | 
 |  |  |             return new FebsResponse().fail().message("订单不是待确认到货状态"); | 
 |  |  |         } | 
 |  |  |         Integer deliveryType = mallOrderInfo.getDeliveryType(); | 
 |  |  |         if(1 != deliveryType){ | 
 |  |  |             return new FebsResponse().fail().message("订单的配送方式不是自提"); | 
 |  |  |         } | 
 |  |  |         mallOrderInfo.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_FINISH.getValue()); | 
 |  |  |         mallOrderInfoMapper.updateById(mallOrderInfo); | 
 |  |  |         List<String> orderIds = StrUtil.splitTrim(ids, ","); | 
 |  |  |         for(String id : orderIds){ | 
 |  |  |             long orderId = Long.parseLong(id); | 
 |  |  |             MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId); | 
 |  |  |             if(ObjectUtil.isEmpty(mallOrderInfo)){ | 
 |  |  |                 continue; | 
 |  |  | //                return new FebsResponse().fail().message("订单不存在"); | 
 |  |  |             } | 
 |  |  |             Integer status = mallOrderInfo.getStatus(); | 
 |  |  |             if(OrderStatusEnum.WAIT_FINISH.getValue() != status){ | 
 |  |  |                 continue; | 
 |  |  | //                return new FebsResponse().fail().message("订单不是待确认到货状态"); | 
 |  |  |             } | 
 |  |  |             mallOrderInfo.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_FINISH.getValue()); | 
 |  |  |             mallOrderInfoMapper.updateById(mallOrderInfo); | 
 |  |  |  | 
 |  |  |         OrderStateDto orderStateDto = new OrderStateDto(); | 
 |  |  |         orderStateDto.setOrderNo(mallOrderInfo.getOrderNo()); | 
 |  |  |         orderStateDto.setGoodsName(getProductNames(mallOrderInfo.getMemberId(),mallOrderInfo.getId())); | 
 |  |  |         orderStateDto.setOrderState("已送达自提点,请提取"); | 
 |  |  |         String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); | 
 |  |  |         MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); | 
 |  |  |         orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); | 
 |  |  |         orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); | 
 |  |  |         orderStateDto.setTemplateId(WechatConfigure.WX_ORDER_STATEMSG_TEMPLATE_ID); | 
 |  |  |         iXcxPayService.pushOrderToAddress(orderStateDto); | 
 |  |  |  | 
 |  |  |             OrderStateDto orderStateDto = new OrderStateDto(); | 
 |  |  |             orderStateDto.setOrderNo(mallOrderInfo.getOrderNo()); | 
 |  |  |             orderStateDto.setGoodsName(getProductNames(mallOrderInfo.getMemberId(),mallOrderInfo.getId())); | 
 |  |  |             if(2 == mallOrderInfo.getIsHome()){ | 
 |  |  |                 orderStateDto.setOrderState("已送达自提点"); | 
 |  |  |             }else{ | 
 |  |  |                 orderStateDto.setOrderState("已送达自提点"); | 
 |  |  |             } | 
 |  |  |             String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); | 
 |  |  |             MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); | 
 |  |  |             orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); | 
 |  |  |             orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); | 
 |  |  |             orderStateDto.setTemplateId(WechatConfigure.WX_ORDER_STATEMSG_TEMPLATE_ID); | 
 |  |  |             iXcxPayService.pushOrderToAddress(orderStateDto); | 
 |  |  |         } | 
 |  |  |         return new FebsResponse().success().message("确认成功"); | 
 |  |  |     } | 
 |  |  |  |