public bool SaveInAccountStatement(int idImport) { //Chargement des AccountStatementFile var asifs = GetByIdImport(idImport); if (asifs != null && asifs.Count > 0) { var unknownId = GetUnknownIds(asifs[0].AccountStatementImport.User.IdUserGroup); foreach (var asif in asifs) { asif.UnknownId = unknownId; //Mise à jour des state et des duplicate _accountStatementImportFileRepository.UpdateAsifStates(asif); } ////Mise à jour des state et des duplicate //_accountStatementImportFileRepository.UpdateAsifStates(idImport); //controler si tous les enregistrements sont complets if (!IsSaveableInAccountStatement(idImport)) { throw new Exception("Il existe des opérations en erreur dans le relevé"); } //recuperer les accountStatementImportFiles var accountStatementImportFiles = GetAsifsWithoutDuplicate(idImport); foreach (var accountStatementImportFile in accountStatementImportFiles) { var accountStatement = _mapper.Map <AccountStatement>(accountStatementImportFile); accountStatement = _accountStatementService.Save(accountStatement); if (accountStatement.Id != 0) { //Recherche si operation transverse a enregistrer var operationTranserveAsifs = _operationTransverseAsifService.GetByIdAsif(accountStatementImportFile.Id); foreach (var operationTranserveAsif in operationTranserveAsifs) { var operationTransverseAs = new OperationTransverseAs { Id = 0, IdAccountStatement = accountStatement.Id, IdOperationTransverse = operationTranserveAsif.IdOperationTransverse }; _operationTransverseAsService.Save(operationTransverseAs); } } //var accountStatements = _mapper.Map<IEnumerable<AccountStatement>>(accountStatementImportFiles).ToList(); } //sauvegarder dans accountStatement return(true); } return(false); }
public OperationTransverseAs Save(OperationTransverseAs operationTransverseAs) { if (operationTransverseAs.Id == 0) { operationTransverseAs = _operationTransverseAsRepository.Create(operationTransverseAs); } else { operationTransverseAs = _operationTransverseAsRepository.Update(operationTransverseAs); } return(operationTransverseAs); }