using FindAndDrive.Domain.Interfaces.Repositories; using FindAndDrive.Domain.Models.Entities; using FindAndDrive.Domain.Models.Enums; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FindAndDrive.Persistence.Repository { public class ApplicantFinanceRepository : GenericRepository, IApplicantFinanceRepository { private readonly DefaultContext _context; public ApplicantFinanceRepository(DefaultContext context) : base(context) { _context = context; } public async Task Create(ApplicantFinance applicantFinance) { _context.Set().Add(applicantFinance); await _context.SaveChangesAsync(); return applicantFinance.ApplicantId; } public async Task Update(ApplicantFinance applicantFinance) { var entity = _context.Applicants.FirstOrDefault(a => a.ApplicantId == applicantFinance.ApplicantId); if (entity != null) { entity.ApplicantFinance.ApplicantId = applicantFinance.ApplicantId; entity.ApplicantFinance.MonthlyFinancingAmount = applicantFinance.MonthlyFinancingAmount; entity.ApplicantFinance.TotalFinancingAmount = applicantFinance.TotalFinancingAmount; entity.ApplicantFinance.NetIncome = applicantFinance.NetIncome; entity.ApplicantFinance.Deposit = applicantFinance.Deposit; entity.ApplicantFinance.BureauExpenses = applicantFinance.BureauExpenses; entity.ApplicantFinance.CalculatedGross = applicantFinance.CalculatedGross; entity.ApplicantFinance.CalculatedNet = applicantFinance.CalculatedNet; entity.ApplicantFinance.CalculatedTotalExpenses = applicantFinance.CalculatedTotalExpenses; entity.ApplicantFinance.CalculatedLivingExpenses = applicantFinance.CalculatedLivingExpenses; entity.ApplicantFinance.PredictorConfidence = applicantFinance.PredictorConfidence; entity.ApplicantFinance.DisposableIncome = applicantFinance.DisposableIncome; entity.ApplicantFinance.GrossIncome = applicantFinance.GrossIncome; entity.ApplicantFinance.LivingExpenses = applicantFinance.LivingExpenses; await _context.SaveChangesAsync(); } } } }