From aae5b9bafdf2145ab75817729f68fc3d86f9865f Mon Sep 17 00:00:00 2001
From: xwt <2740516069@qq.com>
Date: 星期一, 30 六月 2025 10:25:20 +0800
Subject: [PATCH] 钉钉接口新增流程条件,紧急放行

---
 StandardInterface/MESApplication/Controllers/QcIssueResult/QcIssueResultController.cs |    4 +-
 StandardInterface/MES.Service/Modes/QcIssueResult/QcIssueResults.cs                   |    8 ++++
 StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs           |   50 +++++++++++++++++++-----
 StandardInterface/MES.Service/Modes/QcIssueResult/GetQcIssueResultDetail.cs           |    5 ++
 4 files changed, 54 insertions(+), 13 deletions(-)

diff --git a/StandardInterface/MES.Service/Modes/QcIssueResult/GetQcIssueResultDetail.cs b/StandardInterface/MES.Service/Modes/QcIssueResult/GetQcIssueResultDetail.cs
index ef667f2..3f0ed36 100644
--- a/StandardInterface/MES.Service/Modes/QcIssueResult/GetQcIssueResultDetail.cs
+++ b/StandardInterface/MES.Service/Modes/QcIssueResult/GetQcIssueResultDetail.cs
@@ -48,4 +48,9 @@
     //鐢宠閮ㄩ棬
     public string? WorkShop { get; set; }
 
+    //绱ф�ユ斁琛�
+    public string? EMERGENCY { get; set; }
+    //娴佺▼鏉′欢
+    public string? FLOW_CONDITION { get; set; }
+
 }
diff --git a/StandardInterface/MES.Service/Modes/QcIssueResult/QcIssueResults.cs b/StandardInterface/MES.Service/Modes/QcIssueResult/QcIssueResults.cs
index a29c040..f958bb9 100644
--- a/StandardInterface/MES.Service/Modes/QcIssueResult/QcIssueResults.cs
+++ b/StandardInterface/MES.Service/Modes/QcIssueResult/QcIssueResults.cs
@@ -67,4 +67,12 @@
     [SugarColumn(ColumnName = "APPLICATIONRESON")]
     public string? APPLICATIONRESON { get; set; }
 
+    //绱ф�ユ斁琛�
+    [SugarColumn(ColumnName = "EMERGENCY")]
+    public string? EMERGENCY { get; set; }
+
+    //娴佺▼鏉′欢
+    [SugarColumn(ColumnName = "FLOW_CONDITION")]
+    public string? FLOW_CONDITION { get; set; }
+
 }
\ No newline at end of file
diff --git a/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs b/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs
index 251ea03..b4848cc 100644
--- a/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs
+++ b/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs
@@ -328,6 +328,16 @@
                 Name = "DDAttachment_23VB5MMC1R1C0",
                 Value = "闄勪欢",
             };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues17 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                Name = "TextField_X6NPRMTGFZ40",
+                Value = getQcIssueResultDetail.EMERGENCY,
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues18 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                Name = "NumberField_23LXMDXBXOTC0",
+                Value = GetFlowConditionValue(getQcIssueResultDetail.IqcStatus),
+            };
             AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners targetSelectActioners0 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners
             {
                 ActionerKey = "null",
@@ -354,7 +364,7 @@
                 FormComponentValues = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues>
                 {
                      formComponentValues1,formComponentValues2,formComponentValues3, formComponentValues4, formComponentValues5, formComponentValues6, formComponentValues7, formComponentValues8,
-                     formComponentValues9, formComponentValues11
+                     formComponentValues9, formComponentValues11, formComponentValues17, formComponentValues18
                 },
                 TargetSelectActioners = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners>
                 {
@@ -404,9 +414,9 @@
     /**
      * 灏嗗甫鏈夋祦绋嬪彿鍜屾楠屽崟鍙风殑鏂拌褰曟彃鍏ヨ〃涓�
      */
-    public dynamic SaveProcessNo(string ReleaseNo, string ProcessNo, string StaffNo, string Department)
+    public dynamic SaveProcessNo(string ReleaseNo, string ProcessNo, string StaffNo, string Department, string IqcStatus = null)
     {
-        var QcIssueResults = GetQcIssueResults(ReleaseNo, ProcessNo);
+        var QcIssueResults = GetQcIssueResults(ReleaseNo, ProcessNo, IqcStatus);
 
         var ApplicantResults = GetApplicantResults(ProcessNo, StaffNo);
 
@@ -436,13 +446,14 @@
         });
     }
 
-    public QcIssueResults GetQcIssueResults(string ReleaseNo, string ProcessNo)
+    public QcIssueResults GetQcIssueResults(string ReleaseNo, string ProcessNo, string IqcStatus = null)
     {
         var QcIssueResults = new QcIssueResults
         {
             INSTANCEID = ProcessNo,
             ReleaseNo = ReleaseNo,
-            QcStatu = ""
+            QcStatu = "",
+            FLOW_CONDITION = IqcStatus != null ? GetFlowConditionValue(IqcStatus) : null
         };
 
         return QcIssueResults;
@@ -526,7 +537,8 @@
             ITEMNO = erpQcIssueResult.ItemNo,
             SUPPLIERNAME = erpQcIssueResult.SupplierName,
             REMARK = erpQcIssueResult.Remark,
-            APPLICATIONRESON=erpQcIssueResult.Reason
+            APPLICATIONRESON = erpQcIssueResult.Reason,
+            FLOW_CONDITION = GetFlowConditionValue(erpQcIssueResult.FReview) // 鏍规嵁璇勫鐘舵�佽缃祦绋嬫潯浠�
         };
 
         return mesQcIssueResults;
@@ -569,8 +581,8 @@
                         ITEMNO = qcIssueResults.ITEMNO,
                         SUPPLIERNAME = qcIssueResults.SUPPLIERNAME,
                         REMARK = qcIssueResults.REMARK,
-                        APPLICATIONRESON=qcIssueResults.APPLICATIONRESON
-
+                        APPLICATIONRESON = qcIssueResults.APPLICATIONRESON,
+                        FLOW_CONDITION = qcIssueResults.FLOW_CONDITION
                     })
                     .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID) // 鏄惧紡鎸囧畾鏇存柊鏉′欢
                     .ExecuteCommand();
@@ -638,9 +650,8 @@
                         ITEMNO = qcIssueResults.ITEMNO,
                         SUPPLIERNAME = qcIssueResults.SUPPLIERNAME,
                         REMARK = qcIssueResults.REMARK,
-                        APPLICATIONRESON = qcIssueResults.APPLICATIONRESON
-
-
+                        APPLICATIONRESON = qcIssueResults.APPLICATIONRESON,
+                        FLOW_CONDITION = qcIssueResults.FLOW_CONDITION
                     })
                     .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID) // 鏄惧紡鎸囧畾鏇存柊鏉′欢
                     .ExecuteCommand();
@@ -721,7 +732,24 @@
             if (orUpdate) return true;
             throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
         }
+    }
 
+    /**
+     * 鏍规嵁璇勫鐘舵�佽幏鍙栨祦绋嬫潯浠跺��
+     */
+    private string GetFlowConditionValue(string iqcStatus)
+    {
+        switch (iqcStatus)
+        {
+            case "閫�璐�":
+                return "3";
+            case "鐗归噰/璁╂浣跨敤":
+                return "1";
+            case "鎸戦��/杩斿伐浣跨敤":
+                return "2";
+            default:
+                return "0"; // 榛樿鍊�
+        }
     }
 }
 
diff --git a/StandardInterface/MESApplication/Controllers/QcIssueResult/QcIssueResultController.cs b/StandardInterface/MESApplication/Controllers/QcIssueResult/QcIssueResultController.cs
index 5863393..bfad3ad 100644
--- a/StandardInterface/MESApplication/Controllers/QcIssueResult/QcIssueResultController.cs
+++ b/StandardInterface/MESApplication/Controllers/QcIssueResult/QcIssueResultController.cs
@@ -35,7 +35,7 @@
     [HttpPost("GetProcessNo")]
     public IActionResult StartDingtalkProcess([FromBody] GetQcIssueResultDetail getQcIssueResultDetail)
     {
-   
+
         try
         {
             // 鏂板URL瑙g爜澶勭悊閫昏緫
@@ -54,7 +54,7 @@
 
             dynamic resultInfos = new ExpandoObject();
             string ProcessNo = instanceId;
-            var save = m.SaveProcessNo(getQcIssueResultDetail.ReleaseNo, instanceId,getQcIssueResultDetail.StaffNo,getQcIssueResultDetail.Department);
+            var save = m.SaveProcessNo(getQcIssueResultDetail.ReleaseNo, instanceId, getQcIssueResultDetail.StaffNo, getQcIssueResultDetail.Department, getQcIssueResultDetail.IqcStatus);
             resultInfos.tbBillList = save;
 
             return Ok(result);

--
Gitblit v1.9.3