salix/modules/item/front/index/index.html

151 lines
6.3 KiB
HTML

<vn-crud-model
vn-id="model"
url="/item/api/Items/filter"
limit="12"
order="isActive DESC, name, id"
data="items">
</vn-crud-model>
<div class="content-block">
<vn-card class="vn-pa-md vn-w-sm">
<vn-horizontal style="align-items: center;">
<vn-searchbar
panel="vn-item-search-panel"
on-search="$ctrl.onSearch($params)"
info="Search items by id, name or barcode"
suggested-filter="{isActive: true}"
vn-focus>
</vn-searchbar>
<vn-icon-menu
vn-id="more-button"
icon="more_vert"
show-filter="false"
value-field="callback"
translate-fields="['name']"
on-change="$ctrl.onMoreChange(value)"
on-open="$ctrl.onMoreOpen()">
</vn-icon-menu>
</vn-horizontal>
</vn-card>
<vn-data-viewer
model="model"
class="vn-my-md vn-mb-xl">
<vn-card>
<vn-table
model="model"
show-fields="$ctrl.showFields"
vn-uvc="itemIndex">
<vn-thead>
<vn-tr>
<vn-th th-id="picture" shrink></vn-th>
<vn-th field="id" shrink>Id</vn-th>
<vn-th th-id="grouping" shrink>Grouping</vn-th>
<vn-th th-id="packing" shrink>Packing</vn-th>
<vn-th th-id="description" style="text-align: center">Description</vn-th>
<vn-th th-id="stems" shrink>Stems</vn-th>
<vn-th th-id="size" shrink>Size</vn-th>
<vn-th th-id="niche" shrink>Niche</vn-th>
<vn-th th-id="type" shrink>Type</vn-th>
<vn-th th-id="category" shrink>Category</vn-th>
<vn-th th-id="intrastat" shrink>Intrastat</vn-th>
<vn-th th-id="origin" shrink>Origin</vn-th>
<vn-th th-id="salesperson" shrink>Buyer</vn-th>
<vn-th th-id="density" shrink>Density</vn-th>
<vn-th th-id="active" shrink>Active</vn-th>
<vn-th></vn-th>
</vn-tr>
</vn-thead>
<vn-tbody>
<a ng-repeat="item in items"
class="clickable vn-tr searchResult"
ui-sref="item.card.summary({id: item.id})">
<vn-td shrink>
<img
ng-src="{{::$ctrl.imagesPath}}/50x50/{{::item.image}}"
zoom-image="{{::$ctrl.imagesPath}}/1600x900/{{::item.image}}"
ng-click="$ctrl.stopEvent($event)"
on-error-src/>
</vn-td>
<vn-td shrink>
<span
class="link"
ng-click="$ctrl.showItemDescriptor($event, item.id)">
{{::item.id | zeroFill:6}}
</span>
</vn-td>
<vn-td shrink>{{::item.grouping | dashIfEmpty}}</vn-td>
<vn-td shrink>{{::item.packing | dashIfEmpty}}</vn-td>
<vn-td expand>
<vn-fetched-tags
max-length="6"
item="::item"
name="::item.name"
sub-name="::item.subName">
</vn-fetched-tags>
</vn-td>
<vn-td shrink>{{::item.stems}}</vn-td>
<vn-td shrink>{{::item.size}}</vn-td>
<vn-td shrink>{{::item.niche}}</vn-td>
<vn-td shrink title="{{::item.type}}">
{{::item.type}}
</vn-td>
<vn-td shrink title="{{::item.category}}">
{{::item.category}}
</vn-td>
<vn-td shrink title="{{::item.intrastat}}">
{{::item.intrastat}}
</vn-td>
<vn-td shrink>{{::item.origin}}</vn-td>
<vn-td shrink title="{{::item.userNickname}}">
<span
class="link"
ng-click="$ctrl.showWorkerDescriptor($event, item.buyerFk)">
{{::item.userNickname}}
</span>
</vn-td>
<vn-td shrink>{{::item.density}}</vn-td>
<vn-td shrink>
<vn-check
disabled="true"
ng-model="::item.isActive">
</vn-check>
</vn-td>
<vn-td shrink>
<vn-horizontal class="buttons">
<vn-icon-button
ng-click="$ctrl.cloneItem($event, item)"
vn-tooltip="Clone"
icon="icon-clone">
</vn-icon-button>
<vn-icon-button
ng-click="$ctrl.preview($event, item)"
vn-tooltip="Preview"
icon="desktop_windows">
</vn-icon-button>
</vn-horizontal>
</vn-td>
</a>
</vn-tbody>
</vn-table>
</vn-card>
</vn-data-viewer>
</div>
<a ui-sref="item.create" vn-tooltip="New item" vn-bind="+" fixed-bottom-right>
<vn-float-button icon="add"></vn-float-button>
</a>
<vn-dialog vn-id="preview" class="dialog-summary">
<tpl-body>
<vn-item-summary item="$ctrl.itemSelected"></vn-item-summary>
</tpl-body>
</vn-dialog>
<vn-confirm
vn-id="clone"
on-response="$ctrl.onCloneAccept(response)"
question="Do you want to clone this item?"
message="All it's properties will be copied">
</vn-confirm>
<vn-item-descriptor-popover vn-id="itemDescriptor"></vn-item-descriptor-popover>
<vn-worker-descriptor-popover
vn-id="workerDescriptor"
worker-fk="$ctrl.selectedWorker">
</vn-worker-descriptor-popover>
<vn-scroll-up></vn-scroll-up>