#
lsh
2024-09-09 ff0b0e8c7a59f44a8abe0ec209130fa525cf5b1c
#
1个文件已修改
60 ■■■■■ 已修改文件
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderDetlController.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderDetlController.java
@@ -3,10 +3,11 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.wms.entity.OrderDetl;
import com.zy.asrs.common.wms.service.OrderDetlService;
import com.zy.asrs.common.wms.entity.*;
import com.zy.asrs.common.wms.service.*;
import com.zy.asrs.framework.annotations.ManagerAuth;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.R;
@@ -23,6 +24,18 @@
    @Autowired
    private OrderDetlService orderDetlService;
    @Autowired
    private WaitPakinService waitPakinService;
    @Autowired
    private OrderService orderService;
    @Autowired
    private WrkMastService wrkMastService;
    @Autowired
    private DocTypeService docTypeService;
    @Autowired
    private WrkDetlService wrkDetlService;
    @Autowired
    private WorkService workService;
    @RequestMapping(value = "/orderDetl/forOrderNo/auth")
    @ManagerAuth
@@ -67,6 +80,49 @@
        orderDetlService.save(orderDetl);
        return R.ok();
    }
    @RequestMapping(value = "/order/cancel/wrk/auth")
    @ManagerAuth
    public R cancelWrk(String orderId) {
        Order order = orderService.getById(orderId);
        DocType docType = docTypeService.getById(order.getDocType());
        if (null != docType && docType.getPakin() == 1) {
            List<WaitPakin> waitPakinList = waitPakinService.list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getOrderNo, order.getOrderNo()));
            if (!Cools.isEmpty(waitPakinList)){
                for (WaitPakin entity : waitPakinList){
                    List<WrkMast> wrkMasts = wrkMastService.list(new QueryWrapper<WrkMast>().eq("barcode", entity.getZpallet()));
                    if(!Cools.isEmpty(wrkMasts) || wrkMasts.size() > 0){
                        continue;
                    }
                    waitPakinService.removeById(entity.getId());
                    //订单关联,修改订单作业数量
                    if (!Cools.isEmpty(entity.getOrderNo())) {
                        if (!orderDetlService.decrease(entity.getOrderNo(),entity.getHostId(), entity.getMatnr(), entity.getBatch(), entity.getAnfme())) {
                            return R.error("订单数据回滚失败");
                        }
                    }
                }
            }
        } else if (null != docType && docType.getPakout() == 1) {
            List<WrkDetl> wrkDetlList = wrkDetlService.list(new LambdaQueryWrapper<WrkDetl>().eq(WrkDetl::getOrderNo, order.getOrderNo()));
            if (!Cools.isEmpty(wrkDetlList)){
                List<Integer> wrkNoList = new ArrayList<>();
               for (WrkDetl wrkDetl:wrkDetlList){
                   if (!wrkNoList.contains(wrkDetl.getWrkNo())){
                       wrkNoList.add(wrkDetl.getWrkNo());
                   }
               }
               for (Integer wrkNo:wrkNoList){
                   List<WrkMast> wrkMasts = wrkMastService.list(new QueryWrapper<WrkMast>().eq("wrk_no", wrkNo));
                   if (wrkMasts.size()==1){
                       if (wrkMasts.get(0).getWrkSts()==101){
                           workService.cancelWrkMast(wrkNo.toString(), getUserId(), getHostId());
                       }
                   }
               }
            }
        }
        return R.ok();
    }
    @RequestMapping(value = "/orderDetl/update/auth")
    @ManagerAuth