I'm using Laravel 5.7
& VueJs 2.5.*
...
I have 12 input fields of Taxes_Break_Up
, i need to sum all of them and show in Total_Tax_BreakUp
field. I have TicketInvoice
and a TicketInvoice
has many TicketInvoiceItems
, in my TicketInvoiceItems
i have Taxes_Breakup
fields and a Total_Taxes_Breakup
field, i put values in Taxes_Breakup
and get the sum in Total_Taxes_Breakup
, but when i add TicketInvoiceItems
fields dynamically, all the Total_Tax_BreakUp
in TicketInvoiceItems
is as same as the the first TicketInvoiceItems
's Total_Tax_BreakUp
field... This might be confusing so i add an image for better understanding. Thank You.
Here is my HTML
code:
<tr v-for="(ticketInvoiceItem, pos) in form.ticketInvoiceItems" :key="pos">
<!--Passenger Name-->
<td>
<input v-model="form.ticketInvoiceItems[pos].passenger_name" size="40" type="text" name="passenger_name" class="table-control form-control" :class="{ 'is-invalid': form.errors.has('passenger_name') }">
<has-error :form="form" field="passenger_name"></has-error>
</td>
<!-------------------Taxes BreakUps------------------->
<input v-model="form.ticketInvoiceItems[pos].tax_SB" id="tax_SB" type="number" name="tax_SB" placeholder="SB" class="table-control form-control" :class="{ 'is-invalid': form.errors.has('tax_SB') }">
<input v-model="form.ticketInvoiceItems[pos].tax_SRP" id="tax_SRP" type="number" name="tax_SRP" placeholder="SRP" class="table-control form-control" :class="{ 'is-invalid': form.errors.has('tax_SRP') }">
<!-------------------AND 10 OTHER------------------->
<!-------------------Total Taxes Break Up------------------->
<td>
<input :value="totalTax" id="total_tax_breakup" type="number" size="10" name="total_tax_breakup" class="table-control form-control" :class="{ 'is-invalid': form.errors.has('total_tax_breakup') }">
</td>
</tr>
Here is my VueJs
Code:
<script>
export default {
data() {
return {
ticketInvoices: {},
form: new Form({
id: "",
vendor_id: "",
ticket_invoice_no: "",
ticket_invoice_date: "",
ticket_invoice_fares_total: "",
ticket_invoice_taxes_grand_total: "",
ticket_invoice_grand_total: "",
ticketInvoiceItems: [{
id: "",
ticket_invoice_id: "",
passenger_name: "",
tax_SB: 0,
tax_SRP: 0,
tax_YQ: 0,
tax_RG: 0,
tax_PK: 0,
tax_YR: 0,
tax_SF: 0,
tax_PTT: 0,
tax_OAS: 0,
tax_PSF: 0,
tax_PB: 0,
tax_OAD: 0,
fares: "",
total_tax_breakup: 0,
sub_total: ""
}]
})
};
},
computed: {
totalTax() {
let calTaxTotal =
parseInt(this.form.ticketInvoiceItems[0].tax_SB) +
parseInt(this.form.ticketInvoiceItems[0].tax_SRP) +
parseInt(this.form.ticketInvoiceItems[0].tax_YQ) +
parseInt(this.form.ticketInvoiceItems[0].tax_RG) +
parseInt(this.form.ticketInvoiceItems[0].tax_PK) +
parseInt(this.form.ticketInvoiceItems[0].tax_YR) +
parseInt(this.form.ticketInvoiceItems[0].tax_SF) +
parseInt(this.form.ticketInvoiceItems[0].tax_PTT) +
parseInt(this.form.ticketInvoiceItems[0].tax_OAS) +
parseInt(this.form.ticketInvoiceItems[0].tax_PSF) +
parseInt(this.form.ticketInvoiceItems[0].tax_PB) +
parseInt(this.form.ticketInvoiceItems[0].tax_OAD);
this.form.ticketInvoiceItems[0].total_tax_breakup = calTaxTotal;
return calTaxTotal;
}
},
}
</script>
Getting This Error, when i sum all Taxes_Breakup,and when i add dynamic fields, all Total_taxes_breakup are copying the first one.