LegalCaseInfo.cs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. using System;
  2. using System.ComponentModel.DataAnnotations;
  3. using System.ComponentModel.DataAnnotations.Schema;
  4. using Abp.Domain.Entities.Auditing;
  5. using ContractService.Authorization.Users;
  6. using ContractService.Client;
  7. using ContractService.CommonManager.States;
  8. using ContractService.Configuration;
  9. namespace ContractService.LegalCase
  10. {
  11. /// <summary>
  12. /// 法律服务项目
  13. /// </summary>
  14. [Table("Ls_LegalCases")]
  15. public class LegalCaseInfo :FullAuditedEntity<string,User>
  16. {
  17. /// <summary>
  18. /// 项目编码
  19. /// </summary>
  20. [MaxLength(50)]
  21. public string Code { get; set; }
  22. /// <summary>
  23. /// 项目名称
  24. /// </summary>
  25. [MaxLength(50)]
  26. public string Name { get; set; }
  27. /// <summary>
  28. /// 标签
  29. /// </summary>
  30. [MaxLength(200)]
  31. public string Tags { get; set; }
  32. /// <summary>
  33. /// 项目描述
  34. /// </summary>
  35. [MaxLength(500)]
  36. public string Description { get; set; }
  37. /// <summary>
  38. /// 项目等级
  39. /// </summary>
  40. public int CaseLevel { get; set; }
  41. /// <summary>
  42. /// 项目状态
  43. /// </summary>
  44. public int CaseState { get; set; }
  45. /// <summary>
  46. /// 项目类型
  47. /// </summary>
  48. [MaxLength(IwbConsts.PrimaryKey)]
  49. public string ServiceType { get; set; }
  50. [ForeignKey("ServiceType")]
  51. public LegalServiceType ServiceTypeInfo { get; set; }
  52. /// <summary>
  53. /// 启动时间
  54. /// </summary>
  55. public DateTime? StartDateTime { get; set; }
  56. /// <summary>
  57. /// 结束时间
  58. /// </summary>
  59. public DateTime? EndDateTime { get; set; }
  60. /// <summary>
  61. /// 最后一次状态变更时间
  62. /// </summary>
  63. public DateTime? StateLastChangeTime { get; set; }
  64. /// <summary>
  65. /// 最后一次状态变更原由
  66. /// </summary>
  67. [MaxLength(500)]
  68. public string StateLastChangeCause { get; set; }
  69. [MaxLength(1000)]
  70. public string Remark { get; set; }
  71. [MaxLength(IwbConsts.PrimaryKey)]
  72. public string CompanyNo { get; set; }
  73. [ForeignKey("CompanyNo")]
  74. public ClientCompanyInfo CompanyInfo { get; set; }
  75. }
  76. /// <summary>
  77. /// 项目状态定义
  78. /// </summary>
  79. public class LegalCaseStateDefinition
  80. {
  81. /// <summary>
  82. /// 新建
  83. /// </summary>
  84. public const int New = 1;
  85. /// <summary>
  86. /// 已启动
  87. /// </summary>
  88. public const int Running = 2;
  89. /// <summary>
  90. /// 挂起
  91. /// </summary>
  92. public const int Hang = 3;
  93. /// <summary>
  94. /// 结束
  95. /// </summary>
  96. public const int End = 4;
  97. public static string GetName(int definition, IStatesManager statesManager)
  98. {
  99. //switch (definition)
  100. //{
  101. // case 1:
  102. // return "新建";
  103. // case 2:
  104. // return "已启动";
  105. // case 3:
  106. // return "挂起";
  107. // case 4:
  108. // return "结束";
  109. // default:
  110. // return "";
  111. //}
  112. return statesManager.GetDisplayValue("LegalService", "State", definition + "");
  113. }
  114. }
  115. }