From 54445846644d77fb7a89f736f2c5bfe673ce3653 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期一, 23 九月 2024 13:51:30 +0800
Subject: [PATCH] 更改匹配检验项目的提示

---
 MES.Service/service/QC/RKJService.cs |   89 ++++++++++++++++++++++++++++++--------------
 1 files changed, 60 insertions(+), 29 deletions(-)

diff --git a/MES.Service/service/QC/RKJService.cs b/MES.Service/service/QC/RKJService.cs
index 8656f8a..589da1a 100644
--- a/MES.Service/service/QC/RKJService.cs
+++ b/MES.Service/service/QC/RKJService.cs
@@ -106,31 +106,36 @@
             string LEV = null;
             switch (item.FcheckLevel)
             {
-                case string s when s.Contains("S1"):
+                case null:
+                    LEV = ""; // 榛樿鍊�
+                    break;
+                case { } s when s.Contains("S1"):
                     LEV = "B.FLEVEL_S1";
                     break;
-                case string s when s.Contains("S2"):
+                case { } s when s.Contains("S2"):
                     LEV = "B.FLEVEL_S2";
                     break;
-                case string s when s.Contains("S3"):
+                case { } s when s.Contains("S3"):
                     LEV = "B.FLEVEL_S3";
                     break;
-                case string s when s.Contains("S4"):
+                case { } s when s.Contains("S4"):
                     LEV = "B.FLEVEL_S4";
                     break;
-                case string s when s.Contains("(I)"):
+                case { } s when s.Contains("(I)"):
                     LEV = "B.FLEVEL_I";
                     break;
-                case string s when s.Contains("(II)"):
+                case { } s when s.Contains("(II)"):
                     LEV = "B.FLEVEL_II";
                     break;
-                case string s when s.Contains("(III)"):
+                case { } s when s.Contains("(III)"):
                     LEV = "B.FLEVEL_III";
                     break;
                 default:
                     LEV = ""; // 榛樿鍊�
                     break;
             }
+
+            if (string.IsNullOrEmpty(LEV)) throw new Exception(item.QsCode+"涓嬬殑妫�楠屾按骞崇淮鎶ょ殑涓嶆纭�");
 
             var sql =
                 "SELECT " + LEV +
@@ -140,9 +145,13 @@
 
             var maxBillNo = db.Ado.SqlQuerySingle<string>(sql);
 
+            if (string.IsNullOrEmpty(maxBillNo))
+                throw new Exception(item.QsCode+"涓嬫病鏈�" + quantity + "杩欎釜鑼冨洿鐨勬娊鏍峰熀鍑�");
 
             var result = ExtractSubstring(item.FacLevel, '(', ')');
 
+            if (string.IsNullOrEmpty(result))
+                throw new Exception(item.QsCode+"缁存姢鐨勬帴鏀舵按骞充笉姝g‘锛屽簲璇ユ槸0.010---(AQL_0_0010)杩欐牱");
 
             sql = "SELECT FSAMPLE_SIZE_WORD, " + result +
                   " Result FROM MES_QM_AQL1 A LEFT JOIN MES_QM_AQL3 C ON C.AQL1_ID=A.ID WHERE A.SAMPLE_SIZE_NO= '" +
@@ -402,9 +411,9 @@
                 .ExecuteCommand();
         });
 
-        if (FcheckResu.Equals("涓嶅悎鏍�"))
-            //鑷姩鐢熸垚鍏ュ簱妫�寮傚父瀵圭瓥
-            saveDetect02(detail.Gid, detail.CreateBy);
+        // if (FcheckResu.Equals("涓嶅悎鏍�"))
+        //     //鑷姩鐢熸垚鍏ュ簱妫�寮傚父瀵圭瓥
+        //     saveDetect02(detail.Gid, detail.CreateBy);
 
         return useTransactionWithOracle;
     }
@@ -454,24 +463,37 @@
     }
 
 
-    public List<QsItemOqcReq> getPage(XJPageResult queryObj)
+    public (List<QsItemOqcReq> items, int TotalCount) getPage(
+        XJPageResult queryObj)
     {
         var db = SqlSugarHelper.GetInstance();
 
-        return db
-            .Queryable<QsItemOqcReq, Womdaa, MesItems, MesInvItemIns, Womdab,
-                MesInvTransaction, RKJDaa001>(
-                (a, da, b, c, d, ca, m) => new JoinQueryInfos(
-                    JoinType.Left, da.Daa001 == a.BillNo,
-                    JoinType.Left, a.ItemId == b.Id,
+        var totalCount = 0;
+
+        var qsItemOqcReqs = db
+            .Queryable<QsItemOqcReq, MesItems, MesInvItemIns, MesInvTransaction,
+                RKJDaa001, Womdaa>(
+                (a, b, c, ca, m, da) => new JoinQueryInfos(
+                    JoinType.Left, a.ItemNo == b.ItemNo,
                     JoinType.Left, a.BillNo == c.BillNo,
-                    JoinType.Left, c.CbillNo == d.Dab001,
                     JoinType.Left,
                     c.TransctionNo == ca.TransactionNo.ToString() &&
-                    c.Company == ca.Company && c.Factory == ca.Factory,
-                    JoinType.Left, c.Id == m.ItemInId && a.ItemNo == m.ItemNo
+                    c.Company == ca.Company &&
+                    c.Factory == ca.Factory,
+                    JoinType.Left, c.Id == m.ItemInId && a.ItemNo == m.ItemNo,
+                    JoinType.Left, da.Daa001 == c.RbillNo
                 ))
-            .Select((a, da, b, c, d, ca, m) => new QsItemOqcReq
+            .WhereIF(!string.IsNullOrEmpty(queryObj.id),
+                (a, b, c, ca, m, da) => a.Id.ToString() == queryObj.id)
+            .WhereIF(
+                StringUtil.IsNotNullOrEmpty(queryObj.result) &&
+                "鏈畬鎴�".Equals(queryObj.result),
+                (a, b, c, ca, m, da) => a.FcheckResu == null)
+            .WhereIF(
+                StringUtil.IsNotNullOrEmpty(queryObj.result) &&
+                !"鏈畬鎴�".Equals(queryObj.result),
+                (a, b, c, ca, m, da) => a.FcheckResu != null)
+            .Select((a, b, c, ca, m, da) => new QsItemOqcReq
             {
                 BillNo = a.BillNo,
                 Remarks = a.Remarks,
@@ -483,19 +505,18 @@
                 FcheckBy = a.FcheckBy,
                 FcheckDate = a.FcheckDate,
                 ReleaseNo = a.ReleaseNo,
-                // 娣诲姞鍏朵粬瀛楁
-                // 濡傛灉鍦� QsItemOqcReq 涓畾涔変簡棰濆瀛楁锛屽垯闇�瑕佸皢瀹冧滑璧嬪��
-                // 渚嬪:
                 ItemName = b.ItemName,
                 ItemModel = b.ItemModel,
-                TaskNo = c.TaskNo,
-                CbillNo = c.CbillNo,
-                Dab001 = d.Dab001,
+                Dab001 = m.LotNo,
+                ItemInId = m.ItemInId,
                 Daa015 = da.Daa015,
                 LineNo = c.LineNo,
                 Quantity = m.Quantity
-            }).OrderBy(a => a.CreateDate, OrderByType.Desc)
-            .ToPageList(queryObj.PageIndex, queryObj.Limit);
+            })
+            .OrderBy(a => a.CreateDate, OrderByType.Desc)
+            .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
+
+        return (qsItemOqcReqs, totalCount);
     }
 
     //鍒犻櫎涓昏〃骞朵笖杩炵骇鍒犻櫎瀛愯〃鍜屽瓩琛�
@@ -558,6 +579,8 @@
 
     public int UpdateQSItemDetail(QsItemOqcItemDetail detail)
     {
+        if (isRk(detail.ItemInId)) throw new Exception("宸叉湁鏉$爜鍏ュ簱锛屼笉鍏佽淇敼妫�楠岀粨鏋�");
+
         var withOracle = SqlSugarHelper.UseTransactionWithOracle(db =>
         {
             return db.Updateable<QsItemOqcItemDetail>()
@@ -578,6 +601,14 @@
         return withOracle;
     }
 
+    //淇敼缁撴灉鍓嶉獙璇佹槸鍚﹀叆搴�
+    private bool isRk(decimal? ItemInId)
+    {
+        var db = SqlSugarHelper.GetInstance();
+        return db.Queryable<MesInvItemInCDetails>()
+            .Where(s => s.ItemInId == ItemInId).Count() > 0;
+    }
+
 
     //涓昏〃淇敼澶囨敞瀛楁
     public int saveRemarksGid(RKJDto dto)

--
Gitblit v1.9.3