public CheckPackageModel CheckPackageOrder(string barcode) { CheckPackageModel retVal = null; using (var client = new WebClient()) { try { client.Headers.Add("Token", Utils.TOKEN); string URL = string.Format("{0}{1}?OrderNumber={2}", Utils.BASE_PATH, Utils.POST_ORDERS, barcode); var response = client.DownloadString(URL); ResponseCheckOrder order = JsonConvert.DeserializeObject <ResponseCheckOrder>(response); retVal = order.Data; } catch (Exception ex) { throw; } } return(retVal); }
private void AddNewPackage() { EditText barcodeTxt = FindViewById <EditText>(Resource.Id.txtBarcode); // Get barcode var barcodeValue = barcodeTxt.Text; barcodeValue = barcodeValue.Trim(); if (String.IsNullOrEmpty(barcodeValue)) { Android.Widget.Toast.MakeText(this, "Empty Package Barcode!", Android.Widget.ToastLength.Short).Show(); return; } CheckPackageModel model = null; if (GetConnectionStatus()) { try { // call api model = _transactionService.CheckPackageOrder(barcodeValue); if (model == null) { Android.Widget.Toast.MakeText(this, "Package does not exists!", Android.Widget.ToastLength.Short).Show(); return; } if (model.Status != (int)StatusTypeEnums.RECEIVED) { Android.Widget.Toast.MakeText(this, "Invalid Package Status!", Android.Widget.ToastLength.Short).Show(); barcodeTxt.Text = string.Empty; return; } } catch (Exception ex) { Android.Widget.Toast.MakeText(this, "Error!", Android.Widget.ToastLength.Short).Show(); } } // Check current data list var item = tableItems.Where(x => x.Heading == barcodeValue).FirstOrDefault(); if (item != null) { // add count var totalCount = item.PackageQty + 1; tableItems.Where(x => x.Heading == barcodeValue).FirstOrDefault().PackageQty = totalCount; tableItems.Where(x => x.Heading == barcodeValue).FirstOrDefault().SubHeading = string.Format("{0} item(s)", totalCount); } else { tableItems.Add(new TableItem { Heading = barcodeValue, // SubHeading = string.Format("{0} item(s)", model != null ? model.PackageQty : 1), // PackageQty = model != null ? model.PackageQty : 1, SubHeading = string.Format("{0} item(s)", 1), PackageQty = 1, GUID = model != null ? model.GUID : Guid.Empty }); } InitializeListView(); // get the total Count // 0 Packages Scanned totalCount = tableItems.Sum(x => x.PackageQty); // scanPackageCountTxt.Text = string.Format("{0} Packages Scanned", totalCount); barcodeTxt.Text = String.Empty; Android.Widget.Toast.MakeText(this, "Package is Added!", Android.Widget.ToastLength.Short).Show(); executeOnce = false; }
private void CheckPackage() { // reset visibility SetUIVisibility(); // check connection var isConnected = GetConnectionStatus(); if (isConnected) { // get barcdoe EditText barcodeTxt = FindViewById <EditText>(Resource.Id.txtBarcode); var barcode = barcodeTxt.Text; barcode = barcode.Trim(); if (String.IsNullOrEmpty(barcode)) { Android.Widget.Toast.MakeText(this, "Package Barcode is empty!", Android.Widget.ToastLength.Short).Show(); return; } CheckPackageModel model = null; try { // call api model = _transactionService.CheckPackageOrder(barcode); } catch (Exception ex) { Android.Widget.Toast.MakeText(this, "Error!", Android.Widget.ToastLength.Short).Show(); return; } if (model == null) { Android.Widget.Toast.MakeText(this, "Package does not exist!", Android.Widget.ToastLength.Short).Show(); return; } // Update UI TextView packageCountView = FindViewById <TextView>(Resource.Id.txtViewPackageCount); TextView packageOrderView = FindViewById <TextView>(Resource.Id.txtViewPackageOrder); TextView statusView = FindViewById <TextView>(Resource.Id.txtViewPackageStatus); if (packageCountView != null) { packageCountView.Text = string.Format("{0} Packages", model.PackageQty); } if (packageOrderView != null) { packageOrderView.Text = string.Format("SKE Order: {0}", model.OrderNumber); } if (statusView != null) { statusView.Text = string.Format("Status: {0}", Utils.GetStatusTypeValue(model.Status)); } switch (model.Status) { case 0: //StatusTypeEnums.RECEIVED TextView txtAgentID = FindViewById <TextView>(Resource.Id.txtAgentID); txtAgentID.Visibility = ViewStates.Visible; txtAgentID.Text = string.Format("Agent ID: {0}", model.AgentStr); break; case 1: //StatusTypeEnums.LOADED TextView txtLotNo = FindViewById <TextView>(Resource.Id.txtLotNo); txtLotNo.Visibility = ViewStates.Invisible; txtLotNo.Text = string.Format("Lot No: {0}", model.LotNoStr); break; case 2: //StatusTypeEnums.SHIPPED break; case 3: //StatusTypeEnums.UNLOADED TextView txtLotNoUnload = FindViewById <TextView>(Resource.Id.txtLotNo); txtLotNoUnload.Visibility = ViewStates.Invisible; txtLotNoUnload.Text = string.Format("Lot No: {0}", model.LotNoStr); break; case 4: //StatusTypeEnums.DELIVERED TextView txtDeliveryDate = FindViewById <TextView>(Resource.Id.txtDeliveryDate); txtDeliveryDate.Visibility = ViewStates.Invisible; txtDeliveryDate.Text = string.Format("Delivery Date: {0}", model.DeliveredTS); TextView txtReceivedBy = FindViewById <TextView>(Resource.Id.txtReceivedBy); txtReceivedBy.Visibility = ViewStates.Invisible; txtReceivedBy.Text = string.Format("Received By: {0}", model.DeliveredTo); break; } } else { Android.Widget.Toast.MakeText(this, "No Connection!", Android.Widget.ToastLength.Short).Show(); } }