using System; using System.Linq; using WeApp.BaseInfo; using WeApp.Configuration; using WeApp.EF; namespace WeApp.SeedData { public class DefaultStatesCreator { private readonly WeAppDbContext _context; public DefaultStatesCreator(WeAppDbContext context) { _context = context; } public void Create() { _context.TruncateTable("[dbo].[Sys_States]"); CreateState("培训营状态", "Camp", "State", CampStateDefinition.New, "新建"); CreateState("培训营状态", "Camp", "State", CampStateDefinition.Audit, "已审核"); CreateState("培训营状态", "Camp", "State", CampStateDefinition.Run, "运行中"); CreateState("培训营状态", "Camp", "State", CampStateDefinition.Error, "错误"); CreateState("培训营状态", "Camp", "State", CampStateDefinition.End, "结束"); CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.New, "新建"); CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.Run, "运行中"); CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.Error, "错误"); CreateState("培训营分组状态", "CampGroup", "State", CampGroupStateDefinition.End, "结束"); CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.Scene, "情景信息"); CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.SiGong, "四功信息"); CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.WuLi, "五力信息"); CreateState("画像预置信息", "PortraitRemark", "Type", PortraitRemarkTypeDefinition.Short, "成绩与不足信息"); #region Default CreateState("激活状态", "Active", "Status", "false", "未激活"); CreateState("激活状态", "Active", "Status", "true", "激活"); //CreateState("性别", "Gender", "Type", "0", "未知"); CreateState("性别", "Gender", "Type", GenderTypeDefinition.Man, "男"); CreateState("性别", "Gender", "Type", GenderTypeDefinition.Women, "女"); CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Supper, "超级管理员"); CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.System, "系统用户"); CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Advanced, "高级用户"); CreateState("用户角色类型", "UserRole", "UserRoleType", UsersAndRolesTypeDefinition.Ordinary, "普通用户"); CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.System, "系统用户"); CreateState("账号类型", "Account", "AccountType", AccountTypeDefinition.Guest, "来宾用户"); CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Catalog, "目录"); CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Menu, "菜单"); CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.Button, "按钮"); CreateState("菜单类型", "Function", "FunctionType", FunctionTypeDefinition.NotShow, "不显示"); #endregion CreateState("帮助类别", "SysHelp", "Classification", "0", "系统帮助"); } private void CreateState(string name, string t, string c, string v, string d) { if (_context.SysStates.Any(s => s.TableName == t && s.ColumnName == c && s.CodeValue == v)) { return; } _context.SysStates.Add(new SysState() { StateNo = Guid.NewGuid().ToString("N"), StateName = name, TableName = t, ColumnName = c, CodeValue = v, DisplayValue = d, }); _context.SaveChanges(); } private void CreateState(string name, string t, string c, int v, string d) { if (_context.SysStates.Any(s => s.TableName == t && s.ColumnName == c && s.CodeValue == v + "")) { return; } _context.SysStates.Add(new SysState() { StateNo = Guid.NewGuid().ToString("N"), StateName = name, TableName = t, ColumnName = c, CodeValue = v + "", DisplayValue = d, }); _context.SaveChanges(); } } }