using FreeSql.DataAnnotations; using F9WebAiTest.Domain.Enums.SYS.Gongyingshangs; using F9WebAiTest.Domain.Events.SYS.Gongyingshangs; namespace F9WebAiTest.Domain.Entities.SYS.Gongyingshangs; /// /// 往来单位(供应商 / 客户):按业务类型(干茧/配件/副产品/生丝)与分组(供应商/客户)维护。 /// [Table(Name = "sys_gongyingshang")] public class Gongyingshang : AggregateRoot { /// 业务类型 [Column(Name = "businesstype")] public Gys_Type_Enum Type { get; private set; } /// 往来单位名称 [Column(Name = "name")] public string Name { get; private set; } /// 电话 [Column(Name = "phone")] public string Phone { get; private set; } /// 联系人 [Column(Name = "lianxiren")] public string Lianxiren { get; private set; } /// 地址 [Column(Name = "address")] public string Address { get; private set; } /// 拼音简码 [Column(Name = "pinyin")] public string Pinyin { get; private set; } /// 分组(供应商/客户) [Column(Name = "businessgroup")] public Gys_Group_Enum BusinessGroup { get; private set; } /// 销售类型(内销/外销;历史数据中的 0 表示未设置) [Column(Name = "saletype")] public Gys_SaleType_Enum SaleType { get; private set; } public Gongyingshang() { } public Gongyingshang(long id, Gys_Type_Enum type, string name, string phone, string lianxiren, string address, string pinyin, Gys_Group_Enum businessGroup, Gys_SaleType_Enum saleType) { Id = id; Type = type; Name = name; Phone = phone; Lianxiren = lianxiren; Address = address; Pinyin = pinyin; BusinessGroup = businessGroup; SaleType = saleType; AddDomainEvent(new Gongyingshang_ChangedDomainEvent(Id)); } public void Update(Gys_Type_Enum type, string name, string phone, string lianxiren, string address, string pinyin, Gys_Group_Enum businessGroup, Gys_SaleType_Enum saleType) { Type = type; Name = name; Phone = phone; Lianxiren = lianxiren; Address = address; Pinyin = pinyin; BusinessGroup = businessGroup; SaleType = saleType; AddDomainEvent(new Gongyingshang_ChangedDomainEvent(Id)); } public void Deleted() => AddDomainEvent(new Gongyingshang_ChangedDomainEvent(Id)); }