using DataSharing.Share.Dtos;
using DataSharing.Share.Enums;
using SqlSugar;
using System.ComponentModel;
using XF.Domain.Repository;
namespace DataSharing.RawData
{
///
/// 工单基础数据数据
///
[Description("工单基础数据数据")]
public class DsOrder : CreationEntity
{
///
/// 工单id
///
[SugarColumn(ColumnDescription = "工单ID", ColumnDataType = "varchar(50)")]
public string OrderId { get; set; }
///
/// 工单编号
///
[SugarColumn(ColumnDescription = "工单编号", ColumnDataType = "varchar(50)")]
public string OrderNo { get; set; }
///
/// 流程ID
///
[SugarColumn(ColumnDescription = "流程ID", ColumnDataType = "varchar(50)")]
public string? WorkflowId { get; set; }
///
/// 上传省工单编号
///
[SugarColumn(ColumnDescription = "上传省工单编号", ColumnDataType = "varchar(50)")]
public string? ProvinceNo { get; set; }
///
/// 外部编号
///
[SugarColumn(ColumnDescription = "外部编号", ColumnDataType = "varchar(50)")]
public string? ExternalId { get; set; }
///
/// 信件查询密码
///
[SugarColumn(ColumnDescription = "信件查询密码", ColumnDataType = "varchar(20)")]
public string? Password { get; set; }
///
/// 工单标题
///
[SugarColumn(ColumnDescription = "工单标题", ColumnDataType = "varchar(500)")]
public string Title { get; set; }
///
/// 来电/信人姓名
///
[SugarColumn(ColumnDescription = "来电/信人姓名", ColumnDataType = "varchar(20)")]
public string FromName { get; set; }
///
/// 联系电话
///
[SugarColumn(ColumnDescription = "联系电话", ColumnDataType = "varchar(30)")]
public string? Contact { get; set; }
///
/// 诉求内容
///
[SugarColumn(ColumnDescription = "诉求内容", ColumnDataType = "text")]
public string Content { get; set; }
///
/// 受理时间
///
[SugarColumn(ColumnDescription = "受理时间", IsNullable = true)]
public DateTime? CaseDate { get; set; }
///
/// 流程开启时间
///
[SugarColumn(ColumnDescription = "流程开启时间", IsNullable = true)]
public DateTime? StartTime { get; set; }
///
/// 通话记录ID(来源为电话的有值)
///
[SugarColumn(ColumnDescription = " 通话记录ID(来源为电话的有值)", IsNullable = true)]
public string? CallId { get; set; }
///
/// 第一次上传省上的时间
///
[SugarColumn(ColumnDescription = "第一次上传省上的时间", IsNullable = true)]
public DateTime? FirstSendProvinceTime { get; set; }
///
/// 最近一次推送时间
///
[SugarColumn(ColumnDescription = "最近一次推送时间", IsNullable = true)]
public DateTime? LastSendProvinceTime { get; set; }
///
/// 来源,区分省平台或110等其他平台同步过来的工单
///
public string? Source { get; set; }
///
/// 同步诉求渠道
///
[SugarColumn(ColumnDescription = "同步诉求渠道")]
public string? CaseSource { get; set; }
///
/// 同步诉求渠道编码
///
[SugarColumn(ColumnDescription = "同步诉求渠道编码")]
public string? CaseSourceCode { get; set; }
///
/// 热点Id
///
[SugarColumn(ColumnDescription = "热点Id")]
public string? HotspotId { get; set; }
///
/// 热点名称
///
[SugarColumn(ColumnDescription = "热点名称")]
public string? HotspotName { get; set; }
///
/// 热点全称
///
[SugarColumn(ColumnDescription = "热点全称")]
public string? HotspotSpliceName { get; set; }
///
/// 最新应办结时间
///
[SugarColumn(ColumnDescription = "最新应办结时间", IsNullable = true)]
public DateTime? ExpiredTime { get; set; }
///
/// 受理类型名称
///
[SugarColumn(ColumnDescription = "受理类型名称", IsNullable = true)]
public string? CaseType { get; set; }
///
/// 受理类型Code
///
[SugarColumn(ColumnDescription = "受理类型Code", IsNullable = true)]
public string? CaseTypeCode { get; set; }
///
/// 办理时长
///
[SugarColumn(ColumnDescription = "办理时长", IsNullable = true)]
public double? AllDuration { get; set; } = 0;
///
/// 是否为省工单
///
[SugarColumn(ColumnDescription = "是否为省工单")]
public bool IsProvince { get; set; } = false;
///
/// 办理状态--默认办理中,归档的时候更新为办理完成
///
[SugarColumn(ColumnDescription = "办理状态--默认办理中,归档的时候更新为办理完成", IsNullable = true)]
public string? HandleState { get; set; } = "办理中";
///
/// 实际办理人Code
///
public string? ActualHandlerId { get; set; }
///
/// 实际办理人名称
///
public string? ActualHandlerName { get; set; }
///
/// 实际办理部门名称
///
[SugarColumn(ColumnDescription = "实际办理部门名称", IsNullable = true)]
public string? ActualHandleOrgName { get; set; }
///
/// 实际办理部门编码
///
[SugarColumn(ColumnDescription = "实际办理部门编码", IsNullable = true)]
public string? ActualHandleOrgCode { get; set; }
///
/// 实际办理意见
///
[SugarColumn(ColumnDescription = "实际办理意见", IsNullable = true, ColumnDataType = "text")]
public string? ActualOpinion { get; set; }
///
/// 办结时间--归档的时间
///
[SugarColumn(ColumnDescription = "办结时间--归档的时间", IsNullable = true)]
public DateTime? ActualHandleTime { get; set; }
///
/// 是否公开---工单发布的时候选择是否公开
///
[SugarColumn(ColumnDescription = "是否公开---工单发布的时候选择是否公开", IsNullable = true)]
public EDsPublishState IsPublish { get; set; } = EDsPublishState.Unpublished;
///
///发布时间
///
[SugarColumn(ColumnDescription = "发布时间", IsNullable = true)]
public DateTime? PublishDate { get; set; }
///
/// 整理标题
///
[SugarColumn(ColumnDescription = "整理标题", IsNullable = true)]
public string? ArrangeTitle { get; set; }
///
/// 整理内容
///
[SugarColumn(ColumnDescription = "整理内容", IsNullable = true, ColumnDataType = "varchar(8000)")]
public string? ArrangeContent { get; set; }
///
/// 整理结果
///
[SugarColumn(ColumnDescription = "整理结果", IsNullable = true, ColumnDataType = "varchar(8000)")]
public string? ArrangeOpinion { get; set; }
///
/// 是否可以评价
///
[SugarColumn(ColumnDescription = "是否可以评价", IsNullable = true)]
public EVisitTypeState VisitTypeState { get; set; } = EVisitTypeState.UnVisit;
///
/// 附件
///
[SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)]
public List? FileJson { get; set; }
}
}