using Lada.Framework.Data.Domains.Categories;
using Lada.Framework.DTO;
using System.ComponentModel.DataAnnotations;

namespace Ladaer.BackEnd.Infrastructures.DTO.Models.Categories
{
    public class AgencyModel : BaseModel<int>
    {
        /// <summary>
        /// Tên chi nhánh
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// Mô tả
        /// </summary>
        public string Description { get; set; }

        /// <summary>
        /// Mã chi nhánh
        /// </summary>
        public string Code { get; set; }

        /// <summary>
        /// Đại lý cha
        /// </summary>
        public int ParentId { get; set; }

        /// <summary>
        /// Người đại diện pháp lý (người của đại lý)
        /// Nếu là phòng ban của LADA thì giá trị là 0
        /// </summary>
        public int RepresentativeId { get; set; } = 0;

        public int ManagerId { get; set; } = 0;

        public int DisplayOrder { get; set; }

        /// <summary>
        /// Trạng thái Agency
        /// </summary>
        public AgencyStatus Status { get; set; } = AgencyStatus.WaitToActive;

        public int CityId { get; set; }
        public int DistrictId { get; set; }
        public int WardId { get; set; }
        public string Address { get; set; }


        #region Thông tin doanh nghiệp
        /// <summary>
        /// Tên doanh nghiệp
        /// </summary>

        public string CompanyName { get; set; } = "";

        
        public string CompanyPhone { get; set; } = "";


        public string FounderName { get; set; } = "";

        /// <summary>
        /// Mã số thuế
        /// </summary>

        public string CompanyTaxCode { get; set; } = "";

        /// <summary>
        /// Địa chỉ công ty / xuất hóa đơn
        /// </summary>

        public string CompanyAddress { get; set; } = "";
        #endregion


        public AgencyType AgencyType { get; set; }

    }
}
