public async Task <IActionResult> UpdateAsync(string id, [FromBody] UpdateUsersResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var result = await _UsersService.UpdateAsync(id, resource);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            return(Ok(new { msg = "更新成功" }));
        }
예제 #2
0
        public async Task <SaveUsersResponse> UpdateAsync(string id, UpdateUsersResource resource)
        {
            var Users = _mapper.Map <UpdateUsersResource, UsersModels>(resource);

            var existingUsers = await _UsersRepository.ReadOneAsync(id);

            if (existingUsers == null)
            {
                return(new SaveUsersResponse("Category not found."));
            }

            //判斷是否要更改密碼
            if (resource.UpdatePasswordChecked == true)
            {
                //將密碼加密
                MD5HashUtils MD5         = new MD5HashUtils();
                string       Md5Password = MD5.MD5Hash(Users.password);

                existingUsers.password = Md5Password;
            }
            else
            {
                existingUsers.password = existingUsers.password;
            }

            //將要儲存要更新的值
            existingUsers.user_name        = Users.user_name;
            existingUsers.role_id          = Users.role_id;
            existingUsers.phone            = Users.phone;
            existingUsers.email            = Users.email;
            existingUsers.gender           = Users.gender;
            existingUsers.due_date         = Users.due_date;
            existingUsers.resignation_date = Users.resignation_date;

            try
            {
                await _UsersRepository.UpdateAsync(existingUsers);

                return(new SaveUsersResponse(existingUsers));
            }
            catch (Exception ex)
            {
                // Do some logging stuff
                return(new SaveUsersResponse($"An error occurred when updating the category: {ex.Message}"));
            }
        }