コード例 #1
0
 private void UpdateApprovalIfNecessary(UpdateTaskContract contract)
 {
     if (contract.TaskItems.Count > 0)
     {
         var shouldBeApproved = contract.TaskItems.All(c => c.Checked == true);
         contract.IsApprove = shouldBeApproved;
         contract.IsNew     = false;
     }
 }
コード例 #2
0
 private void ValidateContract(UpdateTaskContract contract)
 {
     try
     {
         _updateTaskContractValidator.ValidateAndThrow(contract,
                                                       $"{ValidatorConstants.RULESET_DEFAULT}");
     }
     catch (ValidationException ex)
     {
         throw new CreateContractInvalidException(ex.ToListOfMessages());
     }
 }
コード例 #3
0
        public void Update(UpdateTaskContract contract)
        {
            _log.LogInformation($"Validating contract {contract.Title}");
            ValidateContract(contract);

            //Update isApprove property if necessary
            UpdateApprovalIfNecessary(contract);

            _log.LogInformation($"Mapping contract {contract.Title}");
            var task = _mapper.Map <Task>(contract);

            var updatedTask = _taskRepository.Update(task);

            _log.LogInformation($"Complete for {contract.Title}");
            _unitOfWork.Complete();
        }