| | |
| | | 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("确认成功"); |
| | | } |
| | | |