public IActionResult update([FromBody] AsifDetailDto asifDetailDto)
        {
            try
            {
                var result = _accountStatementImportFileService.Update(asifDetailDto);

                return(Ok(result));
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
示例#2
0
        public bool Update(AsifDetailDto asifDetailDto)
        {
            //chargement du accountStatementFile
            var asif = _accountStatementImportFileRepository.GetById(asifDetailDto.Id);

            //mise à jour des données
            asif.AmountOperation       = asifDetailDto.AmountOperation;
            asif.DateIntegration       = asifDetailDto.DateIntegration.Value.Date;
            asif.LabelOperation        = asifDetailDto.LabelOperation;
            asif.IdOperation           = asifDetailDto.Operation.Selected.Id;
            asif.IdOperationMethod     = asifDetailDto.OperationMethod.Selected.Id;
            asif.IdOperationType       = asifDetailDto.OperationType.Selected.Id;
            asif.IdOperationTypeFamily = asifDetailDto.OperationTypeFamily.Selected.Id;
            asif.OperationKeywordTemp  = asifDetailDto.OperationKeywordTemp;
            asif.PlaceKeywordTemp      = asifDetailDto.PlaceKeywordTemp;

            switch (asifDetailDto.OperationPlace.Selected.Id)
            {
            case 2:
                asifDetailDto.OperationDetail.GMapAddress.Id   = 2;
                asifDetailDto.OperationDetail.KeywordOperation = asifDetailDto.OperationKeywordTemp;
                asifDetailDto.OperationDetail.KeywordPlace     = null;
                break;

            case 3:
                asifDetailDto.OperationDetail.GMapAddress.Id   = 3;
                asifDetailDto.OperationDetail.KeywordOperation = asifDetailDto.OperationKeywordTemp;
                asifDetailDto.OperationDetail.KeywordPlace     = "--INTERNET--";
                break;

            default:
                asifDetailDto.OperationDetail.KeywordOperation = asifDetailDto.OperationKeywordTemp;
                asifDetailDto.OperationDetail.KeywordPlace     = asifDetailDto.PlaceKeywordTemp;
                break;
            }

            var idOdUnknown = _referentialService.OperationDetailService.GetUnknown(asifDetailDto.User.IdUserGroup).Id;
            //Recherche si operation detail existe déjà, sinon creation
            OperationDetail operationDetail = new OperationDetail
            {
                Id               = asifDetailDto.OperationDetail.Id == idOdUnknown ? 0 : asifDetailDto.OperationDetail.Id,
                IdUserGroup      = asifDetailDto.User.IdUserGroup,
                IdOperation      = asifDetailDto.Operation.Selected.Id,
                IdGMapAddress    = asifDetailDto.OperationDetail.GMapAddress.Id,
                KeywordOperation = asifDetailDto.OperationDetail.KeywordOperation,
                KeywordPlace     = asifDetailDto.OperationDetail.KeywordPlace
            };

            operationDetail        = _referentialService.OperationDetailService.GetOrCreate(operationDetail);
            asif.IdOperationDetail = operationDetail.Id;


            //Mise à jour de l'operationTransverse
            _operationTransverseAsifService.Update(asifDetailDto.OperationTransverse.ListSelected, asifDetailDto.Id);

            //Mise à jour de l'asifState et du duplicate
            asif = _accountStatementImportFileRepository.UpdateAsifState(asif);

            //update de accountStatementFile
            _accountStatementImportFileRepository.Update(asif);

            return(true);
        }