Esempio n. 1
0
        public async Task TransferContractors(List <Document> documents)
        {
            ContractorService contractorService = new ContractorService(_dbContext);
            var documentsContractors            = AggregateContractorsFromDocuments(documents);
            List <Contractor> newContractors    = new List <Contractor>();

            foreach (var documentContractor in documentsContractors)
            {
                var contractorServiceResponse = contractorService.ContractorExist((int)documentContractor.SourceId, documentContractor.ContractorSourceId);
                var isAddedToNewContractors   = newContractors.FirstOrDefault(c => c.SourceId == documentContractor.SourceId && c.ContractorSourceId == documentContractor.ContractorSourceId);
                if (!contractorServiceResponse.Exist && isAddedToNewContractors == null)
                {
                    newContractors.Add(documentContractor);
                }
            }

            try
            {
                await _dbContext.AddRangeAsync(newContractors).ConfigureAwait(true);

                await _dbContext.SaveChangesAsync().ConfigureAwait(true);

                _logger.LogInformation($"Dodano : {newContractors.Count} nowych kontrahentów.");
            }
            catch (Exception ex)
            {
                _dbContext.DetachAllEntities();
                _logger.LogError(ex.Message);
            }
        }
Esempio n. 2
0
        public static async Task ChangeTicketStatus(WorkerAppDbContext dbContext, int ticketId, TicketStatus ticketStatus)
        {
            dbContext.DetachAllEntities();
            var ticket = await dbContext.TaskTickets.FirstOrDefaultAsync(f => f.TaskTicketId == ticketId);

            ticket.TicketStatus    = ticketStatus;
            ticket.StatusChangedAt = DateTime.Now;
            dbContext.Update(ticket);
            await dbContext.SaveChangesAsync();
        }