private async Task AddAuditTrail(int workOrderId, bookingConfirmation bookingConfirmation) { var update = new JobStatusUpdate { EventTime = DrsHelpers.ConvertFromDrsTimeZone(bookingConfirmation.changedDate), RelatedWorkOrderId = workOrderId, TypeCode = JobStatusUpdateTypeCode.Other_0, OtherType = CustomJobStatusUpdates.AddNote, Comments = $"DRS: Appointment has been updated in DRS to {bookingConfirmation.planningWindowStart.ToDateTime()} - {bookingConfirmation.planningWindowEnd.ToDateTime()} Reason: {bookingConfirmation.bookingReason}" }; await _jobStatusUpdateGateway.CreateJobStatusUpdate(update); }
private static bookingConfirmation CreateBookingConfirmation(int workOrderId) { var bookingConfirmation = new bookingConfirmation { changedDate = DateTime.UtcNow, primaryOrderNumber = (uint)workOrderId, planningWindowStart = DateTime.UtcNow, planningWindowEnd = DateTime.UtcNow.AddHours(5), bookingReason = "reason" }; return(bookingConfirmation); }
public async Task <string> ConfirmBooking(bookingConfirmation bookingConfirmation) { _logger.LogInformation($"ConfirmBooking for bookingId: {bookingConfirmation.bookingId}"); var serialisedBookings = JsonConvert.SerializeObject(bookingConfirmation); _logger.LogInformation(serialisedBookings); var workOrderId = (int)bookingConfirmation.primaryOrderNumber; await _appointmentsGateway.SetTimedBooking( workOrderId, bookingConfirmation.planningWindowStart, bookingConfirmation.planningWindowEnd, bookingConfirmation.bookingReason ); await _drsService.UpdateWorkOrderDetails(workOrderId); await AddAuditTrail(workOrderId, bookingConfirmation); return(Resources.DrsBackgroundService_BookingAccepted); }