| | |
| | | |
| | | //异常处置单结果表 |
| | | [SugarTable("MES_QA_ITEMS_DETECT_01")] |
| | | public class QcIssueResultManager: Repository<QcIssueResults> |
| | | public class QcIssueResultManager : Repository<QcIssueResults> |
| | | { |
| | | /** |
| | | * 使用 Token 初始化账号Client |
| | |
| | | } |
| | | catch (TeaException err) |
| | | { |
| | | |
| | | return $"TeaException: Code={err.Code}, Message={err.Message}"; |
| | | |
| | | |
| | | return $"TeaException: Code={err.Code}, Message={err.Message}"; |
| | | |
| | | } |
| | | catch (Exception _err) |
| | | { |
| | |
| | | * 获取userid |
| | | * @return string 返回启动结果 |
| | | */ |
| | | public HttpClient _httpClient; |
| | | public HttpClient _httpClient; |
| | | public string DingTalkService() |
| | | { |
| | | _httpClient = new HttpClient(); |
| | |
| | | return await GetUserIdByMobile(accessToken, phone); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public async Task<string> GetUserIdByMobile(string accessToken, string mobile) |
| | | { |
| | |
| | | AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues2 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues |
| | | { |
| | | Name = "TextField_1LW382XRH1DS0", |
| | | Value = getQcIssueResultDetail.ItemName , |
| | | Value = getQcIssueResultDetail.ItemName, |
| | | }; |
| | | AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues3 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues |
| | | { |
| | |
| | | { |
| | | Name = "InnerContactField_WVZLUIPZ9J40", |
| | | Value = applicationUser, |
| | | |
| | | |
| | | }; |
| | | AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues9 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues |
| | | { |
| | |
| | | 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", |
| | |
| | | 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> |
| | | { |
| | |
| | | /** |
| | | * 将带有流程号和检验单号的新记录插入表中 |
| | | */ |
| | | public dynamic SaveProcessNo(string ReleaseNo,string ProcessNo) |
| | | public dynamic SaveProcessNo(string ReleaseNo, string ProcessNo, string StaffNo, string Department, string IqcStatus = null) |
| | | { |
| | | var QcIssueResults = GetQcIssueResults(ReleaseNo, ProcessNo, IqcStatus); |
| | | |
| | | var QcIssueResults = GetQcIssueResults(ReleaseNo, ProcessNo); |
| | | var ApplicantResults = GetApplicantResults(ProcessNo, StaffNo); |
| | | |
| | | var DepartmentResults = GetDepartmentResults(ProcessNo, Department); |
| | | |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | |
| | | db.Insertable(ApplicantResults).ExecuteCommand(); // 插入申请人数据 |
| | | db.Insertable(DepartmentResults).ExecuteCommand(); // 插入部门数据 |
| | | |
| | | return UseTransaction(db => |
| | | { |
| | | return SaveOrUpdateData(db, QcIssueResults) ? 1 : 0; |
| | | }) > 0; |
| | | try |
| | | { |
| | | // 统一使用事务db |
| | | //SaveOrUpdateApplicantData(db, ApplicantResults); |
| | | //SaveOrUpdateDepartmentData(db, DepartmentResults); |
| | | SaveOrUpdateData(db, QcIssueResults); |
| | | |
| | | return 1; |
| | | } |
| | | catch |
| | | { |
| | | db.RollbackTran(); |
| | | throw; |
| | | } |
| | | }); |
| | | } |
| | | |
| | | 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; |
| | | } |
| | | |
| | | public IqcApplicant GetApplicantResults(string ProcessNo, string StaffNo) |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | |
| | | var stafflist = db.Queryable<DingNameCode>() |
| | | .Where(t => t.STAFF_NO == StaffNo) |
| | | .Select(t => new DingNameCode |
| | | { |
| | | STAFF_NAME = t.STAFF_NAME, |
| | | PHONE_NUMBER = t.PHONE_NUMBER |
| | | }) |
| | | .ToList(); |
| | | |
| | | var ApplicantResults = new IqcApplicant |
| | | { |
| | | INSTANCEID = ProcessNo, |
| | | APPLICANTID = StaffNo, |
| | | APPLICANTNAME = stafflist[0].STAFF_NAME |
| | | }; |
| | | |
| | | return ApplicantResults; |
| | | } |
| | | |
| | | public IqcDepartment GetDepartmentResults(string ProcessNo, string Department) |
| | | { |
| | | |
| | | var DepartmentResults = new IqcDepartment |
| | | { |
| | | INSTANCEID = ProcessNo, |
| | | DEPARTMENTNAME = Department |
| | | }; |
| | | |
| | | return DepartmentResults; |
| | | } |
| | | |
| | | /** |
| | |
| | | BELONGINGWORKSHOP = erpQcIssueResult.AffiliatedWorkshop, |
| | | REVIEWSTATUS = erpQcIssueResult.FReview, |
| | | QcStatu = erpQcIssueResult.QcStatus, |
| | | ITEMNAME =erpQcIssueResult.ItemName, |
| | | ITEMNO =erpQcIssueResult.ItemNo, |
| | | ITEMNAME = erpQcIssueResult.ItemName, |
| | | ITEMNO = erpQcIssueResult.ItemNo, |
| | | SUPPLIERNAME = erpQcIssueResult.SupplierName, |
| | | REMARK=erpQcIssueResult.Remark |
| | | REMARK = erpQcIssueResult.Remark, |
| | | APPLICATIONRESON = erpQcIssueResult.Reason, |
| | | FLOW_CONDITION = GetFlowConditionValue(erpQcIssueResult.FReview) // 根据评审状态设置流程条件 |
| | | }; |
| | | |
| | | return mesQcIssueResults; |
| | |
| | | |
| | | if (mapping.Any()) |
| | | { |
| | | if (qcIssueResults.QcStatu=="拒绝") |
| | | if (qcIssueResults.QcStatu == "拒绝") |
| | | { |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | |
| | | ITEMNAME = qcIssueResults.ITEMNAME, |
| | | ITEMNO = qcIssueResults.ITEMNO, |
| | | SUPPLIERNAME = qcIssueResults.SUPPLIERNAME, |
| | | REMARK = qcIssueResults.REMARK |
| | | |
| | | REMARK = qcIssueResults.REMARK, |
| | | APPLICATIONRESON = qcIssueResults.APPLICATIONRESON, |
| | | FLOW_CONDITION = qcIssueResults.FLOW_CONDITION |
| | | }) |
| | | .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | |
| | | throw new Exception("未找到需要更新的记录"); |
| | | } |
| | | } |
| | | else{ |
| | | else |
| | | { |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | | // 只更新 ReleaseNo 和 FReview 两个字段 |
| | |
| | | ITEMNAME = qcIssueResults.ITEMNAME, |
| | | ITEMNO = qcIssueResults.ITEMNO, |
| | | SUPPLIERNAME = qcIssueResults.SUPPLIERNAME, |
| | | REMARK = qcIssueResults.REMARK |
| | | |
| | | REMARK = qcIssueResults.REMARK, |
| | | APPLICATIONRESON = qcIssueResults.APPLICATIONRESON, |
| | | FLOW_CONDITION = qcIssueResults.FLOW_CONDITION |
| | | }) |
| | | .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | |
| | | 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"; // 默认值 |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 响应模型 |