/// <summary> /// MVC 编辑 -跳转到编辑界面 /// </summary> /// <param name="id"></param> /// <returns></returns> // GET: UserBaseJsons/Edit/5 public async Task <IActionResult> Edit(string id) { Logger.Trace($"[{nameof(Edit)}] 请求参数: 用户ID({id})"); if (id == null) { return(NotFound()); } try { // 1. 权限验证 if (!await RoleOrgPerManager.HasPermissionInSelfOrg(SignUser.Id, Constants.USER_UPDATE)) { Logger.Warn($"[{nameof(Edit)}] 没有权限"); ModelState.AddModelError("All", "没有权限"); return(RedirectToAction(nameof(Index))); } // 2. 业务处理 var user = await UserManager.FindById(id).SingleOrDefaultAsync(); Logger.Trace($"[{nameof(Edit)}] 响应数据:\r\n{JsonUtil.ToJson(user)}"); if (user == null) { Logger.Trace($"[{nameof(Edit)}] 进入编辑界面-用户不存在({id})"); return(NotFound()); } return(View(Mapper.Map <UserJson>(user))); } catch (Exception e) { Logger.Error($"[{nameof(Edit)}] 服务器错误:\r\n{e}"); return(RedirectToAction(nameof(Index))); } }
public async Task <IActionResult> Edit(string id, [Bind("Id,SignName,PassWord")] UserJson user) { Logger.Trace($"[{nameof(Edit)}] 用户[{SignUser.SignName}]({SignUser.Id})编辑用户({id}) 请求参数:\r\n" + JsonUtil.ToJson(user)); // 0. 参数检查 if (id != user.Id) { return(NotFound()); } try { // 1. 权限验证 if (!await RoleOrgPerManager.HasPermissionInSelfOrg(SignUser.Id, Constants.USER_UPDATE)) { Logger.Warn($"[{nameof(Edit)}] 没有权限"); ModelState.AddModelError("All", "没有权限"); return(RedirectToAction(nameof(Index))); } // 2. 业务处理 await UserManager.Update(user); // 编辑成功 -跳转到用户列表 return(RedirectToAction(nameof(Index))); } catch (Exception e) { Logger.Error($"[{nameof(Edit)}] 用户信息更新失败: " + e); if (!await UserManager.ExistById(user.Id)) { return(NotFound()); } ModelState.AddModelError("All", "用户信息更新失败"); return(View(user)); } }
/// <summary> /// [MVC] 跳转到用户新建界面 /// 在组织(orgId)下创建用户 /// </summary> /// <param name="orgId">组织ID</param> /// <returns></returns> // GET: UserBaseJsons/Create public async Task <IActionResult> Create(string orgId) { Logger.Trace($"[{nameof(Create)}] 用户[{SignUser.SignName}]({SignUser.Id})跳转到用户新建界面, 请求参数:{nameof(orgId)}({orgId})"); try { // 1. 权限验证 if (orgId == null) { if (!await RoleOrgPerManager.HasPermissionInSelfOrg(SignUser.Id, Constants.USER_CREATE)) { return(RedirectToAction(nameof(Index))); } } else { if (!await RoleOrgPerManager.HasPermission(SignUser.Id, Constants.USER_CREATE, orgId)) { return(RedirectToAction(nameof(Index))); } } // 查询有权限添加用户的组织 var organizations = await RoleOrgPerManager.FindOrgByUserIdPerName(SignUser.Id, Constants.USER_CREATE); ViewData["OrgId"] = new SelectList(organizations, nameof(Organization.Id), nameof(Organization.Name), orgId); return(View()); } catch (Exception e) { Logger.Error($"[{nameof(Details)}] 用户[{SignUser.SignName}]({SignUser.Id})跳转界面(在组织({orgId})下创建用户)失败, 服务器错误:\r\n{e}"); ViewData["ErrMsg"] = e.Message; return(RedirectToAction(nameof(Index))); } }