using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Abp.Domain.Entities.Auditing; using ContractService.Authorization.Users; using ContractService.Client; using ContractService.CommonManager.States; using ContractService.Configuration; using ContractService.LegalCase; namespace ContractService.LegalContract { /// /// 合同信息 /// [Table("Ls_LegalContracts")] public class LegalContractInfo : FullAuditedEntity { /// /// 合同编号 /// [MaxLength(50)] public string Code { get; set; } /// /// 合同名称 /// [MaxLength(50)] public string Name { get; set; } /// /// 内容信息 /// [NotMapped] //不映射到数据库,内容存储到 LegalContractContentInfo public string ContentInfo { get; set; } /// /// 标签 /// [MaxLength(200)] public string Tags { get; set; } /// /// 合同状态 /// public int ContractState { get; set; } /// /// 启动时间 /// public DateTime? StartDateTime { get; set; } /// /// 结束时间 /// public DateTime? EndDateTime { get; set; } /// /// 最后一次状态变更时间 /// public DateTime? StateLastChangeTime { get; set; } /// /// 最后一次状态变更原由 /// [MaxLength(500)] public string StateLastChangeCause { get; set; } /// /// 项目信息 /// [MaxLength(IwbConsts.PrimaryKey)] public string CaseNo { get; set; } [ForeignKey("CaseNo")] public LegalCaseInfo CaseInfo { get; set; } [MaxLength(1000)] public string Remark { get; set; } } public class LegalContractInfoClone { public string Id { get; set; } /// /// 合同编号 /// [MaxLength(50)] public string Code { get; set; } /// /// 合同名称 /// [MaxLength(50)] public string Name { get; set; } /// /// 标签 /// [MaxLength(200)] public string Tags { get; set; } /// /// 合同状态 /// public int ContractState { get; set; } /// /// 启动时间 /// public DateTime? StartDateTime { get; set; } /// /// 结束时间 /// public DateTime? EndDateTime { get; set; } /// /// 最后一次状态变更时间 /// public DateTime? StateLastChangeTime { get; set; } /// /// 最后一次状态变更原由 /// [MaxLength(500)] public string StateLastChangeCause { get; set; } /// /// 项目信息 /// [MaxLength(IwbConsts.PrimaryKey)] public string CaseNo { get; set; } public string CaseName { get; set; } public LegalCaseInfo CaseInfo { get; set; } public ClientCompanyInfo CompanyInfo { get; set; } public string CompanyName { get; set; } public DateTime CreationTime { get; set; } } /// /// 合同状态定义 /// public class LegalContractStateDefinition { /// /// 新建 /// public const int New = 1; /// /// 已启动 /// public const int Running = 2; /// /// 挂起 /// public const int Hang = 3; /// /// 结束 /// public const int End = 4; public static string GetName(int definition, IStatesManager statesManager) { return statesManager.GetDisplayValue("LegalContract", "State", definition + ""); } } }