private void GetProductList() { uUIDs = new Dictionary <string, UIDInfo>(); BackendReturnObject bro = Backend.TBC.GetProductList(); var r = bro.GetReturnValuetoJSON()["rows"]; LitJson.JsonData[] rows = new LitJson.JsonData[r.Count]; for (int i = 0; i < rows.Length; i++) { rows[i] = r[i]; } foreach (var w in rows) { UIDInfo u = new UIDInfo(); u.name = w["name"][0].ToString(); u.uuid = w["uuid"][0].ToString(); u.price = Convert.ToInt32(w["TBC"][0].ToString()); uUIDs.Add(u.name, u); } }
public UIDInfo GetProductUUID(string key) { if (uUIDs.ContainsKey(key)) { return(uUIDs[key]); } else { UIDInfo u = new UIDInfo(); u.name = ""; u.price = 0; return(u); } }
private async void LookupBikeInfo() { if (IsBusy) { return; } IsBusy = true; string uuid = Preferences.Get("UUID", ""); string user = Preferences.Get("Email", ""); string token = Preferences.Get("Token", ""); if (user != "" && token == "") { user = ""; } bool isMyBike = false; if (uuid != "") { try { UIDInfo result = await DataStore.GetInfo(user, token, uuid); if (result.FrameNumber == null) { await DialogService.Show("UUID unknown", $"The scanned UUID {uuid} is unknown", "Ok"); Status = (int)FrameNumberStatusType.UIDNotRegistered; Preferences.Set("UUID", ""); UUID = uuid; Brand = ""; Model = ""; ProductionYear = ""; } else { if (result.Owner != null && token != "" && user != "") { if (string.Equals(result.Owner.Email, user, StringComparison.InvariantCultureIgnoreCase)) { isMyBike = true; } } Brand = result.FrameNumber.Manufacturer; string model = result.FrameNumber.Model + " "; if (result.FrameNumber.Frame != "") { model += result.FrameNumber.Frame; } Model = model; UUID = result.FrameNumber.UID; Status = result.FrameNumberStatus.Status; Preferences.Set("BrandModel", Brand + " " + Model); Stolen = (Status == (int)FrameNumberStatusValue.Stolen); Registered = isMyBike && (Status != (int)FrameNumberStatusValue.Unregistered && Status != (int)FrameNumberStatusValue.Unknown); Preferences.Set("RegisteredToBike", Registered ? "1" : "0"); NotRegistered = !Registered; // Make sure we show 'stolen' if (Stolen) { NotRegistered = false; } FrameNumberStatus = result.FrameNumberStatus; ProductionYear = result.FrameNumber.ProductionDate.Year > 0 ? result.FrameNumber.ProductionDate.Year.ToString() : ""; if (result.FrameNumberExtras != null) { FrameNumberExtras = result.FrameNumberExtras; } /* string extras = ""; * if (result.FrameNumberExtras != null) * { * foreach (FrameNumberExtra ext in result.FrameNumberExtras) * { * if (extras != "") * extras += ", "; * string thisExtra = ""; * if (ext.ExtraBrand != "") * thisExtra += " "; * if (ext.ExtraModel != "") * thisExtra = ext.ExtraModel + " "; * if (ext.ExtraType != "") * thisExtra = ext.ExtraType; * extras += thisExtra.Trim(); * } * Extras = extras; * }*/ DocumentCount = result.FrameNumberDocuments != null ? result.FrameNumberDocuments.Count : 0; Documents = result.FrameNumberDocuments ?? new List <FrameNumberDocument>(); MessageCount = result.NumberOfMessages; var messageViewModel = ViewModelLocator.Resolve <MessagesViewModel>(); if (messageViewModel != null) { MessagingCenter.Send(messageViewModel, MessageKeys.UpdateMessageCount, MessageCount); } if (NotRegistered) { ImagePath = Constants.DefaultProfileImage; } else if (result.ProfileImage != "") { ImagePath = result.ProfileImage; Preferences.Set("ProfileImage", ImagePath); } } IsBusy = false; } catch (Exception e) { AnalyticsService.TrackError(e, new Dictionary <string, string> { { "Method", "BikeDetailViewModel.LookupBikeInfo" } }); } } else { if (hasShowWarning == false) { await DialogService.Show("No scans", "No bike has been scanned. Please scan a bike..", "Ok"); } hasShowWarning = true; Status = (int)FrameNumberStatusType.UIDNotRegistered; UUID = uuid; Brand = ""; Model = ""; TabParameter tabParameter = new TabParameter() { TabIndex = 1 }; await NavigationService.NavigateToAsync <MainViewModel>(tabParameter); } IsBusy = false; }