<vn-crud-model
    vn-id="model"
    url="Items/lastEntriesFilter"
    filter="::$ctrl.filter"
    data="entries"
    auto-load="true"
    order="landed DESC, buyFk DESC"
    limit="20">
</vn-crud-model>

<vn-card class="vn-w-md vn-pa-md">
    <vn-horizontal>
        <vn-date-picker class="vn-pa-xs"
            vn-one
            label="Since"
            vn-one
            label="Since"
            ng-model="$ctrl.dateFrom">
        </vn-date-picker>
        <vn-date-picker class="vn-pa-xs"
            vn-one
            label="To"
            ng-model="$ctrl.dateTo">
        </vn-date-picker>
    </vn-horizontal>
</vn-card>

<vn-data-viewer
    model="model"
    class="vn-mb-xl vn-w-xl vn-pa-md">
    <vn-card class="vn-pa-lg">
        <vn-vertical>
            <vn-table model="model">
                <vn-thead>
                    <vn-tr>
                        <vn-th vn-tooltip="Ignored" center>Ig</vn-th>
                        <vn-th field="warehouseFk">Warehouse</vn-th>
                        <vn-th field="landed">Landed</vn-th>
                        <vn-th number>Entry</vn-th>
                        <vn-th vn-tooltip="Grouping / Packing" expand>PVP</vn-th>
                        <vn-th number class="expendable">Label</vn-th>
                        <vn-th number>Packing</vn-th>
                        <vn-th number>Grouping</vn-th>
                        <vn-th number class="expendable">Stems</vn-th>
                        <vn-th field="quantity" number>Quantity</vn-th>
                        <vn-th number class="expendable">Cost</vn-th>
                        <vn-th number>Kg.</vn-th>
                        <vn-th field="packagingFk" number>Cube</vn-th>
                        <vn-th field="supplierFk" class="expendable">Provider</vn-th>
                    </vn-tr>
                </vn-thead>
                <vn-tbody>
                    <vn-tr ng-repeat="entry in entries">
                        <vn-td center>
                            <vn-check
                                ng-model="entry.isIgnored"
                                disabled="true">
                            </vn-check>
                        </vn-td>
                        <vn-td title="{{::entry.warehouse| dashIfEmpty}}">{{::entry.warehouse| dashIfEmpty}}</vn-td>
                        <vn-td shrink-datetime>{{::entry.landed | date:'dd/MM/yyyy HH:mm'}}</vn-td>
                        <vn-td shrink>
                            <span
                                vn-click-stop="entryDescriptor.show($event, entry.entryFk)"
                                class="link">
                                {{::entry.entryFk | dashIfEmpty}}
                            </span>
                        </vn-td>
                        <vn-td title="Grouping / Packing">
                            {{::entry.price2 | currency: 'EUR':2 | dashIfEmpty}} / {{::entry.price3 | currency: 'EUR':2 | dashIfEmpty}}
                        </vn-td>
                        <vn-td number class="expendable">{{entry.stickers | dashIfEmpty}}</vn-td>
                        <vn-td number>
                            <vn-chip translate-attr="{title: 'Packing'}" ng-class="{'message': entry.groupingMode == 2}">
                                <span>{{::entry.packing | dashIfEmpty}}</span>
                            </vn-chip>
                        </vn-td>
                        <vn-td number>
                            <vn-chip translate-attr="{title: 'Grouping'}" ng-class="{'message': entry.groupingMode == 1}">
                                <span>{{::entry.grouping | dashIfEmpty}}</span>
                            </vn-chip>
                        </vn-td>
                        <vn-td number class="expendable">{{::entry.stems | dashIfEmpty}}</vn-td>
                        <vn-td number>{{::entry.quantity}}</vn-td>
                        <vn-td number
                            class="expendable">
                                <span
                                    vn-tooltip="
                                    {{::$ctrl.$t('Cost')}}: {{::entry.buyingValue | currency: 'EUR':3 | dashIfEmpty}}<br>
                                    {{::$ctrl.$t('Package')}}: {{::entry.packageValue | currency: 'EUR':3 | dashIfEmpty}}<br>
                                    {{::$ctrl.$t('Freight')}}: {{::entry.freightValue | currency: 'EUR':3 | dashIfEmpty}}<br>
                                    {{::$ctrl.$t('Comission')}}: {{::entry.comissionValue | currency: 'EUR':3 | dashIfEmpty}}">
                                    {{::entry.cost | currency: 'EUR':3 | dashIfEmpty}}
                                </span>
                        </vn-td>
                        <vn-td number>{{::entry.weight | dashIfEmpty}}</vn-td>
                        <vn-td number>{{::entry.packagingFk | dashIfEmpty}}</vn-td>
                        <vn-td class="expendable" title="{{::entry.supplier | dashIfEmpty}}">{{::entry.supplier | dashIfEmpty}}</vn-td>
                    </vn-tr>
                </vn-tbody>
            </vn-table>
        </vn-vertical>
    </vn-card>
</vn-data-viewer>

<vn-entry-descriptor-popover
    vn-id="entryDescriptor">
</vn-entry-descriptor-popover>

<vn-contextmenu vn-id="contextmenu" targets="['vn-data-viewer']" model="model"
    expr-builder="$ctrl.exprBuilder(param, value)">
    <slot-menu>
        <vn-item translate
            ng-if="contextmenu.isFilterAllowed()"
            ng-click="contextmenu.filterBySelection()">
            Filter by selection
        </vn-item>
        <vn-item translate
            ng-if="contextmenu.isFilterAllowed()"
            ng-click="contextmenu.excludeSelection()">
            Exclude selection
        </vn-item>
        <vn-item translate
            ng-if="contextmenu.isFilterAllowed()"
            ng-click="contextmenu.removeFilter()">
            Remove filter
        </vn-item>
        <vn-item translate
            ng-click="contextmenu.removeAllFilters()">
            Remove all filters
        </vn-item>
        <vn-item translate
            ng-if="contextmenu.isActionAllowed()"
            ng-click="contextmenu.copyValue()">
            Copy value
        </vn-item>
    </slot-menu>
</vn-contextmenu>