using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
using WIDESEAWCS_Core.DB.Models;
using WIDESEAWCS_Core.Tenants;

namespace WIDESEAWCS_Model.Models
{
    [SugarTable("Sys_Department", "组织架构"), MultiTenant]
    public class Sys_Department : BaseEntity
    {
        /// <summary>
        /// 组织ID
        /// </summary>
        [SugarColumn(IsIdentity = true, IsPrimaryKey = true, ColumnDescription = "组织ID")]
        public int DepartmentId { get; set; }

        /// <summary>
        /// 组织名称
        /// </summary>
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "组织名称")]
        public string DepartmentName { get; set; }

        /// <summary>
        /// 组织编号
        /// </summary>
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "组织编号")]
        public string DepartmentCode { get; set; }

        /// <summary>
        /// 上级组织
        /// </summary>
        [SugarColumn(IsNullable = false, ColumnDescription = "上级组织")]
        public int ParentId { get; set; }

        /// <summary>
        /// 部门类型
        /// </summary>
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "部门类型")]
        public string DepartmentType { get; set; }

        /// <summary>
        /// 是否可用
        /// </summary>
        [SugarColumn(IsNullable = false, ColumnDescription = "是否可用")]
        public int Enable { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [SugarColumn(IsNullable = true, Length = 2000, ColumnDescription = "备注")]
        public string Remark { get; set; }
    }
}