From 6915c91a99e133e927993f8794c85bffaad4ce0c Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期二, 17 十二月 2024 11:03:45 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/entity/OrderDetl.java | 45 +++++++++++++++ src/main/java/com/zy/asrs/task/OrderSyncScheduler.java | 27 ++++++-- src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | 35 ++++++++--- src/main/java/com/zy/asrs/entity/Order.java | 39 +++++++++++++ 4 files changed, 128 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/zy/asrs/entity/Order.java b/src/main/java/com/zy/asrs/entity/Order.java index e13ed6c..86e1aa5 100644 --- a/src/main/java/com/zy/asrs/entity/Order.java +++ b/src/main/java/com/zy/asrs/entity/Order.java @@ -315,6 +315,45 @@ this.memo = memo; } + public Order(Order order) { + this.uuid = order.getUuid(); + this.orderNo = order.getOrderNo(); + this.orderTime = order.getOrderTime(); + this.docType = order.getDocType(); + this.itemId = order.getItemId(); + this.itemName = order.getItemName(); + this.allotItemId = order.getAllotItemId(); + this.defNumber = order.getDefNumber(); + this.number = order.getNumber(); + this.cstmr = order.getCstmr(); + this.cstmrName = order.getCstmrName(); + this.tel = order.getTel(); + this.operMemb = order.getOperMemb(); + this.totalFee = order.getTotalFee(); + this.discount = order.getDiscount(); + this.discountFee = order.getDiscountFee(); + this.otherFee = order.getOtherFee(); + this.actFee = order.getActFee(); + this.payType = order.getPayType(); + this.salesman = order.getSalesman(); + this.accountDay = order.getAccountDay(); + this.postFeeType = order.getPostFeeType(); + this.postFee = order.getPostFee(); + this.payTime = order.getPayTime(); + this.sendTime = order.getSendTime(); + this.shipName = order.getShipName(); + this.shipCode = order.getShipCode(); + this.settle = order.getSettle(); + this.status = order.getStatus(); + this.createBy = order.getCreateBy(); + this.createTime = order.getCreateTime(); + this.updateBy = order.getUpdateBy(); + this.updateTime = order.getUpdateTime(); + this.memo = order.getMemo(); + this.moveStatus = order.getMoveStatus(); + this.pakinPakoutStatus = order.getPakinPakoutStatus(); + } + // Order order = new Order( // null, // 缂栧彿[闈炵┖] // null, // 璁㈠崟缂栧彿 diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java index ab68615..04bbfec 100644 --- a/src/main/java/com/zy/asrs/entity/OrderDetl.java +++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java @@ -354,6 +354,51 @@ this.memo = memo; } + public OrderDetl(OrderDetl orderDetl) { + this.orderId = orderDetl.getOrderId(); + this.orderNo = orderDetl.getOrderNo(); + this.anfme = orderDetl.getAnfme(); + this.qty = orderDetl.getQty(); + this.matnr = orderDetl.getMatnr(); + this.maktx = orderDetl.getMaktx(); + this.batch = orderDetl.getBatch(); + this.specs = orderDetl.getSpecs(); + this.model = orderDetl.getModel(); + this.color = orderDetl.getColor(); + this.brand = orderDetl.getBrand(); + this.unit = orderDetl.getUnit(); + this.price = orderDetl.getPrice(); + this.sku = orderDetl.getSku(); + this.units = orderDetl.getUnits(); + this.barcode = orderDetl.getBarcode(); + this.origin = orderDetl.getOrigin(); + this.manu = orderDetl.getManu(); + this.manuDate = orderDetl.getManuDate(); + this.itemNum = orderDetl.getItemNum(); + this.safeQty = orderDetl.getSafeQty(); + this.weight = orderDetl.getWeight(); + this.manLength = orderDetl.getManLength(); + this.volume = orderDetl.getVolume(); + this.threeCode = orderDetl.getThreeCode(); + this.supp = orderDetl.getSupp(); + this.suppCode = orderDetl.getSuppCode(); + this.beBatch = orderDetl.getBeBatch(); + this.deadTime = orderDetl.getDeadTime(); + this.deadWarn = orderDetl.getDeadWarn(); + this.source = orderDetl.getSource(); + this.inspect = orderDetl.getInspect(); + this.danger = orderDetl.getDanger(); + this.status = orderDetl.getStatus(); + this.createBy = orderDetl.getCreateBy(); + this.createTime = orderDetl.getCreateTime(); + this.updateBy = orderDetl.getUpdateBy(); + this.updateTime = orderDetl.getUpdateTime(); + this.memo = orderDetl.getMemo(); + this.pakinPakoutStatus = orderDetl.getPakinPakoutStatus(); + this.lineNumber = orderDetl.getLineNumber(); + } + + public String getOrderId$(){ OrderService service = SpringUtils.getBean(OrderService.class); Order order = service.selectById(this.orderId); diff --git a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java index e97ffdf..4756338 100644 --- a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java +++ b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java @@ -17,7 +17,7 @@ import java.util.List; /** - * Created by vincent on 2020/7/7 + * Created by IX on 2024/12/17 */ @Slf4j @Component @@ -31,7 +31,7 @@ private ApiLogService apiLogService; @Scheduled(cron = "0 0 1 * * ? ") - public void clearApiLog(){ + public void clearApiLog() { try { apiLogService.clearWeekBefore(); } catch (Exception e) { @@ -39,20 +39,33 @@ } } -// @Scheduled(cron = "0/5 * * * * ? ") @Async("orderThreadPool") - public void completeAndReport(){ + public void completeAndReportOrderInAndOutUtil() { String erpReport = Parameter.get().getErpReport(); if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { -// List<Order> orders = orderService.selectComplete(); List<Order> orders = OrderInAndOutUtil.selectComplete(null); for (Order order : orders) { - ReturnT<String> result = orderSyncHandler.start(order); + ReturnT<String> result = orderSyncHandler.startOrderInAndOutUtil(order); + if (!result.isSuccess()) { + log.error("鍗曟嵁[orderNo={}]杞笂鎶ヨ〃澶辫触", order.getOrderNo()); + } + } + } + } + + // @Scheduled(cron = "0/5 * * * * ? ") + @Async("orderThreadPool") + public void completeAndReportOrder() { + String erpReport = Parameter.get().getErpReport(); + if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { + List<Order> orders = orderService.selectComplete(); +// List<Order> orders = OrderInAndOutUtil.selectComplete(null); + for (Order order : orders) { + ReturnT<String> result = orderSyncHandler.startOrder(order); if (!result.isSuccess()) { log.error("鍗曟嵁[orderNo={}]涓婃姤erp澶辫触", order.getOrderNo()); } } } } - } diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java index 400eea6..0feb909 100644 --- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java @@ -44,15 +44,30 @@ private ApiLogService apiLogService; @Autowired private DocTypeService docTypeService; - @Transactional - public ReturnT<String> start(Order order) { + public ReturnT<String> startOrderInAndOutUtil(Order order) { DocType docType = docTypeService.selectById(order.getDocType()); if (null == docType) { return SUCCESS; } -// List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); List<OrderDetl> orderDetls = OrderInAndOutUtil.selectByOrderId(order.getPakinPakoutStatus$(), order.getId()); + Order orderNew = new Order(order); + orderService.insert(orderNew); + for (OrderDetl orderDetl : orderDetls){ + OrderDetl orderDetlNew = new OrderDetl(orderDetl); + orderDetlService.insert(orderDetlNew); + } + // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶� + OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(),6L,null); + return SUCCESS; + } + @Transactional + public ReturnT<String> startOrder(Order order) { + DocType docType = docTypeService.selectById(order.getDocType()); + if (null == docType) { + return SUCCESS; + } + List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); // 鍏ュ簱瀹屾垚涓婃姤 if (docType.getPakin() == 1) { MesPakinParam pakinParam = new MesPakinParam(); @@ -76,10 +91,9 @@ if (jsonObject.getInteger("code").equals(200)) { success = true; // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶� -// if (!orderService.updateSettle(order.getId(), 6L, null)) { -// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); -// } - OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(),6L,null); + if (!orderService.updateSettle(order.getId(), 6L, null)) { + throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + } } else { log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(pakinParam), response); throw new CoolException("涓婃姤mes绯荤粺澶辫触"); @@ -131,10 +145,9 @@ if (jsonObject.getInteger("code").equals(200)) { success = true; // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶� -// if (!orderService.updateSettle(order.getId(), 6L, null)) { -// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); -// } - OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(),6L,null); + if (!orderService.updateSettle(order.getId(), 6L, null)) { + throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + } } else { log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PAKOUT_URL, JSON.toJSONString(pakoutParam), response); throw new CoolException("涓婃姤mes绯荤粺澶辫触"); -- Gitblit v1.9.1