public ActionResult Edit(CMS_RoleModels model) { try { if (!ModelState.IsValid) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(PartialView("_Edit", model)); } var Id = ""; var msg = ""; model.CreatedBy = CurrentUser.UserId; model.UpdatedBy = CurrentUser.UserId; var result = _factory.CreateOrUpdate(model, ref Id, ref msg); if (result) { return(RedirectToAction("Index")); } ModelState.AddModelError("Name", msg); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(PartialView("_Edit", model)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(PartialView("_Edit", model)); } }
public ActionResult Create() { CMS_RoleModels model = new CMS_RoleModels(); model.ListPermission = _factory.GetListModule(); return(PartialView("_Create", model)); }
public ActionResult Delete(CMS_RoleModels model) { try { if (!ModelState.IsValid) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(PartialView("_Delete", model)); } var msg = ""; var result = _factory.Delete(model.Id, ref msg); if (result) { return(RedirectToAction("Index")); } ModelState.AddModelError("Name", msg); Response.StatusCode = (int)HttpStatusCode.BadRequest; return(PartialView("_Delete", model)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(PartialView("_Delete", model)); } }
public CMS_RoleModels GetDetail(string Id) { NSLog.Logger.Info("RoleGetDetail", Id); CMS_RoleModels result = null; try { using (var cxt = new CMS_Context()) { var data = cxt.CMS_Role.Where(o => o.ID == Id && o.Status != (byte)Commons.EStatus.Deleted) .Select(o => new CMS_RoleModels { Id = o.ID, StoreID = o.StoreID, Name = o.Name, IsActive = o.IsActive ?? false, }).FirstOrDefault(); /* get list module */ var listModule = cxt.CMS_Module.OrderBy(o => o.Code) .Select(o => new CMS_PermissionModels() { ModuleID = o.ID, ModuleName = o.Name, ModuleCode = o.Code, }).ToList(); /* get list permission*/ var listPermission = cxt.CMS_ModulePermission.Where(o => o.RoleID == Id).ToList(); listModule.ForEach(o => { o.Id = listPermission.Where(p => p.ModuleID == o.ModuleID).Select(p => p.ID).FirstOrDefault(); o.IsAction = listPermission.Where(p => p.ModuleID == o.ModuleID).Select(p => p.IsAction).FirstOrDefault() ?? false; o.IsView = listPermission.Where(p => p.ModuleID == o.ModuleID).Select(p => p.IsView).FirstOrDefault() ?? false; }); data.ListPermission = listModule; result = data; NSLog.Logger.Info("ResponseRoleGetDetail", result); } } catch (Exception ex) { NSLog.Logger.Error("ErrorRoleGetDetail", ex); } return(result); }
public bool CreateOrUpdatePermission(CMS_RoleModels model) { NSLog.Logger.Info("RoleCreateOrUpdatePermission", model); var result = false; try { using (var cxt = new CMS_Context()) { var listInsertPermission = model.ListPermission.Where(o => string.IsNullOrEmpty(o.Id)).ToList(); if (listInsertPermission.Count > 0) /* insert */ { var listInrtPerDB = new List <CMS_ModulePermission>(); listInsertPermission.ForEach(o => { listInrtPerDB.Add(new CMS_ModulePermission() { ID = Guid.NewGuid().ToString(), ModuleID = o.ModuleID, RoleID = model.Id, StoreID = model.StoreID, IsView = o.IsView, IsAction = o.IsAction, IsActive = true, Status = (byte)Commons.EStatus.Actived, CreatedDate = DateTime.Now, CreatedUser = model.CreatedBy, ModifiedUser = model.CreatedBy, LastModified = DateTime.Now, }); }); cxt.CMS_ModulePermission.AddRange(listInrtPerDB); } var listUpdatePermission = model.ListPermission.Where(o => !string.IsNullOrEmpty(o.Id)).ToList(); if (listUpdatePermission.Count > 0) /* update permission */ { var listModulePerID = listUpdatePermission.Select(o => o.Id).ToList(); var listPerDB = cxt.CMS_ModulePermission.Where(o => listModulePerID.Contains(o.ID)).ToList(); foreach (var per in listPerDB) { var updatePer = listUpdatePermission.Where(o => o.Id == per.ID).FirstOrDefault(); per.IsAction = updatePer.IsAction; per.IsView = updatePer.IsView; per.ModifiedUser = model.CreatedBy; per.LastModified = DateTime.Now; } } if (cxt.SaveChanges() > 0) { result = true; } NSLog.Logger.Info("ResponseRolemodelCreateOrUpdatePermission", new { result }); } } catch (Exception ex) { result = false; NSLog.Logger.Error("ErrorRoleCreateOrUpdatePermission", ex); } return(result); }
public bool CreateOrUpdate(CMS_RoleModels model, ref string Id, ref string msg) { NSLog.Logger.Info("RoleCreateOrUpdate", model); var Result = true; using (var cxt = new CMS_Context()) { try { model.Name = model.Name.Trim(); if (string.IsNullOrEmpty(model.Id)) /* insert */ { Id = Guid.NewGuid().ToString(); model.Id = Id; var checkDup = cxt.CMS_Role.Where(o => o.Name.Trim() == model.Name.Trim()).FirstOrDefault(); if (checkDup == null) { var e = new CMS_Role { ID = Id, StoreID = model.StoreID, Name = model.Name, IsActive = model.IsActive, Status = (byte)Commons.EStatus.Actived, CreatedDate = DateTime.Now, CreatedUser = model.CreatedBy, ModifiedUser = model.CreatedBy, LastModified = DateTime.Now, }; cxt.CMS_Role.Add(e); } else { msg = "Duplicate Name"; Result = false; } } else /* updated */ { var checkDupCode = cxt.CMS_Role.Where(o => o.Name.Trim() == model.Name.Trim() && o.ID != model.Id).FirstOrDefault(); if (checkDupCode == null) { var e = cxt.CMS_Role.Find(model.Id); if (e != null) { e.Name = model.Name; e.IsActive = model.IsActive; e.Status = (byte)Commons.EStatus.Actived; e.ModifiedUser = model.CreatedBy; e.LastModified = DateTime.Now; } else { Result = false; msg = "Unable to find role."; } } else { msg = "Duplicate name"; Result = false; } } if (cxt.SaveChanges() > 0 && Result == true) { /* insert list module permission */ CreateOrUpdatePermission(model); } NSLog.Logger.Info("ResponseRoleCreateOrUpdate", new { Result, msg }); } catch (Exception ex) { Result = false; msg = "System Error."; NSLog.Logger.Error("ErrorRoleCreateOrUpdate", ex); } } return(Result); }