|
|
@@ -1619,6 +1619,44 @@ func getResults(db *sql.DB, e int, id int) ( []Result, error ) { |
|
|
|
return results, nil |
|
|
|
} |
|
|
|
|
|
|
|
// Retrieve an estimate result with a specified loan id |
|
|
|
func getResult(db *sql.DB, loan int) ( Result, error ) { |
|
|
|
var result Result |
|
|
|
var query string |
|
|
|
var err error |
|
|
|
|
|
|
|
query = `SELECT |
|
|
|
r.id, |
|
|
|
loan_id, |
|
|
|
loan_payment, |
|
|
|
total_monthly, |
|
|
|
total_fees, |
|
|
|
total_credits, |
|
|
|
cash_to_close |
|
|
|
FROM estimate_result r |
|
|
|
INNER JOIN loan |
|
|
|
ON r.loan_id = loan.id |
|
|
|
WHERE loan.Id = ? |
|
|
|
` |
|
|
|
row := db.QueryRow(query, loan) |
|
|
|
|
|
|
|
err = row.Scan( |
|
|
|
&result.Id, |
|
|
|
&result.LoanId, |
|
|
|
&result.LoanPayment, |
|
|
|
&result.TotalMonthly, |
|
|
|
&result.TotalFees, |
|
|
|
&result.TotalCredits, |
|
|
|
&result.CashToClose, |
|
|
|
) |
|
|
|
|
|
|
|
if err != nil { |
|
|
|
return result, err |
|
|
|
} |
|
|
|
|
|
|
|
return result, nil |
|
|
|
} |
|
|
|
|
|
|
|
// Must have an estimate ID 'e', but not necessarily a loan id 'id' |
|
|
|
func getLoans(db *sql.DB, e int, id int) ( []Loan, error ) { |
|
|
|
var loans []Loan |
|
|
@@ -1680,6 +1718,11 @@ func getLoans(db *sql.DB, e int, id int) ( []Loan, error ) { |
|
|
|
} |
|
|
|
loan.Fees = fees |
|
|
|
|
|
|
|
loan.Result, err = getResult(db, loan.Id) |
|
|
|
if err != nil { |
|
|
|
return loans, err |
|
|
|
} |
|
|
|
|
|
|
|
loan.Type, err = getLoanType(db, loan.Type.Id) |
|
|
|
if err != nil { |
|
|
|
return loans, err |
|
|
@@ -2571,6 +2614,7 @@ func seedEstimates(db *sql.DB, users []User, ltypes []LoanType) []Estimate { |
|
|
|
var err error |
|
|
|
|
|
|
|
for i := 0; i < 15; i++ { |
|
|
|
estimate = Estimate{} |
|
|
|
estimate.User = users[gofakeit.Number(0, len(users) - 1)].Id |
|
|
|
estimate.Borrower = Borrower{ |
|
|
|
Credit: gofakeit.Number(600, 800), |
|
|
|