async Task ExecuteSaveCommand() { if (IsBusy) { return; } IsBusy = true; try { if (Item.Id == null) { await table.CreateItemAsync(Item); } else { await table.UpdateItemAsync(Item); } MessagingCenter.Send <MealDetailViewModel>(this, "ItemsChanged"); await Application.Current.MainPage.Navigation.PopAsync(); } catch (Exception ex) { Debug.WriteLine($"[MealDetail] Save error: {ex.Message}"); } finally { IsBusy = false; } }
public async Task OnConfirmShipment(IList <InboundShipment> shipmentList) { foreach (var inboundShipment in shipmentList) { var item = new ReceiptWorkItem { VendorId = inboundShipment.VendorId, PoLineNumber = Convert.ToString(inboundShipment.PoLineNumber), ItemNumber = inboundShipment.ItemNumber, Quantity = inboundShipment.QtyReceived, Uom = inboundShipment.BaseUom, VendorItemNumber = inboundShipment.VendorItemNumber, VendorName = inboundShipment.VendorName, LotNumber = inboundShipment.LotNumber, RcpLineNumber = inboundShipment.LineNum, PoNumber = inboundShipment.DocumentNumber, BatchId = CreateBatchId(), IsLotControlled = inboundShipment.IsLotControlled, ItemDescription = inboundShipment.ItemDescription, Date = DateTime.UtcNow }; await _receiptWorkItemTable.CreateItemAsync(item).ConfigureAwait(false); } }
// this region needs to be removed #region Operations on Tables public async Task <SharingSpace> AddSharingSpace(SharingSpace sharingSpace) { await InitializeAsync(); // manipulate the input await sharingSpaceTable.CreateItemAsync(sharingSpace); await SyncOfflineCacheAsync(); //return coffee return(sharingSpace); }
public async Task ExecuteJoinPartyCommand() { if (IsBusy) { return; } IsBusy = true; joinButtonLabel = null; try { var loginProvider = DependencyService.Get <ILoginProvider>(); //TODO Optimize string customerid; //loginProvider.RetreiveAccountFromSecureStore().Properties.TryGetValue(Constants.stripeAccountIdPropertyName,out customerid); string userTableid = loginProvider.RetrieveTableIdFromSecureStore(); var cloudService = ServiceLocator.Instance.Resolve <ICloudService>(); ICloudTable <AttendeeDetails> Table = cloudService.GetTable <AttendeeDetails>(); AttendeeDetails attendeeDetails = new AttendeeDetails { userId = userTableid, partyId = Id, //Actually tableid paid = false, accepted = false, chargeId = " ", }; await Table.CreateItemAsync(attendeeDetails); //TODO register for notifications } catch (Exception ex) { Console.WriteLine($"[Login] Error = {ex.Message}"); } finally { joinButtonLabel = Constants.joinButtonTitles[(int)Constants.JoinedPartyStates.RequestSent]; Console.WriteLine("Join Party Command Executed"); IsBusy = false; } }
private async Task ExecuteCreatePartyCommand() { if (IsBusy) { return; } joinButtonLabel = ""; IsBusy = true; try { ImageSource partyHeaderSource = partyHeaderImageSource; string headerImagePath; headerImagePath = await AzureStorage.UploadFileAsync(ContainerType.Image, new MemoryStream(partyHeaderByteArray)); Debug.WriteLine("AzureStorage Succes"); //TODO Make sure user information is transferred to theese values partyDetails.picture = headerImagePath ?? " "; partyDetails.partyId = Guid.NewGuid().ToString(); partyDetails.userId = App.UserDetails.userId ?? " "; AzurePartyManager manager = AzurePartyManager.DefaultManager; var cloudService = ServiceLocator.Instance.Resolve <ICloudService>(); ICloudTable <PartyDetails> Table = cloudService.GetTable <PartyDetails>(); partyDetails = await Table.CreateItemAsync(partyDetails); PartyDetails partyDetailsDB = partyDetails; await manager.InsertItemAsync(partyDetailsDB); } catch (Exception ex) { Debug.WriteLine($"[Upload] Error = {ex.Message}"); } finally { IsBusy = false; joinButtonLabel = "Party Created!"; RootPage.instance.GoToDetailPage(MasterDetailPageManager.MapPage); } }