public async Task RemoveAsync(FileToTransaction fileToTransaction) { if (fileToTransaction != null) { await this.fileHelper.TaskRemoveFileAsync(fileToTransaction.File.ExternalId); fileToTransaction.Delete(); fileToTransaction.File.Delete(); await this.Context.SaveChangesAsync(); } }
private async Task DealWithTransactionToFilesAsync(int transactionId, List <FileToTransactionSyncDTO> filesToSync) { if (filesToSync == null || !filesToSync.Any()) { return; } var currentFiles2Transactions = await this.fileRepository.GetFileToTransactionsAsync(transactionId); foreach (var f2t in filesToSync) { var entity = currentFiles2Transactions.Where(x => x.ExternalId == f2t.ExternalId.ToString()).FirstOrDefault(); if (entity != null) { if (f2t.IsDeleted) { entity.Delete(f2t.IsDeleted); } entity.SetModifiedOn(f2t.ModifiedOn); await this.fileRepository.UpdateAsync(entity); } else { var file = await this.fileRepository.GetAsync(f2t.FileId.ToString()); if (file != null) { entity = new FileToTransaction { TransactionId = transactionId, ExternalId = f2t.ExternalId.ToString(), ModifiedOn = f2t.ModifiedOn, IsDeleted = f2t.IsDeleted, FileId = file.Id, }; await this.fileRepository.AddAsync(entity); } } } }
private async Task DealWithTransactionToFilesAsync(int transactionId, List <FileToTransactionSyncDTO> filesToSync) { if (filesToSync == null || !filesToSync.Any()) { return; } var f2tIds = filesToSync.Select(x => x.Id).ToList(); var currentFiles2Transactions = await this.Context.FilesToTransactions.Where(x => x.TransactionId == transactionId).ToListAsync(); foreach (var f2t in filesToSync) { var entity = currentFiles2Transactions.Where(x => x.Id == f2t.ExternalId).FirstOrDefault(); if (entity != null) { if (f2t.IsDeleted) { entity.Delete(f2t.IsDeleted); } entity.SetModifiedOn(f2t.ModifiedOn); this.Context.FilesToTransactions.Update(entity); } else { entity = new FileToTransaction { TransactionId = transactionId, ExternalId = f2t.ExternalId, Id = f2t.ExternalId, ModifiedOn = f2t.ModifiedOn, IsDeleted = f2t.IsDeleted, FileId = f2t.FileId, }; this.Context.FilesToTransactions.Add(entity); } } this.Context.SaveChanges(); }
public async Task UpdateAsync(FileToTransaction fileToTransaction) { this.Context.FilesToTransactions.Update(fileToTransaction); await this.Context.SaveChangesAsync(); }
public async Task AddAsync(FileToTransaction fileToTransaction) { await this.Context.FilesToTransactions.AddAsync(fileToTransaction); await this.Context.SaveChangesAsync(); }