From aa63b28eb1187509cfc54d4e56f5f4f669021563 Mon Sep 17 00:00:00 2001
From: fcx <2246384483@qq.com>
Date: 星期五, 19 十二月 2025 13:49:43 +0800
Subject: [PATCH] 1,巡检A工序不合格需要重新生成一张新的A工序;

---
 StandardPda/MESApplication/Controllers/QC/XJController.cs  |   34 ++++++++
 StandardPda/MES.Service/Dto/service/CreateInspectionDto.cs |   24 ++++++
 StandardPda/MES.Service/service/QC/XJService.cs            |  158 +++++++++++++++++++++++++++++++++------
 3 files changed, 191 insertions(+), 25 deletions(-)

diff --git a/StandardPda/MES.Service/Dto/service/CreateInspectionDto.cs b/StandardPda/MES.Service/Dto/service/CreateInspectionDto.cs
new file mode 100644
index 0000000..81d3b30
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/CreateInspectionDto.cs
@@ -0,0 +1,24 @@
+锘縩amespace MES.Service.Dto.service
+{
+    public class CreateInspectionDto
+    {
+        /// <summary>
+        /// 鐢熶骇绾垮埆
+        /// </summary>
+        public string LineNo { get; set; }   // 鐢熶骇绾垮埆
+        /// <summary>
+        /// 鐗╂枡缂栫爜
+        /// </summary>
+        public string ItemNo { get; set; }   // 鐗╂枡缂栫爜
+        /// <summary>
+        /// 宸ュ崟缂栧彿
+        /// </summary>
+        public string Daa001 { get; set; }   // 宸ュ崟缂栧彿
+        /// <summary>
+        /// 鐧诲綍浜鸿处鍙�
+        /// </summary>
+        public string account { get; set; }   // 宸ュ崟缂栧彿
+
+
+    }
+}
diff --git a/StandardPda/MES.Service/service/QC/XJService.cs b/StandardPda/MES.Service/service/QC/XJService.cs
index dc1a173..68b0d77 100644
--- a/StandardPda/MES.Service/service/QC/XJService.cs
+++ b/StandardPda/MES.Service/service/QC/XJService.cs
@@ -4,6 +4,8 @@
 using MES.Service.util;
 using SqlSugar;
 using System.Data;
+using System.Dynamic;
+using DbType = System.Data.DbType;
 
 namespace MES.Service.service.QC;
 
@@ -14,7 +16,7 @@
     private readonly BaseService _baseService = new();
 
 
-    private readonly string[] statusArray = ["寮�宸�", "寰呭紑宸�"];
+    private readonly string[] statusArray = ["宸插紑宸�", "寰呭紑宸�"];
 
     //鐢熸垚鏈�鏂扮殑妫�楠屽崟鍙�
     public string getMaxReleaseNo()
@@ -387,6 +389,16 @@
 
 
 
+
+            var sqlPass3 = $@"select ID from  QS_QA_ITEM_XJ 
+    WHERE ID = '{rkjDto.gid}'
+    ";
+            var dtPass3 = SQLHelper.ExecuteQuery(sqlPass3);
+
+            var value4 = dtPass3.Rows[0][0];
+            int sqlPass2 = Convert.ToInt32(value4);
+
+
             if (dt.Rows.Count > 0)
             {
                 var resu = dt.Rows[0]["FCHECK_RESU"]?.ToString();
@@ -399,6 +411,65 @@
           where ID = '" + rkjDto.gid + "'";
                 SQLHelper.ExecuteNonQuery(sqlUpdate);
             }
+
+            var resu1 = dt.Rows[0]["FCHECK_RESU"]?.ToString();
+
+            var fsubmit2 = resu1 == "鍚堟牸" ? 1 : 0;
+
+
+            if (fsubmit2 == 0)
+            {
+                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),
+            new SugarParameter("P_RELEASE_NO",rkjDto.releaseNo,DbType.String,ParameterDirection.Input),
+
+            // 杈撳嚭鍙傛暟蹇呴』甯︿笂
+            outFlag,
+            outText
+        };
+                // ===== 鎵ц瀛樺偍杩囩▼ =====
+                db.Ado.ExecuteCommand(
+                    "BEGIN PRC_XJ_GENERATE_two(:P_ID, :P_USER, :P_ISH,:P_RELEASE_NO, :P_FLAG, :P_TEXT); END;",
+                    parameters);
+
+                // ===== 璇诲彇杈撳嚭鍙傛暟骞惰浆鎹㈡垚 ResponseResult =====
+                var result = new ResponseResult
+                {
+                    status = outFlag.Value?.ToString() == "1" ? 1 : 0, // 0 琛ㄧず鎴愬姛锛�1 琛ㄧず澶辫触
+                    message = outText.Value?.ToString()
+                };
+
+                var useTransactionWithOracle1 =
+                SqlSugarHelper.UseTransactionWithOracle(db =>
+                {
+                    return db.Updateable<QsQaItemXj>()
+                        .SetColumns(s => s.Fsubmit == 1)
+                        .SetColumns(s => s.FsubmitBy == rkjDto.userNo)
+                        .SetColumns(s => s.FsubmitDate == DateTime.Now)
+                        .Where(s => s.Id == rkjDto.gid)
+                        .ExecuteCommand();
+                });
+                return new ResponseResult
+                {
+                    status = 0,
+                    message = "鎻愪氦鎴愬姛",
+                    data = useTransactionWithOracle1
+                };
+            }
+
 
             var useTransactionWithOracle =
                 SqlSugarHelper.UseTransactionWithOracle(db =>
@@ -942,25 +1013,6 @@
 
 
 
-    /// <summary>
-    /// 鑾峰彇宸℃妫�鍗曟墍鏈変笉鑹弿杩�
-    /// </summary>
-    /// <param name="id">妫�楠屽崟ID</param>
-    /// <returns>涓嶈壇鎻忚堪鏁版嵁琛�</returns>
-    public DataTable ggetBlmsItem1(string id)
-    {
-        OracleSQLHelper SQLHelper = new();
-        // 鏌ヨ棣栨妫�楠屽崟鐨勪笉鑹弿杩�
-        var sql1 = string.Format(
-            @"select PROJ_NAME, REMARKS 
-              from QS_QA_ITEM_XJ01 f 
-              where PID = '" + id + "' and REMARKS is not null  order by PROJ_NAME");
-
-        return SQLHelper.ExecuteQuery(sql1);
-    }
-
-
-
 
     //瀛欒〃淇敼澶囨敞瀛楁
     public int saveRemarksById(XJDto dto)
@@ -973,10 +1025,66 @@
                 .Where(it => it.Id == dto.id)
                 .ExecuteCommand();
         });
-
-
-
-
-
     }
+
+    /// <summary>
+    /// 娣诲姞宸℃鍗�
+    /// </summary>
+    public ResponseResult createInspection(CreateInspectionDto data)
+    {
+        try
+        {
+            
+
+            OracleSQLHelper SQLHelper = new();
+            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_line_type", data.LineNo, DbType.String, ParameterDirection.Input),
+            new SugarParameter("P_Work_order_number", data.Daa001, DbType.String, ParameterDirection.Input),
+            new SugarParameter("P_coding", data.ItemNo, DbType.String, ParameterDirection.Input),
+            new SugarParameter("P_USER", data.account, DbType.String, ParameterDirection.Input),
+            new SugarParameter("P_ISH", 0, DbType.Int64, ParameterDirection.Input),
+
+            // 杈撳嚭鍙傛暟蹇呴』甯︿笂
+            outFlag,
+            outText
+        };
+            // ===== 鎵ц瀛樺偍杩囩▼ =====
+            db.Ado.ExecuteCommand(
+                "BEGIN PRC_XJ_GENERATE_one(:P_line_type,:P_Work_order_number,:P_coding, :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,
+            //    message = "OK",
+            //    data = result
+            //};
+
+
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
 }
\ No newline at end of file
diff --git a/StandardPda/MESApplication/Controllers/QC/XJController.cs b/StandardPda/MESApplication/Controllers/QC/XJController.cs
index 611e564..a7db76f 100644
--- a/StandardPda/MESApplication/Controllers/QC/XJController.cs
+++ b/StandardPda/MESApplication/Controllers/QC/XJController.cs
@@ -529,6 +529,40 @@
 
 
 
+    /// <summary>
+    ///     娣诲姞宸℃鍗�
+    /// </summary>
+    /// <param name="data"></param>
+    /// <returns></returns>
+    [HttpPost("createInspection")]
+    public ResponseResult createInspection([FromBody] CreateInspectionDto data)
+    {
+        try
+        {
+            var tbBillList = new XJService().createInspection(data);
+
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = tbBillList
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+
+
+
+
+
+
+
+
+
 
 
 

--
Gitblit v1.9.3