using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; using Hotline.FlowEngine.Workflows; using Hotline.Share.Dtos; using Hotline.Share.Dtos.File; using Hotline.Share.Dtos.FlowEngine; using Hotline.Share.Dtos.FlowEngine.Workflow; using Hotline.Share.Dtos.Order; using Hotline.Share.Enums.FlowEngine; using Hotline.Share.Enums.Order; using Hotline.Share.Enums.Settings; using SqlSugar; using XF.Domain.Repository; namespace Hotline.Orders { /// /// 特提 /// [Description("工单特提")] [SugarIndex("index_special_orderId", nameof(OrderSpecial.OrderId), OrderByType.Asc)] public class OrderSpecial : FullStateEntity { public string OrderId { get; set; } public string WorkflowId { get; set; } /// /// 下一节点code(defineStep.code) /// public string NextStepCode { get; set; } = string.Empty; public string NextStepName { get; set; } = string.Empty; public EFlowDirection? FlowDirection { get; set; } /// /// 办理对象类型 /// public EHandlerType? HandlerType { get; set; } /// /// 模板配置节点业务类型 /// public EBusinessType? BusinessType { get; set; } /// /// 节点类型 /// public EStepType? StepType { get; set; } /// /// 工单状态 /// public EOrderStatus? Status { get; set; } public string? StepCode { get; set; } = string.Empty; public string? StepName { get; set; } = string.Empty; [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)] public List NextHandlers { get; set; } /// /// 特提原因 /// [SugarColumn(ColumnDescription = "特提原因")] public string? Cause { get; set; } /// /// 特提理由 /// [SugarColumn(ColumnDescription = "特提理由", ColumnDataType = "text")] public string? Reason { get; set; } /// /// 办理时间限制(如:24小时、7个工作日) /// public int? TimeLimit { get; set; } public ETimeType? TimeLimitUnit { get; set; } = ETimeType.WorkDay; /// /// 是否修改期满时间 /// public bool AlterTime { get; set; } /// /// 特提意见 /// [SugarColumn(ColumnDescription = "特提意见", ColumnDataType = "text")] public string? Opinion { get; set; } /// /// 审核结果 0 待审核 1 审核通过 2 审核不通过 /// public int State { get; set; } [SugarColumn(ColumnDescription = "组织Id")] public string? OrgId { get; set; } public string? OrgName { get; set; } [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)] public List? FileJson { get; set; } [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)] public List? ReplyFileJson { get; set; } /// /// 特提类型 /// public ESpecialType? SpecialType { get; set; } /// /// 错件类型 /// //[SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)] [Navigate(NavigateType.OneToMany, nameof(OrderSpecialDetail.SpecialId))] public List ReTransactError { get; set; } /// /// 首次归档意见 /// [SugarColumn(ColumnDataType = "varchar(8000)")] public string? FirstFileOpinion { get; set; } /// /// 上次归档意见 /// [SugarColumn(ColumnDataType = "varchar(8000)")] public string? LastFileOpinion { get; set; } /// ///特提后最新节点Id /// [SugarColumn(ColumnDescription = "特提后最新节点Id")] public string? NewCurrentStepId { get; set; } /// /// 工单 /// [Navigate(NavigateType.OneToOne, nameof(OrderId))] public Order Order { get; set; } } //public class ReTransactError { // public string OrgId { get; set; } // public string OrgName { get; set; } // public string ErrorId { get; set; } // public string ErrorName { get; set; } //} }