private static void InitializeAdministrationRoles(SystemDatabaseContext context) { // Đối với tài khoản quản trị viên User administration = context.User.Where(user => user.Username.ToLower().Equals(nameof(administration).ToLower())).FirstOrDefault(); if (administration != null) { // Tìm quyền all UserType RoleAll = context.UserType.Where(role => role.UserTypeName.ToLower().Equals(UserType.ROLE_ALL.ToLower())).FirstOrDefault(); // Thêm quyền cao nhất cho Admin UserTypeUser userTypeUser = new UserTypeUser { User = administration, UserType = RoleAll }; if (!context.UserTypeUser.Any(it => it.UserId == administration.Id && it.UserTypeId == RoleAll.Id)) { // Nếu admin chưa có quyền này, tiến hành thêm mới cho Admin context.UserTypeUser.Add(userTypeUser); context.SaveChanges(); } } else { // Nếu chưa tiến hành tạo mới InitializeAdministration(context); // Sau đó tiếp tục lại phương thức này InitializeAdministrationRoles(context); } }
public static void Initialize(SystemDatabaseContext context) { context.Database.EnsureCreated(); //// Khởi tạo các quyền //InitializeRoles(context); //// Khởi tạo tài khoản quản trị viên cấp cao mặc định //InitializeAdministration(context); //// Cấp Full quyền cho tài khoản quản trị viên này //InitializeAdministrationRoles(context); StandardData(context); }
private static void InitializeRoles(SystemDatabaseContext context) { // Khởi tạo các quyền đặc trưng cho hệ thống foreach (UserType role in UserType.Roles) { if (!context.UserType.Any(it => it.UserTypeName == role.UserTypeName)) { // Nếu chưa có quyền này, thì thêm vào context.UserType.Add(role); context.SaveChanges(); } } }
private static void StandardData(SystemDatabaseContext context) { // Lấy danh sách các bản ghi của Reading part 4 var rp4 = context.TestCategories.Where(x => x.TypeCode == TestCategory.READING && x.PartId == 4 && !string.IsNullOrEmpty(x.WYSIWYGContent)).ToList(); // Cập nhật các chỉ số có liên quan for (int i = 0; i < rp4.Count; i++) { rp4[i].WYSIWYGContent = rp4[i].WYSIWYGContent.Replace(@"\(<strong>{$$}</strong>\)", "(<strong>{$$}</strong>)"); context.TestCategories.Update(rp4[i]); Console.WriteLine($"progess: {i+1}/{rp4.Count}"); } context.SaveChanges(); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env, SystemDatabaseContext db) { if (env.IsDevelopment()) { //DatabaseInitializer.Initialize(db); app.UseDeveloperExceptionPage(); } else { //app.UseExceptionHandler("/Home/Error").; // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } //Register GleamTech to the ASP.NET Core HTTP request pipeline. //---------------------- app.UseGleamTech(); //---------------------- //app.UseSession().; app.UseCookiePolicy(); app.UseHttpsRedirection(); app.UseDefaultFiles(); app.UseStaticFiles(); app.UseRouting(); app.UseAuthentication(); // Bật xác thực app.UseAuthorization(); // Khởi tạo CSDL app.UseEndpoints(endpoints => { endpoints.MapHub <ChatHub>("/chathub"); endpoints.MapControllerRoute( name: "default", pattern: "{controller:slugify=Home}/{action:slugify=Index}/{id:slugify?}" ); }); }
private static void InitializeAdministration(SystemDatabaseContext context) { User administration = new User { Username = "******", Email = "*****@*****.**", HashPassword = PasswordHasher.HashPassword(Base64Utils.Base64Decode("MTIzNDU2")), FirstName = "System", LastName = "Admin", Avatar = "/img/no_avatar.png", BirthDay = DateTime.Now, Active = true }; if (!context.User.Any(it => it.Username == administration.Username)) { // Nếu chưa có tài khoản quản trị viên cấp cao này, tiến hành tạo mới context.User.Add(administration); context.SaveChanges(); } }
public VocabularyManager(SystemDatabaseContext instance) { this.instance = instance; }
public UserManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public DiscussionUserMessageManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public SpeakingEmbedManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public ListeningMediaManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public ReadingPartTwoManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public ListeningBaseQuestionManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public TopicManager(SystemDatabaseContext context) { this.context = context; }
public PieceOfTestManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public WritingPartOneManager(SystemDatabaseContext instantce) { this.instantce = instantce; }
public TestCategoryManager(SystemDatabaseContext instantce) { this.instantce = instantce; }