From 7e88876cd6c68e963ec0560f4e329e5dad483d9c Mon Sep 17 00:00:00 2001
From: admin <qiutairan163@163.com>
Date: 星期五, 28 十一月 2025 16:58:16 +0800
Subject: [PATCH] 增加casno等7个字段

---
 Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs |   56 +++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 37 insertions(+), 19 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index 9af5f4d..1bb1eb6 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -119,18 +119,21 @@
                 bool isNew = false;
 
                 var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.SkuNo == stockDetail.SkuNo && m.LotNo == stockDetail.LotNo);
+                //var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
 
                 if (pinStockDetail != null)
                 {
+                    //淇敼鎵樼洏琛ㄧ姸鎬佽鎵樼洏琛ㄥ拰搴撳瓨鏄庣粏琛ㄤ繚鎸佷竴鑷�
+                    string uptPalletStatusSql = $@"update SysPallets set Status='1' where PalletNo='{palletNoNew}'";
+                    int uptPalletStatus = Db.Ado.ExecuteCommand(uptPalletStatusSql);
+                    Db.CommitTran();
+
                     if (palletNo != palletNoNew)//闈炴暣鎵樻嫞璐�                                                
                     {
-                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
-                        //if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
-                        //{
-                        //    throw Oops.Bah("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�");
-                        //}
+                        //var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
+                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew).ToList();
                         //鍙厑璁哥粦瀹氬悓涓�涓嚭搴撳崟涓嬬殑鐗╂枡
-                        if (pinStockDetails.GroupBy(e => e.SONo).Count() > 0 && pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
+                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                         {
                             throw Oops.Bah("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�");
                         }
@@ -150,14 +153,10 @@
                     if (newPalletInfo.Status == "0")
                     {
                         var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && (m.SkuNo != stockDetail.SkuNo || m.LotNo != stockDetail.LotNo)).ToList();
-                        //if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
-                        //{
-                        //    throw Oops.Bah("涓�涓墭鐩樺彧鑳芥帴鍙椾竴涓嚭搴撳崟鎷兼墭锛�");
-                        //}
                         //鍙厑璁哥粦瀹氬悓涓�涓嚭搴撳崟涓嬬殑鐗╂枡
-                        if (pinStockDetails.GroupBy(e => e.SONo).Count() > 0 && pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
+                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                         {
-                            throw Oops.Bah("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�");
+                            throw Oops.Bah("涓�涓墭鐩樺彧鑳芥帴鍙椾竴涓嚭搴撳崟鎷兼墭锛�");
                         }
                     }
                     else
@@ -214,6 +213,10 @@
                     sd.UDF5 = "1";
                     //鏂板鎷兼墭搴撳瓨鏄庣粏淇℃伅
                     sdId = await Db.Insertable(sd).ExecuteReturnIdentityAsync();
+
+                    //淇敼鎵樼洏琛ㄧ姸鎬佽鎵樼洏琛ㄥ拰搴撳瓨鏄庣粏琛ㄤ繚鎸佷竴鑷�
+                    string uptPalletStatusSql = $@"update SysPallets set Status='1' where PalletNo='{palletNoNew}'";
+                    int uptPalletStatus = Db.Ado.ExecuteCommand(uptPalletStatusSql);
                 }
                 #endregion
 
@@ -605,11 +608,18 @@
                 #region 鎷兼墭淇℃伅
                 bool isNew = false;
                 var pinStockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.SkuNo == stockDetail.SkuNo && m.LotNo == stockDetail.LotNo);
+                //var pinStockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
                 if (pinStockDetail != null)
                 {
+                    //淇敼鎵樼洏琛ㄧ姸鎬佽鎵樼洏琛ㄥ拰搴撳瓨鏄庣粏琛ㄤ繚鎸佷竴鑷�
+                    string uptPalletStatusSql = $@"update SysPallets set Status='1' where PalletNo='{palletNoNew}'";
+                    int uptPalletStatus = Db.Ado.ExecuteCommand(uptPalletStatusSql);
+                    Db.CommitTran();
+
                     if (palletNo != palletNoNew)//闈炴暣鎵樻嫞璐�
                     {
-                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
+                        //var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
+                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew).ToList();
                         if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                         {
                             throw Oops.Bah("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�");
@@ -620,8 +630,13 @@
                 {
                     isNew = true;
 
-                    var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0");
+                    //var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0");
+                    var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
                     if (newPalletInfo == null)
+                    {
+                        throw Oops.Bah("鏂版墭鐩樹俊鎭笉瀛樺湪锛�");
+                    }
+                    if (newPalletInfo.Status == "0")
                     {
                         var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && (m.SkuNo != stockDetail.SkuNo && m.LotNo != stockDetail.LotNo)).ToList();
                         if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
@@ -685,9 +700,12 @@
                         CreateTime = nowDate,
                         UDF5 = "1"
                     };
-
                     //鏂板鎷兼墭搴撳瓨鏄庣粏淇℃伅
                     await Db.Insertable(sd).ExecuteReturnIdentityAsync();
+
+                    //淇敼鎵樼洏琛ㄧ姸鎬佽鎵樼洏琛ㄥ拰搴撳瓨鏄庣粏琛ㄤ繚鎸佷竴鑷�
+                    string uptPalletStatusSql = $@"update SysPallets set Status='1' where PalletNo='{palletNoNew}'";
+                    int uptPalletStatus = Db.Ado.ExecuteCommand(uptPalletStatusSql);
                 }
                 else
                 {
@@ -1635,10 +1653,10 @@
                     boxNo, "鍑哄簱", $"鍦≒DA涓婂绠卞彿涓猴細{boxNo}鐨勬墭鐩樼爜涓猴細{palletNo}鐨勬嫞璐ф搷浣�", userId);
                 Db.CommitTran();
             }
-            catch (AppFriendlyException e)
-            {
-                Db.RollbackTran();
-            }
+            //catch (AppFriendlyException e)
+            //{
+            //    Db.RollbackTran();
+            //}
             catch (Exception e)
             {
                 Db.RollbackTran();

--
Gitblit v1.8.0