WorkToOrderAndResultJob.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using System;
  2. using System.Threading.Tasks;
  3. using Microsoft.Extensions.DependencyInjection;
  4. using Microsoft.AspNetCore.Hosting;
  5. using Microsoft.Extensions.Hosting;
  6. using Microsoft.Extensions.Logging;
  7. using FMSApp.Repositories;
  8. using Quartz;
  9. namespace FMSAdmin.QuartzSchedule.Jobs {
  10. public class WorkToOrderAndResultJob : IJob {
  11. private readonly ILogger<WorkToOrderAndResultJob> _logger;
  12. private readonly WorkRequestRepository _workRequestRepository;
  13. public WorkToOrderAndResultJob(ILogger<WorkToOrderAndResultJob> logger, WorkRequestRepository workRequestRepository) {
  14. _logger = logger;
  15. _workRequestRepository = workRequestRepository;
  16. }
  17. public Task Execute(IJobExecutionContext context) {
  18. // work to order
  19. try {
  20. _workRequestRepository.WorkToOrders();
  21. } catch (Exception ex) {
  22. _logger.LogError(ex, "");
  23. }
  24. // work to result
  25. try {
  26. _workRequestRepository.WorkToResults();
  27. } catch (Exception ex) {
  28. _logger.LogError(ex, "");
  29. }
  30. return Task.CompletedTask;
  31. }
  32. }
  33. }