From 135599eb59bccb5f8f8a567ad174cc2af4357887 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期五, 13 六月 2025 14:39:25 +0800
Subject: [PATCH] 1.采购退货单优化 2.采购退料单拆分 3.采购入库优化

---
 service/QC/IpqcService.cs |  130 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 120 insertions(+), 10 deletions(-)

diff --git a/service/QC/IpqcService.cs b/service/QC/IpqcService.cs
index 4a34a12..d6c87f0 100644
--- a/service/QC/IpqcService.cs
+++ b/service/QC/IpqcService.cs
@@ -7,6 +7,7 @@
 using SqlSugar;
 using System.Data;
 using System.Data.SqlClient;
+using System.Text;
 using static Azure.Core.HttpHeader;
 using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
 
@@ -87,7 +88,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 +117,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();
     }
@@ -144,6 +153,7 @@
                 a => a.Guid == parsedGuid.ToString())
             .Where(a => (a.FSubmit ?? 0) == 0)
             .OrderByDescending(a => a.CreateDate)
+            .OrderBy(a => a.checkTimeSlot)
             .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
 
         return (pageList, totalCount);
@@ -151,20 +161,22 @@
 
 
     //鏇存柊涓嶅悎鏍兼弿杩�
-    public int updateIpqcRzxx(LLJDto dto)
+    public int updateIpqcRzxx(dynamic dto)
     {
         if (dto == null) throw new ArgumentNullException(nameof(dto), "鍙傛暟瀵硅薄涓嶈兘涓� null");
-
-        // 鍙傛暟鏍¢獙锛堟牴鎹瓨鍌ㄨ繃绋嬫柊澧炲弬鏁帮級
         if (string.IsNullOrEmpty(dto.pid?.ToString()))
             throw new ArgumentException("椤圭洰鏄庣粏id瀛樺湪闂锛岃鑱旂郴绠$悊鍛橈紒", nameof(dto.pid));
 
-        var withOracle = Db.Updateable<MesQaItemsDetectDetail5>()
-                .SetColumns(s => s.IPQCRZXX == dto.inRzxxValue)
-                .Where(s => s.Guid.ToString() == dto.pid)
-                .ExecuteCommand();
+        var sqlParams = new List<SugarParameter> {
+            new("@inRzxxValue", dto.inRzxxValue),
+            new("@pid", dto.pid)
+        };
 
-        return withOracle;
+        var sql = @"UPDATE MES_QA_ITEMS_DETECT_DETAIL5 
+                    SET ipqc_rzxx = @inRzxxValue 
+                    WHERE guid = @pid";
+
+        return Db.Ado.ExecuteCommand(sql, sqlParams);
     }
 
 
@@ -259,4 +271,102 @@
 
         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);
+    }
+
+
+    public dynamic GetIpqcXjDaa(dynamic unity)
+    {
+
+        var sqlParams = new List<SugarParameter> { };
+        sqlParams.Add(new("@xt", unity.xt));
+
+        var sql2 = new StringBuilder(@"
+        SELECT '['+DAA001+']['+DAA021+']' AS daaInfo,DAA001,DAA021
+        FROM WOMDAA
+        WHERE DAA015 = @xt AND daa018 NOT IN ('W:瀹屽伐', 'D:寰呭紑宸�')");
+
+        if (!string.IsNullOrWhiteSpace(unity.selectKey?.ToString()))
+        {
+            sqlParams.Add(new("@selectKey", unity.selectKey));
+            sql2.Append(@"
+            AND (DAA001 LIKE '%' + @selectKey + '%' 
+            OR DAA021 LIKE '%' + @selectKey + '%')");
+        }
+
+        var XcslItem = Db.Ado.SqlQuery<dynamic>(sql2.ToString(), sqlParams);
+
+        if (XcslItem == null)
+        {
+            throw new Exception("璇ユ潯浠朵笅鏃犲搴斿伐鍗曚俊鎭紝璇烽噸鏂拌緭鍏ワ紒");
+        }
+
+        return XcslItem;
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3