public async Task <HttpRequestResult <PackingListViewInfoModel> > ReadingPackAccessory(ReadingPackAccessoryModel model) { return(await PostAsyncReceiveData <PackingListViewInfoModel, ReadingPackAccessoryModel>( $"{ApiController}/reading-pack-accessory", model)); }
private async Task ReadingPackAccessory(ReadingPackAccessoryModel model) { var packingListViewInfo = await _boardingAccessoryService.ReadingPackAccessory(model); if (packingListViewInfo.Response != null && packingListViewInfo.Response.Valid) { await SetPackingListViewInfo(packingListViewInfo.Response); } else if (packingListViewInfo.Response != null) { switch (packingListViewInfo.Response.ExceptionCode) { case ExceptionCodeEnum.RequestUnitDestination: await _notificationService.NotifyAsync("Opetação não implementada.", SoundEnum.Alert); if (await _notificationService.AskQuestionAsync(packingListViewInfo.Response.ExceptionMessage, SoundEnum.Alert)) { await ReadingPackAccessory(new ReadingPackAccessoryModel(model.IgnoreWarehouse, model.PackingListAccessoryId, model.UnitLocal, _userService.User.Unit.Id, model.BarCode, model.MacAddress)); } break; case ExceptionCodeEnum.PackRead: if (await _notificationService.AskQuestionAsync( $"{packingListViewInfo.Response.ExceptionMessage}\r\nDeseja estornar o volume registrado na leitura atual?", SoundEnum.Alert)) { CallConfirmationRandomPopupPage(CancelPackBoarding, new CancelPackBoardingModel(model.PackingListAccessoryId, model.BarCode, model.MacAddress, false, false)); } else if (await _notificationService.AskQuestionAsync( $"{packingListViewInfo.Response.ExceptionMessage}\r\nDeseja estornar todo o CTRC do volume registrado na leitura atual?", SoundEnum.Alert) ) { CallConfirmationRandomPopupPage(CancelBillOfLadingBoarding, new CancelBillOfLadingBoardingModel(model.PackingListAccessoryId, model.BarCode, model.MacAddress, false)); } break; case ExceptionCodeEnum.PackNotFoundWarehouse: if (await _notificationService.AskQuestionAsync(packingListViewInfo.Response.ExceptionMessage, SoundEnum.Alert)) { await ReadingPackAccessory(new ReadingPackAccessoryModel(true, model.PackingListAccessoryId, model.UnitLocal, model.UnitDestination, model.BarCode, model.MacAddress)); } break; default: await _notificationService.NotifyAsync(packingListViewInfo.Response.ExceptionMessage, SoundEnum.Erros); break; } } else { await _notificationService.NotifyAsync("Não foi possivel concluir a requisição.", SoundEnum.Erros); } }