Example #1
0
        public async Task <OperationResult <TaskModel> > MarkTaskAsOpenedAsync(int taskId)
        {
            var taskModel = await _taskModelDbOperations.GetAsync(taskId);

            if (taskModel == null)
            {
                return(OperationResult <TaskModel> .NotFound());
            }

            taskModel.MarkAsOpened();
            await _taskModelDbOperations.UpdateAsync(taskModel);

            return(OperationResult <TaskModel> .Ok());
        }
Example #2
0
        public async Task Update(User userParam, string password)
        {
            var user = await GetById(userParam.Id.ToString());

            if (user == null)
            {
                throw new AppException("User not found");
            }

            if (userParam.UserId != user.UserId)
            {
                // userId has changed so check if the new userId is already taken
                if ((await _userDbOperations.GetAllAsync(e => e.UserId == userParam.UserId)).Any())
                {
                    throw new AppException("UserId " + userParam.UserId + " is already taken");
                }
            }

            // update user properties
            user.FirstName = userParam.FirstName;
            user.LastName  = userParam.LastName;
            user.UserId    = userParam.UserId;

            // update password if it was entered
            if (!string.IsNullOrWhiteSpace(password))
            {
                _passwordHashService.CreatePasswordHash(password, out var passwordHash, out var passwordSalt);

                user.PasswordHash = passwordHash;
                user.PasswordSalt = passwordSalt;
            }

            await _userDbOperations.UpdateAsync(e => e.Id == userParam.Id, user);
        }
Example #3
0
        public async Task <OperationResult <CommentModel> > UpdateCommentAsync(int commentId, string content)
        {
            var comment = await _commentModelDbOperations.GetAsync(commentId);

            if (comment == null)
            {
                return(OperationResult <CommentModel> .NotFound());
            }

            comment.Content = content;

            await _commentModelDbOperations.UpdateAsync(comment);

            return(OperationResult <CommentModel> .Ok());
        }
Example #4
0
        public async Task <OperationResult <ProjectModel> > RenameAsync(int projectId, string name)
        {
            var projectModel = await _projectModelDbOperations.GetAsync(projectId);

            if (projectModel == null)
            {
                return(OperationResult <ProjectModel> .NotFound());
            }

            projectModel.Rename(name);
            var validationResult = await _projectModelValidator.ValidateAsync(projectModel);

            if (!validationResult.IsValid)
            {
                return(ValidationHelper.GetValidationFailedOperationResult <ProjectModel>(validationResult));
            }

            await _projectModelDbOperations.UpdateAsync(projectModel);

            return(OperationResult <ProjectModel> .Ok());
        }