| | |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
| | | import com.zy.asrs.framework.exception.CoolException;
|
| | | import com.zy.asrs.wms.apis.wcs.entity.response.SowSeeds;
|
| | | import com.zy.asrs.wms.apis.wcs.services.WcsApiService;
|
| | | import com.zy.asrs.wms.asrs.entity.*;
|
| | | import com.zy.asrs.wms.asrs.entity.dto.ShippingOrderDetlDto;
|
| | | import com.zy.asrs.wms.asrs.entity.enums.OrderPickStatus;
|
| | | import com.zy.asrs.wms.asrs.entity.param.WaveSeedReviewParam;
|
| | | import com.zy.asrs.wms.asrs.mapper.*;
|
| | | import com.zy.asrs.wms.asrs.service.OrderDetlService;
|
| | | import com.zy.asrs.wms.asrs.service.WaveSeedService;
|
| | | import com.zy.asrs.wms.asrs.service.*;
|
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
| | | import org.springframework.beans.factory.annotation.Autowired;
|
| | | import org.springframework.stereotype.Service;
|
| | |
| | | public class WaveSeedServiceImpl extends ServiceImpl<WaveSeedMapper, WaveSeed> implements WaveSeedService {
|
| | |
|
| | | @Autowired
|
| | | private OrderMapper orderMapper;
|
| | | private OrderService orderMapper;
|
| | | @Autowired
|
| | | private OrderDetlMapper orderDetlMapper;
|
| | | @Autowired
|
| | | private TaskDetlMapper taskDetlMapper;
|
| | |
|
| | | private TaskDetlService taskDetlMapper;
|
| | | @Autowired
|
| | | private TaskService taskService;
|
| | | @Autowired
|
| | | private CacheSiteMapper cacheSiteMapper;
|
| | | @Autowired
|
| | | private WcsApiService wcsApiService;
|
| | |
|
| | | @Override
|
| | | @Transactional(rollbackFor = Exception.class)
|
| | |
| | | }
|
| | | waveSeed.setWorkQty(waveSeed.getWorkQty() + param.getReviewNum());
|
| | |
|
| | | TaskDetl taskDetl = taskDetlMapper.selectOne(new LambdaQueryWrapper<TaskDetl>().eq(TaskDetl::getId, waveSeed.getTaskDetlId()));
|
| | | TaskDetl taskDetl = taskDetlMapper.getOne(new LambdaQueryWrapper<TaskDetl>().eq(TaskDetl::getId, waveSeed.getTaskDetlId()));
|
| | | if (Objects.isNull(taskDetl)) {
|
| | | throw new CoolException("当前播种任务明细不存在!!");
|
| | | }
|
| | |
| | | return ord.getPickStatus() != OrderPickStatus.ORDER_PICK_STATUS_DONE.val;
|
| | | }).collect(Collectors.toList());
|
| | |
|
| | | int update;
|
| | | if (detlList.isEmpty()) {
|
| | | update = orderMapper.update(new LambdaUpdateWrapper<Order>()
|
| | | if (!orderMapper.update(new LambdaUpdateWrapper<Order>()
|
| | | .eq(Order::getOrderNo, orderDetl.getOrderNo())
|
| | | .set(Order::getPickStatus, OrderPickStatus.ORDER_PICK_STATUS_DONE.val));
|
| | | } else {
|
| | | update = orderMapper.update(new LambdaUpdateWrapper<Order>()
|
| | | .eq(Order::getOrderNo, orderDetl.getOrderNo())
|
| | | .set(Order::getPickStatus, OrderPickStatus.ORDER_PICK_STATUS_SECTION.val));
|
| | | }
|
| | | .set(Order::getPickStatus, OrderPickStatus.ORDER_PICK_STATUS_DONE.val))) {
|
| | | throw new CoolException("原始订单主单拣货状态更新失败!!");
|
| | | }
|
| | | try {
|
| | | Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getId, waveSeed.getTaskId()));
|
| | | if (Objects.isNull(task)) {
|
| | | throw new CoolException("数据错误: 任务单据不存在!!");
|
| | | }
|
| | | wcsApiService.containerConveryor(task.getBarcode());
|
| | | } catch (Exception e) {
|
| | | log.error("执行异常:UNK", e);
|
| | | throw new CoolException(e.getMessage());
|
| | | }
|
| | |
|
| | | if (update < 1) {
|
| | | throw new CoolException("原始订单主单拣货状态更新失败!!");
|
| | | } else {
|
| | | if (!orderMapper.update(new LambdaUpdateWrapper<Order>()
|
| | | .eq(Order::getOrderNo, orderDetl.getOrderNo())
|
| | | .set(Order::getPickStatus, OrderPickStatus.ORDER_PICK_STATUS_SECTION.val))) {
|
| | | throw new CoolException("原始订单主单拣货状态更新失败");
|
| | | }
|
| | | }
|
| | |
|
| | | waveSeed.setUpdateTime(new Date());
|