public IResponse CreateUserInGB(JobSeeker jobseeker) { try { var client = new RestClient(); client.BaseUrl = new Uri(_apiSettings.BaseUrl); var request = new RestRequest("user_create_sync.php", Method.POST); request.AddHeader("Content-Type", "application/json"); request.AddHeader("cache-control", "no-cache"); GBUser gbuser = new GBUser(jobseeker); request.RequestFormat = DataFormat.Json; request.AddBody(gbuser); //Alternate way of sending request object //request.AddParameter("",JsonConvert.SerializeObject(gbuser),ParameterType.RequestBody); IRestResponse <Response> response = client.Execute <Response>(request); return(JsonConvert.DeserializeObject <Response>(response.Content)); } catch (Exception ex) { return(new Response { Result = "ERROR", Error = ex.Message }); } }
public async Task <IActionResult> UpdateUserInfoAsync([FromBody] GBUser gbUser) { try { if (ModelState.IsValid) { ApplicationUser user = await _userManager.FindByEmailAsync(gbUser.user_email); var jobseeker = _jobSeeekerRepository.GetJobSeekerByUserId(user.Id); await SaveGBUserToAJJAsync(gbUser, jobseeker); ApplicationUser appuser = new ApplicationUser() { PhoneNumber = gbUser.mobile, Email = gbUser.user_email, PasswordHash = gbUser.user_pass }; //jobseeker.ApplicationUser = appuser; //var result = _userManager.UpdateAsync(user); //if (result.IsCompletedSuccessfully) //{ _jobSeeekerRepository.Update(jobseeker); return(Ok(new { result = "OK", error = "" })); // } //else //{ //return BadRequest(new { result = "ERROR1", error = "User info failed to update" }); // } } else { string err = ""; foreach (var child in ModelState.Root.Children) { foreach (var error in child.Errors) { err += error.ErrorMessage; } } return(BadRequest(new { result = "ERROR1", error = err })); } } catch (Exception ex) { return(StatusCode(500, new { result = "ERROR2", error = ex.Message })); } }
public async Task <IActionResult> GetAsync(string email) { try { ApplicationUser user = await _userManager.FindByEmailAsync(email); if (user == null) { return(NotFound(new { result = "ERROR1", error = "user not found" })); } var jobseekers = await _jobSeeekerRepository.FindByAsyn(x => x.ApplicationUserId == user.Id); GBUser model = new GBUser(); foreach (var jobseeker in jobseekers) { var country = _countryRepository.GetById(jobseeker.CountryID); var province = _provinceRepository.GetById(jobseeker.ProvinceID); if (country != null) { model.country = country.Name; } if (province != null) { model.thestate = province.Name_Jp; } model.first_name = jobseeker.FirstName; model.last_name = jobseeker.LastName; model.birth_year = jobseeker.BirthYear; model.birth_month = jobseeker.BirthMonth; model.birth_day = jobseeker.BirthDay; model.zip = jobseeker.PostalAddrss; model.visa = jobseeker.Visa; model.addr1 = jobseeker.Address; model.birth_age = jobseeker.Age; model.thestate_other = jobseeker.OtherCountry; if (jobseeker.Gender == 'M') { model.radio_sex = "Male"; } else if (jobseeker.Gender == 'F') { model.radio_sex = "Female"; } model.city = jobseeker.City; model.visa = jobseeker.Visa; //model.vopen1 = jobseeker.SubVisaType; model.user_email = user.Email; model.user_pass = user.PasswordHash; model.mobile = user.PhoneNumber; } return(Ok(new { result = "OK", userinfo = model })); } catch (Exception ex) { return(CreatedAtAction("Get", new { result = "ERROR2", error = ex.Message })); } }
private async Task SaveGBUserToAJJAsync(GBUser gbUser, JobSeeker jobseeker) { if (!String.IsNullOrEmpty(gbUser.country)) { var findCountry = await _countryRepository.FindByAsyn(x => x.Name == gbUser.country); foreach (var nationality in findCountry) { jobseeker.Country = nationality; } } if (jobseeker.Country == null) { jobseeker.Country = new Country(); } if (!String.IsNullOrEmpty(gbUser.thestate)) { var findCountry = await _provinceRepository.FindByAsyn(x => x.Name_Jp == gbUser.thestate); foreach (var prefecture in findCountry) { jobseeker.Province = prefecture; } } if (jobseeker.Province == null) { jobseeker.Province = new Province(); } jobseeker.FirstName = gbUser.first_name; jobseeker.LastName = gbUser.last_name; jobseeker.BirthYear = gbUser.birth_year; jobseeker.BirthMonth = gbUser.birth_month; jobseeker.BirthDay = gbUser.birth_day; jobseeker.OtherCountry = gbUser.thestate_other; jobseeker.Origin = "GB"; if (!String.IsNullOrEmpty(gbUser.radio_sex)) { if (gbUser.radio_sex.ToLower().Trim() == "male") { jobseeker.Gender = 'M'; } else if (gbUser.radio_sex.ToLower().Trim() == "female") { jobseeker.Gender = 'F'; } } jobseeker.PostalAddrss = gbUser.zip; jobseeker.Address = gbUser.addr1; jobseeker.Age = gbUser.birth_age; jobseeker.Visa = gbUser.visa; string visacat = gbUser.visa; string subvisa = ""; if (!String.IsNullOrEmpty(gbUser.vopen1)) { subvisa = gbUser.vopen1; jobseeker.SubVisaType = gbUser.vopen1; } else if (!String.IsNullOrEmpty(gbUser.vopen2)) { if (gbUser.vopen2 == "No") { jobseeker.IsPermitToWork = false; } else { jobseeker.IsPermitToWork = true; } } else if (!String.IsNullOrEmpty(gbUser.vopen3)) { if (gbUser.vopen3 == "No") { jobseeker.IsPermitToWork = false; } else { jobseeker.IsPermitToWork = true; } } else if (!String.IsNullOrEmpty(gbUser.vopen4)) { if (gbUser.vopen4 == "No") { jobseeker.IsPermitToWork = false; } else { jobseeker.IsPermitToWork = true; } } else if (!String.IsNullOrEmpty(gbUser.vopen5)) { subvisa = gbUser.vopen5; jobseeker.SubVisaType = gbUser.vopen5; } else if (!String.IsNullOrEmpty(gbUser.vopen6)) { subvisa = gbUser.vopen6; jobseeker.SubVisaType = gbUser.vopen6; } var visa = _jobSeekerService.GetVisa(visacat, subvisa); jobseeker.VisaCategory = visa; jobseeker.VisaExpiryYear = gbUser.visa_year; jobseeker.VisaExpiryMonth = gbUser.visa_month; jobseeker.VisaExpiryDay = gbUser.visa_day; }
public async Task <IActionResult> PostAsync([FromBody] GBUser gbUser) { Dictionary <string, string> returnMsg = new Dictionary <string, string>(); try { JobSeeker jobseeker = new JobSeeker(); if (ModelState.IsValid) { await SaveGBUserToAJJAsync(gbUser, jobseeker); ApplicationUser appuser = new ApplicationUser() { UserName = gbUser.user_email, PasswordHash = gbUser.user_pass, PhoneNumber = gbUser.mobile, Email = gbUser.user_email, CreateDate = DateTime.Now, EmailConfirmed = true }; var result = _userManager.CreateAsync(appuser).Result; if (result.Succeeded) { var roleRegister = _userManager.AddToRoleAsync(appuser, "candidate").Result; jobseeker.ApplicationUser = appuser; _jobSeeekerRepository.Create(jobseeker); return(Ok(new { result = "OK", error = "" })); } else { string err = ""; foreach (var error in result.Errors) { err += error.Description + ","; } await SendApiErrorReportAsync(gbUser.user_email, "CreateUser", "*****@*****.**", err); return(BadRequest(new { result = "ERROR2", error = err })); } } else { string err = ""; foreach (var child in ModelState.Root.Children) { foreach (var error in child.Errors) { err += error.ErrorMessage; } } await SendApiErrorReportAsync(gbUser.user_email, "CreateUser", "*****@*****.**", err); return(BadRequest(new { result = "ERROR1", error = err })); } } catch (Exception ex) { await SendApiErrorReportAsync(gbUser.user_email, "CreateUser", "*****@*****.**", ex.Message); return(StatusCode(500, new { result = "ERROR2", error = ex.Message })); } }