public ModifyRoleResponse ModifyRole(ModifyRoleRequest request) { ModifyRoleResponse response = new ModifyRoleResponse(); Role role = _roleRepository .FindBy(request.RoleId); role.Id = request.RoleId; role.RoleName = request.RoleName; role.Description = request.Description; role.Permissions = request.Permissions.ConvertToPermissions(); role.Users = request.Users.ConvertToUsers(); if (role.GetBrokenRules().Count() > 0) { response.Errors = role.GetBrokenRules().ToList(); } else { try { _roleRepository.Save(role); _uow.Commit(); response.Errors = new List <BusinessRule>(); } catch (Exception ex) { response.Errors = new List <BusinessRule>(); response.Errors.Add(new BusinessRule("DAL", "DAL_ERROR: " + ex.Message)); } } return(response); }
public JsonResult Update(RoleDetailView vm) { GetRoleRequest request = new GetRoleRequest(); request.RoleId = vm.RoleId; ModifyRoleRequest updateRequest = _roleService.GetRole(request).Role.ConvertToModifyRoleRequest(); updateRequest.RoleId = vm.RoleId; updateRequest.RoleName = vm.RoleName; updateRequest.Description = vm.Description; ModifyRoleResponse response = _roleService.ModifyRole(updateRequest); return(Json(response)); }
public IHttpActionResult AddNewRole(ModifyRoleRequest model) { ResponseBase <RoleModel> response = new ResponseBase <RoleModel>() { IsSuccess = true, MessageCode = (int)ApiBaseErrorCode.API_SUCCESS, MessageContent = ApiBaseErrorCode.API_SUCCESS.ToString() }; if (model.MenuSerials == null || string.IsNullOrWhiteSpace(model.RoleName) || string.IsNullOrWhiteSpace(model.ProjectGuid)) { response.IsSuccess = false; response.MessageCode = (int)ApiBaseErrorCode.API_PARAM_ERROR; response.MessageContent = "必要参数缺失,请检查"; return(Ok(response)); } //组建权限字符串 string privilegeStr = ""; MenuModel menumodel = menumanager.GetMenu(model.ProjectGuid); if (menumodel != null) { foreach (MenuDetialModel item in menumodel.MenuList) { string menuSerial = item.MenuSerial.PadLeft(3, '0'); if (model.MenuSerials.Exists(o => o == menuSerial)) { privilegeStr += (menuSerial + "1"); } else { privilegeStr += (menuSerial + "0"); } } } //授权停车场编号集合 string parkingCodeStr = ""; if (model.ParkingCodeList != null) { foreach (string item in model.ParkingCodeList) { parkingCodeStr += item + ","; } parkingCodeStr = parkingCodeStr.TrimEnd(','); } RolePermissionModel content = new RolePermissionModel() { Guid = Guid.NewGuid().ToString("N"), ProjectGuid = model.ProjectGuid, RoleName = model.RoleName, ContentDetial = privilegeStr, ParkingCodeList = parkingCodeStr }; if (!rolemanager.AddRole(content)) { response.IsSuccess = false; response.MessageCode = (int)ApiBaseErrorCode.API_FAIL; response.MessageContent = ApiBaseErrorCode.API_FAIL.ToString(); } response.Result = new RoleModel() { Guid = content.Guid, RoleName = content.RoleName }; return(Ok(response)); }
public IHttpActionResult ModifyRole(ModifyRoleRequest model) { ResponseBaseCommon response = new ResponseBaseCommon() { IsSuccess = true, MessageCode = (int)ApiBaseErrorCode.API_SUCCESS, MessageContent = ApiBaseErrorCode.API_SUCCESS.ToString() }; if (model.MenuSerials == null || string.IsNullOrWhiteSpace(model.RoleName) || string.IsNullOrWhiteSpace(model.Guid) || string.IsNullOrWhiteSpace(model.ProjectGuid)) { response.IsSuccess = false; response.MessageCode = (int)ApiBaseErrorCode.API_PARAM_ERROR; response.MessageContent = "必要参数缺失,请检查"; return(Ok(response)); } RolePermissionModel content = rolemanager.GetRole(model.Guid); if (content != null) { if (content.ProjectGuid == model.ProjectGuid) { //组建权限字符串 string privilegeStr = ""; MenuModel menumodel = menumanager.GetMenu(model.ProjectGuid); if (menumodel != null) { foreach (MenuDetialModel item in menumodel.MenuList) { string menuSerial = item.MenuSerial.PadLeft(3, '0'); if (model.MenuSerials.Exists(o => o == menuSerial)) { privilegeStr += (menuSerial + "1"); } else { privilegeStr += (menuSerial + "0"); } } } //授权停车场编号集合 string parkingCodeStr = ""; if (model.ParkingCodeList != null) { foreach (string item in model.ParkingCodeList) { parkingCodeStr += item + ","; } parkingCodeStr = parkingCodeStr.TrimEnd(','); } content.RoleName = model.RoleName; content.ContentDetial = privilegeStr; content.ParkingCodeList = parkingCodeStr; if (!rolemanager.ModifyRole(content)) { response.IsSuccess = false; response.MessageCode = (int)ApiBaseErrorCode.API_FAIL; response.MessageContent = ApiBaseErrorCode.API_FAIL.ToString(); } } else { response.IsSuccess = false; response.MessageCode = (int)ApiBaseErrorCode.API_INTERFACENAME_ERROR; response.MessageContent = ApiBaseErrorCode.API_INTERFACENAME_ERROR.ToString(); } } else { response.IsSuccess = false; response.MessageCode = (int)ApiPersonnelErrorCode.API_DATA_NULL_ERROR; response.MessageContent = ApiPersonnelErrorCode.API_DATA_NULL_ERROR.ToString(); } return(Ok(response)); }