using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OpenAuth.Repository.Domain.FireManagement
{
    /// <summary>
    /// 站点信息
    /// </summary>
    [SugarTable("fm_siteinfo")]
    public class FmSiteInfo
    {
        /// <summary>
        /// Desc:Id
        /// Default:
        /// Nullable:False
        /// </summary>           
        [SugarColumn(IsPrimaryKey = true)]
        public long Id { get; set; }

        /// <summary>
        /// Desc:站点名称
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string SiteName { get; set; }

        /// <summary>
        /// Desc:经度
        /// Default:
        /// Nullable:True
        /// </summary>           
        public decimal? lng { get; set; }

        /// <summary>
        /// Desc:纬度
        /// Default:
        /// Nullable:True
        /// </summary>           
        public decimal? lat { get; set; }

        /// <summary>
        /// Desc:是否值守
        /// Default:
        /// Nullable:False
        /// </summary>           
        public bool Isonduty { get; set; }

        /// <summary>
        /// Desc:是否接收消息
        /// Default:
        /// Nullable:False
        /// </summary>           
        public bool Isreceive { get; set; }

        /// <summary>
        /// Desc:状态（0-未审核，1-审核通过，2-未通过）
        /// Default:
        /// Nullable:False
        /// </summary>           
        public int State { get; set; }

        /// <summary>
        /// Desc:审核说明
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string StateContent { get; set; } = string.Empty;

        /// <summary>
        /// Desc:创建时间
        /// Default:
        /// Nullable:False
        /// </summary>           
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// Desc:创建人
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string CreateUserId { get; set; }

        /// <summary>
        /// Desc:审核时间
        /// Default:
        /// Nullable:True
        /// </summary>           
        public DateTime AuditTime { get; set; }

        /// <summary>
        /// Desc:站点图片
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string SiteImg { get; set; }

        /// <summary>
        /// Desc:站点地址
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string SiteAddress { get; set; }

        /// <summary>
        /// 负责人
        /// </summary>
        public string Director { get; set; }
        /// <summary>
        /// 负责人电话
        /// </summary>
        public string Phone { get; set; }
        /// <summary>
        /// 标语
        /// </summary>
        public string Slogan { get; set; }
        /// <summary>
        /// 站点相关人员
        /// </summary>
        [SugarColumn(IsIgnore = true)]
        //public List<Sugar_SiteUser> SiteUser { get; set; } = new List<Sugar_SiteUser>();
        [Navigate(NavigateType.OneToMany, nameof(FmSiteUser.SiteId))]
        public List<FmSiteUser> SiteUser { get; set; }
    }
}
