Kaynağa Gözat

Add LTV and DTI elements

master
Immanuel Onyeka 2 yıl önce
ebeveyn
işleme
5a83670e03
1 değiştirilmiş dosya ile 44 ekleme ve 10 silme
  1. +44
    -10
      components/new.vue

+ 44
- 10
components/new.vue Dosyayı Görüntüle

@@ -71,44 +71,72 @@ selected="loans[sel].transaction == 1">
<option value="none">None</option> <option value="none">None</option>
</select> </select>


<label>Loan to Value</label> <label>Loan to Value (%)</label>
<input :value="loans[sel].ltv" @input="setLtv"> <input :value="loans[sel].ltv" @input="setLtv">
<label>Loan Amount</label> <label>Loan Amount ($)</label>
<input :value="loans[sel].amount" <input :value="loans[sel].amount"
@input="setAmount"> @input="setAmount">
<label>Housing Expense DTI (%)</label>
<input :value="loans[sel].housingDti" @input="setHousingDti">
<label>Total DTI (%)</label>
<input :value="loans[sel].dti" @input="setDti">
</section> </section>


</div> </div>
</template> </template>


<script> <script>
function setLtv(loan, ltv) { function setLtv(e) {
let ltv = parseInt(e.target.value.replace(/[^0-9]/g, '') || 0)
let loan = this.loans[this.sel]
if (!loan.price) return

if (ltv > 100) ltv = 100 if (ltv > 100) ltv = 100
if (ltv < 0) ltv = 0 if (ltv < 0) ltv = 0


loan.ltv = ltv loan.ltv = ltv
loan.amount = ltv / 100 * loan.price loan.amount = Math.round(ltv / 100 * loan.price)
} }


function setAmount(e) { function setAmount(e) {
let amount = parseInt(e.target.value.replace(/[^0-9]/g, '')) let amount = parseInt(e.target.value.replace(/[^0-9]/g, '') || 0)
let loan = this.loans[this.sel] let loan = this.loans[this.sel]
if (!loan.price) return


if (amount > loan.price) amount = loan.price if (amount > loan.price) amount = loan.price
if (amount < 0) amount = 0 if (amount < 0) amount = 0
loan.amount = amount loan.amount = amount
loan.ltv = amount / loan.price * 100 loan.ltv = Math.round(amount / loan.price * 100)
} }


function setPrice(e) { function setPrice(e) {
let loan = this.loans[this.sel]
let value = let value =
parseInt(e.target.value.replace(/[^0-9]/g, '')) parseInt(e.target.value.replace(/[^0-9]/g, ''))
// Should check for NaN after backspace // Should check for NaN after backspace


console.log("the price is %s", value) loan.price = value
loan.amount = Math.round(loan.ltv / 100 * value)
}

function setDti(e) {
let dti = parseInt(e.target.value.replace(/[^0-9]/g, '') || 0)
let loan = this.loans[this.sel]
if (!loan.price) return


this.loans[this.sel].price = if (dti > 100) dti = 100
value if (dti < 0) dti = 0
loan.dti = dti
}

function setHousingDti(e) {
let housingDti = parseInt(e.target.value.replace(/[^0-9]/g, '') || 0)
let loan = this.loans[this.sel]
if (!loan.price) return

if (housingDti > 100) housingDti = 100
if (housingDti < 0) housingDti = 0
loan.housingDti = housingDti
} }


const loans = [ const loans = [
@@ -120,6 +148,8 @@ const loans = [
price: 0, price: 0,
term: 0, term: 0,
ltv: 0, ltv: 0,
dti: 0,
housingDti: 0,
amount: 0, amount: 0,
program: "", program: "",
pud: false, pud: false,
@@ -133,6 +163,8 @@ const loans = [
price: 0, price: 0,
term: 0, term: 0,
ltv: 0, ltv: 0,
dti: 0,
housingDti: 0,
program: "", program: "",
pud: true, pud: true,
zip: '' zip: ''
@@ -144,7 +176,9 @@ const propertyTypes = [
] ]


export default { export default {
methods: { setPrice }, methods: {
setPrice, setLtv, setAmount, setDti, setHousingDti
},
props: ['user'], props: ['user'],
data() { data() {
return { return {


||||||
x
 
000:0
Yükleniyor…
İptal
Kaydet