From f928756ecbf68886443ab87ce458b99aba73a763 Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-JIE70N9>
Date: 星期四, 08 五月 2025 15:13:25 +0800
Subject: [PATCH] Merge branch 'master' of http://47.95.120.53:8083/r/JC34WMS

---
 Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs |   66 +++++++++++++++++++++++++++++----
 1 files changed, 58 insertions(+), 8 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
index 09749f0..57367dd 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -1826,11 +1826,16 @@
                 {
                     if (models[0].Status == "1")
                     {
-                        sqlString = $"select count(id) from DataStockDetail where PalletNo = '{palletNo}' and isnull(LocatNo,'') != '' and isdel = '0';";
-                        int rowNum = Db.Ado.GetInt(sqlString);
-                        if (rowNum > 0)
+                        var detail = Db.Queryable<DataStockDetail>().First(m=>m.PalletNo == palletNo );
+                        
+                        if (detail!= null && !string.IsNullOrWhiteSpace(detail.LocatNo))
                         {
-                            sqlMsg = "-1:鎵樼洏浣跨敤涓紝姝ゆ墭鐩樺簲鍦ㄥ簱鍐呰鏍稿疄!";
+                            var pingAreaStr = Db.Queryable<SysStorageArea>().Where(m => m.IsDel == "0" && m.WareHouseNo == "W04" && m.AreaNo != "B06" && m.AreaNo != "B07").Select(m => m.AreaNo).ToList();
+                            var pingLocateInfo = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == detail.LocatNo && pingAreaStr.Contains(m.AreaNo) && m.IsDel == "0");
+                            if (pingLocateInfo == null)
+                            {
+                                sqlMsg = "-1:鎵樼洏浣跨敤涓紝姝ゆ墭鐩樺簲鍦ㄥ簱鍐呰鏍稿疄!";
+                            }
                         }
                     }
                 }
@@ -1840,6 +1845,51 @@
                 }
 
                 return sqlMsg;
+            }
+            catch (Exception ex)
+            {
+                throw ex;
+            }
+        }
+
+        /// <summary>
+        /// 鏍规嵁鍗曟嵁鑾峰彇鏍囩鏁伴噺
+        /// </summary>
+        /// <param name="asnNo">鍏ュ簱鍗�</param>
+        /// <param name="asnDetailId">鍏ュ簱鍗曟槑缁嗗彿</param>
+        /// <returns></returns>
+        public BoxListInfoDto GetBoxCountByAsn(string asnNo,int? asnDetailId)
+        {
+            try
+            {
+               
+                var detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == asnDetailId);
+                if (detail == null)
+                {
+                    throw new Exception("娌℃湁鏌ヨ鍒板崟鎹槑缁嗕俊鎭�");
+                }
+                var data = new BoxListInfoDto()
+                {
+                    SkuNo = detail.SkuNo,
+                    SkuName = detail.SkuName,
+                    LotNo = detail.LotNo,
+
+                };
+                //鑾峰彇鐘舵�佹槸鏈粍鎵樼殑鏍囩淇℃伅
+                var models = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNNo == asnNo && m.ASNDetailNo == asnDetailId ).GroupBy(m=> new { m.ProductionTime,m.ExpirationTime }).Select(m=>new { m.ProductionTime ,m.ExpirationTime}).OrderBy(m=>m.ProductionTime).ToList();//&& m.Status == "0"
+                foreach (var item in models)
+                {
+                    var boxNoList = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNNo == asnNo && m.ASNDetailNo == asnDetailId && m.ProductionTime == item.ProductionTime).Select(m => m.BoxNo).ToList();
+                    if (boxNoList.Count > 0)
+                    {
+                        data.BoxNoList = boxNoList;
+                        data.Date1 = item.ProductionTime.ToString();
+                        data.Date2 = item.ExpirationTime.ToString();
+
+                        break;
+                    }
+                }
+                return data;
             }
             catch (Exception ex)
             {
@@ -3242,7 +3292,7 @@
             try
             {
                 string strMsg = "";
-                var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == locatNo && w.Status == "0" && w.WareHouseNo == "W02");
+                var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == locatNo && w.Status == "0" && w.WareHouseNo == "W04");
                 if (storageLocat == null)
                 {
                     throw new Exception("-1:鍦扮爜(鍌ㄤ綅淇℃伅)涓嶅瓨鍦ㄦ垨闈炵┖闂茬姸鎬侊紝璇锋牳鏌�!");
@@ -5379,7 +5429,7 @@
                     //淇敼搴撳瓨鏄庣粏淇℃伅
                     foreach (var item in stockDetail)
                     {
-                        item.Status = "0";                                  // 鐘舵�佹洿鏀逛负寰呭垎閰�
+                        //item.Status = "0";                                  // 鐘舵�佹洿鏀逛负寰呭垎閰�
                         item.WareHouseNo = storageLocat.WareHouseNo;        // 鎵�灞炰粨搴�
                         item.RoadwayNo = storageLocat.RoadwayNo;            // 鎵�灞炲贩閬�
                         item.AreaNo = storageLocat.AreaNo;                  // 鎵�灞炲尯鍩�
@@ -5411,14 +5461,14 @@
                         SendDate = DateTime.Now,  //鍙戦�佹椂闂�
                         BackDate = DateTime.Now,  //杩斿洖鏃堕棿
                         StartLocat = "",//璧峰浣嶇疆
-                        EndLocat = "骞冲簱",//鐩爣浣嶇疆
+                        EndLocat = model.LocatNo,//鐩爣浣嶇疆
                         PalletNo = model.PalletNo,//鎵樼洏鐮�
                         IsSend = 0,//鏄惁鍙啀娆′笅鍙�
                         IsCancel = 0,//鏄惁鍙彇娑�
                         IsFinish = 0,//鏄惁鍙畬鎴�
                         Type = "0",//浠诲姟绫诲瀷 0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟  2 绉诲簱浠诲姟
                         Status = "2",//浠诲姟鐘舵��0锛氱瓑寰呮墽琛�1姝e湪鎵ц2鎵ц瀹屾垚
-                        OrderType = "3",//0 鍏ュ簱鍗� 1 鍑哄簱鍗�  2 鐩樼偣鍗�  3 绉诲簱鍗�
+                        OrderType = "0",//0 鍏ュ簱鍗� 1 鍑哄簱鍗�  2 鐩樼偣鍗�  3 绉诲簱鍗�
                         Msg = "骞冲簱鐨勫叆搴撲换鍔�",
                     };
                     Db.Insertable(exTask).ExecuteCommand();

--
Gitblit v1.8.0