DefaultStatesCreator.cs 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. using System;
  2. using System.Linq;
  3. using WeApp.BaseInfo;
  4. using WeApp.Configuration;
  5. using WeApp.EF;
  6. namespace WeApp.SeedData
  7. {
  8. public class DefaultStatesCreator
  9. {
  10. private readonly WeAppDbContext _context;
  11. public DefaultStatesCreator(WeAppDbContext context)
  12. {
  13. _context = context;
  14. }
  15. public void Create()
  16. {
  17. _context.TruncateTable("[dbo].[Sys_States]");
  18. CreateState("培训营状态", "Camp", "State", CampStateDefinition.New, "新建");
  19. CreateState("培训营状态", "Camp", "State", CampStateDefinition.Audit, "已审核");
  20. CreateState("培训营状态", "Camp", "State", CampStateDefinition.Run, "运行中");
  21. CreateState("培训营状态", "Camp", "State", CampStateDefinition.Error, "错误");
  22. CreateState("培训营状态", "Camp", "State", CampStateDefinition.End, "结束");
  23. CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.New, "新建");
  24. CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.Run, "运行中");
  25. CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.Error, "错误");
  26. CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.End, "结束");
  27. CreateState("电话问答题目类型", "PhoneQuestion", "Type", PhoneQuestionTypeDefinition.Default, "问答题");
  28. CreateState("电话问答题目类型", "PhoneQuestion", "Type", PhoneQuestionTypeDefinition.Choice, "选择题");
  29. CreateState("电话问答题目类型", "PhoneQuestion", "Type", PhoneQuestionTypeDefinition.MultipleChoice, "多选题");
  30. CreateState("电话问答答案类型", "PhoneAnswer", "Type", PhoneAnswerTypeDefinition.Right, "正确");
  31. CreateState("电话问答答案类型", "PhoneAnswer", "Type", PhoneAnswerTypeDefinition.Error, "错误");
  32. CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.Scene, "情景信息");
  33. CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.SiGong, "四功信息");
  34. CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.WuLi, "五力信息");
  35. CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.Short, "成绩与不足信息");
  36. #region Default
  37. CreateState("激活状态", "Active", "Status", "false", "未激活");
  38. CreateState("激活状态", "Active", "Status", "true", "激活");
  39. //CreateState("性别", "Gender", "Type", "0", "未知");
  40. CreateState("性别", "Gender", "Type", GenderTypeDefinition.Man, "男");
  41. CreateState("性别", "Gender", "Type", GenderTypeDefinition.Women, "女");
  42. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Supper, "超级管理员");
  43. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.System, "系统用户");
  44. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Advanced, "高级用户");
  45. CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Ordinary, "普通用户");
  46. CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.System, "系统用户");
  47. CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.Guest, "来宾用户");
  48. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Catalog, "目录");
  49. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Menu, "菜单");
  50. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Button, "按钮");
  51. CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.NotShow, "不显示");
  52. #endregion Default
  53. CreateState("帮助类别", "SysHelp", "Classification", "0", "系统帮助");
  54. }
  55. private void CreateState(string name, string t, string c, string v, string d)
  56. {
  57. if (_context.SysStates.Any(s => s.TableName == t && s.ColumnName == c && s.CodeValue == v))
  58. {
  59. return;
  60. }
  61. _context.SysStates.Add(new SysState()
  62. {
  63. StateNo = Guid.NewGuid().ToString("N"),
  64. StateName = name,
  65. TableName = t,
  66. ColumnName = c,
  67. CodeValue = v,
  68. DisplayValue = d,
  69. });
  70. _context.SaveChanges();
  71. }
  72. private void CreateState(string name, string t, string c, int v, string d)
  73. {
  74. if (_context.SysStates.Any(s => s.TableName == t && s.ColumnName == c && s.CodeValue == v + ""))
  75. {
  76. return;
  77. }
  78. _context.SysStates.Add(new SysState()
  79. {
  80. StateNo = Guid.NewGuid().ToString("N"),
  81. StateName = name,
  82. TableName = t,
  83. ColumnName = c,
  84. CodeValue = v + "",
  85. DisplayValue = d,
  86. });
  87. _context.SaveChanges();
  88. }
  89. }
  90. }