自动化立体仓库 - WMS系统
pang.jiabao
2025-04-09 bc3749c68a8e10d346628b4612e7820f708ea556
src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java
@@ -2,7 +2,6 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.DocType;
import com.zy.asrs.entity.Order;
import com.zy.asrs.entity.OrderDetl;
@@ -10,8 +9,6 @@
import com.zy.asrs.service.DocTypeService;
import com.zy.asrs.service.OrderDetlService;
import com.zy.asrs.service.OrderService;
import com.zy.ints.entity.ErpDetTb;
import com.zy.ints.entity.ErpDetTbBak;
import com.zy.ints.entity.LkDetTb;
import com.zy.ints.entity.LkDetTbBak;
import com.zy.ints.erp.ErpSqlServer;
@@ -64,18 +61,23 @@
            List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4L));
            if (orders.size() > 0) {
                for (Order order : orders) {
                    List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
                    if (!Cools.isEmpty(orderDetls)) {
                        for (OrderDetl orderDetl : orderDetls) {
                            String orderNo = orderDetl.getOrderNo().split("---")[0];
                            Integer itm = Integer.getInteger(orderDetl.getOrderNo().split("---")[1]);
                            Date now = new Date();
                            List<LkDetTb> lkDetTbs = erpSqlServer.select(sqlSelectLkDetTb +
                                            " and bill_no='" + orderDetl.getOrderNo() + "'" +
                                            " and bill_no='" + orderNo + "'" +
                                            " and prd_no='" + orderDetl.getMatnr() + "'" +
                                            " and ITM='" + itm + "'" +
                                            " and prd_mark='" + orderDetl.getBatch() + "'"
                                    , LkDetTb.class);
                            List<LkDetTbBak> lkDetTbBaks = erpSqlServer.select(sqlSelectLkDetTbBak +
                                            " and bill_no='" + orderDetl.getOrderNo() + "'" +
                                            " and bill_no='" + orderNo + "'" +
                                            " and prd_no='" + orderDetl.getMatnr() + "'" +
                                            " and ITM='" + itm + "'" +
                                            " and prd_mark='" + orderDetl.getBatch() + "'"
                                    , LkDetTbBak.class);
                            if (lkDetTbs.size() == 1) {
@@ -93,8 +95,9 @@
                            } else {
                                String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(now);
                                HashMap<String, Object> condition = new HashMap<>();
                                condition.put("bill_no", "'" + orderDetl.getOrderNo() + "'");
                                condition.put("bill_no", "'" + orderNo + "'");
                                condition.put("prd_no", "'" + orderDetl.getMatnr() + "'");
                                condition.put("itm", "'" + itm + "'");
                                DocType docType = docTypeService.selectById(order.getDocType());
                                if (!Cools.isEmpty(docType)) {
@@ -113,7 +116,7 @@
                            }
                            //保存订单明细历史档
                            if (orderDetlService.addToLogTable(orderDetl)) {
                                callApiLogSaveOrderDetl(orderDetl, "保存订单明细历史档成功!", true);
//                                callApiLogSaveOrderDetl(orderDetl, "保存订单明细历史档成功!", true);
                                //删除订单明细
                                orderDetlService.deleteById(orderDetl.getId());
                                callApiLogSaveOrderDetl(orderDetl, "订单明细档保存后删除成功!", true);
@@ -121,7 +124,7 @@
                        }
                        //保存订单历史档
                        if (orderService.addToLogTable(order)) {
                            callApiLogSaveOrder(order, "完结订单上报完成,并保存订单历史档成功!!!", true);
//                            callApiLogSaveOrder(order, "完结订单上报完成,并保存订单历史档成功!!!", true);
                            //删除完结订单
                            orderService.deleteById(order.getId());
                            callApiLogSaveOrder(order, "完结订单上报完成,并保存订单历史档后删除完结订单成功!!!", true);
@@ -137,25 +140,25 @@
    }
    public void callApiLogSaveLkDetTb(LkDetTb lkDetTb, String tableName, String response, Boolean bool) {
        apiLogService.save("ERP下发订单信息", "中间表:" + tableName, "null", ip,
                "订单号:" + lkDetTb.getBillNo() + "品号:" + lkDetTb.getPrdNo() + "货品特征:" + lkDetTb.getPrdMark() + "状态:" + lkDetTb.getStatus(),
        apiLogService.save("上报完结订单明细信息", tableName, "null", ip,
                "订单号:" + lkDetTb.getBillNo() + "、品号:" + lkDetTb.getPrdNo() + "、货品特征:" + lkDetTb.getPrdMark() + "、状态:" + lkDetTb.getStatus$(),
                response, bool);
    }
    public void callApiLogSaveLkDetTbBak(LkDetTbBak lkDetTbBak, String tableName, String response, Boolean bool) {
        apiLogService.save("ERP下发订单信息", "中间表:" + tableName, "null", ip,
                "订单号:" + lkDetTbBak.getBillNo() + "品号:" + lkDetTbBak.getPrdNo() + "货品特征:" + lkDetTbBak.getPrdMark() + "状态:" + lkDetTbBak.getStatus(),
        apiLogService.save("上报完结订单明细信息", tableName, "null", ip,
                "订单号:" + lkDetTbBak.getBillNo() + "、品号:" + lkDetTbBak.getPrdNo() + "、货品特征:" + lkDetTbBak.getPrdMark() + "、状态:" + lkDetTbBak.getStatus$(),
                response, bool);
    }
    public void callApiLogSaveOrderDetl(OrderDetl orderDetl, String response, Boolean bool) {
        apiLogService.save("上报完结订单明细信息", "中间表:lk_det_tb", "null", ip,
                "订单号:" + orderDetl.getOrderNo() + "品号:" + orderDetl.getMatnr() + "货品特征:" + orderDetl.getBatch(),
        apiLogService.save("上报完结订单明细信息", "lk_det_tb", "null", ip,
                "订单号:" + orderDetl.getOrderNo() + "、品号:" + orderDetl.getMatnr() + "、货品特征:" + orderDetl.getBatch(),
                response, bool);
    }
    public void callApiLogSaveOrder(Order order, String response, Boolean bool) {
        apiLogService.save("完结订单信息上报完成", "中间表:lk_det_tb", "null", ip,
        apiLogService.save("完结订单信息上报完成", "lk_det_tb", "null", ip,
                "订单号:" + order.getOrderNo(), response, bool);
    }
}