using Hotline.Share.Dtos.File; using Hotline.Share.Dtos.Settings; using Hotline.Share.Enums.Order; using Hotline.Share.Enums.Settings; using Hotline.Share.Enums.Snapshot; using Hotline.Share.Requests; using Hotline.Share.Tools; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; using XF.Utility.EnumExtensions; namespace Hotline.Share.Dtos.Snapshot; internal class IndustryDto { } public class IndustryDetailOutDto : IndustryItemsOutDto { /// /// 背景图片 url /// public string? BackgroundImgUrl { get; set; } /// /// Banner 图片 url /// public string? BannerImgUrl { get; set; } /// /// 宫格图 /// public string? CellImgUrl { get; set; } /// /// 关怀宫格图 /// public string? CareCellImgUrl { get; set; } /// /// 附件集合(小程序上面可以下载的 doc 文件) /// public IList Files { get; set; } /// /// 阶段性回复间隔时间(小时) /// public int IntervalTime { get; set; } = 0; /// /// 关联宣传学习 /// 从字典中取"公告类型" /// public string BulletinTypePublicityId { get; set; } /// /// 关联宣传学习 /// 从字典中取"公告类型" /// public string BulletinTypePublicityName { get; set; } /// /// 关联操作指引 /// 从字典中取"公告类型" /// public string BulletinTypeGuideId { get; set; } /// /// 关联操作指引 /// 从字典中取"公告类型" /// public string BulletinTypeGuideName { get; set; } /// /// App是否启用 /// public bool IsAppEnable { get; set; } /// /// 是否开启积分 /// public bool? IsPoints { get; set; } } public class IndustryItemsOutDto : IndustryOutDto { /// /// 受理类型 /// public string AcceptType { get; set; } /// /// 受理类型代码 /// public string? AcceptTypeCode { get; set; } /// /// 标题追加信息 /// public string? TitleSuffix { get; set; } /// /// 审批部门Id /// public string? ApproveOrgId { get; set; } /// /// 审批部门名字 /// public string? ApproveOrgName { get; set; } /// /// 市民发放红包金额(单位:元) /// public double CitizenReadPackAmount { get; set; } /// /// 网络员发放红包金额(单位:元) /// public double GuiderReadPackAmount { get; set; } /// /// 是否启用 /// public bool IsEnable { get; set; } /// /// 是否启用 /// public string IsEnableTxt => IsEnable ? "启用" : "禁用"; /// /// 排序 /// public int DisplayOrder { get; set; } } public class IndustryOutDto { /// /// Id /// public string Id { get; set; } /// /// 名字 /// public string Name { get; set; } /// /// 帮助引导用语 /// public string? TxtHelpRemarks { get; set; } /// /// 宫格说明文本 /// public string? TxtRemarks { get; set; } /// /// 关怀说明 /// public string? TxtCareRemarks { get; set; } /// /// 页面Url /// public string? PageUrl { get; set; } /// /// 关怀页面Url /// public string? PageCareUrl { get; set; } /// /// 上报积分 /// public int? ReportPoints { get; set; } /// /// 审核同意积分 /// public int? ArgeePoints { get; set; } /// /// 审核不同意扣除积分 /// public int? RefusePoints { get; set; } /// /// 额外扣除积分 /// public int? ExtraDeductedPoints { get; set; } /// /// 是否开启积分 /// public bool? IsPoints { get; set; } } /// /// 行业集合入参 /// /// 名称 /// 审批部门 public record IndustryListInDto(string? Name, string? ApproveOrgName) : PagedRequest; /// /// 行业线索集合入参 /// /// 线索名称 /// 行业名称 public record IndustryCaseItemInDto(string? CaseName, string? IndustryName) : PagedRequest; public class SystemWebPageInDto { /// /// 页面类型; /// 1: 正常; /// 2: 关怀; /// [Required] public EPageType PageType { get; set; } /// /// 页面名称 /// [Required] public string Name { get; set; } } public class IndustryBaseOutDto { /// /// 行业信息 /// public IndustryOutDto Industry { get; set; } /// /// 通知公告Id /// public string? BulletinId { get; set; } /// /// 作业区域集合 /// public IList AreaTree { get; set; } = []; /// /// 附件集合 /// public IList Files { get; set; } = []; /// /// 作业场所集合 /// public IReadOnlyList Workplace { get; set; } /// /// 场所名称集合 /// public IReadOnlyList WorkplaceName { get; set; } /// /// 作业类型集合 /// public IReadOnlyList JobType { get; set; } /// /// 经营单位类别集合 /// public IReadOnlyList BusinessUnitType { get; set; } } public class UpdateIndustryInDto : AddIndustryDto { /// /// Id /// [Required] public string Id { get; set; } } public class AddIndustryDto { /// /// 行业名称 /// [Required] public string Name { get; set; } /// /// 标题追加信息 /// public string TitleSuffix { get; set; } = string.Empty; /// /// 审批部门Id /// public string? ApproveOrgId { get; set; } /// /// 审批部门名字 /// public string? ApproveOrgName { get; set; } /// /// 受理类型 /// public string AcceptType { get; set; } = string.Empty; /// /// 受理类型代码 /// public string? AcceptTypeCode { get; set; } /// /// 市民发放红包金额(单位:元) /// [Required] public int CitizenReadPackAmount { get; set; } /// /// 网络员发放红包金额(单位:元) /// [Required] public int GuiderReadPackAmount { get; set; } /// /// 是否启用 /// public bool IsEnable { get; set; } /// /// App是否启用 /// public bool IsAppEnable { get; set; } /// /// 帮助引导用语 /// public string? TxtHelpRemarks { get; set; } /// /// 宫格说明文本 /// public string TxtRemarks { get; set; } = string.Empty; /// /// 关怀说明 /// public string TxtCareRemarks { get; set; } /// /// 排序 /// public int DisplayOrder { get; set; } = 0; /// /// 阶段性回复间隔时间(小时) /// public int IntervalTime { get; set; } = 0; /// /// 页面Url /// public string PageUrl { get; set; } /// /// 关怀页面Url /// public string PageCareUrl { get; set; } /// /// 关联宣传学习 /// 从字典中取"公告类型" /// public string BulletinTypePublicityId { get; set; } /// /// 关联宣传学习 /// 从字典中取"公告类型" /// public string BulletinTypePublicityName { get; set; } /// /// 关联操作指引 /// 从字典中取"公告类型" /// public string BulletinTypeGuideId { get; set; } /// /// 关联操作指引 /// 从字典中取"公告类型" /// public string BulletinTypeGuideName { get; set; } /// /// 背景图片 url /// public string BackgroundImgUrl { get; set; } /// /// Banner 图片 url /// public string BannerImgUrl { get; set; } /// /// 宫格图 /// public string CellImgUrl { get; set; } /// /// 关怀宫格图 /// public string CareCellImgUrl { get; set; } /// /// 附件集合(小程序上面可以下载的 doc 文件) /// public IList Files { get; set; } /// /// 上报积分 /// public int? ReportPoints { get; set; } /// /// 审核同意积分 /// public int? ArgeePoints { get; set; } /// /// 审核不同意扣除积分 /// public int? RefusePoints { get; set; } /// /// 额外扣除积分 /// public int? ExtraDeductedPoints { get; set; } /// /// 是否开启积分 /// public bool? IsPoints { get; set; } } public class IndustryCaseItemOutDto : AddIndustryCaseDto { /// /// Id /// public string Id { get; set; } /// /// 行业名称 /// public string IndustryName { get; set; } /// /// 市民发放红包金额(单位:元) /// public string CitizenReadPackAmountTxt => CitizenReadPackAmount.ToYuanFinance(); /// /// 网络员发放红包金额(单位:元) /// public string GuiderReadPackAmountTxt => GuiderReadPackAmount.ToYuanFinance(); /// /// 是否启用 /// public string IsEnableTxt => IsEnable ? "启用" : "禁用"; } public class UpdateIndustryCaseDto : AddIndustryCaseDto { /// /// Id /// [Required] public string Id { get; set; } } public class AddIndustryCaseDto { /// /// 行业Id /// [Required] public string IndustryId { get; set; } /// /// 线索名称 /// [Required] public string Name { get; set; } /// /// 市民发放红包金额(单位:元) /// public double CitizenReadPackAmount { get; set; } /// /// 网络员发放红包金额(单位:元) /// public double GuiderReadPackAmount { get; set; } /// /// 是否启用 /// public bool IsEnable { get; set; } /// /// 排序 /// public int DisplayOrder { get; set; } } /// /// 行业短信模板集合入参 /// /// 行业名称 public record SnapshotSMSTemplateItemsInDto(string? IndustryName) : PagedRequest; public class SnapshotSMSTemplateItemsOutDto : AddSnapshotSMSTemplateInDto { /// /// Id /// public string Id { get; set; } /// /// 审核状态 /// public string StatusTxt => Status.GetDescription(); /// /// 行业名称 /// public string IndustryName { get; set; } /// /// 是否启用 /// public string IsEnableTxt => IsEnable ? "启用" : "禁用"; /// /// 是否公用 /// public string IsPublicTxt => IsPublic ? "是" : "否"; } public class UpdateSnapshotSMSTemplateInDto : AddSnapshotSMSTemplateInDto { /// /// Id /// public string Id { get; set; } } public class AddSnapshotSMSTemplateInDto { /// /// 行业Id /// [Required] public string IndustryId { get; set; } /// /// 模板内容 /// [Required] public string Content { get; set; } /// /// 审核状态 /// public ESnapshotSMSStatus Status { get; set; } /// /// 是否启用 /// public bool IsEnable { get; set; } /// /// 是否公用 /// public bool IsPublic { get; set; } /// /// 排序 /// public int DisplayOrder { get; set; } } /// /// 区域从业人员集合入参 /// /// 姓名 /// 联系方式 /// 区县 public record PractitionerItemsInDto(string? Name, string? PhoneNumber, string? SystemAreaName) : PagedRequest; public class PractitionerItemsOutDto { /// /// Id /// public string Id { get; set; } /// /// 名字 /// public string Name { get; set; } /// /// 区域Id /// public string SystemAreaId { get; set; } /// /// 区域名称 /// public string SystemAreaName { get; set; } /// /// 详细街道 /// public string Street { get; set; } /// /// 电话 /// public string PhoneNumber { get; set; } /// /// 性别 /// public EGender Gender { get; set; } /// /// 性别 /// public string GenderTxt => Gender.GetDescription(); } /// /// 修改行业记录入参 /// /// 编号 /// 修改人 /// 旧行业名称 /// 新行业名称 /// 开始时间 /// 结束时间 public record IndustryLogItemsInDto(string? No, string? ChangeName, string? oldIndustryName, string? IndustryName , DateTime? BeginTime, DateTime? EndTime) : PagedRequest; public class IndustryLogItemsOutDto { /// /// OrderId /// public string OrderId { get; set; } /// /// 行业名称 /// public string OldIndustryName { get; set; } /// /// 行业名称 /// public string IndustryName { get; set; } /// /// 编号 /// public string No { get; set; } /// /// 标题 /// public string Title { get; set; } /// /// 时间 /// public DateTime CreationTime { get; set; } /// /// 修改人 /// public string CreatorName { get; set; } }