From 1be2fc056943ba8b9e62328430e15beee03e8a9f Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期一, 02 六月 2025 13:46:48 +0800
Subject: [PATCH] 1.生产补料优化 2.首检开发-v1

---
 entity/MesQaItemsDetectDetail5.cs     |   43 ++++++++
 service/Warehouse/MesItemBlManager.cs |    2 
 service/QC/IpqcService.cs             |   80 +++++++++++++++
 Controllers/QC/IpqcController.cs      |  127 ++++++++++++++++++++++++
 4 files changed, 246 insertions(+), 6 deletions(-)

diff --git a/Controllers/QC/IpqcController.cs b/Controllers/QC/IpqcController.cs
index 5f9fd73..37dc059 100644
--- a/Controllers/QC/IpqcController.cs
+++ b/Controllers/QC/IpqcController.cs
@@ -118,7 +118,9 @@
             return ResponseResult.ResponseError(ex);
         }
     }
-
+    /// <summary>
+    /// 棣栨鍗曟嵁鏌ヨ
+    /// </summary>
     [HttpPost("createByWomdaa")]
     public ResponseResult CreateByWomdaa(dynamic query)
     {
@@ -138,7 +140,9 @@
             return ResponseResult.ResponseError(ex);
         }
     }
-    
+    /// <summary>
+    /// 鑾峰彇琛ㄦ牸閰嶇疆
+    /// </summary>
     [HttpPost("GetTableConfig")]
     public ResponseResult GetTableConfig([FromBody] dynamic query)
     {
@@ -169,7 +173,9 @@
             return ResponseResult.ResponseError(ex);
         }
     }
-
+    /// <summary>
+    /// 淇濆瓨琛ㄦ牸閰嶇疆
+    /// </summary>
     [HttpPost("SaveTableConfig")]
     public ResponseResult SaveTableConfig([FromBody] dynamic query)
     {
@@ -201,6 +207,121 @@
             return ResponseResult.ResponseError(ex);
         }
     }
+    /// <summary>
+    /// 鑾峰彇璁よ瘉淇℃伅鍒楄〃
+    /// </summary>
+    [HttpPost("GetRzxxList")]
+    public ResponseResult GetRzxxList([FromBody] dynamic query)
+    {
+        try
+        {
+            if (query.mxguid == null)
+                throw new ArgumentException("妫�楠岄」鐩瓽UID涓嶈兘涓虹┖");
+
+            var rzxxList = m.GetRzxxList(query.mxguid?.ToString());
+            
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = rzxxList;
+
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+    /// <summary>
+    /// 鏇存柊璁よ瘉淇℃伅_鐢熶骇鏃ユ湡
+    /// </summary>
+    [HttpPost("updateScDate")]
+    public ResponseResult UpdateScDate([FromBody] dynamic query)
+    {
+        try
+        {
+            if (query.mxguid == null)
+                throw new ArgumentException("妫�楠岄」鐩瓽UID涓嶈兘涓虹┖");
+            if (query.scDateValue == null)
+                throw new ArgumentException("鏃ユ湡鍙傛暟涓嶈兘涓虹┖");
+
+            var affectedRows = m.UpdateScDate(
+                query.scDateValue?.ToString(),
+                query.mxguid?.ToString()
+            );
+
+            return new ResponseResult
+            {
+                status = affectedRows > 0 ? 0 : 1,
+                message = affectedRows > 0 ? "鏃ユ湡鏇存柊鎴愬姛" : "鏃犳暟鎹洿鏂�",
+                data = new { updated = affectedRows }
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    /// 淇濆瓨璁よ瘉淇℃伅鐩稿叧浣跨敤鏁伴噺
+    /// </summary>
+    [HttpPost("saveIpqcrzxxNum")]
+    public ResponseResult SaveIpqcrzxxNum([FromBody] dynamic query)
+    {
+        try
+        {
+            if (query.guid == null || query.ipqcrzxxNum == null)
+                throw new ArgumentException("鍙傛暟涓嶈兘涓虹┖");
+
+            var affectedRows = m.UpdateRzxxNum(
+                query.ipqcrzxxNum?.ToString(),
+                query.guid?.ToString()
+            );
+
+            return new ResponseResult
+            {
+                status = affectedRows > 0 ? 0 : 1,
+                message = affectedRows > 0 ? "鏁伴噺鏇存柊鎴愬姛" : "鏃犳暟鎹洿鏂�",
+                data = new { updated = affectedRows }
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+    /// <summary>
+    /// 淇濆瓨鍝佹按娴嬭瘯鏄惁鏈夊紓鍛�
+    /// </summary>
+    [HttpPost("saveIpqCpscs")]
+    public ResponseResult SaveIpqCpscs([FromBody] dynamic query)
+    {
+        try
+        {
+            if (query.guid == null || query.ipqCpscs == null)
+                throw new ArgumentException("鍙傛暟涓嶈兘涓虹┖");
+
+            var affectedRows = m.UpdateCpscs(
+                query.ipqCpscs?.ToString(),
+                query.guid?.ToString()
+            );
+
+            return new ResponseResult
+            {
+                status = affectedRows > 0 ? 0 : 1,
+                message = affectedRows > 0 ? "鏄惁鏈夋棤寮傚懗鏇存柊鎴愬姛" : "鏃犳暟鎹洿鏂�",
+                data = new { updated = affectedRows }
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
 
     
 }
\ No newline at end of file
diff --git a/entity/MesQaItemsDetectDetail5.cs b/entity/MesQaItemsDetectDetail5.cs
index f3db2e2..bdeaa8f 100644
--- a/entity/MesQaItemsDetectDetail5.cs
+++ b/entity/MesQaItemsDetectDetail5.cs
@@ -208,6 +208,49 @@
     [SugarColumn(ColumnName = "ipqc_rzxx")]
     public string? IPQCRZXX { get; set; }
 
+
+    /// <summary>
+    /// 璁よ瘉淇℃伅_鐢熶骇鏃ユ湡
+    /// </summary>
+    [SugarColumn(ColumnName = "ipqc_rzxx_date")]
+    public string? IPQCRZXXDate { get; set; }
+
+    /// <summary>
+    /// 璁よ瘉淇℃伅鐩稿叧浣跨敤鏁伴噺
+    /// </summary>
+    [SugarColumn(ColumnName = "ipqc_rzxx_num")]
+    public int? IPQCRZXXNum { get; set; }
+
+    /// <summary>
+    /// 鍝佹按娴嬭瘯_鏄惁鏈夊紓鍛�
+    /// </summary>
+    [SugarColumn(ColumnName = "ipqc_pscs")]
+    public string? IPQCpscs { get; set; }
+
+    /// <summary>
+    /// 鐗╂枡椤圭洰鍒嗙粍
+    /// </summary>
+    [SugarColumn(ColumnName = "FCHECK_TYPE")]
+    public string? FcheckType { get; set; }
+
+    /// <summary>
+    /// 姘存俯閫夋嫨
+    /// </summary>
+    [SugarColumn(ColumnName = "ipqc_zrxn_sel1")]
+    public string? IPQCZrxnSel1 { get; set; }
+
+    /// <summary>
+    /// 娴侀噺閫夋嫨
+    /// </summary>
+    [SugarColumn(ColumnName = "ipqc_zrxn_sel2")]
+    public string? IPQCZrxnSel2 { get; set; }
+
+    /// <summary>
+    /// 鍒剁儹鎬ц兘缁撴灉琛ㄦ牸
+    /// </summary>
+    [SugarColumn(ColumnName = "ipqc_zrxn_table")]
+    public string? IPQCZrxnTable { get; set; }    
+
     /// <summary>
     ///     鏍锋湰宸插綍鍏ユ暟
     /// </summary>
diff --git a/service/QC/IpqcService.cs b/service/QC/IpqcService.cs
index 4a34a12..5fb5477 100644
--- a/service/QC/IpqcService.cs
+++ b/service/QC/IpqcService.cs
@@ -87,7 +87,11 @@
                 a.Order,
                 a.Ybsl,
                 a.ISRZXX,
-                a.IPQCRZXX
+                a.IPQCRZXX,
+                a.IPQCRZXXDate,
+                a.IPQCRZXXNum,
+                a.IPQCpscs,
+                a.FcheckType,
             }).Select((a, b) => new MesQaItemsDetectDetail5
             {
                 Guid = a.Guid,
@@ -112,7 +116,11 @@
                 Ybsl = a.Ybsl,
                 YbslIn = Ybsl_In,
                 ISRZXX = a.ISRZXX,
-                IPQCRZXX = a.IPQCRZXX
+                IPQCRZXX = a.IPQCRZXX,
+                IPQCRZXXDate = a.IPQCRZXXDate.ToString(),
+                IPQCRZXXNum = a.IPQCRZXXNum,
+                IPQCpscs = a.IPQCpscs,
+                FcheckType =a.FcheckType,
             }).OrderBy(a => a.Order)
             .ToList();
     }
@@ -259,4 +267,72 @@
 
         return result;
     }
+
+    public List<dynamic> GetRzxxList(string mxguid)
+    {
+        var sqlParams = new List<SugarParameter> {
+            new("@mxguid", mxguid)
+        };
+
+        var sql = @"SELECT a.s_type, a.defect_name 
+                    FROM [dbo].[MES_DEFECT_CODE] a 
+                    WHERE a.s_type = '璁よ瘉淇℃伅' 
+                    AND a.pid = ( 
+                        SELECT TOP 1 b.guid 
+                        FROM [dbo].[MES_DEFECT_CODE] b 
+                        INNER JOIN [dbo].[MES_QA_ITEMS_DETECT_DETAIL5] d 
+                            ON b.defect_name = d.fcheck_item 
+                        WHERE d.guid = @mxguid 
+                        ORDER BY b.guid 
+                    )";
+
+        var result = Db.Ado.SqlQuery<dynamic>(sql, sqlParams);
+        
+        if (result == null || result.Count == 0)
+            throw new Exception("鏈壘鍒扮浉鍏宠璇佷俊鎭�");
+
+        return result;
+    }
+
+    public int UpdateScDate(string scDateValue, string mxguid)
+    {
+        var sqlParams = new List<SugarParameter> {
+            new("@scDateValue", scDateValue),
+            new("@mxguid", mxguid)
+        };
+
+        var sql = @"UPDATE MES_QA_ITEMS_DETECT_DETAIL5 
+                    SET ipqc_rzxx_date = @scDateValue 
+                    WHERE guid = @mxguid";
+
+        return Db.Ado.ExecuteCommand(sql, sqlParams);
+    }
+
+    public int UpdateRzxxNum(string ipqcrzxxNum, string mxguid)
+    {
+        var sqlParams = new List<SugarParameter> {
+            new("@ipqcrzxxNum", ipqcrzxxNum),
+            new("@mxguid", mxguid)
+        };
+
+        var sql = @"UPDATE MES_QA_ITEMS_DETECT_DETAIL5 
+                    SET ipqc_rzxx_num = @ipqcrzxxNum 
+                    WHERE guid = @mxguid";
+
+        return Db.Ado.ExecuteCommand(sql, sqlParams);
+    }
+
+    public int UpdateCpscs(string ipqCpscs, string mxguid)
+    {
+        var sqlParams = new List<SugarParameter> {
+            new("@ipqCpscs", ipqCpscs),
+            new("@mxguid", mxguid)
+        };
+
+        var sql = @"UPDATE MES_QA_ITEMS_DETECT_DETAIL5 
+                    SET ipqc_pscs = @ipqCpscs 
+                    WHERE guid = @mxguid";
+
+        return Db.Ado.ExecuteCommand(sql, sqlParams);
+    }
 }
\ No newline at end of file
diff --git a/service/Warehouse/MesItemBlManager.cs b/service/Warehouse/MesItemBlManager.cs
index 1dcfb9a..ca78cba 100644
--- a/service/Warehouse/MesItemBlManager.cs
+++ b/service/Warehouse/MesItemBlManager.cs
@@ -870,7 +870,7 @@
                 PbillNo = query.billNo,
                 ItemId = blDetail.Bld012,
                 Unit = blDetail.Bld009,
-                DepotId = (int)stockBarcode.DepotsId,
+                DepotId = (int)stockBarcode.DepotId,
                 Dabid = womdab.Guid,
             }).IgnoreColumns(true).ExecuteCommand();
 

--
Gitblit v1.9.3