salix/client/ticket/src/sale/index.html

289 lines
12 KiB
HTML
Raw Normal View History

2018-06-19 10:10:38 +00:00
<mg-ajax path="/ticket/api/sales/filter" options="vnIndexNonAuto" actions="$ctrl.getTaxes()"></mg-ajax>
2018-03-22 17:02:48 +00:00
<vn-vertical>
<vn-card pad-large>
<vn-vertical>
<vn-title>Sale</vn-title>
<vn-tool-bar margin-medium-bottom>
<vn-button
disabled="!$ctrl.isEditable"
label="Ok"
ng-click="$ctrl.onStateOkClick()">
</vn-button>
<vn-icon-menu
disabled="!$ctrl.isEditable"
label="State"
url="/ticket/api/States/alertLevelIs0"
on-change="$ctrl.onStateChange(value)">
</vn-icon-menu>
<vn-icon-menu
label="More"
show-filter="false"
value-field="callback"
2018-06-19 07:09:49 +00:00
data="$ctrl.moreOptions"
translate-fields="['name']"
2018-06-19 07:09:49 +00:00
on-change="$ctrl.onMoreChange(value)"
ng-click="$ctrl.onMoreClick()">
</vn-icon-menu>
<vn-button
disabled="!$ctrl.isChecked || !$ctrl.isEditable"
ng-click="$ctrl.onRemoveLinesClick()"
vn-tooltip="Remove lines"
tooltip-position="up"
icon="delete">
</vn-button>
<vn-button
disabled="!$ctrl.isChecked || !$ctrl.isEditable"
ng-click="$ctrl.showTransferPopover($event);"
vn-tooltip="Transfer lines"
tooltip-position="right"
icon="call_split">
</vn-button>
</vn-tool-bar>
<table class="vn-grid">
<thead>
<tr>
2018-06-19 07:09:49 +00:00
<th></th>
<th number>
<vn-multi-check
data="index.model.instances"
disabled="!$ctrl.isEditable">
</vn-multi-check>
</th>
<th number translate>Item</th>
2018-06-19 07:09:49 +00:00
<th translate>Description</th>
<th number translate>Quantity</th>
<th number translate>Price</th>
<th number translate>Discount</th>
<th number translate>Amount</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sale in index.model.instances track by sale.id">
2018-06-19 07:09:49 +00:00
<td><vn-icon ng-show="sale.reserved" icon="icon-reserved"></vn-icon></td>
<td number>
<vn-check
field="sale.checked"
disabled="!$ctrl.isEditable">
</vn-check>
</td>
<td
pointer
number
ng-click="$ctrl.showDescriptor($event, sale.itemFk)">
{{::sale.itemFk}}
</td>
<td><vn-fetched-tags sale="sale"/></td>
<td ng-if="!$ctrl.isEditable" number>{{sale.quantity}}</td>
<td ng-if="$ctrl.isEditable" number>
<vn-textfield
model="sale.quantity"
on-change="$ctrl.updateQuantity(sale.id,sale.quantity)"
unclearable="true">
</vn-textfield>
</td>
<td number
ng-if="$ctrl.isEditable"
ng-click="$ctrl.showEditPricePopover($event, sale)"
pointer
vn-tooltip="Edit Price">
{{sale.price | currency:'€':2}}
</td>
<td number ng-if="!$ctrl.isEditable">
{{sale.price | currency:'€':2}}
</td>
<td number
ng-if="$ctrl.isEditable"
ng-click="$ctrl.showEditPopover($event, sale)"
pointer
vn-tooltip="Edit discount">
{{sale.discount}} %
</td>
<td number
ng-if="!$ctrl.isEditable">
{{sale.discount}} %
</td>
<td number>{{(sale.quantity * sale.price) - ((sale.discount * (sale.quantity * sale.price))/100) | currency:' €':2}}</td>
</tr>
<tr ng-if="index.model.count === 0" class="list list-element">
2018-06-19 07:09:49 +00:00
<td colspan="8" style="text-align: center" translate>No results</td>
</tr>
2018-06-19 10:10:38 +00:00
<tfoot>
<tr>
<td number colspan="8">
<section>
<p><vn-label translate>Subtotal</vn-label> {{$ctrl.subTotal | currency:' €':2}}</p>
<p><vn-label translate>VAT</vn-label> {{$ctrl.VAT | currency:' €':2}}</p>
<p><vn-label><strong>Total</strong></vn-label> <strong>{{$ctrl.total | currency:' €':2}}</strong></p>
</section>
</td>
</tr>
</tfoot>
</tbody>
</table>
</vn-vertical>
2018-03-22 17:02:48 +00:00
</vn-card>
2018-05-11 06:35:28 +00:00
<vn-paging vn-one margin-large-top index="index" total="index.model.count"></vn-paging>
<vn-item-descriptor-popover vn-id="descriptor">
</vn-item-descriptor-popover>
<!-- Create Ticket Dialog -->
<!-- <vn-ticket-create-dialog
vn-id="newTicket"
callback="$ctrl.moveLines(res)"
ticket="$ctrl.ticket">
</vn-ticket-create-dialog>
-->
<!-- Add Turn Dialog -->
<vn-dialog class="dialog-summary"
vn-id="addTurn">
<tpl-body>
<div>
<h5 style="text-align: center">
<span translate>In which day you want to add the ticket?</span>
</h5>
<vn-tool-bar margin-medium-top>
<vn-button
label="Monday"
ng-click="$ctrl.addTurn(0)">
</vn-button>
<vn-button
label="Tuesday"
ng-click="$ctrl.addTurn(1)">
</vn-button>
<vn-button
label="Wednesday"
ng-click="$ctrl.addTurn(2)">
</vn-button>
<vn-button
label="Thursday"
ng-click="$ctrl.addTurn(3)">
</vn-button>
<vn-button
label="Friday"
ng-click="$ctrl.addTurn(4)">
</vn-button>
<vn-button
label="Saturday"
ng-click="$ctrl.addTurn(5)">
</vn-button>
<vn-button
label="Sunday"
ng-click="$ctrl.addTurn(6)">
</vn-button>
</vn-tool-bar>
</div>
</tpl-body>
</vn-dialog>
<!-- Edit Price Popover -->
<vn-popover
class="edit dialog-summary"
vn-id="editPricePopover"
on-open="$ctrl.getManaSalespersonMana()">
<vn-horizontal pad-medium class="header">
<h5>MANÁ: {{$ctrl.mana | currency:' €':0}}</h5>
</vn-horizontal>
<div pad-medium>
<vn-textfield
vn-focus
label="Price"
model="$ctrl.editedPrice"
type="number"
on-change="$ctrl.updatePrice()">
<t-right-icons>
<span class="filter"></span>
</t-right-icons>
</vn-textfield>
<div class="simulator">
<p class="simulatorTitle" translate>New price</p>
<p>{{($ctrl.sale.quantity * $ctrl.sale.price)
- (($ctrl.sale.discount * ($ctrl.sale.quantity * $ctrl.editedPrice))/100)
| currency:' €':2}}</p>
<vn-button
label="Save"
ng-click="$ctrl.updatePrice()">
</vn-button>
</div>
</div>
</vn-popover>
<!-- Edit Popover -->
<vn-popover
class="edit dialog-summary"
vn-id="editPopover"
on-open="$ctrl.getManaSalespersonMana()">
<vn-ticket-sale-edit-discount
mana="$ctrl.mana"
bulk="false"
edit="$ctrl.edit"
hide="$ctrl.hideEditPopover()">
</vn-ticket-sale-edit-discount>
</vn-popover>
<!-- Edit Dialog -->
<vn-dialog
vn-id="editDialog"
class="edit"
on-open="$ctrl.getManaSalespersonMana()">
<tpl-body>
<vn-ticket-sale-edit-discount
mana="$ctrl.mana"
bulk="true"
edit="$ctrl.edit"
hide="$ctrl.hideEditDialog()">
</vn-ticket-sale-edit-discount>
</tpl-body>
</vn-dialog>
<!-- Transfer Popover -->
<vn-popover class="transfer" vn-id="transfer">
<div pad-medium>
<table class="vn-grid">
<thead>
<tr>
<th number translate>ID</th>
<th number translate>F. envio</th>
<th number translate>Agencia</th>
<th number translate>Almacen</th>
</tr>
</thead>
<tbody>
<tr ng-if="$ctrl.lastThreeTickets.length === 0" ><td colspan="4" style="text-align: center" translate>No results</td></tr>
<tr
class="clickable"
ng-repeat="ticket in $ctrl.lastThreeTickets track by ticket.id"
ng-click="$ctrl.moveLines(ticket.id)">
<td number>{{::ticket.id}}</td>
<td number>{{::ticket.shipped | date: 'dd/MM/yyyy HH:mm'}}</td>
<td number>{{::ticket.agencyName}}</td>
<td number>{{::ticket.warehouseName}}</td>
</tr>
</tbody>
</table>
<vn-horizontal>
<vn-textfield
label="Move to ticket"
model="$ctrl.moveToTicketFk"
type="number">
</vn-textfield>
<vn-icon-button
pointer
icon="arrow_forward_ios"
ng-click="$ctrl.moveLines($ctrl.moveToTicketFk)">
</vn-icon-button>
</vn-horizontal>
<vn-button
pointer
label="New ticket"
ng-click="$ctrl.linesToNewTicket()">
</vn-button>
</div>
</vn-popover>
2018-03-22 17:02:48 +00:00
</vn-vertical>
<vn-confirm
vn-id="deleteConfirmation"
on-response="$ctrl.returnDeleteTicketDialog(response)"
question="You are going to delete this ticket"
message="Continue anyway?">
</vn-confirm>