Example #1
0
        // ModifyUser <username> <property> <new value>
        public string Execute(string[] data)
        {
            string        username = data[0];
            ModifyUserDto userDTO  = userService.ByUsername <ModifyUserDto>(username);

            if (userDTO == null || userDTO.IsDeleted == true)
            {
                throw new ObjectNotFoundException(typeof(User).Name, username);
            }
            var modifiableProperties = userDTO.GetType()
                                       .GetProperties().Select(pi => pi.Name);
            string propertyName = data[1];

            if (!modifiableProperties.Contains(propertyName))
            {
                throw new PropertyNotSupportedException(propertyName);
            }
            string propertyValue = data[2];

            switch (propertyName.ToUpper())
            {
            case "BORNTOWN":
                TownDto townDTO = townService.ByName <TownDto>(propertyValue);
                if (townDTO == null)
                {
                    throw new InvalidValueException(
                              propertyValue, Environment.NewLine +
                              new ObjectNotFoundException(typeof(Town).Name, propertyValue).Message);
                }
                userService.SetBornTown(userDTO.Id, townDTO.Id);
                break;

            case "CURRENTTOWN":
                townDTO = townService.ByName <TownDto>(propertyValue);
                if (townDTO == null)
                {
                    throw new InvalidValueException(
                              propertyValue, Environment.NewLine +
                              new ObjectNotFoundException(typeof(Town).Name, propertyValue).Message);
                }
                userService.SetCurrentTown(userDTO.Id, townDTO.Id);
                break;

            case "PASSWORD":
                if (!IsPasswordValid(propertyValue))
                {
                    throw new InvalidValueException(
                              propertyValue, Environment.NewLine +
                              new InvalidObjectException("password").Message);
                }
                userService.ChangePassword(userDTO.Id, propertyValue);
                break;

            default:
                throw new PropertyNotSupportedException(propertyName);
            }
            return(String.Format(SuccessMessage, username, propertyName, propertyValue));
        }
Example #2
0
        public async Task <JsonResult> Update(ModifyUserDto model)
        {
            var result = await _userAppService.UpdateUser(model);

            OutputModel outputModel = new OutputModel();

            outputModel.Data = result;
            return(new JsonResult(outputModel));
        }
Example #3
0
        public ActionResult <ModifyUserDto> GetById()
        {
            var userId = GetIdUser();
            var user   = _context.Users
                         .Include(x => x.Distribution)
                         .FirstOrDefault(j => j.Id == userId);

            if (user == null)
            {
                return(null);
            }
            ModifyUserDto modifyUserDto = new ModifyUserDto
            {
                Dni            = user.Dni,
                UserName       = user.UserName,
                PhoneNumber    = user.PhoneNumber,
                FirstName      = user.FirstName,
                LastName       = user.LastName,
                DistributionId = user.DistributionId,
                OrganismId     = user.Distribution.OrganismId
            };

            var RolesUser = _context.UserRoles.ToList();
            var AllRoles  = _context.Roles.ToList();

            List <RoleWhenModifyUser> ListRolesBelongsToUser = new List <RoleWhenModifyUser>();

            foreach (var role in AllRoles)
            {
                if (RolesUser.Exists(x => x.UserId == user.Id && x.RoleId == role.Id))
                {
                    RoleWhenModifyUser roleWhenModifyUser = new RoleWhenModifyUser
                    {
                        Id            = role.Id,
                        Name          = role.Name,
                        RolBelongUser = true
                    };

                    ListRolesBelongsToUser.Add(roleWhenModifyUser);
                }
                else
                {
                    RoleWhenModifyUser roleWhenModifyUser = new RoleWhenModifyUser
                    {
                        Id            = role.Id,
                        Name          = role.Name,
                        RolBelongUser = false
                    };

                    ListRolesBelongsToUser.Add(roleWhenModifyUser);
                }
            }
            modifyUserDto.RolesUser = ListRolesBelongsToUser;
            return(modifyUserDto);
        }
        public ActionResult <ModifyUserDto> GetById(Guid id)
        {
            var user = _context.Users.Find(id);

            if (user == null)
            {
                return(null);
            }
            ModifyUserDto modifyUserDto = new ModifyUserDto
            {
                Dni         = user.Dni,
                UserName    = user.UserName,
                PhoneNumber = user.PhoneNumber,
            };

            var RolesUser = _context.UserRoles.ToList();
            var AllRoles  = _context.Roles.ToList();

            List <RoleWhenModifyUser> ListRolesBelongsToUser = new List <RoleWhenModifyUser>();

            foreach (var role in AllRoles)
            {
                if (RolesUser.Exists(x => x.UserId == user.Id && x.RoleId == role.Id))
                {
                    RoleWhenModifyUser roleWhenModifyUser = new RoleWhenModifyUser
                    {
                        Id            = role.Id,
                        Name          = role.Name,
                        RolBelongUser = true
                    };

                    ListRolesBelongsToUser.Add(roleWhenModifyUser);
                }
                else
                {
                    RoleWhenModifyUser roleWhenModifyUser = new RoleWhenModifyUser
                    {
                        Id            = role.Id,
                        Name          = role.Name,
                        RolBelongUser = false
                    };

                    ListRolesBelongsToUser.Add(roleWhenModifyUser);
                }
            }
            modifyUserDto.RolesUser = ListRolesBelongsToUser;
            return(modifyUserDto);
        }
Example #5
0
        public async Task <IActionResult> AddUser(
            [FromServices] UserManager <User> userManager,
            [FromBody] ModifyUserDto dto
            )
        {
            var user = mapper.Map <User>(dto);

            var result = await userManager.CreateAsync(user, dto.Password);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors));
            }

            return(Ok(mapper.Map <UserDto>(user)));
        }
Example #6
0
        public async Task <IActionResult> EditUser(
            [FromServices] UserManager <User> userManager,
            [FromRoute] string id,
            [FromBody] ModifyUserDto dto
            )
        {
            var user = await userManager.FindByIdAsync(id);

            user = mapper.Map(dto, user);
            if (user == null)
            {
                return(NotFound());
            }

            var result = await userManager.UpdateAsync(user);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors));
            }
            return(Ok(mapper.Map <UserDto>(user)));
        }
Example #7
0
        public ActionResult <ModifyUserDto> GetById(Guid id)
        {
            var user = _context.Users.Find(id);

            if (user == null)
            {
                return(null);
            }

            var supervisorId           = _context.SupervisorUserAgents.FirstOrDefault(x => x.AgentId == user.Id);
            var supervisorId1Nulleable = supervisorId == null ? Guid.Empty : supervisorId.SupervisorId;
            var supervisorId2Nulleable = supervisorId == null ? Guid.Empty : supervisorId.SupervisorId2;

            ModifyUserDto modifyUserDto = new ModifyUserDto
            {
                Dni                = user.Dni,
                UserName           = user.UserName,
                PhoneNumber        = user.PhoneNumber,
                FirstName          = user.FirstName,
                LastName           = user.LastName,
                DistributionId     = user.DistributionId,
                CategoryId         = user.CategoryId,
                SupervisorAgentId  = supervisorId1Nulleable == null ? Guid.Empty : supervisorId1Nulleable,
                SupervisorAgentId2 = supervisorId2Nulleable == null ? Guid.Empty : supervisorId2Nulleable
            };

            var RolesUser = _context.UserRoles.ToList();
            var AllRoles  = _context.Roles.ToList();

            List <RoleWhenModifyUser> ListRolesBelongsToUser = new List <RoleWhenModifyUser>();

            foreach (var role in AllRoles)
            {
                if (RolesUser.Exists(x => x.UserId == user.Id && x.RoleId == role.Id))
                {
                    RoleWhenModifyUser roleWhenModifyUser = new RoleWhenModifyUser
                    {
                        Id             = role.Id,
                        Name           = role.Name,
                        NormalizedName = role.NormalizedName,
                        RolBelongUser  = true
                    };

                    ListRolesBelongsToUser.Add(roleWhenModifyUser);
                }
                else
                {
                    RoleWhenModifyUser roleWhenModifyUser = new RoleWhenModifyUser
                    {
                        Id             = role.Id,
                        Name           = role.Name,
                        NormalizedName = role.NormalizedName,
                        RolBelongUser  = false
                    };

                    ListRolesBelongsToUser.Add(roleWhenModifyUser);
                }
            }
            modifyUserDto.RolesUser = ListRolesBelongsToUser;
            return(modifyUserDto);
        }
Example #8
0
        public async Task <ServiceResult> CreateAsync([FromBody] ModifyUserDto userInput)
        {
            await _userService.CreateAsync(_mapper.Map <UserEntity>(userInput), userInput.RoleIds, userInput.Password);

            return(ServiceResult.Successed("用户创建成功"));
        }
Example #9
0
 public async Task <Result> UpdateUser(ModifyUserDto input)
 {
     return(await _userService.Update(_mapper.Map <User>(input)));
 }