public async Task <ApiResult <string> > Put(string Id, EditSysModuleDto Params) { ApiResult <string> res = new ApiResult <string>(); TokenModelBeta token = JwtToken.ParsingJwtToken(HttpContext); try { //添加模块 SysModule sysModuleInfo = _mapper.Map <SysModule>(Params); sysModuleInfo.Id = Id; var IsSuccess = await _sysModuleService.UpdateAsync(sysModuleInfo); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:修改模块失败"; } //找到模块对应当前角色授权 SysRoleAuthorize sysRoleAuthorize = await _sysRoleAuthorizeService.QueryFirstAsync(s => s.RoleId == token.Role && s.ModuleId == Id); List <string> ModuleIds = new List <string>(); //修改模块数据 List <SysModuleAction> EditsysModuleActionList = _mapper.Map <List <SysModuleAction> >(Params.SysModuleActionDtos.Where(s => s.Id != null)); if (EditsysModuleActionList.Count() > 0) { IsSuccess = await _sysModuleActionService.UpdateListAsync(EditsysModuleActionList); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:修改模块失败"; } ModuleIds.AddRange(EditsysModuleActionList.Select(s => s.Id).ToList()); } //添加模块请求 List <SysModuleAction> AddsysModuleActionList = _mapper.Map <List <SysModuleAction> >(Params.SysModuleActionDtos.Where(s => s.Id == null)); if (AddsysModuleActionList.Count() > 0) { foreach (var item in AddsysModuleActionList) { item.Id = Guid.NewGuid().ToString(); item.ModuleId = sysModuleInfo.Id; item.CreatorTime = DateTime.Now; item.CreatorUserId = token.Id; } IsSuccess = await _sysModuleActionService.AddListAsync(AddsysModuleActionList); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:添加模块失败"; } ModuleIds.AddRange(AddsysModuleActionList.Select(s => s.Id).ToList()); //添加模块权限 按钮权限 List <SysRoleAuthorizeAction> AddsysRoleAuthorizeList = new List <SysRoleAuthorizeAction>(); foreach (var item in AddsysModuleActionList) { SysRoleAuthorizeAction sysRoleAuthorizeInfo = new SysRoleAuthorizeAction(); sysRoleAuthorizeInfo.Id = Guid.NewGuid().ToString(); sysRoleAuthorizeInfo.RoleAuthId = sysRoleAuthorize.Id; sysRoleAuthorizeInfo.ModuleActionId = item.Id; sysRoleAuthorizeInfo.CreatorTime = DateTime.Now; sysRoleAuthorizeInfo.CreatorUserId = token.Id; AddsysRoleAuthorizeList.Add(sysRoleAuthorizeInfo); } IsSuccess = await _sysRoleAuthorizeActionService.AddListAsync(AddsysRoleAuthorizeList); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:添加模块按钮权限失败"; } } //删除不存在的模块请求 await _sysModuleActionService.DeleteAsync(s => s.ModuleId == sysModuleInfo.Id && !ModuleIds.Contains(s.Id)); } catch (Exception ex) { res.code = (int)ApiEnum.Error; res.message = "异常:" + ex.Message; } return(await Task.Run(() => res)); }
public async Task <ApiResult <string> > Post(EditSysModuleDto Params) { ApiResult <string> res = new ApiResult <string>(); TokenModelBeta token = JwtToken.ParsingJwtToken(HttpContext); try { //添加模块 SysModule sysModuleInfo = _mapper.Map <SysModule>(Params); sysModuleInfo.CreatorTime = DateTime.Now; sysModuleInfo.CreatorUserId = token.Id; sysModuleInfo.Id = Guid.NewGuid().ToString(); sysModuleInfo.DeleteMark = false; var IsSuccess = await _sysModuleService.AddAsync(sysModuleInfo); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:添加模块失败"; } //添加模块权限 SysRoleAuthorize sysRoleAuthorize = new SysRoleAuthorize(); sysRoleAuthorize.Id = Guid.NewGuid().ToString(); sysRoleAuthorize.RoleId = token.Role; sysRoleAuthorize.ModuleId = sysModuleInfo.Id; sysRoleAuthorize.CreatorTime = DateTime.Now; sysRoleAuthorize.CreatorUserId = token.Id; IsSuccess = await _sysRoleAuthorizeService.AddAsync(sysRoleAuthorize); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:添加模块权限失败"; } //添加模块请求 List <SysModuleAction> AddsysModuleActionList = _mapper.Map <List <SysModuleAction> >(Params.SysModuleActionDtos.Where(s => s.Id == null)); if (AddsysModuleActionList.Count() > 0) { foreach (var item in AddsysModuleActionList) { item.Id = Guid.NewGuid().ToString(); item.ModuleId = sysModuleInfo.Id; item.CreatorTime = DateTime.Now; item.CreatorUserId = token.Id; } IsSuccess = await _sysModuleActionService.AddListAsync(AddsysModuleActionList); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:添加子模块失败"; } //添加模块权限 按钮权限 List <SysRoleAuthorizeAction> AddsysRoleAuthorizeList = new List <SysRoleAuthorizeAction>(); foreach (var item in AddsysModuleActionList) { SysRoleAuthorizeAction sysRoleAuthorizeInfo = new SysRoleAuthorizeAction(); sysRoleAuthorizeInfo.Id = Guid.NewGuid().ToString(); sysRoleAuthorizeInfo.RoleAuthId = sysRoleAuthorize.Id; sysRoleAuthorizeInfo.ModuleActionId = item.Id; sysRoleAuthorizeInfo.CreatorTime = DateTime.Now; sysRoleAuthorizeInfo.CreatorUserId = token.Id; AddsysRoleAuthorizeList.Add(sysRoleAuthorizeInfo); } IsSuccess = await _sysRoleAuthorizeActionService.AddListAsync(AddsysRoleAuthorizeList); if (!IsSuccess) { res.code = (int)ApiEnum.Failure; res.message = "错误:添加模块按钮权限失败"; } } } catch (Exception ex) { res.code = (int)ApiEnum.Error; res.message = "异常:" + ex.Message; } return(await Task.Run(() => res)); }