private async void SaveClicked() { if (MedicalInfo == null || GenderIndex < 0 || Height == null || TelephoneNumber == null || SportsIndex < 0 || TitleIndex < 0 || Weight == null) { MessagingCenter.Send <SignupViewModel, String>(this, "SignUpFailure", "Please enter all manadatory fields."); return; } IsServiceInProgress = true; Models.TraineeSignupModel signupModel = new Models.TraineeSignupModel(); signupModel.email = EmailAddress; signupModel.password = Password; signupModel.profile = SelectedView; signupModel.signUpMetod = (Password == "fb@trainme") ? "FB" : "App"; signupModel.imagePayload = User64String; Models.TraineeSignupModel.BasicInfo basicInfo = new Models.TraineeSignupModel.BasicInfo(); basicInfo.address = position.Accuracy + ""; basicInfo.anyMedicalCondition = MedicalInfo; basicInfo.country = position.Altitude + ""; basicInfo.dateOfBirth = DateOfBirth.ToString(); basicInfo.gender = GenderList[GenderIndex]; basicInfo.height = Height + ""; basicInfo.id = 1; basicInfo.imageUrl = "NA"; basicInfo.instaGramId = "NA"; basicInfo.latitude = position.Latitude + ""; basicInfo.longitude = position.Longitude + ""; basicInfo.mobileNumber = TelephoneNumber + ""; basicInfo.name = Name; basicInfo.phoneNumber = TelephoneNumber + ""; basicInfo.sportsInterest = SportsList[SportsIndex]; basicInfo.state = "NA"; basicInfo.title = TitleList[TitleIndex]; basicInfo.valueAdded = "NA"; basicInfo.weight = Weight + ""; Models.TraineeSignupModel.ProfessionalInfo professionalInfo = new Models.TraineeSignupModel.ProfessionalInfo(); professionalInfo.speciality = SpecialityList[SpecialityIndex]; professionalInfo.experience = Experience; professionalInfo.accolades = Accolades; // Add certificates List <Models.TraineeSignupModel.Certifications> certifications = new List <Models.TraineeSignupModel.Certifications>(); Models.TraineeSignupModel.Certifications certification = new Models.TraineeSignupModel.Certifications(); certification.certification = Certification; certifications.Add(certification); professionalInfo.certifications = certifications; // Add Services List <Models.TraineeSignupModel.Services> services = new List <Models.TraineeSignupModel.Services>(); Models.TraineeSignupModel.Services service = new Models.TraineeSignupModel.Services(); service.chargingPeriod = ServiceInfo; service.serviceName = Services; service.charges = Convert.ToDouble(ServicesPrice); services.Add(service); professionalInfo.services = services; // Creating the final object signupModel.basicInfo = basicInfo; signupModel.professionalInfo = professionalInfo; var message = await App.TodoManager.SignUp(signupModel); if (message == "Success") { MessagingCenter.Send <SignupViewModel>(this, "SignUpSuccess"); } else { MessagingCenter.Send <SignupViewModel, String>(this, "SignUpFailure", "Internal Issue. Please Try Again."); } IsServiceInProgress = false; }
private async void SaveClicked() { IsServiceInProgress = true; Models.TraineeSignupModel signupModel = new Models.TraineeSignupModel(); signupModel.email = EmailAddress; signupModel.password = Password; signupModel.profile = SelectedView; signupModel.signUpMetod = (Password == "fb@trainme") ? "FB" : "App"; signupModel.imagePayload = (User64String != null) ? User64String : "NA"; Models.TraineeSignupModel.BasicInfo basicInfo = new Models.TraineeSignupModel.BasicInfo(); basicInfo.address = position.Accuracy + ""; basicInfo.country = position.Altitude + ""; basicInfo.id = 1; basicInfo.imageUrl = ((User64String == null || User64String == "NA") && UserIcon != "defaultIcon.png" && UserIcon != null && UserIcon != "NA") ? UserIcon : "NA"; basicInfo.instaGramId = ""; basicInfo.latitude = position.Latitude + ""; basicInfo.longitude = position.Longitude + ""; basicInfo.state = "NA"; basicInfo.valueAdded = "NA"; basicInfo.instaGramImages = InstaImages; if (StaticListData[0][1].MainSelectedData == null || StaticListData[0][7].MainSelectedData == null) { MessagingCenter.Send <SignupViewModel, String>(this, "SignUpFailure", "Please enter all manadatory fields."); IsServiceInProgress = false; return; } basicInfo.name = StaticListData[0][1].MainSelectedData; basicInfo.gender = StaticListData[0][3].SelectionData[StaticListData[0][3].SelectedIndex]; basicInfo.dateOfBirth = StaticListData[0][5].SelectedDate.ToString(); basicInfo.mobileNumber = StaticListData[0][7].MainSelectedData; basicInfo.phoneNumber = StaticListData[0][7].MainSelectedData; basicInfo.height = StaticListData[0][9].MainSelectedData; basicInfo.weight = StaticListData[0][11].MainSelectedData; basicInfo.sportsInterest = StaticListData[0][13].SelectionData[StaticListData[0][13].SelectedIndex]; basicInfo.anyMedicalCondition = StaticListData[0][15].MainSelectedData; Models.TraineeSignupModel.ProfessionalInfo professionalInfo = new Models.TraineeSignupModel.ProfessionalInfo(); if (App.SelectedView == "Trainer") { // Add certificates List <Models.TraineeSignupModel.Certifications> certifications = new List <Models.TraineeSignupModel.Certifications>(); // Add Services List <Models.TraineeSignupModel.Services> services = new List <Models.TraineeSignupModel.Services>(); var enteredProfessionalInfo = StaticListData[1]; foreach (var item in enteredProfessionalInfo) { if (item.PlaceholderText == "Select Specialty" && item.InputType == "Picker") { professionalInfo.speciality = item.SelectionData[item.SelectedIndex]; } else if (item.PlaceholderText == "Enter Experience" && item.InputType == "Entry") { professionalInfo.experience = item.MainSelectedData; } else if (item.PlaceholderText == "Enter Awards") { professionalInfo.accolades = item.MainSelectedData; } else if (item.PlaceholderText == "Enter PayPal ID") { signupModel.paypalId = item.MainSelectedData; } else if (item.PlaceholderText == "Enter Certification") { Models.TraineeSignupModel.Certifications certification = new Models.TraineeSignupModel.Certifications(); certification.certification = item.MainSelectedData; certifications.Add(certification); } else if (item.InputType == "Service") { Models.TraineeSignupModel.Services service = new Models.TraineeSignupModel.Services(); service.chargingPeriod = item.SessionDesc; service.serviceName = item.MainSelectedData; service.charges = (item.SessionAmount == "" || item.SessionAmount == null) ? 0 : Convert.ToDouble(item.SessionAmount); service.workLocaton = item.SessionLocation; service.teamSize = item.SessionTeam; //if(item.selectedTime == null) //{ // MessagingCenter.Send<SignupViewModel, String>(this, "SignUpFailure", "Please Select Time."); // IsServiceInProgress = false; // return; //} List <Models.TraineeSignupModel.Schedule> schedules = new List <Models.TraineeSignupModel.Schedule>(); if (item.selectedTime != null) { foreach (var timeItem in item.selectedTime) { Models.TraineeSignupModel.Schedule schedule = new Models.TraineeSignupModel.Schedule(); schedule.day = timeItem.Day; schedule.month = timeItem.Month; schedule.year = timeItem.Year; schedule.scheduleType = "Week"; schedule.startTime = timeItem.StartTime; schedule.endTime = timeItem.EndTime; schedule.weekDay = timeItem.WeekDay; schedules.Add(schedule); } } service.schedule = schedules; services.Add(service); } } professionalInfo.certifications = certifications; professionalInfo.services = services; //if (professionalInfo.accolades == null || professionalInfo.experience == null || professionalInfo.speciality == null || professionalInfo.certifications.Count < 1 || professionalInfo.services.Count < 1) //{ // MessagingCenter.Send<SignupViewModel, String>(this, "SignUpFailure", "Please enter all manadatory fields."); // IsServiceInProgress = false; // return; //} } // Creating the final object signupModel.basicInfo = basicInfo; signupModel.professionalInfo = professionalInfo; System.Diagnostics.Debug.WriteLine(JsonConvert.SerializeObject(signupModel)); var message = await App.TodoManager.SignUp(signupModel); if (message == "Success") { //Application.Current.MainPage = new RootPage(App.SelectedView); MessagingCenter.Send <SignupViewModel>(this, "SignUpSuccess"); } else { MessagingCenter.Send <SignupViewModel, String>(this, "SignUpFailure", "Internal Issue. Please Try Again."); } IsServiceInProgress = false; }