public async Task <string> OnBloodSugarAddButtonPressed()
        {
            if (!String.IsNullOrEmpty(_level.Text) && !String.IsNullOrEmpty(_mealName.Text))
            {
                if (float.Parse(_level.Text) <= 1000 && float.Parse(_level.Text) > 0 && !String.IsNullOrEmpty(_mealName.Text))
                {
                    DateTime timeNow = DateTime.Now;

                    PatientData patientData = new PatientData();
                    Patient     patient;

                    try
                    {
                        patient = await _restService.ReadPatientAsync();
                    }
                    catch (Exception)
                    {
                        return("No Connection");
                    }

                    PatientBloodSugar patientBlood = new PatientBloodSugar()
                    {
                        UserId      = patient.UserId,
                        ReadingType = (ReadingType)Enum.Parse(typeof(ReadingType), _readingType.SelectedItem.ToString()),
                        Level       = float.Parse(_level.Text),
                        TimeOfDay   = timeNow
                    };

                    MealItem mealItem;

                    try
                    {
                        mealItem = await _restService.ReadMealItemAsync(_mealName.Text);


                        if (!(mealItem is null))
                        {
                            patientBlood.MealId = mealItem.MealId;
                        }
                        else
                        {
                            mealItem = new MealItem
                            {
                                FoodName = _mealName.Text,
                                Carbs    = Int32.Parse(_carbs.Text),
                                MealTime = (MealType)Enum.Parse(typeof(MealType), _mealType.SelectedItem.ToString())
                            };
                            await _restService.CreateMealItemAsync(mealItem);

                            mealItem = await _restService.ReadMealItemAsync(_mealName.Text);

                            patientBlood.MealId = mealItem.MealId;
                        }
                    }
Exemple #2
0
        public async Task <string> OnCarbCreateButtonPressed()
        {
            if (!String.IsNullOrEmpty(_foodCarbs.Text))
            {
                if (int.Parse(_foodCarbs.Text) > 0 && int.Parse(_foodCarbs.Text) <= 1000)
                {
                    DateTime timeNow = DateTime.Now;

                    PatientData patientData = new PatientData();
                    Patient     patient;

                    try
                    {
                        patient = await _restService.ReadPatientAsync();
                    }
                    catch (Exception)
                    {
                        return("No Connection");
                    }

                    MealItem mealItem;

                    try
                    {
                        mealItem = await _restService.ReadMealItemAsync(_mealName.Text);


                        if (mealItem is null)
                        {
                            mealItem = new MealItem
                            {
                                FoodName = _mealName.Text,
                                Carbs    = Int32.Parse(_foodCarbs.Text),
                                MealTime = (MealType)Enum.Parse(typeof(MealType), _mealType.SelectedItem.ToString())
                            };
                            await _restService.CreateMealItemAsync(mealItem);

                            mealItem = await _restService.ReadMealItemAsync(_mealName.Text);
                        }
                    }
                    catch (Exception)
                    {
                        return("Invalid Food Name");
                    }

                    PatientCarbohydrate patientCarbohydrate = new PatientCarbohydrate()
                    {
                        UserId    = patient.UserId,
                        MealId    = mealItem.MealId,
                        Patient   = patient,
                        TimeOfDay = timeNow,
                        FoodCarbs = mealItem.Carbs
                    };

                    patientData.PatientCarbohydrates.Add(patientCarbohydrate);

                    await _restService.CreatePatientData(patientData);

                    return("Success");
                }
                else
                {
                    return("Invalid Range");
                }
            }
            else
            {
                return("Form Is Not Filled Out");
            }
        }