67 lines
2.2 KiB
HTML
67 lines
2.2 KiB
HTML
|
<vn-crud-model
|
||
|
vn-id="model"
|
||
|
url="/ticket/api/TicketServices"
|
||
|
link="{ticketFk: $ctrl.$stateParams.id}"
|
||
|
data="services" on-data-change="$ctrl.onDataChange()">
|
||
|
</vn-crud-model>
|
||
|
<vn-watcher
|
||
|
vn-id="watcher"
|
||
|
data="services"
|
||
|
form="form">
|
||
|
</vn-watcher>
|
||
|
<form name="form" ng-submit="$ctrl.onSubmit()">
|
||
|
<vn-card pad-large>
|
||
|
<vn-title>Service</vn-title>
|
||
|
<vn-one>
|
||
|
<vn-horizontal ng-repeat="service in services track by $index">
|
||
|
<vn-textfield
|
||
|
vn-one
|
||
|
vn-focus
|
||
|
label="Description"
|
||
|
model="service.description"
|
||
|
rule="TicketService.description">
|
||
|
</vn-textfield>
|
||
|
<vn-textfield
|
||
|
vn-one
|
||
|
label="Quantity"
|
||
|
model="service.quantity"
|
||
|
rule="TicketService.quantity">
|
||
|
</vn-textfield>
|
||
|
<vn-textfield
|
||
|
vn-one
|
||
|
label="Price"
|
||
|
model="service.price"
|
||
|
rule="TicketService.price">
|
||
|
</vn-textfield>
|
||
|
<vn-autocomplete vn-one
|
||
|
url="/api/TaxClasses"
|
||
|
label="Tax class"
|
||
|
show-field="description"
|
||
|
value-field="id"
|
||
|
field="service.taxClassFk">
|
||
|
</vn-autocomplete>
|
||
|
<vn-auto pad-medium-top>
|
||
|
<vn-icon
|
||
|
pointer
|
||
|
medium-grey
|
||
|
vn-tooltip="Remove service"
|
||
|
icon="delete"
|
||
|
ng-click="model.remove($index)">
|
||
|
</vn-icon>
|
||
|
</vn-one>
|
||
|
</vn-horizontal>
|
||
|
</vn-one>
|
||
|
<vn-one>
|
||
|
<vn-icon-button
|
||
|
pointer
|
||
|
vn-tooltip="Add service"
|
||
|
vn-bind="+"
|
||
|
icon="add_circle"
|
||
|
ng-click="$ctrl.add()">
|
||
|
</vn-icon-button>
|
||
|
</vn-one>
|
||
|
</vn-card>
|
||
|
<vn-button-bar>
|
||
|
<vn-submit label="Save"></vn-submit>
|
||
|
</vn-button-bar>
|
||
|
</form>
|