public async Task <IActionResult> Edit(long id, [Bind("ApplicationId,UniqueAppId,LiveStreetAddress,LiveCity,LiveState,LiveZipCode,MailingAddress,MailingCity,MailingState,MailingZipCode,Email,PhoneNumber,MessagePhone,DurationYears,DurationMonth,HousingStatus,CostMonthly,HousingType,NumberBedrooms,TotalPeople,HouseholdIncome,TargetGroup1,TargetGroup2,HeatSource,AnnualHeatCost,BackupHeatCost,UsedSurrogate,TotalEnergyCost,TotalAnnualElectricCosts,HifJsonData")] HifApplication hifApplication) { if (id != hifApplication.ApplicationId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(hifApplication); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!HifApplicationExists(hifApplication.ApplicationId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(hifApplication)); }
public async Task <IActionResult> Create([Bind("ApplicationId,UniqueAppId,LiveStreetAddress,LiveCity,LiveState,LiveZipCode,MailingAddress,MailingCity,MailingState,MailingZipCode,Email,PhoneNumber,MessagePhone,DurationYears,DurationMonth,HousingStatus,CostMonthly,HousingType,NumberBedrooms,TotalPeople,HouseholdIncome,TargetGroup1,TargetGroup2,HeatSource,AnnualHeatCost,BackupHeatCost,UsedSurrogate,TotalEnergyCost,TotalAnnualElectricCosts,HifJsonData")] HifApplication hifApplication) { if (ModelState.IsValid) { _context.Add(hifApplication); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(hifApplication)); }
public void SubmitApplication([FromBody] Centerstone.Models.HIF hif) { if (hif != null && ModelState.IsValid) { bool success = false; using (var transaction = context.Database.BeginTransaction()) { try { HifApplication hifEntity = new HifApplication() { UniqueAppId = hif.UniqueApplicationId.ToString(), MailingZipCode = hif.Zip, //TODO: hif.HeatSourcesTypes //TODO: hif.HeatSourcess PhoneNumber = hif.ContactPhone, Email = hif.ContactEmail, HouseholdIncome = hif.MonthlyHouseholdIncome, HousingStatus = hif.HouseholdStatus, HousingType = hif.HouseholdType, HeatSources = hif.HeatSourcesTypes.Where(x => x.Value)?.Select(x => x.Name).Aggregate((current, next) => current + ", " + next), //HeatSource = hif.HeatSources?.Aggregate((current, next) => current + ", " + next), //TODO: HeatImages //TODO: LeaseImages //TODO: TipsSignatuure }; //TODO: Adults ??? //TODO: Children ??? foreach (Person person in hif.People) { if (person.SocialSecurityNumber != null) { _hifRepository.AddPerson(new HouseholdMembers() { IsPrimary = person.IsPrimary, FullName = person.FullName, DateOfBirth = person.DateOfBirth, Ssn = person.SocialSecurityNumber, PaidAdult = person.IsDesignatedAdult, //TODO: person.SocialSecurityImage - these are just a list of GUIDs for images. //TODO: IncomeTypes = person.IncomeSources.Select(new IncomeTypes() { } }) //TODO: person.CensusData }); } } using (StreamReader reader = new StreamReader(Request.Body, Encoding.UTF8)) hifEntity.HifJsonData = reader.ReadToEnd(); _hifRepository.AddApplication(hifEntity); transaction.Commit(); success = true; } catch (Exception ex) { transaction.Rollback(); } } } }