/// <summary> /// 注册管理员用户 /// </summary> /// <param name="model"></param> /// <returns></returns> public async Task <GeneralResponse> RegistAdminAsync(AdminRegistModel model) { RegistAdminUserRequest request = new RegistAdminUserRequest { CurrentUserId = null, UserName = model.Name, Password = model.Password }; if (!IsNullOrWhiteSpace(Token)) { request.CurrentUserId = (await GetCurrentUserInfoAsync()).UserId; } GeneralResponse response = await userClient.RegistAdminUserAsync(request); return(response); }
public override async Task <GeneralResponse> RegistAdminUser(RegistAdminUserRequest request, ServerCallContext context) { //如果不存在管理员用户(即没有部门的用户),添加用户到数据库 if (!await db.Users.AnyAsync(x => x.PositionId == null)) { await db.Users.AddAsync(new User { Name = request.UserName, Password = request.Password }); } else { //已登录的用户不是管理员用户 if (await db.Users.AnyAsync(x => x.Id == request.CurrentUserId && x.PositionId == null)) { await db.Users.AddAsync(new User { Name = request.UserName, Password = request.Password }); } else { return(ResponseHelper.BadResponse("需要管理员用户")); } if (await db.Users.AnyAsync(x => x.Name == request.UserName)) { return(ResponseHelper.BadResponse("用户名已存在")); } } if (await db.SaveChangesAsync() > 0) { return(ResponseHelper.OkResponse()); } return(ResponseHelper.BadResponse()); }