From 263e0e39c18a4ade744b4d1111fe8dc9de7875e8 Mon Sep 17 00:00:00 2001
From: zyf <1071160500@qq.com>
Date: 星期一, 29 九月 2025 17:11:20 +0800
Subject: [PATCH] 平板纠正措施单(推送部分暂未完成)

---
 MES.Service/service/QC/SJService.cs |  485 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 458 insertions(+), 27 deletions(-)

diff --git a/MES.Service/service/QC/SJService.cs b/MES.Service/service/QC/SJService.cs
index 6b56ca5..3708add 100644
--- a/MES.Service/service/QC/SJService.cs
+++ b/MES.Service/service/QC/SJService.cs
@@ -6,6 +6,13 @@
 using DbType = System.Data.DbType;
 using System.Data;
 using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
+using AlibabaCloud.TeaUtil.Models;
+using MES.Service.Modes.QcIssueResult;
+using Newtonsoft.Json;
+using System.Diagnostics;
+using Tea;
+using MES.Service.Modes.DingAPI;
+using static System.Runtime.InteropServices.JavaScript.JSType;
 
 namespace MES.Service.service.QC;
 
@@ -43,10 +50,20 @@
 
         string[]? lineNo = null;
 
+        int totalCount = 0;
+
         //if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser))
         //    lineNo = _baseService.getUserLineNo(queryObj.StatusUser);
 
-        var data = db.Queryable<SJPageResult>()
+        var data = db.Queryable<SJPageResult, Womdaa, Womcaa, SysDepartment, MesUserDepartmentQc,MesItems> ((a,
+                    da,ca,d,dq,i) =>
+                new JoinQueryInfos(
+                    JoinType.Left, Convert.ToDecimal(a.Pbaid) == da.Id, // 鍏宠仈宸ュ崟淇℃伅
+                    JoinType.Left, da.Daa021 == ca.Caa020,//浠诲姟鍗曪紝鐢ㄤ簬鏌ヨ閿�鍞鍗曞彿
+                    JoinType.Left, d.Departmentid == Convert.ToDecimal(da.Daa013),//鏌ヨ杞﹂棿
+                    JoinType.Left, dq.Departmentcode == d.Departmentcode,//鏌ヨ鐢ㄦ埛鏉冮檺
+                    JoinType.Left, i.Id == Convert.ToDecimal(da.Daa002)//鏌ヨ鐢ㄦ埛鏉冮檺
+                ))
             //.WhereIF(lineNo != null && lineNo.Length > 0,
             //    a => lineNo.Contains(a.line))
             .WhereIF(queryObj.Id != null, a => a.Id == queryObj.Id)
@@ -55,14 +72,50 @@
             .WhereIF(
                 StringUtil.IsNotNullOrEmpty(queryObj.Result) &&
                 "鏈畬鎴�".Equals(queryObj.Result),
-                a => a.FSubmit == null)
+                a => a.FSubmit == "0")
             .WhereIF(
                 StringUtil.IsNotNullOrEmpty(queryObj.Result) &&
                 !"鏈畬鎴�".Equals(queryObj.Result),
-                a => a.FSubmit != null)
+                a => a.FSubmit == "1")
+            //鍖归厤鏉冮檺
+            .WhereIF(!string.IsNullOrEmpty(queryObj.LoginUser),
+                (a, da, ca, d, dq) => dq.Usercode == queryObj.LoginUser)
+            //鍖归厤鎼滅储瀛楃涓�
+            .WhereIF(!string.IsNullOrEmpty(queryObj.SearchValue),
+                (a, da, ca, d, dq,i) =>
+                a.BillNo.ToLower().Contains(queryObj.SearchValue.ToLower())||
+                i.ItemName.ToLower() .Contains(queryObj.SearchValue.ToLower()) ||
+                ca.Caa015.ToLower().Contains(queryObj.SearchValue.ToLower()) ||
+                i.ItemNo.ToLower().Contains(queryObj.SearchValue.ToLower()))
+            .Select((a, da, ca, d, dq) => new SJPageResult
+            {
+                Id = a.Id,
+                BillNo = a.BillNo,
+                StatusDate = a.StatusDate,
+                FName = a.FName,
+                Result = a.Result,
+                FSubmit = a.FSubmit,
+                FSubmitBy = a.FSubmitBy,
+                FSubmitDate = a.FSubmitDate,
+                MoidNum = a.MoidNum,
+                StatusUser = a.StatusUser,
+                Pbaid = a.Pbaid,
+                CreateTime = a.CreateTime,
+                Comments = a.Comments,
+                ItemMod = a.ItemMod,
+                ItemNo = a.ItemNo,
+                daa001 = a.daa001,
+                line = a.line,
+                Remarks = a.Remarks,
+                Daa003 = a.Daa003,
+                Daa004 = a.Daa004,
+                Daa008 = a.Daa008,
+                LineName = a.LineName,
+                SaleOrder = ca.Caa015,
+                DepartName = d.Departmentname
+            })
             .OrderBy(a => a.CreateTime, OrderByType.Desc);
-             var totalCount = data.Count();
-        var items = data.ToPageList(queryObj.PageIndex, queryObj.Limit);
+        var items = data.ToPageList(queryObj.PageIndex, queryObj.Limit,ref totalCount);
 
         return (items, totalCount);
     }
@@ -132,18 +185,32 @@
                 }).ToList();
     }
 
+    public List<SJBadReason>? GetReason(string billNo)
+    {
+        var db = SqlSugarHelper.GetInstance();
+
+        var count = db.Queryable<SJBadReason>().Where(s => s.BillNo == billNo).Count();
+
+        if (count <= 0) return null;
+
+        var reason = db
+            .Queryable<SJBadReason>()
+            .Where(s => s.BillNo == billNo).Select(
+                b => new SJBadReason
+                {
+                     Reason =b.Reason
+                }).ToList();
+
+        return reason;
+    }
+
     public List<QsItemIpiItem> getQSItems(decimal? pid, decimal? id)
     {
         var db = SqlSugarHelper.GetInstance();
-        var qsItemIpiItems = db
-            .Queryable<QsItemIpiItem>()
-            .WhereIF(pid > 0, a => a.Pid == pid)
-            .WhereIF(id > 0, a => a.Id == id).ToList();
+        var qsItemIpiItems = db.Queryable<QsItemIpiItem>().WhereIF(pid > 0, a => a.Pid == pid).WhereIF(id > 0, a => a.Id == id).ToList();
 
         var array = qsItemIpiItems.Select(s => s.Id).ToArray();
-        var qsItemIpiItemDetails = db.Queryable<QsItemIpiItemDetail>()
-            .Where(s => array.Contains(s.Pid))
-            .GroupBy(s => s.Pid)
+        var qsItemIpiItemDetails = db.Queryable<QsItemIpiItemDetail>().Where(s => array.Contains(s.Pid)).GroupBy(s => s.Pid)
             .Select(s => new
             {
                 s.Pid,
@@ -171,9 +238,7 @@
         });
 
         //浣跨敤linq琛ㄨ揪寮忚繃婊ゅ嚭鍥剧墖id涓嶄负绌虹殑鏁版嵁
-        var itemIpiItems =
-            qsItemIpiItems.Where(s => s.Picture is { Length: > 0 })
-                .ToList();
+        var itemIpiItems =qsItemIpiItems.Where(s => s.Picture is { Length: > 0 }).ToList();
         if (itemIpiItems.Count > 0)
             itemIpiItems.ForEach(s =>
             {
@@ -196,16 +261,14 @@
             db =>
             {
                 qsItemIpiReq.StatusDate = DateTime.Now;
-                var pid = db.Insertable(qsItemIpiReq)
-                    .ExecuteReturnIdentity();
+                var pid = db.Insertable(qsItemIpiReq).ExecuteReturnIdentity();
                 qsItemIpiReq.Id = pid;
 
                 item.gid = pid;
 
                 qsItemIpiItems.ForEach(s => s.Pid = pid);
 
-                return db.Insertable(qsItemIpiItems)
-                    .ExecuteCommand();
+                return db.Insertable(qsItemIpiItems).ExecuteCommand();
             });
         item.Items = getQSItems(qsItemIpiReq.Id, null);
 
@@ -234,22 +297,33 @@
 
     public QsItem SaveItem(QsItem item)
     {
+        var db = SqlSugarHelper.GetInstance();
+
+        var del = db.Deleteable<QsItemIpiItem>()
+            .Where(s=>s.Pid == item.gid)
+            .ExecuteCommand();
+
+        //QsItemIpiItemDetail
+        var del1 = db.Deleteable<QsItemIpiItemDetail>()
+            .Where(s => s.Gid == item.gid)
+            .ExecuteCommand();
+
         var qsItemIpiItems = item.Items;
         SqlSugarHelper.UseTransactionWithOracle(
             db =>
             {
                 qsItemIpiItems.ForEach(s => s.Pid = item.gid);
-
-                return db.Insertable(qsItemIpiItems)
-                    .ExecuteCommand();
+                return db.Insertable(qsItemIpiItems).ExecuteCommand();
             });
         item.Items = getQSItems(item.gid, null);
 
         //娌℃湁涓婁笅闄愮殑妫�楠岄」鐩嚜鍔ㄧ洏鐐逛负鍚堟牸
         item.Items.ForEach(s =>
         {
-            if (s.MaxValue != null || s.StandardValue != null ||
-                s.MinValue != null) return;
+            if (s.MaxValue != null || s.StandardValue != null || s.MinValue != null)
+            {
+                return;
+            }
             var detail = new QsItemIpiItemDetail();
             detail.Pid = s.Id;
             detail.Gid = item.gid;
@@ -281,7 +355,6 @@
                 item.CreateDate = DateTime.Now;
                 result.Add(item);
             }
-
             return db.Insertable(result).ExecuteCommand();
         });
 
@@ -425,6 +498,19 @@
                 .ExecuteCommand();
         });
     }
+    
+     
+    //NOTES
+    public int saveNotesPid(QsItem dto)
+    {
+        return SqlSugarHelper.UseTransactionWithOracle(db =>
+        {
+            return db.Updateable<QsItemIpiItem>()
+                .SetColumns(it =>it.Notes == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
+                .Where(it => it.Id == dto.pid)
+                .ExecuteCommand();
+        });
+    }
 
     //瀛欒〃淇敼澶囨敞瀛楁
     public int saveRemarksById(QsItem dto)
@@ -432,8 +518,7 @@
         return SqlSugarHelper.UseTransactionWithOracle(db =>
         {
             return db.Updateable<QsItemIpiItemDetail>()
-                .SetColumns(it =>
-                    it.Remarks == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
+                .SetColumns(it =>it.Remarks == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
                 .Where(it => it.Id == dto.id)
                 .ExecuteCommand();
         });
@@ -528,4 +613,350 @@
         });
     }
 
+    /// <summary>
+    /// 鑾峰彇閽夐拤閮ㄩ棬
+    /// </summary>
+    /// <returns></returns>
+    public List<DingDept> getDingDept()
+    {
+        var db = SqlSugarHelper.GetInstance();
+        return db.Queryable<DingDept>()
+                .Where(b => b.NoChild== 1)
+                .Select(b => new DingDept
+                {
+                    Id=b.Id,
+                    Name=b.Name
+                })
+                .ToList();
+    }
+
+    public List<DeptNode> BuildDeptTree()
+    {
+        var db = SqlSugarHelper.GetInstance();
+        var flatList = db.Queryable<DingDept>()
+            .ToList();
+        var lookup = flatList.ToDictionary(
+            d => d.Id,
+            d => new DeptNode
+            {
+                Id = d.Id,
+                Label = d.Name,
+                Value = d.Id
+            });
+
+        List<DeptNode> roots = new();
+
+        foreach (var dept in flatList)
+        {
+            if ((dept.Pid > 0 && lookup.ContainsKey(dept.Pid)))
+            {
+                lookup[dept.Pid].Children.Add(lookup[dept.Id]);
+            }
+            else
+            {
+                // parentId 涓� null 鐨勫氨鏄牴鑺傜偣
+                roots.Add(lookup[dept.Id]);
+            }
+        }
+
+        return roots;
+    }
+
+    /// <summary>
+    /// 鑾峰彇閽夐拤鍛樺伐
+    /// </summary>
+    /// <returns></returns>
+    public List<DingStaff> getDingUser()
+    {
+        var db = SqlSugarHelper.GetInstance();
+        return db.Queryable<DingStaff>()
+                .Select(b => new DingStaff
+                {
+                        StaffName=b.StaffName,
+                        Id=b .Id
+                })
+                .ToList();
+    }
+
+
+
+    /// <summary>
+    /// 寮傚父澶勭疆鍗曟帹閫侀拤閽�
+    /// </summary>
+    /// <returns></returns>
+    public static AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client CreateClient()
+    {
+        AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
+        config.Protocol = "https";
+        config.RegionId = "central";
+        return new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client(config);
+    }
+
+    public static AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client CreateClient1()
+    {
+        AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
+        config.Protocol = "https";
+        config.RegionId = "central";
+        return new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client(config);
+    }
+
+
+    public string GetToken()
+    {
+        AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client client = CreateClient1();
+        AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest getAccessTokenRequest = new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest
+        {
+            AppKey = "dingyzos0r1bizj7g6lr",
+            AppSecret = "-HP4RvK2OUbqhG3iBUpd_TPe5MZRj8cfLc0b8Skt8rhC3I38kVLY9SS8P3kLWFcH",
+        };
+
+        try
+        {
+            var response = client.GetAccessToken(getAccessTokenRequest);
+            return response.Body.AccessToken; // 杩斿洖鑾峰彇鍒扮殑 Access Token
+        }
+        catch (TeaException err)
+        {
+            Console.WriteLine($"TeaException: Code={err.Code}, Message={err.Message}");
+            return null;
+        }
+        catch (Exception _err)
+        {
+            Console.WriteLine($"Exception: {_err.Message}");
+            return null;
+        }
+    }
+
+    public string DingJZCSD(JzcsdData InData)
+    {
+
+        var db = SqlSugarHelper.GetInstance();
+
+        decimal numUserId = db.Queryable<DingStaff>()
+            .Where(t => t.StaffName == InData.Fname)
+            .Select(t => t.Id)
+            .First();
+        if (numUserId > 0)
+        {
+            string UserId = Convert.ToString(numUserId);
+
+
+            // 浣跨敤 JSON 搴忓垪鍖栬緭鍑哄璞$殑璇︾粏鍐呭
+            string InDataJson = JsonConvert.SerializeObject(InData, Formatting.Indented);
+            Debug.WriteLine("InDataDetail: " + InDataJson);
+
+            // 鑾峰彇 Access Token
+            string accessToken = GetToken();
+            if (string.IsNullOrEmpty(accessToken))
+            {
+                return "鑾峰彇 Access Token 澶辫触";
+            }
+
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client client = CreateClient();
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceHeaders startProcessInstanceHeaders = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceHeaders();
+            Debug.WriteLine(accessToken);
+            startProcessInstanceHeaders.XAcsDingtalkAccessToken = accessToken; // 浣跨敤鑾峰彇鍒扮殑 Access Token  
+            /*
+            浜у搧鍨嬪彿	TextField-K2AD4O5B
+            绾犳浜嬮」鏉ユ簮	DDMultiSelectField_19MZJHE2ZWM80
+            鎻愬嚭浜哄憳	InnerContactField_WY9BZDYT7W00
+            鎻愬嚭鏃ユ湡	DDDateField_JD4ISXXCNLS0
+            鎺ユ敹閮ㄩ棬	DepartmentField_SLLT1GL6RC00
+            璐熻矗浜�	    InnerContactField_1I3FYOICN4N40
+            鍥炲鏃ユ湡	DDDateField_1NPTPIPNEI1S0
+            闂鎻忚堪	TextareaField_1FUN513WLK4G0
+            瀹℃壒閫夋嫨	DDSelectField_WE67NWABXM80
+            */
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues0 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //浜у搧鍨嬪彿
+                Name = "TextField-K2AD4O5B",
+                Value = InData.Imodel
+            };
+
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues1 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //绾犳浜嬮」鏉ユ簮
+                Name = "DDMultiSelectField_19MZJHE2ZWM80",
+                Value = InData.Source
+                /* Value = JsonConvert.SerializeObject(new[] {
+                         new { value = InData.Source, label = "鍐呴儴瀹℃牳" }
+                     })*/
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues2 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //鎻愬嚭浜哄憳
+                Name = "InnerContactField_WY9BZDYT7W00",
+                Value = UserId,
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues3 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //鎻愬嚭鏃ユ湡
+                Name = "DDDateField_JD4ISXXCNLS0",
+                Value = DateTime.Now.ToString("yyyy-MM-dd"),
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues4 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //鎺ユ敹閮ㄩ棬
+                Name = "DepartmentField_SLLT1GL6RC00",
+                Value = InData.selectedDeptID,
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues5 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //璐熻矗浜�
+                Name = "InnerContactField_1I3FYOICN4N40",
+                Value = InData.selectedUserID
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues6 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //鍥炲鏃ユ湡
+                Name = "DDDateField_1NPTPIPNEI1S0",
+                Value = InData.ReplyDate,
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues7 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //闂鎻忚堪
+                Name = "TextareaField_1FUN513WLK4G0",
+                Value = InData.Reason,
+            };
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues8 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            {
+                //瀹℃壒閫夋嫨
+                Name = "DDSelectField_WE67NWABXM80",
+                Value = InData.selectedADeptID,
+            };
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues8 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //DDSelectField_WE67NWABXM80
+            //    Name = "InnerContactField_1I3FYOICN4N40",
+            //    Value = InData.se,
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues9 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //鍥炲鏃ユ湡
+            //    Name = "DDDateField_1NPTPIPNEI1S0",
+            //    Value = Convert.ToString(DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()),
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues10 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //鎻愬嚭閮ㄩ棬
+            //    Name = "DepartmentField_184EOWTFMJUK0",
+            //    Value = "鎸戦�夊唴瀹�",
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues11 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //绾犳鎺柦
+            //    Name = "TextareaField_1PZP4OZ8GSKG0",
+            //    Value = InData.Action,
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues12 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //绾犳鎺柦璐熻矗浜�
+            //    Name = "InnerContactField_9PR03WUFX7O0",
+            //    Value = ActionUserId,
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues13 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //瀹炰緥ID
+            //    Name = "api_instanceId",
+            //    Value = accessToken,
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues14 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //璁″垝瀹屾垚鏃堕棿
+            //    Name = "DDDateField_1G5HG8KPCY2O0",
+            //    Value = "鍚�",
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues15 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //鎻愬嚭鏃ユ湡
+            //    Name = "DDDateField_JD4ISXXCNLS0",
+            //    Value = Convert.ToString(DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()),
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues16 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //鍘熷洜鍒嗘瀽
+            //    Name = "TextareaField_N3W50F154DS0",
+            //    Value = InData.,
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues17 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+            //{
+            //    //浜у搧鍨嬪彿
+            //    Name = "TextField-K2AD4O5B",
+            //    Value = "闄勪欢",
+            //};
+
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners targetSelectActioners0 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners
+            //{
+            //    //
+            //    ActionerKey = "null",
+            //    ActionerUserIds = new List<string>
+            //{
+            //   UserId
+            //},
+            //};
+            //AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestApprovers approvers0 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestApprovers
+            //{
+            //    ActionType = "OR",
+            //    UserIds = new List<string>
+            //{
+            //    UserId
+            //},
+            //};
+
+
+            AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest startProcessInstanceRequest = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest
+            {
+                OriginatorUserId = UserId,
+                ProcessCode = "PROC-BBA5632D-DC7C-4267-A3E2-757E2B7023BC",
+                DeptId = 1,
+                FormComponentValues = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues>
+            {
+                 formComponentValues1,formComponentValues2,formComponentValues3, formComponentValues4, formComponentValues5, formComponentValues6, formComponentValues7, formComponentValues8
+                 //formComponentValues9,formComponentValues10, formComponentValues11, formComponentValues12, formComponentValues13, formComponentValues14
+            },
+            //    TargetSelectActioners = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners>
+            //{
+            //    targetSelectActioners0
+            //},
+            //    Approvers = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestApprovers>
+            //{
+            //    approvers0
+            //},
+                CcList = new List<string>
+            {
+               UserId
+            },
+                CcPosition = "START",
+
+            };
+            // 搴忓垪鍖� FormComponentValues 鍒楄〃涓� JSON 鏍煎紡
+            string formComponentValuesJson = JsonConvert.SerializeObject(startProcessInstanceRequest.FormComponentValues, Formatting.Indented);
+            Debug.WriteLine("FormComponentValues: " + formComponentValuesJson);
+            try
+            {
+                string requestContent = Newtonsoft.Json.JsonConvert.SerializeObject(startProcessInstanceRequest);
+                Debug.WriteLine("startProcessInstanceRequest鍐呭锛�");
+                Debug.WriteLine(requestContent);
+                var response = client.StartProcessInstanceWithOptions(startProcessInstanceRequest, startProcessInstanceHeaders, new RuntimeOptions());
+                return $"閽夐拤宸ヤ綔娴佸疄渚嬪惎鍔ㄦ垚鍔�: {Newtonsoft.Json.JsonConvert.SerializeObject(response.Body)}";
+            }
+            catch (TeaException err)
+            {
+                string requestContent = Newtonsoft.Json.JsonConvert.SerializeObject(startProcessInstanceRequest);
+                Debug.WriteLine("startProcessInstanceRequest鍐呭锛�");
+                Debug.WriteLine(startProcessInstanceRequest);
+                return $"TeaException: Code={err.Code}, Message={err.Message}";
+            }
+            catch (Exception _err)
+            {
+                return $"Exception: {_err.Message}";
+            }
+        }
+        else
+        {
+            return "鎮ㄤ笉鏄叕鍙告垚鍛樻垨杩樻湭琚姞鍏ュ埌鏁版嵁搴撲腑鎴栧悕瀛楀~鍐欓敊璇紝鏈壘鍒板尮閰嶇殑鐢ㄦ埛淇℃伅";
+        }
+    }
+   
 }
\ No newline at end of file

--
Gitblit v1.9.3