From ef5bf910f7c42000fee6eeca78d1c0281165d113 Mon Sep 17 00:00:00 2001
From: wbc <2597324127@qq.com>
Date: 星期三, 25 六月 2025 14:40:17 +0800
Subject: [PATCH] 11111

---
 MES.Service/Dto/webApi/ErpReturnWare.cs               |    1 
 MES.Service/Modes/MesReturnware.cs                    |    8 ++++
 MES.Service/service/Warehouse/MesReturnwareManager.cs |    3 +
 MES.Service/service/WomcaaManager.cs                  |   50 +++++++++++++++++++------
 4 files changed, 49 insertions(+), 13 deletions(-)

diff --git a/MES.Service/Dto/webApi/ErpReturnWare.cs b/MES.Service/Dto/webApi/ErpReturnWare.cs
index 0e56e67..cf0b6f2 100644
--- a/MES.Service/Dto/webApi/ErpReturnWare.cs
+++ b/MES.Service/Dto/webApi/ErpReturnWare.cs
@@ -14,4 +14,5 @@
     public string? CreateBy { get; set; }
     public DateTime? CreateDate { get; set; }
     public string? Type { get; set; }
+    public decimal? Over { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/MesReturnware.cs b/MES.Service/Modes/MesReturnware.cs
index c707af0..25a6a1e 100644
--- a/MES.Service/Modes/MesReturnware.cs
+++ b/MES.Service/Modes/MesReturnware.cs
@@ -61,6 +61,14 @@
          [SugarColumn(ColumnName="CREATE_DATE"    )]
          public DateTime? CreateDate { get; set; }
 
+
+
         [SugarColumn(IsIgnore = true)] public string? Type { get; set; }
+
+        /// <summary>
+        /// 鍒涘缓鏃堕棿 
+        ///</summary>
+        [SugarColumn(ColumnName = "OVER")]
+        public decimal? Over { get; set; }
     }
 }
diff --git a/MES.Service/service/Warehouse/MesReturnwareManager.cs b/MES.Service/service/Warehouse/MesReturnwareManager.cs
index 78d7865..c83afa9 100644
--- a/MES.Service/service/Warehouse/MesReturnwareManager.cs
+++ b/MES.Service/service/Warehouse/MesReturnwareManager.cs
@@ -137,7 +137,8 @@
                 Remarks = dto.Remarks,
                 CreateBy = dto.CreateBy,
                 CreateDate = dto.CreateDate,
-                Type       = dto.Type
+                Type       = dto.Type,
+                Over=dto.Over ?? 0
             };
 
 
diff --git a/MES.Service/service/WomcaaManager.cs b/MES.Service/service/WomcaaManager.cs
index 209a96b..5859f34 100644
--- a/MES.Service/service/WomcaaManager.cs
+++ b/MES.Service/service/WomcaaManager.cs
@@ -241,27 +241,53 @@
 
     public bool Delete(YFDelete data)
     {
+        if (data == null)
+            throw new ArgumentNullException(nameof(data));
 
+        if (string.IsNullOrWhiteSpace(data.FBillNo))
+            throw new ArgumentException("FBillNo 涓嶈兘涓虹┖", nameof(data.FBillNo));
+
+        if (string.IsNullOrWhiteSpace(data.FBillTypeID))
+            throw new ArgumentException("FBillTypeID 涓嶈兘涓虹┖", nameof(data.FBillTypeID));
 
         return UseTransaction(db =>
         {
-            var update = db.Deleteable<Womcaa>()
-                   .Where(it => it.Caa001 == data.FBillNo &&
-                                it.SrcBillType == data.FBillTypeID)
-                   .ExecuteCommand() > 0;
+            // 鍒犻櫎涓昏〃鏁版嵁
+            var deleteMain = db.Deleteable<Womcaa>()
+                .Where(it => it.Caa001 == data.FBillNo && it.SrcBillType == data.FBillTypeID)
+                .ExecuteCommand() > 0;
 
-            var insertOrUpdate = db.Deleteable<Womcab>()
-                  .Where(it => it.Cab001 == data.FBillNo &&
-                               it.Cab002 == data.FBillTypeID)
-                  .ExecuteCommand() > 0;
+            // 鍒犻櫎瀛愯〃鏁版嵁
+            var deleteDetail = db.Deleteable<Womcab>()
+                .Where(it => it.Cab001 == data.FBillNo && it.Cab002 == data.FBillTypeID)
+                .ExecuteCommand() > 0;
 
+            if (!deleteMain || !deleteDetail)
+                throw new Exception("鍒犻櫎澶辫触锛氫富琛ㄦ垨瀛愯〃璁板綍涓嶅瓨鍦�");
 
+            // 璋冪敤瀛樺偍杩囩▼杩涜鍚庣画澶勭悊
+            var inputParam1 = new SugarParameter("P_WORK_NO", data.FBillNo);
+            var inputParam2 = new SugarParameter("P_WORK_TYPE", data.FBillTypeID);
+            var outParam1 = new SugarParameter("C_RESULT", null, true); // 杈撳嚭鍙傛暟
+            var outParam2 = new SugarParameter("C_MSG", null, true);   // 杈撳嚭鍙傛暟
 
-            if (update && insertOrUpdate) return 1;
-            throw new NotImplementedException("鍒犻櫎澶辫触");
+            db.Ado.ExecuteCommand(
+                "BEGIN PRC_DELETE_DAA(:P_WORK_NO, :P_WORK_TYPE, :C_RESULT, :C_MSG); END;",
+                inputParam1, inputParam2, outParam1, outParam2);
+
+            int result = int.Parse((string)outParam1.Value);
+            string message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value;
+
+            if (result == 1)
+            {
+                //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊�
+                db.Ado.RollbackTran();
+                throw new Exception(message);
+
+            }
+
+            return 1;
         }) > 0;
-
-
     }
 
 

--
Gitblit v1.9.3