123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- using Abp;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace DataTransmission.Joint
- {
- public class Delay
- {
- private readonly CommonTool tool = new CommonTool();
- private readonly Workflow workflow = new Workflow();
- public DataTable GetDelay(string flowId)
- {
- var conn = tool.GetConSqlServer();
- var sql = $@" SELECT * FROM dbo.Flow11_Postpone WHERE FPE_FlowID = {flowId} AND FPE_AuditFlag IN (1) ";
- return tool.GetDataTable(sql, conn);
- }
- public string GetDelaySql(DataTable data, DataRow row, string orderId, DataTable org, DataTable user,DataRow delayModule) {
- var delayNum = 0;
- var pgDelaySql = string.Empty;
- foreach (DataRow delay in data.Rows)
- {
- var applyOrg = org.AsEnumerable().FirstOrDefault(x => x.Field<int?>("oldBmid").ToString() == delay["FPE_BMID"].ToString());
- var applyUser = user.AsEnumerable().FirstOrDefault(x => x.Field<int?>("oldUserId").ToString() == delay["FPE_UserID"].ToString());
- Entity.OrderDelay model = new Entity.OrderDelay();
- model.InitId();
- model.No = row["FSH_Code"].ToString().Trim();
- model.OrderId = orderId;
- model.ApplyDelayTime = DateTime.Parse(delay["FPE_FPDate"].ToString());
- model.ApplyOrgCode = delay["FPE_BMID"].ToString().ToString();
- model.CreatorOrgId = model.ApplyOrgCode;
- if (applyOrg != null) {
- model.ApplyOrgCode = applyOrg["Id"].ToString();
- model.ApplyOrgName = applyOrg["Name"].ToString();
- model.CreatorOrgId = applyOrg["Id"].ToString();
- model.AreaId = applyOrg["AreaId"].ToString();
- model.CreatorOrgName = applyOrg["Name"].ToString();
- model.CreatorOrgLevel = int.Parse(applyOrg["Level"].ToString());
- }
- model.EmployeeId = delay["FPE_UserID"].ToString();
- model.CreatorId = model.EmployeeId;
- if (applyUser != null)
- {
- model.EmployeeId = applyUser["Id"].ToString();
- model.EmployeeName = applyUser["Name"].ToString();
- model.CreatorId = applyUser["Id"].ToString();
- model.CreatorName = applyUser["Name"].ToString();
- }
- model.DelayNum = int.Parse(delay["FPE_SLimits"].ToString());
- model.DelayReason = delay["FPE_Reson"].ToString();
- model.AfterDelay = DateTime.Parse(delay["FPE_STTime"].ToString());
- model.DelayState = (Enum.EDelayState)int.Parse(delay["FPE_AuditFlag"].ToString());
- model.CreationTime = DateTime.Parse(delay["FPE_FPDate"].ToString());
- if (delayNum == 0)
- {
- pgDelaySql = $@"INSERT INTO ""public"".""order_delay"" (""Id"", ""No"", ""OrderId"", ""ApplyDelayTime"", ""ApplyOrgCode"", ""ApplyOrgName"", ""EmployeeId"", ""DelayNum"", ""DelayUnit"", ""DelayReason"",
- ""BeforeDelay"", ""AfterDelay"", ""DelayState"", ""IsProDelay"", ""CreationTime"", ""CreatorOrgId"", ""CreatorId"", ""AreaId"", ""CreatorOrgName"", ""CreatorName"",
- ""CreatorOrgLevel"", ""WorkflowId"", ""FileJson"", ""EmployeeName"", ""ExpiredTimeConfigId"", ""FlowedOrgIds"", ""FlowedUserIds"", ""LastModificationTime"", ""IsDeleted"", ""DeletionTime"") VALUES
- ('{model.Id}', '{model.No}', '{model.OrderId}', '{model.ApplyDelayTime}', '{model.ApplyOrgCode}', '{model.ApplyOrgName}', '{model.EmployeeId}', '{model.DelayNum}', 2, '{model.DelayReason}',
- NULL, '{model.AfterDelay}',{(int)model.DelayState}, 'f', '{model.CreationTime}', '{model.CreatorOrgId}', '{model.CreatorId}', '{model.AreaId}', '{model.CreatorOrgName}', '{model.CreatorName}',
- {model.CreatorOrgLevel}, '', NULL, '{model.EmployeeName}', NULL, NULL,NULL, NULL, 'f', NULL)";
- }
- else
- {
- pgDelaySql += $@",('{model.Id}', '{model.No}', '{model.OrderId}', '{model.ApplyDelayTime}', '{model.ApplyOrgCode}', '{model.ApplyOrgName}', '{model.EmployeeId}', '{model.DelayNum}', 2, '{model.DelayReason}',
- NULL, '{model.AfterDelay}',{(int)model.DelayState}, 'f', '{model.CreationTime}', '{model.CreatorOrgId}', '{model.CreatorId}', '{model.AreaId}', '{model.CreatorOrgName}', '{model.CreatorName}',
- {model.CreatorOrgLevel}, '', NULL, '{model.EmployeeName}', NULL, NULL, NULL, NULL, 'f', NULL)";
- }
- delayNum++;
- var pgDelayWorkflow = workflow.GetWorkflow(row["FSH_FlowID"].ToString(), "CityHotline");
- var pgDelayWorkflowSql = workflow.GetWorkflowSql(pgDelayWorkflow, row, orderId, org, user, delayModule, model);
- if (!string.IsNullOrEmpty(pgDelayWorkflowSql)) {
- pgDelaySql += pgDelayWorkflowSql;
- }
- }
- return pgDelaySql += ";";
- }
- }
- }
|