自动化立体仓库 - WMS系统
#
whycq
2024-11-03 dafe461ac61fd3393e739226f9221da0f4157130
#
4个文件已修改
39 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/AgvMobileController.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/OrderSyncScheduler.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/properties/SystemProperties.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/AgvMobileController.java
@@ -10,6 +10,7 @@
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.service.*;
import com.zy.asrs.service.impl.OrderServiceImpl;
import com.zy.common.web.BaseController;
import io.swagger.models.auth.In;
import lombok.Synchronized;
@@ -52,6 +53,8 @@
    private SnowflakeIdWorker snowflakeIdWorker;
    @Autowired
    private FlowLogService flowLogService;
    @Autowired
    private OrderServiceImpl orderService;
    /*
@@ -523,6 +526,7 @@
        List<HashMap<String,String>> dbList = (List<HashMap<String, String>>) params.get("dbList");
        params.get("dbList");
        Object mT = params.get("moveType");
        String orderNo = params.get("orderNo").toString();
        String moveType = "";
        Integer ioType = 0;
        if (mT.equals("unAuto")) {
@@ -557,6 +561,7 @@
                wrkDetl.setWrkNo(wrkMast.getWrkNo());
                wrkDetl.sync(agvLocDetl);
                wrkDetl.setSuppCode(agvLocDetl.getSuppCode());
                wrkDetl.setModel(orderNo);
                wrkDetl.setIoTime(now);
                wrkDetl.setAppeUser(getUserId());
                wrkDetl.setAppeTime(now);
@@ -565,10 +570,13 @@
                if (!agvWrkDetlService.insert(wrkDetl)) {
                    throw new CoolException("保存工作明细失败");
                }
                // 更新订单
                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
//                FlowLog flowLog = new FlowLog();
                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no",orderNo).eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
                // 判断订单是否超量
                if (orderDetl.getQty() >= orderDetl.getAnfme()) {
                    throw new CoolException("调拨单:" + orderNo + "的<" + agvLocDetl.getMatnr() + ">已完成调拨数量,请检查!");
                }
                //                FlowLog flowLog = new FlowLog();
//                flowLog.setFid(String.valueOf(flowId));
//                flowLog.setSpare2(wrkMast.getWrkNo().toString());
//                flowLog.setLocNo(wrkMast.getSourceLocNo());
@@ -595,8 +603,16 @@
//                    throw new CoolException("同步半成品调拨单流水记录失败");
//                }
                orderDetl.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
                if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
                    throw new CoolException("修改订单明细失败,请联系管理员"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
                if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("order_no",orderNo).eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
                    throw new CoolException("订单号:{"+orderNo+"}更新订单明细失败! 异常物料:"+agvLocDetl.getMatnr()+"(半成品调拨单任务)" );
                }
                // 更新订单状态
                Order order = orderService.selectByNo(orderDetl.getOrderNo());
                Long settle = order.getSettle();
                if (settle == 1L) {
                    if (!orderService.updateSettle(order.getId(),2L,getUserId())) {
                        throw new CoolException("订单号:{"+order.getOrderNo()+"}更新订单状态:1-->2 失败!(半成品调拨单任务)" );
                    }
                }
            }
            // 更新源库位
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -520,6 +520,15 @@
                if (Cools.isEmpty(orderDetl)) {
                    throw new CoolException("当前物料的调拨单不存在!");
                }
                Order order = orderService.selectByNo(orderDetl.getOrderNo());
                if (Cools.isEmpty(order)) {
                    throw new CoolException("当前物料的调拨单不存在!");
                }
                if (order.getSettle() == 4L) {
                    if (!orderService.updateSettle(order.getId(),2L,userId)) {
                        throw new CoolException("调拨单回滚异常!");
                    }
                }
                orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
                if (!orderDetlService.updateById(orderDetl)) {
                    throw new CoolException("保存工作明细失败");
src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -57,7 +57,7 @@
        if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
            List<Order> orders = orderService.selectComplete();
            for (Order order : orders) {
                //如果是加工单则进行判断
                //如果是调拨单则进行判断
                if (order.getDocType() == 33) {
                    //查询库存中是否存在该订单的物料信息,存在则不处理该订单
                    List<OrderDetl> orderDetlList = orderDetlService.selectByOrderId(order.getId());
src/main/java/com/zy/common/properties/SystemProperties.java
@@ -63,7 +63,7 @@
    // 生成激活码
    public static void main(String[] args) {
        String timeStr = "2099-08-01 17:48:35";
        String timeStr = "2025-11-01 00:00:00";
        Date exprTime = DateUtils.convert(timeStr);
        String code = AesUtils.encrypt(DateUtils.convert(exprTime, DateUtils.yyyyMMddHHmmss), SystemProperties.SALT);
        System.out.println("激活码:"+code);