From a619299816f2f632c7c6ba3a1bb869e2c212797d Mon Sep 17 00:00:00 2001
From: fcx <2246384483@qq.com>
Date: 星期五, 19 十二月 2025 14:12:33 +0800
Subject: [PATCH] 对添加巡检单物料编码进行去重

---
 StandardPda/MESApplication/Controllers/QC/SJController.cs |  232 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 221 insertions(+), 11 deletions(-)

diff --git a/StandardPda/MESApplication/Controllers/QC/SJController.cs b/StandardPda/MESApplication/Controllers/QC/SJController.cs
index 9ca90c1..aeeb63b 100644
--- a/StandardPda/MESApplication/Controllers/QC/SJController.cs
+++ b/StandardPda/MESApplication/Controllers/QC/SJController.cs
@@ -1,4 +1,4 @@
-锘縰sing MES.Service.DB;
+锘匡豢using MES.Service.DB;
 using MES.Service.Dto.service;
 using MES.Service.Modes;
 using MES.Service.service.QC;
@@ -6,9 +6,12 @@
 using Microsoft.AspNetCore.Mvc;
 using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
+using SixLabors.ImageSharp.Drawing;
+using SqlSugar;
 using System.Collections.Generic;
 using System.Data;
 using System.Dynamic;
+using DbType = System.Data.DbType;
 
 namespace MESApplication.Controllers.QC;
 
@@ -40,7 +43,7 @@
 
 
     [HttpPost("GetPage")]
-    public ResponseResult GetPage([FromBody] SJPageResult queryObj)
+    public ResponseResult GetPage([FromBody] SJPageResult2 queryObj)
     {
         try
         {
@@ -323,7 +326,7 @@
             return ResponseResult.ResponseError(ex);
         }
     }
-    
+
     //IqcQaSubmit
     [HttpPost("SJQaSubmit")]
     public ResponseResult SJQaSubmit(LLJDto rkjDto)
@@ -331,26 +334,33 @@
         try
         {
             OracleSQLHelper SQLHelper = new();
+
+            //------------------ SN鎵爜鏍¢獙 ------------------
             var sql1 =
-                string.Format(
-                    @"select SCAN_ITEM from ZMZ_TEST.MES_SJ_SCAN_ITEM_CK where mid='" + rkjDto.gid + "' and sn_no is null");
+                @"select SCAN_ITEM 
+                  from ZMZ_TEST.MES_SJ_SCAN_ITEM_CK 
+                  where mid='" + rkjDto.gid + "' and sn_no is null";
+
             var dataTable1 = SQLHelper.ExecuteQuery(sql1);
             string msg = "";
             for (var i = 0; i < dataTable1.Rows.Count; i++)
             {
-                msg = msg + "銆�"+dataTable1.Rows[i]["SCAN_ITEM"].ToString()+"銆�";
+                msg += "銆�" + dataTable1.Rows[i]["SCAN_ITEM"].ToString() + "銆�";
             }
-            if (msg != null && msg != "")
+
+            if (!string.IsNullOrEmpty(msg))
             {
                 return new ResponseResult
                 {
                     status = 1,
-                    message = msg+"鏈繘琛孲N鎵爜纭!",
+                    message = msg + "鏈繘琛孲N鎵爜纭!",
                     data = ""
                 };
             }
+
+            //------------------ 鍥惧儚涓�鑷存�ф牎楠� ------------------
             var msg1 = new SJService().YzxImgVerify(rkjDto.gid.ToString());
-            if (msg1[0]=="1")
+            if (msg1[0] == "1")
             {
                 return new ResponseResult
                 {
@@ -359,10 +369,171 @@
                     data = ""
                 };
             }
+
+            //------------------ 涓嶅悎鏍煎浘鐗囨槸鍚︿笂浼犳牎楠� ------------------
+            var sql2 =
+                @"select A.id, A.PROJ_NAME, B.id as id2
+                  from QS_ITEM_IPI_ITEM A
+                  left join MES_QS_IMAGE B on 777 || A.ID = B.FID
+                  where A.PID = '" + rkjDto.gid + @"' 
+                    and B.id is null 
+                    and IS_PASS = 0";
+
+            var dt2 = SQLHelper.ExecuteQuery(sql2);
+            if (dt2.Rows.Count > 0)
+            {
+                string err = "";
+                for (int i = 0; i < dt2.Rows.Count; i++)
+                {
+                    err += "銆�" + dt2.Rows[i]["PROJ_NAME"].ToString() + "銆�";
+                }
+
+                return new ResponseResult
+                {
+                    status = 1,
+                    message = err + "涓嶅悎鏍煎浘鐗囨湭涓婁紶锛�",
+                    data = ""
+                };
+            }
+
+            //------------------ 蹇呭~椤瑰浘鐗囨槸鍚︿笂浼犳牎楠� ------------------
+            var sql3 =
+                @"select A.id, A.PROJ_NAME, B.id as id2
+                  from QS_ITEM_IPI_ITEM A
+                  left join MES_QS_IMAGE B on 777 || A.ID = B.FID
+                  where A.PID = '" + rkjDto.gid + @"'
+                    and B.id is null
+                    and UP_FILE = 1";
+
+            var dt3 = SQLHelper.ExecuteQuery(sql3);
+            if (dt3.Rows.Count > 0)
+            {
+                string err = "";
+                for (int i = 0; i < dt3.Rows.Count; i++)
+                {
+                    err += "銆�" + dt3.Rows[i]["PROJ_NAME"].ToString() + "銆�";
+                }
+
+                return new ResponseResult
+                {
+                    status = 1,
+                    message = err + "蹇呭~椤瑰浘鐗囨湭涓婁紶锛�",
+                    data = ""
+                };
+            }
+
+            //------------------ 鏂板鏍¢獙锛氭鏌ユ槸鍚﹀瓨鍦ㄦ湭瀹屾垚锛圛S_PASS is null锛� ------------------
+            var sqlPass =
+                @"select ID, PROJ_NAME 
+                  from QS_ITEM_IPI_ITEM
+                  where PID = '" + rkjDto.gid + @"'
+                    and IS_PASS is null";
+
+            var dtPass = SQLHelper.ExecuteQuery(sqlPass);
+            if (dtPass.Rows.Count > 0)
+            {
+                string err = "";
+                for (int i = 0; i < dtPass.Rows.Count; i++)
+                {
+                    err += "銆�" + dtPass.Rows[i]["PROJ_NAME"].ToString() + "銆�";
+                }
+
+                return new ResponseResult
+                {
+                    status = 1,
+                    message = err + "椤圭洰鏈畬鎴愶紝涓嶅厑璁告彁浜ゆ楠岋紒",
+                    data = ""
+                };
+            }
+
+            //------------------ 涓讳笟鍔¢�昏緫锛氭彁浜� ------------------
             dynamic resultInfos = new ExpandoObject();
-            var tbBillList =
-                new SJService().SJQaSubmit(rkjDto);
+            var tbBillList = new SJService().SJQaSubmit(rkjDto);
             resultInfos.tbBillList = tbBillList;
+            //=================  鍒ゆ柇妫�楠屽悎鏍肩敓鎴愬贰妫�鍗� =========
+            var sqlpass6 = $@"update QS_ITEM_IPI_REQ set FSUBMIT = 1 where ID = '{rkjDto.gid}' ";
+            var dtPass7 = SQLHelper.ExecuteQuery(sqlpass6);
+
+            var sqlPass1 = $@"
+        SELECT 
+            IS_PASS
+        FROM QS_ITEM_IPI_REQ
+        WHERE  ID = '{rkjDto.gid}'
+         ";
+
+            var dtPass1 = SQLHelper.ExecuteQuery(sqlPass1);
+
+            var sqlPass3 = $@"select C.ID from QS_ITEM_IPI_REQ A
+    LEFT JOIN  V_MES_SJ B on b.BILL_NO = A.BILL_NO
+    LEFT JOIN WOMDAA C on C.DAA001 = B.DAA001
+    WHERE A.ID = '{rkjDto.gid}'
+    ";
+            var dtPass3 = SQLHelper.ExecuteQuery(sqlPass3);
+
+            var value4 = dtPass3.Rows[0][0];
+            int sqlPass2 = Convert.ToInt32(value4);
+
+            bool isPass = false;
+
+
+            if (dtPass1 != null && dtPass1.Rows.Count > 0)
+            {
+                var value = dtPass1.Rows[0]["IS_PASS"]?.ToString();
+
+                // 鍒ゆ柇涓哄悎鏍硷紙IS_PASS = 1锛�
+                if (value == "1")
+                {
+                    var sqlpass4 = $@"update QS_ITEM_IPI_REQ set FSUBMIT1 = 1 where ID = '{rkjDto.gid}' ";
+
+                    var dtPass5 = SQLHelper.ExecuteQuery(sqlpass4);
+
+                    isPass = true;
+                }
+                else
+                {
+                    var sqlpass4 = $@"update QS_ITEM_IPI_REQ set FSUBMIT1 = 0 where ID = '{rkjDto.gid}' ";
+
+                    var dtPass5 = SQLHelper.ExecuteQuery(sqlpass4);
+                }
+            }
+
+            // 濡傛灉鍚堟牸锛屾墽琛屽瓨鍌ㄨ繃绋�
+            if (isPass)
+            {
+                var db = SqlSugarHelper.GetInstance();
+
+                // ===== 杈撳嚭鍙傛暟 =====
+                var outFlag = new SugarParameter("P_FLAG", null,
+                    DbType.Int32, ParameterDirection.Output, 10);
+
+                var outText = new SugarParameter("P_TEXT", null,
+                    DbType.String, ParameterDirection.Output, 4000);
+
+                // ===== 杈撳叆鍙傛暟 =====
+                var parameters = new List<SugarParameter>
+        {
+            new SugarParameter("P_ID", sqlPass2, DbType.Int64, ParameterDirection.Input),
+            new SugarParameter("P_USER", rkjDto.userNo, DbType.String, ParameterDirection.Input),
+            new SugarParameter("P_ISH", 0, DbType.Int64, ParameterDirection.Input),
+
+            // 杈撳嚭鍙傛暟蹇呴』甯︿笂
+            outFlag,
+            outText
+        };
+                // ===== 鎵ц瀛樺偍杩囩▼ =====
+                db.Ado.ExecuteCommand(
+                    "BEGIN PRC_XJ_GENERATE(:P_ID, :P_USER, :P_ISH, :P_FLAG, :P_TEXT); END;",
+                    parameters);
+
+                // ===== 璇诲彇杈撳嚭鍙傛暟骞惰浆鎹㈡垚 ResponseResult =====
+                var result = new ResponseResult
+                {
+                    status = outFlag.Value?.ToString() == "1" ? 1 : 0, // 0 琛ㄧず鎴愬姛锛�1 琛ㄧず澶辫触
+                    message = outText.Value?.ToString()
+                };
+
+                return result;
+            }
             return new ResponseResult
             {
                 status = 0,
@@ -370,11 +541,23 @@
                 data = resultInfos
             };
         }
+
         catch (Exception ex)
         {
             return ResponseResult.ResponseError(ex);
         }
     }
+
+
+
+
+
+
+
+
+
+
+
 
     /// <summary>
     ///     鑾峰彇涓�鑷存�ф牳瀵归」鐩�
@@ -557,4 +740,31 @@
         }
     }
 
+    /// <summary>
+    ///     鑾峰彇棣栨鍗曟墍鏈変笉鑹弿杩�
+    /// </summary>
+    /// <param name="data"></param>
+    /// <returns></returns>
+    [HttpPost("getQSBlmsItem")]
+    public ResponseResult getQSBlmsItem([FromBody] JObject data)
+    {
+        var id = data["id"]?.ToString();
+
+        try
+        {
+            var tbBillList = new SJService().getBlmsItem(id);
+
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = tbBillList
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.9.3