104 lines
3.4 KiB
HTML
104 lines
3.4 KiB
HTML
<vn-crud-model
|
|
vn-id="model"
|
|
url="InvoiceInTaxes"
|
|
fields="[
|
|
'id',
|
|
'invoiceInFk',
|
|
'taxableBase',
|
|
'expenseFk',
|
|
'foreignValue',
|
|
'taxTypeSageFk',
|
|
'transactionTypeSageFk']"
|
|
link="{invoiceInFk: $ctrl.$params.id}"
|
|
data="$ctrl.taxes"
|
|
auto-load="true">
|
|
</vn-crud-model>
|
|
<vn-crud-model
|
|
url="Expenses"
|
|
data="expenses"
|
|
auto-load="true">
|
|
</vn-crud-model>
|
|
<vn-watcher
|
|
vn-id="watcher"
|
|
data="$ctrl.taxes"
|
|
form="form">
|
|
</vn-watcher>
|
|
<form name="form" ng-submit="$ctrl.onSubmit()">
|
|
<vn-card class="vn-pa-lg">
|
|
<vn-horizontal ng-repeat="invoiceInTax in $ctrl.taxes">
|
|
<vn-autocomplete vn-three vn-id="expense" vn-focus
|
|
label="Expense"
|
|
ng-model="invoiceInTax.expenseFk"
|
|
data="expenses"
|
|
show-field="id"
|
|
rule>
|
|
<tpl-item>{{id}}: {{name}}</tpl-item>
|
|
</vn-autocomplete>
|
|
<vn-input-number vn-one
|
|
disabled="$ctrl.invoiceIn.currency.code != 'EUR'"
|
|
vn-id="taxableBase"
|
|
step="0.01"
|
|
label="Taxable base"
|
|
ng-model="invoiceInTax.taxableBase"
|
|
on-change="$ctrl.taxRateSelection = $value"
|
|
rule>
|
|
</vn-input-number>
|
|
<vn-autocomplete vn-three
|
|
vn-id="taxTypeSage"
|
|
label="Sage tax"
|
|
ng-model="invoiceInTax.taxTypeSageFk"
|
|
url="SageTaxTypes"
|
|
show-field="vat"
|
|
fields="['id', 'vat', 'rate']"
|
|
search-function="{or: [{id: $search}, {vat: {like: '%'+ $search +'%'}}]}"
|
|
selection="$ctrl.taxRateSelection"
|
|
rule>
|
|
<tpl-item>{{id}}: {{vat}}</tpl-item>
|
|
</vn-autocomplete>
|
|
<vn-autocomplete vn-three
|
|
label="Sage transaction"
|
|
ng-model="invoiceInTax.transactionTypeSageFk"
|
|
url="SageTransactionTypes"
|
|
show-field="transaction"
|
|
search-function="{or: [{id: $search}, {transaction: {like: '%'+ $search +'%'}}]}"
|
|
rule>
|
|
<tpl-item>{{id}}: {{transaction}}</tpl-item>
|
|
</vn-autocomplete>
|
|
<vn-input-number vn-one
|
|
disabled="true"
|
|
label="Rate"
|
|
step="0.01"
|
|
tabindex="-1"
|
|
ng-model="$ctrl.taxRate">
|
|
</vn-input-number>
|
|
<vn-input-number vn-one
|
|
disabled="$ctrl.invoiceIn.currency.code == 'EUR'"
|
|
label="Foreign value"
|
|
ng-model="invoiceInTax.foreignValue"
|
|
rule>
|
|
</vn-input-number>
|
|
<vn-none>
|
|
<vn-icon-button
|
|
vn-tooltip="Remove tax"
|
|
icon="delete"
|
|
ng-click="model.remove($index)"
|
|
tabindex="-1">
|
|
</vn-icon-button>
|
|
</vn-none>
|
|
</vn-horizontal>
|
|
<vn-one>
|
|
<vn-icon-button
|
|
vn-bind="+"
|
|
vn-tooltip="Add tax"
|
|
icon="add_circle"
|
|
ng-click="$ctrl.add()">
|
|
</vn-icon-button>
|
|
</vn-one>
|
|
</vn-card>
|
|
<vn-button-bar>
|
|
<vn-submit
|
|
disabled="!watcher.dataChanged()"
|
|
label="Save">
|
|
</vn-submit>
|
|
</vn-button-bar>
|
|
</form> |