| | |
| | | using Newtonsoft.Json.Linq; |
| | | using System.Diagnostics; |
| | | using System.Dynamic; |
| | | using System.Net; |
| | | using System.Text; |
| | | using System.Text.Json.Nodes; |
| | | using System.Web; |
| | | |
| | | namespace MESApplication.Controllers.QcIssueResult; |
| | | |
| | |
| | | |
| | | try |
| | | { |
| | | // 新增URL解码处理逻辑 |
| | | DecodeUrlEncodedProperties(getQcIssueResultDetail); |
| | | |
| | | // 调用 QcIssueResultManager 中的 GetProcessNo 方法来启动钉钉工作流实例 |
| | | string result = m.GetProcessNo(getQcIssueResultDetail); |
| | |
| | | } |
| | | } |
| | | |
| | | // 新增解码方法 |
| | | private void DecodeUrlEncodedProperties(object obj) |
| | | { |
| | | if (obj == null) return; |
| | | |
| | | var properties = obj.GetType().GetProperties(); |
| | | foreach (var prop in properties) |
| | | { |
| | | // 只处理字符串类型的属性 |
| | | if (prop.PropertyType == typeof(string) && prop.CanWrite) |
| | | { |
| | | var value = prop.GetValue(obj) as string; |
| | | if (!string.IsNullOrEmpty(value)) |
| | | { |
| | | // 使用UTF8编码进行解码 |
| | | var decodedValue = HttpUtility.UrlDecode(value, Encoding.UTF8); |
| | | prop.SetValue(obj, decodedValue); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | [HttpPost("Save")] |
| | | public ResponseResult Save(ErpQcIssueResult erpQcIssueResult) |