Example #1
0
        public async Task <CommonResponse> ModifyUser(ModifyUserRequest userDetailValues)
        {
            using (var uow = this.unitOfWorkFactory.GetUnitOfWork())
            {
                var userCount = await uow.Repository <User>().Query().Select().Where(a => a.Id != userDetailValues.userId && a.UserName == userDetailValues.userName).CountAsync();

                if (userCount > 0)
                {
                    return(CommonResponse.CreateError("Username is already exits", "ERR001", ""));
                }

                var userValues = await uow.Repository <User>().Query().Select().SingleOrDefaultAsync(t => t.Id == userDetailValues.userId);

                if (userValues == null)
                {
                    return(CommonResponse.CreateError("Error", "Err02", "User Not found"));
                }
                userValues.Country      = userDetailValues.country;
                userValues.EmailId      = userDetailValues.emailId;
                userValues.FullName     = userDetailValues.name;
                userValues.UserName     = userDetailValues.userName;
                userValues.UserPassword = userValues.UserPassword;
                userValues.UserRole     = userDetailValues.userRole;
                userValues.City         = userDetailValues.city;

                var response = uow.SaveChanges();
                if (response.Response.status == false)
                {
                    return(CommonResponse.CreateError("Error occured while updating user.", "ERR001", ""));
                }

                return(CommonResponse.CreateSuccess("User updated successfully.", "SUC002", ""));
            }
        }
        public async Task AdminCanModifyUser()
        {
            var req = new ModifyUserRequest
            {
                FirstName = "Test", Lastname = "Test", Description = "Test", Email = "*****@*****.**",
                NickName  = "Test", Patronymic = "Test", PhoneNumber = "79119394404"
            };
            const int id = 1;

            using (new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                var response = await Api.AdminUser.PutAsJsonAsync($"api/v1/user/{id}", req);

                response.StatusCode.Should().BeEquivalentTo(200);

                var updatedUser = await Api.ConnectionFactory.GetUserById(id);

                updatedUser.NickName.Should().Be(req.NickName);
                updatedUser.Email.Should().Be(req.Email);
                updatedUser.FirstName.Should().Be(req.FirstName);
                updatedUser.Lastname.Should().Be(req.Lastname);
                updatedUser.Description.Should().Be(req.Description);
                updatedUser.Patronymic.Should().Be(req.Patronymic);
                updatedUser.PhoneNumber.Should().Be(req.PhoneNumber);
            }
        }
        public JsonResult Update(UserDetailView vm)
        {
            GetUserRequest request = new GetUserRequest();

            request.UserId = vm.UserId;

            ModifyUserRequest updateRequest = _userService.GetUser(request).User.ConvertToModifyUserRequest();

            updateRequest.UserId      = vm.UserId;
            updateRequest.UserName    = vm.UserName;
            updateRequest.Email       = vm.Email;
            updateRequest.Password    = vm.Password;
            updateRequest.FirstName   = vm.FirstName;
            updateRequest.LastName    = vm.LastName;
            updateRequest.PhoneNumber = vm.PhoneNumber;
            updateRequest.BirthDay    = vm.BirthDay;
            updateRequest.IpAddress   = vm.IpAddress;
            updateRequest.Status      = vm.Status;
            updateRequest.CreateDate  = vm.CreateDate;
            GetRoomRequest roomRequest = new GetRoomRequest();

            roomRequest.RoomId = vm.RoomRoomId;
            updateRequest.Room = _roomService.GetRoom(roomRequest).Room;

            ModifyUserResponse response = _userService.ModifyUser(updateRequest);

            return(Json(response));
        }
        public async Task AdminCannotModifyNonExistingUser(int id)
        {
            var req = new ModifyUserRequest
            {
                FirstName = "Test"
            };
            var response = await Api.AdminUser.PutAsJsonAsync($"api/v1/user/{id}", req);

            response.StatusCode.Should().Be(400);
        }
Example #5
0
        public IHttpActionResult ModifyOperator(ModifyUserRequest model)
        {
            ResponseBaseCommon response = new ResponseBaseCommon()
            {
                IsSuccess      = true,
                MessageCode    = (int)ApiBaseErrorCode.API_SUCCESS,
                MessageContent = ApiBaseErrorCode.API_SUCCESS.ToString()
            };

            if (string.IsNullOrWhiteSpace(model.UserName) ||
                string.IsNullOrWhiteSpace(model.UserPswd) ||
                string.IsNullOrWhiteSpace(model.Guid) ||
                string.IsNullOrWhiteSpace(model.ProjectGuid))
            {
                response.IsSuccess      = false;
                response.MessageCode    = (int)ApiBaseErrorCode.API_PARAM_ERROR;
                response.MessageContent = "必要参数缺失,请检查";
                return(Ok(response));
            }

            UserAccountModel content = usermanager.GetUser(model.Guid);

            if (content != null)
            {
                if (content.ProjectGuid == model.ProjectGuid)
                {
                    RolePermissionModel rolemodel = rolemanager.GetRole(model.RoleGuid);
                    content.UserName  = model.UserName;
                    content.UserPswd  = BitConverter.ToString(new MD5CryptoServiceProvider().ComputeHash(Encoding.UTF8.GetBytes(model.UserPswd))).Replace("-", "");
                    content.Mobile    = model.Mobile;
                    content.Privilege = rolemodel.ContentDetial;
                    content.RoleGuid  = model.RoleGuid;
                    if (!usermanager.ModifyUser(content))
                    {
                        response.IsSuccess      = false;
                        response.MessageCode    = (int)ApiBaseErrorCode.API_FAIL;
                        response.MessageContent = usermanager.LastErrorDescribe;// 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));
        }
        public async Task AdminCannotModifyUserWithInvalidEmail(string email)
        {
            var req = new ModifyUserRequest
            {
                Email = email
            };
            const int id       = 124;
            var       response = await Api.AdminUser.PutAsJsonAsync($"api/v1/user/{id}", req);

            response.StatusCode.Should().Be(400);
        }
Example #7
0
 public void ModifyUser(ModifyUserRequest req)
 {
     FirstName    = req.FirstName ?? FirstName;
     Lastname     = req.Lastname ?? Lastname;
     Patronymic   = req.Patronymic ?? Patronymic;
     NickName     = req.NickName ?? NickName;
     Email        = req.Email ?? Email;
     PhoneNumber  = req.PhoneNumber ?? PhoneNumber;
     Description  = req.Description ?? Description;
     DepartmentId = req.DepartmentId ?? DepartmentId;
 }
Example #8
0
        public Response <ModifyUserResult> ModifyUser(ModifyUserRequest requestObject)
        {
            JObject request = JObject.FromObject(requestObject);
            var     result  = Method(Functions.ModifyUser, request, ParameterValidator.ModifyUserCheckRequest);

            try
            {
                var response = JsonConvert.DeserializeObject <Response <ModifyUserResult> >(result.ToString());
                return(response);
            }
            catch (Exception e)
            {
                return(Response <ModifyUserResult> .BuildResponse(e));
            }
        }
Example #9
0
        public async Task ModifyUser(int userId, ModifyUserRequest req)
        {
            req.Validate(new Validator());
            var user = await _db.GetUserByIdIncludeDepartment(userId);

            Check.Value(user).NotNull(UserNotFoundMsg);
            if (req.DepartmentId != null)
            {
                var depWithSuchId = _db.GetDepartmentById(req.DepartmentId.Value);
                Check.Value(user).NotNull("Department with specified ID could not be found");
            }

            user.ModifyUser(req);
            await CheckUsersUniqueFields(user);

            await _db.UpdateUser(user);
        }
Example #10
0
        public ModifyUserResponse ModifyUser(ModifyUserRequest request)
        {
            ModifyUserResponse response = new ModifyUserResponse();

            User user = _userRepository
                        .FindBy(request.UserId);

            user.Id                     = request.UserId;
            user.UserName               = request.UserName;
            user.Email                  = request.Email;
            user.Password               = request.Password;
            user.FirstName              = request.FirstName;
            user.LastName               = request.LastName;
            user.PhoneNumber            = request.PhoneNumber;
            user.BirthDay               = request.BirthDay;
            user.IpAddress              = request.IpAddress;
            user.Status                 = request.Status;
            user.CreateDate             = request.CreateDate;
            user.Roles                  = request.Roles.ConvertToRoles();
            user.Permissions            = request.Permissions.ConvertToPermissions();
            user.PosReceiptOfDeliveries = request.PosReceiptOfDeliveries.ConvertToPosReceiptOfDeliveries();
            user.Room                   = request.Room.ConvertToRoom();


            if (user.GetBrokenRules().Count() > 0)
            {
                response.Errors = user.GetBrokenRules().ToList();
            }
            else
            {
                try {
                    _userRepository.Save(user);
                    _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);
        }
Example #11
0
        public async Task <IActionResult> ModifyUser([FromBody] ModifyUserRequest request)
        {
            var user = HttpContext.User.Claims.ElementAt(0);

            if (uint.Parse(user.Value) == request.UserId)
            {
                return(BadRequest(
                           new ErrorPayload
                {
                    Error = "You can't modify yourself!"
                }
                           ));
            }

            var status = await _userService
                         .PostModifyUserStatusAsync(
                request.UserId,
                request.RoleId,
                request.IsBlocked
                );

            if (!String.IsNullOrEmpty(status.Error))
            {
                return(BadRequest(
                           new ErrorPayload
                {
                    Error = status.Error
                }
                           ));
            }

            return(Ok(
                       new NamePayload
            {
                Id = status.Id,
                Name = status.Name
            }
                       ));
        }
Example #12
0
        public IAsyncResult BeginModifyUser(ModifyUserRequest requestObject)
        {
            JObject request = JObject.FromObject(requestObject);

            return(BeginMethod(Functions.ModifyUser, request, ParameterValidator.ModifyUserCheckRequest, ModifyUserCallBackMethod));
        }
Example #13
0
 public UserValidationModel(ModifyUserRequest request) =>
 (Alias) = (request.Alias);
Example #14
0
 public async Task <IActionResult> CreateUser([FromBody] ModifyUserRequest request)
 => await Mediator
 .Send(new CreateUserCommand(request, HttpContext))
 .ToCreatedAtResult <Response <UserResponse>, UserResponse, GetUserRoute>();
Example #15
0
 public UpdateUserCommand(ModifyUserRequest request, Guid userId)
     : base(request, userId)
 {
 }
Example #16
0
 public async Task ModifyUser(int userId, [FromBody] ModifyUserRequest req)
 {
     await _userService.ModifyUser(userId, req);
 }
 public CreateUserCommand(ModifyUserRequest request, HttpContext httpContext)
     : base(request, Guid.NewGuid())
 {
     IdentityId = httpContext.GetUserId();
     Email      = httpContext.GetUserEmail();
 }
Example #18
0
 public async Task <IActionResult> UpdateBook(Guid userId, [FromBody] ModifyUserRequest request)
 => await Mediator
 .Send(new UpdateUserCommand(request, userId))
 .ToOkResult();
Example #19
0
 public async Task <HttpResponseMessage> ModifyUser(ModifyUserRequest userDetailValues)
 {
     return(Request.CreateResponse(HttpStatusCode.OK, await this.AdminService.ModifyUser(userDetailValues)));
 }