70 lines
2.1 KiB
HTML
70 lines
2.1 KiB
HTML
<tpl-title translate>
|
|
Create global invoice
|
|
</tpl-title>
|
|
<tpl-body id="manifold-form">
|
|
<vn-crud-model
|
|
auto-load="true"
|
|
url="InvoiceOutSerials"
|
|
data="invoiceOutSerials"
|
|
order="code">
|
|
</vn-crud-model>
|
|
<vn-crud-model
|
|
auto-load="true"
|
|
url="Companies"
|
|
data="companies"
|
|
order="code">
|
|
</vn-crud-model>
|
|
<div
|
|
class="progress vn-my-md"
|
|
ng-if="$ctrl.isInvoicing">
|
|
<vn-horizontal>
|
|
<vn-icon vn-none icon="warning"></vn-icon>
|
|
<span vn-none translate>Adding invoices to queue...</span>
|
|
</vn-horizontal>
|
|
</div>
|
|
<vn-horizontal>
|
|
<vn-date-picker
|
|
vn-one
|
|
label="Invoice date"
|
|
ng-model="$ctrl.invoice.invoiceDate">
|
|
</vn-date-picker>
|
|
<vn-date-picker
|
|
vn-one
|
|
label="Max date"
|
|
ng-model="$ctrl.invoice.maxShipped">
|
|
</vn-date-picker>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete
|
|
url="Clients"
|
|
label="From client"
|
|
search-function="{or: [{id: $search}, {name: {like: '%'+$search+'%'}}]}"
|
|
show-field="name"
|
|
value-field="id"
|
|
ng-model="$ctrl.invoice.fromClientId">
|
|
<tpl-item>{{::id}} - {{::name}}</tpl-item>
|
|
</vn-autocomplete>
|
|
<vn-autocomplete
|
|
url="Clients"
|
|
label="To client"
|
|
search-function="{or: [{id: $search}, {name: {like: '%'+$search+'%'}}]}"
|
|
show-field="name"
|
|
value-field="id"
|
|
ng-model="$ctrl.invoice.toClientId">
|
|
<tpl-item>{{::id}} - {{::name}}</tpl-item>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete
|
|
url="Companies"
|
|
label="Company"
|
|
show-field="code"
|
|
value-field="id"
|
|
ng-model="$ctrl.invoice.companyFk">
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
</tpl-body>
|
|
<tpl-buttons>
|
|
<input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/>
|
|
<button response="accept" translate vn-focus>Invoice</button>
|
|
</tpl-buttons> |