176 lines
7.0 KiB
HTML
176 lines
7.0 KiB
HTML
<vn-crud-model vn-id="model"
|
|
url="ClaimEnds/filter"
|
|
link="{claimFk: $ctrl.$params.id}"
|
|
data="$ctrl.salesClaimed"
|
|
auto-load="true"
|
|
on-save="$ctrl.onSave()">
|
|
</vn-crud-model>
|
|
<vn-crud-model
|
|
auto-load="true"
|
|
url="ClaimDestinations"
|
|
data="claimDestinations">
|
|
</vn-crud-model>
|
|
<vn-card class="vn-mb-md vn-pa-lg vn-w-lg" style="text-align: right"
|
|
ng-if="$ctrl.salesClaimed.length > 0">
|
|
<vn-label-value label="Total claimed"
|
|
value="{{$ctrl.claimedTotal | currency: 'EUR':2}}">
|
|
</vn-label-value>
|
|
</vn-card>
|
|
<vn-card class="vn-pa-lg vn-w-lg">
|
|
<smart-table
|
|
model="model"
|
|
options="$ctrl.smartTableOptions"
|
|
expr-builder="$ctrl.exprBuilder(param, value)">
|
|
<slot-actions>
|
|
<section class="header">
|
|
<vn-tool-bar class="vn-mb-md">
|
|
<vn-button
|
|
label="Import claim"
|
|
disabled="$ctrl.claim.claimStateFk == $ctrl.resolvedStateId"
|
|
vn-http-click="$ctrl.importToNewRefundTicket()"
|
|
translate-attr="{title: 'Imports claim details'}">
|
|
</vn-button>
|
|
<vn-button
|
|
label="Change destination"
|
|
disabled="$ctrl.checked.length == 0"
|
|
ng-click="changeDestination.show()">
|
|
</vn-button>
|
|
<vn-range
|
|
label="Responsability"
|
|
min-label="Company"
|
|
max-label="Sales/Client"
|
|
ng-model="$ctrl.claim.responsibility"
|
|
max="$ctrl.maxResponsibility"
|
|
min="1"
|
|
step="1"
|
|
on-change="$ctrl.save({responsibility: value})">
|
|
</vn-range>
|
|
</vn-tool-bar>
|
|
<vn-check class="right"
|
|
vn-one
|
|
label="Is paid with mana"
|
|
ng-model="$ctrl.claim.isChargedToMana"
|
|
on-change="$ctrl.save({isChargedToMana: value})">
|
|
</vn-check>
|
|
</section>
|
|
</slot-actions>
|
|
<slot-table>
|
|
<table model="model">
|
|
<thead>
|
|
<tr>
|
|
<th shrink>
|
|
<vn-multi-check
|
|
model="model"
|
|
check-field="$checked">
|
|
</vn-multi-check>
|
|
</th>
|
|
<th number field="itemFk">Id</th>
|
|
<th number field="ticketFk">Ticket</th>
|
|
<th field="claimDestinationFk">Destination</th>
|
|
<th expand field="landed">Landed</th>
|
|
<th number field="quantity">Quantity</th>
|
|
<th field="concept">Description</th>
|
|
<th number field="price">Price</th>
|
|
<th number field="discount">Disc.</th>
|
|
<th number field="total">Total</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr
|
|
ng-repeat="saleClaimed in $ctrl.salesClaimed"
|
|
vn-repeat-last on-last="$ctrl.focusLastInput()">
|
|
<td>
|
|
<vn-check
|
|
ng-model="saleClaimed.$checked"
|
|
vn-click-stop>
|
|
</vn-check>
|
|
</td>
|
|
<td number>
|
|
<vn-span
|
|
ng-click="itemDescriptor.show($event, saleClaimed.itemFk)"
|
|
class="link">
|
|
{{::saleClaimed.itemFk | zeroFill:6}}
|
|
</vn-span>
|
|
</td>
|
|
<td number>
|
|
<vn-span
|
|
class="link"
|
|
ng-click="ticketDescriptor.show($event, saleClaimed.ticketFk)">
|
|
{{::saleClaimed.ticketFk}}
|
|
</vn-span>
|
|
</td>
|
|
<td expand>
|
|
<vn-autocomplete vn-one id="claimDestinationFk"
|
|
ng-model="saleClaimed.claimDestinationFk"
|
|
data="claimDestinations"
|
|
on-change="$ctrl.updateDestination(saleClaimed, value)"
|
|
fields="['id','description']"
|
|
value-field="id"
|
|
show-field="description">
|
|
</vn-autocomplete>
|
|
</td>
|
|
<td expand>{{::saleClaimed.landed | date: 'dd/MM/yyyy'}}</td>
|
|
<td number>{{::saleClaimed.quantity}}</td>
|
|
<td expand>{{::saleClaimed.concept}}</td>
|
|
<td number>{{::saleClaimed.price | currency: 'EUR':2}}</td>
|
|
<td number>{{::saleClaimed.discount}} %</td>
|
|
<td number>{{saleClaimed.total | currency: 'EUR':2}}</td>
|
|
<td shrink>
|
|
<vn-icon-button
|
|
vn-tooltip="Remove line"
|
|
icon="delete"
|
|
ng-click="$ctrl.removeSales(saleClaimed)"
|
|
tabindex="-1">
|
|
</vn-icon-button>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</slot-table>
|
|
</smart-table>
|
|
<button-bar class="vn-pa-md">
|
|
<vn-button
|
|
label="Regularize"
|
|
disabled="$ctrl.claim.claimStateFk == $ctrl.resolvedStateId"
|
|
vn-http-click="$ctrl.regularize()">
|
|
</vn-button>
|
|
</button-bar>
|
|
</vn-card>
|
|
<vn-item-descriptor-popover
|
|
vn-id="item-descriptor"
|
|
warehouse-fk="$ctrl.vnConfig.warehouseFk">
|
|
</vn-item-descriptor-popover>
|
|
<vn-ticket-descriptor-popover
|
|
vn-id="ticket-descriptor">
|
|
</vn-ticket-descriptor-popover>
|
|
<vn-confirm
|
|
vn-id="update-greuge"
|
|
question="Insert greuges on client card"
|
|
message="Do you want to insert greuges?"
|
|
on-accept="$ctrl.onUpdateGreugeAccept()">
|
|
</vn-confirm>
|
|
|
|
<!-- Dialog of change destionation -->
|
|
<vn-dialog
|
|
vn-id="changeDestination"
|
|
on-accept="$ctrl.onResponse()">
|
|
<tpl-body>
|
|
<section class="SMSDialog">
|
|
<h5 class="vn-py-sm">{{$ctrl.$t('Change destination to all selected rows', {total: $ctrl.checked.length})}}</h5>
|
|
<vn-horizontal>
|
|
<vn-autocomplete vn-one id="claimDestinationFk"
|
|
ng-model="$ctrl.newDestination"
|
|
data="claimDestinations"
|
|
fields="['id','description']"
|
|
value-field="id"
|
|
show-field="description"
|
|
vn-focus>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
</section>
|
|
</tpl-body>
|
|
<tpl-buttons>
|
|
<input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/>
|
|
<button response="accept" translate>Save</button>
|
|
</tpl-buttons>
|
|
</vn-dialog> |