using Hotline.Share.Dtos.File;
using Hotline.Share.Dtos.Snapshot;
using Hotline.Share.Enums.Snapshot;
using SqlSugar;
using System.ComponentModel;
using XF.Domain.Repository;

namespace Hotline.Snapshot;

/// <summary>
/// 行业
/// </summary>
[Description("行业")]
public class Industry : CreationSoftDeleteEntity
{
    /// <summary>
    /// 行业名称
    /// </summary>
    [SugarColumn(ColumnDescription = "行业名称")]
    public string Name { get; set; }

    /// <summary>
    /// 标题追加信息
    /// </summary>
    [SugarColumn(ColumnDescription = "标题追加信息")]
    public string? TitleSuffix { get; set; }

    /// <summary>
    /// 审批部门Id
    /// </summary>
    [SugarColumn(ColumnDescription = "审批部门Id")]
    public string? ApproveOrgId { get; set; }

    /// <summary>
    /// 审批部门名字
    /// </summary>
    [SugarColumn(ColumnDescription = "审批部门名字")]
    public string? ApproveOrgName { get; set; }

    /// <summary>
    /// 受理类型
    /// </summary>
    [SugarColumn(ColumnDescription = "受理类型")]
    public string? AcceptType { get; set; }

    /// <summary>
    /// 受理类型代码
    /// </summary>
    [SugarColumn(ColumnDescription = "受理类型代码")]
    public string? AcceptTypeCode { get; set; }

    /// <summary>
    /// 市民发放红包金额(单位:元)
    /// </summary>
    [SugarColumn(ColumnDescription = "市民发放红包金额(单位:元)")]
    public double CitizenReadPackAmount { get; set; }

    /// <summary>
    /// 网络员发放红包金额(单位:元)
    /// </summary>
    [SugarColumn(ColumnDescription = "网络员发放红包金额(单位:元)")]
    public double GuiderReadPackAmount { get; set; }

    /// <summary>
    /// 是否启用
    /// </summary>
    [SugarColumn(ColumnDescription = "是否启用")]
    public bool IsEnable { get; set; }

    /// <summary>
    /// App是否启用
    /// </summary>
    [SugarColumn(ColumnDescription = "App是否启用")]
    public bool IsAppEnable { get; set; }

    /// <summary>
    /// 帮助引导用语
    /// </summary>
    [SugarColumn(ColumnDescription = "帮助引导用语")]
    public string? TxtHelpRemarks { get; set; }

    /// <summary>
    /// 宫格说明文本
    /// </summary>
    [SugarColumn(ColumnDescription = "宫格说明文本")]
    public string? TxtRemarks { get; set; }

    /// <summary>
    /// 关怀说明
    /// </summary>
    [SugarColumn(ColumnDescription = "关怀说明")]
    public string? TxtCareRemarks { get; set; }

    /// <summary>
    /// 排序
    /// </summary>
    [SugarColumn(ColumnDescription = "排序")]
    public int DisplayOrder { get; set; }

    /// <summary>
    /// 阶段性回复间隔时间(小时)
    /// </summary>
    [SugarColumn(ColumnDescription = "阶段性回复间隔时间(小时)")]
    public int IntervalTime { get; set; }

    /// <summary>
    /// 页面Url
    /// </summary>
    [SugarColumn(ColumnDescription = "页面Url")]
    public string? PageUrl { get; set; }

    /// <summary>
    /// 关怀页面Url
    /// </summary>
    [SugarColumn(ColumnDescription = "关怀页面Url")]
    public string? PageCareUrl { get; set; }

    /// <summary>
    /// 关联宣传学习
    /// 从字典中取"公告类型"
    /// </summary>
    [SugarColumn(ColumnDescription = "关联宣传学习")]
    public string? BulletinTypePublicityId { get; set; }

    /// <summary>
    /// 关联宣传学习
    /// 从字典中取"公告类型"
    /// </summary>
    [SugarColumn(ColumnDescription = "关联宣传学习")]
    public string? BulletinTypePublicityName { get; set; }

    /// <summary>
    /// 关联操作指引
    /// 从字典中取"随手拍公告类型"
    /// </summary>
    [SugarColumn(ColumnDescription = "关联操作指引")]
    public string? BulletinTypeGuideId { get; set; }

    /// <summary>
    /// 关联操作指引
    /// 从字典中取"随手拍公告类型"
    /// </summary>
    [SugarColumn(ColumnDescription = "关联操作指引")]
    public string? BulletinTypeGuideName { get; set; }

    /// <summary>
    /// 背景图片 url
    /// </summary>
    [SugarColumn(ColumnDescription = "背景图片 url")]
    public string? BackgroundImgUrl { get; set; }

    /// <summary>
    /// Banner 图片 url
    /// </summary>
    [SugarColumn(ColumnDescription = "Banner 图片 url")]
    public string? BannerImgUrl { get; set; }

    /// <summary>
    /// 宫格图
    /// </summary>
    [SugarColumn(ColumnDescription = "宫格图")]
    public string? CellImgUrl { get; set; }

    /// <summary>
    /// 关怀宫格图
    /// </summary>
    [SugarColumn(ColumnDescription = "关怀宫格图")]
    public string? CareCellImgUrl { get; set; }

    /// <summary>
    /// 行业类型
    /// </summary>
    [SugarColumn(ColumnDescription = "行业类型")]
    public EIndustryType IndustryType { get; set; }

    /// <summary>
    /// 是否开启积分
    /// </summary>
    [SugarColumn(ColumnDescription = "是否开启积分")]
    public bool? IsPoints { get; set; }

    /// <summary>
    /// 上报积分
    /// </summary>
    [SugarColumn(ColumnDescription = "上报积分")]
    public int? ReportPoints { get; set; }

    /// <summary>
    /// 审核同意积分
    /// </summary>
    [SugarColumn(ColumnDescription = "审核同意积分")]
    public int? ArgeePoints { get; set; }

    /// <summary>
    /// 审核不同意扣除积分
    /// </summary>
    [SugarColumn(ColumnDescription = "审核不同意扣除积分")]
    public int? RefusePoints { get; set; }

    /// <summary>
    /// 额外扣除积分
    /// </summary>
    [SugarColumn(ColumnDescription = "额外扣除积分")]
    public int? ExtraDeductedPoints { get; set; }

    /// <summary>
    /// 流程模板Code
    /// </summary>
    [SugarColumn(ColumnDescription = "流程模板Code")]
    public string? ModuleCode { get; set; }
}
