salix/modules/ticket/front/services/index.html

98 lines
3.0 KiB
HTML

<vn-crud-model
vn-id="model"
url="TicketServices"
link="{ticketFk: $ctrl.$params.id}"
data="$ctrl.services"
auto-load="true">
</vn-crud-model>
<vn-crud-model
auto-load="true"
url="TicketServiceTypes"
data="ticketServiceTypes"
order="name">
</vn-crud-model>
<vn-crud-model
auto-load="true"
url="TaxClasses"
data="taxClasses"
order="description">
</vn-crud-model>
<vn-watcher
vn-id="watcher"
data="$ctrl.services">
</vn-watcher>
<form name="form" ng-submit="$ctrl.onSubmit()" class="vn-w-md">
<vn-card class="vn-pa-lg">
<vn-horizontal ng-repeat="service in $ctrl.services track by $index">
<vn-autocomplete vn-two vn-focus
data="ticketServiceTypes"
label="Description"
show-field="name"
value-field="id"
ng-model="service.ticketServiceTypeFk">
<append>
<vn-icon-button
icon="add_circle"
vn-tooltip="New service type"
ng-click="$ctrl.onNewServiceTypeClick(service, $event)"
vn-acl="administrative"
style="padding: 0;">
</vn-icon-button>
</append>
</vn-autocomplete>
<vn-input-number
vn-one min="0"
step="1"
label="Quantity"
ng-model="service.quantity"
rule="TicketService">
</vn-input-number>
<vn-input-number
vn-one
label="Price"
ng-model="service.price"
step="0.01">
</vn-input-number>
<vn-auto>
<vn-icon-button
pointer
vn-tooltip="Remove service"
icon="delete"
ng-click="model.remove($index)">
</vn-icon-button>
</vn-auto>
</vn-horizontal>
<vn-icon-button
ng-if=$ctrl.defaultTaxClass
vn-tooltip="Add service"
vn-bind="+"
icon="add_circle"
ng-click="$ctrl.add()">
</vn-icon-button>
</vn-card>
<vn-button-bar>
<vn-submit label="Save"></vn-submit>
</vn-button-bar>
</form>
<!-- Create service type dialog -->
<vn-dialog class="edit"
vn-id="newServiceTypeDialog"
on-accept="$ctrl.onNewServiceTypeAccept($data)"
on-close="newServiceType = null"
message="New service type">
<tpl-body>
<vn-horizontal>
<vn-textfield
vn-one
label="Description"
ng-model="newServiceType.name"
vn-focus>
</vn-textfield>
</vn-horizontal>
</tpl-body>
<tpl-buttons>
<input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/>
<button response="accept" translate>Create</button>
</tpl-buttons>
</vn-dialog>