DefaultStatesCreator.cs 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. using System;
  2. using System.Linq;
  3. using ContractService.BaseInfo;
  4. using ContractService.Configuration;
  5. using ContractService.EF;
  6. using ContractService.LegalCase;
  7. using ContractService.LegalContract;
  8. namespace ContractService.SeedData
  9. {
  10. public class DefaultStatesCreator
  11. {
  12. private readonly ContractServiceDbContext _context;
  13. public DefaultStatesCreator(ContractServiceDbContext context)
  14. {
  15. _context = context;
  16. }
  17. public void Create()
  18. {
  19. _context.TruncateTable("[dbo].[Sys_States]");
  20. CreateState("项目状态", "LegalService", "State", LegalCaseStateDefinition.New, "新建");
  21. CreateState("项目状态", "LegalService", "State", LegalCaseStateDefinition.Running, "已启动");
  22. CreateState("项目状态", "LegalService", "State", LegalCaseStateDefinition.Hang, "已挂起");
  23. CreateState("项目状态", "LegalService", "State", LegalCaseStateDefinition.End , "已关闭");
  24. CreateState("项目等级", "LegalService", "Level", "1", "★");
  25. CreateState("项目等级", "LegalService", "Level", "2", "★★");
  26. CreateState("项目等级", "LegalService", "Level", "3", "★★★");
  27. CreateState("项目等级", "LegalService", "Level", "4", "★★★★");
  28. CreateState("项目等级", "LegalService", "Level", "5", "★★★★★");
  29. CreateState("合同状态", "LegalContract", "State", LegalContractStateDefinition.New, "新建");
  30. CreateState("合同状态", "LegalContract", "State", LegalContractStateDefinition.Running, "已启动");
  31. CreateState("合同状态", "LegalContract", "State", LegalContractStateDefinition.Hang, "已挂起");
  32. CreateState("合同状态", "LegalContract", "State", LegalContractStateDefinition.End, "已关闭");
  33. CreateState("关键点状态", "KeyPoint", "State", LegalKeyPointStateDefinition.New, "新建");
  34. CreateState("关键点状态", "KeyPoint", "State", LegalKeyPointStateDefinition.Run, "待履行");
  35. CreateState("关键点状态", "KeyPoint", "State", LegalKeyPointStateDefinition.Executed, "已履行");
  36. CreateState("关键点状态", "KeyPoint", "State", LegalKeyPointStateDefinition.Hang, "已挂起");
  37. CreateState("关键点状态", "KeyPoint", "State", LegalKeyPointStateDefinition.End, "已关闭");
  38. CreateState("关键点等级", "KeyPoint", "Level", LegalKeyPointLevelDefinition.Common, "一般");
  39. CreateState("关键点等级", "KeyPoint", "Level", LegalKeyPointLevelDefinition.Important, "重要");
  40. CreateState("关键点等级", "KeyPoint", "Level", LegalKeyPointLevelDefinition.Urgent, "紧急");
  41. /* ------------------------------------------------------------------------- */
  42. #region Default
  43. CreateState("激活状态", "Active", "Status", "false", "未激活");
  44. CreateState("激活状态", "Active", "Status", "true", "已激活");
  45. //CreateState("性别", "Gender", "Type", "0", "未知");
  46. CreateState("性别", "Gender", "Type", GenderTypeDefinition.Man, "男");
  47. CreateState("性别", "Gender", "Type", GenderTypeDefinition.Women, "女");
  48. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Supper, "超级管理员");
  49. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.System, "系统用户");
  50. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Advanced, "高级用户");
  51. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Ordinary, "普通用户");
  52. CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.System, "系统用户");
  53. CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.Lawyer, "律师用户");
  54. CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.Client, "客户用户");
  55. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Catalog, "目录");
  56. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Menu, "菜单");
  57. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Button, "按钮");
  58. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.NotShow, "不显示");
  59. #endregion
  60. CreateState("帮助类别", "SysHelp", "Classification", "0", "系统帮助");
  61. }
  62. private void CreateState(string name, string t, string c, string v, string d)
  63. {
  64. if (_context.SysStates.Any(s => s.TableName == t && s.ColumnName == c && s.CodeValue == v))
  65. {
  66. return;
  67. }
  68. _context.SysStates.Add(new SysState()
  69. {
  70. StateNo = Guid.NewGuid().ToString("N"),
  71. StateName = name,
  72. TableName = t,
  73. ColumnName = c,
  74. CodeValue = v,
  75. DisplayValue = d,
  76. });
  77. _context.SaveChanges();
  78. }
  79. private void CreateState(string name, string t, string c, int v, string d)
  80. {
  81. if (_context.SysStates.Any(s => s.TableName == t && s.ColumnName == c && s.CodeValue == v + ""))
  82. {
  83. return;
  84. }
  85. _context.SysStates.Add(new SysState()
  86. {
  87. StateNo = Guid.NewGuid().ToString("N"),
  88. StateName = name,
  89. TableName = t,
  90. ColumnName = c,
  91. CodeValue = v + "",
  92. DisplayValue = d,
  93. });
  94. _context.SaveChanges();
  95. }
  96. }
  97. }