private void GetValidate(AD_ROLE_PAGE item, ref string errMsg) { if (string.IsNullOrEmpty(item.RoleID)) { errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get( VNPTResources.ID.MsgErrorRequire), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_RoleID)), ". "); } else { if (!CustomValidation.maxLength(50, item.RoleID)) { errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get( VNPTResources.ID.MsgErrorMaximumLength), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_RoleID), 50), ". "); } } if (string.IsNullOrEmpty(item.PageID)) { errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get( VNPTResources.ID.MsgErrorRequire), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_PageID)), ". "); } else { if (!CustomValidation.maxLength(50, item.PageID)) { errMsg = string.Concat(errMsg, string.Format(VNPTResources.Instance.Get( VNPTResources.ID.MsgErrorMaximumLength), VNPTResources.Instance.Get(VNPTResources.ID.Label_RolePage_PageID), 50), ". "); } } }
private void SaveRoleControl(IQueryable<AD_CONTROL> controlSQL, List<string> controls, AD_PAGE page, string roleID) { var flag = false; var pageID = page.ID; var rolePageValue = JsonConvert.SerializeObject(controls); if (string.IsNullOrEmpty(page.Value) || !page.Value.Equals(rolePageValue)) { flag = true; page.Value = rolePageValue; this.Repository.Update(page); } var controlDBs = controlSQL.ToList(); foreach (var item in controls) { if (!controlDBs.Any(r => r.ID.Equals(item))) { flag = true; this.Repository.Add(new AD_CONTROL() { ID = item }); } } var rolePage = this.Repository.GetQuery<AD_ROLE_PAGE>().FirstOrDefault(r => r.RoleID.Equals(roleID) && r.PageID.Equals(pageID)); if (rolePage == null) { rolePage = new AD_ROLE_PAGE() { RoleID = roleID, PageID = pageID, Value = rolePageValue, CreateAt = DateTime.Now, UpdateAt = DateTime.Now, ActiveFlg = true }; flag = true; this.Repository.Add(rolePage); } if (flag) this.Repository.UnitOfWork.SaveChanges(); }
public IHttpActionResult Saves(IEnumerable <AD_ROLE_PAGE> dataRequest) { try { if (!ModelState.IsValid) { var model = ModelState; string msg = VNPTResources.Instance.Get(model); return(Json(new TResult() { Status = (short)EStatus.Fail, Msg = msg })); } AD_ROLE_PAGE dataItem = null; foreach (var item in dataRequest) { string errorMsg = null; GetValidate(item, ref errorMsg); if (!string.IsNullOrEmpty(errorMsg)) { return(Json(new TResult() { Status = (int)EStatus.Fail, Msg = errorMsg })); } dataItem = this.Repository.GetQuery <AD_ROLE_PAGE>().FirstOrDefault(r => r.RoleID.Equals(item.RoleID) && r.PageID.Equals(item.PageID)); if (dataItem is null) { dataItem = item.Clone(); this.Repository.Add(dataItem); this.VNPTLogs.Write(this.Repository, EAction.Insert, JsonConvert.SerializeObject(dataItem)); } else { dataItem = item.Clone(); this.Repository.Update(dataItem); this.VNPTLogs.Write(this.Repository, EAction.Update, JsonConvert.SerializeObject(dataItem)); } } this.Repository.UnitOfWork.SaveChanges(); return(Json(new TResult() { Status = (short)EStatus.Ok, Msg = VNPTResources.Instance.Get(VNPTResources.ID.MsgSaveOk), })); } catch (Exception e) { this.VNPTLogs.Write(this.Repository, e.Message); return(Json(new TResult() { Status = (short)EStatus.Fail, Msg = e.Message })); } }