From 3ff680c755e797879d0629efec67f109d233a857 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期三, 23 七月 2025 11:05:34 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java |   41 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 40 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java b/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java
index a2b3f8f..eeb50f0 100644
--- a/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java
+++ b/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java
@@ -24,7 +24,7 @@
     private OrderDetlService orderDetlService;
 
 
-    public com.zy.third.lk.entity.InCancelTB tryCancel(String orderNo) {
+    public com.zy.third.lk.entity.InCancelTB tryCancelIn(String orderNo) {
         com.zy.third.lk.entity.InCancelTB lkCancel = new com.zy.third.lk.entity.InCancelTB();
 
         List<Order> targets = orderService.selectList(new EntityWrapper<Order>()
@@ -62,5 +62,44 @@
 
     }
 
+    public com.zy.third.lk.entity.OutCancelTB tryCancelOut(String orderNo) {
+        com.zy.third.lk.entity.OutCancelTB lkCancel = new com.zy.third.lk.entity.OutCancelTB();
+
+        List<Order> targets = orderService.selectList(new EntityWrapper<Order>()
+                .eq("order_no",orderNo));
+        log.info("瑕佸彇娑堢殑璁㈠崟锛歿}", targets);
+        if (targets.isEmpty()) {
+            lkCancel.setBillNo(orderNo);
+            lkCancel.setOpFlag(1);
+
+            //erp鏂硅姹�,璁㈠崟鎵句笉鍒�,杩斿洖1
+            lkCancel.setMakeDate(new Date());
+            return lkCancel;
+        } else {
+            //榛樿璁㈠崟id涓嶈兘閲嶅
+            Order order = targets.get(0);
+            List<OrderDetl> detlList = orderDetlService.selectItem(order.getOrderNo());
+            log.info("瑕佸彇娑堢殑璁㈠崟璇︽儏锛歿}", detlList);
+            Optional<OrderDetl> any = detlList.stream().filter(s -> s.getQty().compareTo(0D) > 0).findAny();
+            if (order.getSettle() > 1L || any.isPresent()) {
+                lkCancel.setBillNo(orderNo);
+                lkCancel.setOpFlag(2);
+                lkCancel.setMakeDate(new Date());
+                return lkCancel;
+            }
+            orderService.addToLogTable(order);
+            orderService.delete(new EntityWrapper<Order>()
+                    .eq("order_no", order.getOrderNo()));
+            detlList.stream().forEach(d -> orderDetlService.addToLogTable(d));
+            orderDetlService.delete(new EntityWrapper<OrderDetl>()
+                    .eq("order_no", order.getOrderNo()));
+            lkCancel.setBillNo(orderNo);
+            lkCancel.setOpFlag(1);
+            lkCancel.setMakeDate(new Date());
+            return lkCancel;
+        }
+
+    }
+
 
 }

--
Gitblit v1.9.1