From ff0ef3ea134660a9542a50f675f4c5aafa8af223 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期四, 12 九月 2024 22:10:58 +0800
Subject: [PATCH] 一些更改

---
 Tiger.Business.MES/WorkAction/PackingAction.cs |   14 ++++++++++++--
 Tiger.Business.MES/BIZ/BizBasRule.cs           |   36 +++++++++++-------------------------
 2 files changed, 23 insertions(+), 27 deletions(-)

diff --git a/Tiger.Business.MES/BIZ/BizBasRule.cs b/Tiger.Business.MES/BIZ/BizBasRule.cs
index a093123..cce51a1 100644
--- a/Tiger.Business.MES/BIZ/BizBasRule.cs
+++ b/Tiger.Business.MES/BIZ/BizBasRule.cs
@@ -29,15 +29,10 @@
             var result = new ApiAction();
             try
             {
-                if (input.ItemCusts == null || input.ItemCusts.Count == 0)
-                {
-
-                    result.IsSuccessed = false;
-                    result.LocaleMsg = new($"淇濆瓨鐗╂枡鏉$爜瑙勫垯鍑洪敊锛屾病鏈夋暟鎹紶鍏�");
-                    return result;
-                }
                 var ItemCustIds = input.ItemCusts.Select(q => q.ID).ToList();
-                List<BAS_ITEM_CUST> list = await Biz.Db.Queryable<BAS_ITEM_CUST>().Where(q => !SqlFunc.ContainsArray(ItemCustIds, q.ID) && input.ItemCusts[0].ITEM_ID == q.ITEM_ID).ToListAsync();
+                List<BAS_ITEM_CUST> list = ItemCustIds.Count>0? await Biz.Db.Queryable<BAS_ITEM_CUST>()
+                    .Where(q => !SqlFunc.ContainsArray(ItemCustIds, q.ID) && input.ItemCusts[0].ITEM_ID == q.ITEM_ID)
+                    .ToListAsync() : new();
                 var db = Biz.Db;
                 var dbTran = db.UseTran(() =>
                 {
@@ -76,27 +71,17 @@
             var result = new ApiAction();
             try
             {
-                if (input.PkgProd == null || input.PkgProd.Count == 0)
-                {
-
-                    result.IsSuccessed = false;
-                    result.LocaleMsg = new($"淇濆瓨鍖呰瑙勫垯鍑洪敊锛屾病鏈夋暟鎹紶鍏�");
-                    return result;
-                }
                 var pkgProds = input.PkgProd.Select(q => q.ID).ToList();
-                List<BAS_PKG_PROD> listPrd = await Biz.Db.Queryable<BAS_PKG_PROD>().Where(q => !SqlFunc.ContainsArray(pkgProds, q.ID) && q.PKG_RULE_ID == input.PkgProd[0].PKG_RULE_ID).ToListAsync();
+                List<BAS_PKG_PROD> listPrd = pkgProds.Count > 0 ? await Biz.Db.Queryable<BAS_PKG_PROD>()
+                    .Where(q => !SqlFunc.ContainsArray(pkgProds, q.ID) && q.PKG_RULE_ID == input.PkgProd[0].PKG_RULE_ID)
+                    .ToListAsync() : new();
+                var pkgDtl = input.PkgDtl.Select(q => q.ID).ToList();
+                List<BAS_PKG_DTL> listDtl = pkgDtl.Count > 0 ? await Biz.Db.Queryable<BAS_PKG_DTL>()
+                    .Where(q => !SqlFunc.ContainsArray(pkgDtl, q.ID) && q.PKG_RULE_ID == input.PkgDtl[0].PKG_RULE_ID)
+                    .ToListAsync() : new();
                 var db = Biz.Db;
                 var dbTran = db.UseTran(() =>
                 {
-                    //if (input.PkgRule!=null)
-                    //{
-                    //    var y = db.Storageable(input.PkgRule)
-                    //       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
-                    //       .ToStorage();
-                    //    y.AsInsertable.ExecuteCommand();
-                    //    y.AsUpdateable.ExecuteCommand();
-                    //}
-
                     var z = db.Storageable(input.PkgDtl)
                        .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                        .ToStorage();
@@ -110,6 +95,7 @@
                     o.AsUpdateable.ExecuteCommand();
 
                     db.Deleteable(listPrd).ExecuteCommand();
+                    db.Deleteable(listDtl).ExecuteCommand();
                 });
                 if (!dbTran.IsSuccess)
                 {
diff --git a/Tiger.Business.MES/WorkAction/PackingAction.cs b/Tiger.Business.MES/WorkAction/PackingAction.cs
index 23416c3..516ce14 100644
--- a/Tiger.Business.MES/WorkAction/PackingAction.cs
+++ b/Tiger.Business.MES/WorkAction/PackingAction.cs
@@ -330,7 +330,7 @@
                         if (!pInput.WeightInfo.IsNullOrEmpty() && pInput.WeightInfo.Weight > 0)
                         {
                             //楠岃瘉閲嶉噺鏁版嵁鏄惁绗﹀悎璁剧疆濂界殑閲嶉噺鑼冨洿
-                            if (!PkgProd.IsNullOrEmpty() && (pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT || PkgProd.MIN_WEIGHT < pInput.WeightInfo.Weight))
+                            if (!PkgProd.IsNullOrEmpty() && (pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT || PkgProd.MAX_WEIGHT < pInput.WeightInfo.Weight))
                             {
                                 action.IsSuccessed = false;
                                 CurStep?.SetStatusMessage(StepStatus.Error, Biz.L("閲嶉噺瓒呴檺"));
@@ -532,7 +532,17 @@
                     CurPkgItem.Package.OPER_CODE = CurPosition.CurWipSNs.First().OPER_CODE;
                     CurPkgItem.Package.SEGMENT = CurPosition.CurWipSNs.First().SEGMENT;
                     FinishLevel++;
-                    action = SavePkgData(input, action);
+                    //瀹屾垚鍖呰鐨勫眰绾у皬浜庢渶澶栧眰鍖呰灞傜骇
+                    if (FinishLevel < PkgRule.Details.Max(q => q.PKG_LEVEL))
+                    {
+                        //褰撳墠澶勭悊鐨勫寘瑁呭眰绾у凡缁忓鐞嗗畬锛岀户缁線涓婁繚瀛�
+                        action = SavePkgData(input, action);
+                    }
+                    //鏈�澶栧眰鍖呰宸茬粡瀹屾垚鍖呰锛屼繚瀛樺寘瑁呮暟鎹埌鏁版嵁搴�
+                    else
+                    {
+                        action = CompletePkg();
+                    }
                 }
                 //澶勭悊鍏朵粬鍖呰灞傜骇鏁版嵁
                 else 

--
Gitblit v1.9.3