private async Task RegistrationMessageHandler(Message msg, CancellationToken cancellationToken) { Shift shift = null; // TODO: here read and convert ShiftModel from msg.Body await _shiftsService.TryRegisterShiftAsync(shift); }
public void correct_shift_should_be_added_to_empty_base_and_available() { var startHour = new DateTime(2021, 1, 23, 7, 0, 0); var endHour = startHour.AddHours(8); var newShift = new Shift { WorkerId = _workerOneIdentifier, TimeZone = _workerTimeZone, StartUtc = startHour.Add(_workerTimeZone.GetUtcOffset(startHour)), EndUtc = endHour.Add(_workerTimeZone.GetUtcOffset(endHour)) }; var insertionStatus = _shiftService.TryRegisterShiftAsync(newShift).Result; Assert.IsTrue(insertionStatus.IsSuccess); Assert.AreNotEqual(insertionStatus.Value.ShiftId, Guid.Empty); // ... var registeredShifts = _shiftService .GetWorkerShiftsAsync(_workerOneIdentifier, DateTime.MinValue, DateTime.MaxValue).Result; Assert.IsNotNull(registeredShifts); Assert.IsNotEmpty(registeredShifts); Assert.AreEqual(1, registeredShifts.Length); Assert.AreEqual(registeredShifts[0].ShiftId, insertionStatus.Value.ShiftId); }
public async Task <IActionResult> BookShift(ShiftViewModel newShift) { Shift shift = newShift.AsDomainClass(); var inserted = await _shiftsService.TryRegisterShiftAsync(shift); if (inserted.IsSuccess) { return(new JsonResult(new ShiftViewModel(inserted.Value))); } return(ProcessError(inserted)); }