hedera-web/web/forms/ecomerce/catalog/ui.xml

212 lines
5.9 KiB
XML
Executable File

<vn>
<vn-group>
<vn-param id="realm" on-changed="onTypeChange">
<vn-hash-param key="realm"/>
</vn-param>
<vn-param id="type" on-changed="onTypeChange">
<vn-hash-param key="type"/>
</vn-param>
<vn-param id="search"/>
<sql-filter type="AND" id="filter">
<sql-filter-item type="EQUAL" id="sql-type">
<sql-field name="tipo_id"/>
<sql-value param="type"/>
</sql-filter-item>
<sql-filter-item type="LIKE">
<sql-field name="Article"/>
<sql-search-tags param="search"/>
</sql-filter-item>
</sql-filter>
<db-query id="basket-lines">
SELECT item_id, warehouse_id, SUM(amount) amount
FROM basket_item
GROUP BY warehouse_id
</db-query>
<db-model result-index="2" id="items-model">
CREATE TEMPORARY TABLE tmp.bionic_calc
(INDEX (item_id))
ENGINE=MEMORY
SELECT Id_Article item_id FROM vn2008.Articles
WHERE #filter;
CALL bionic_calc ();
SELECT a.Id_Article item_id, t.available, t.price, p.producer,
a.Foto, a.Article, a.Categoria, a.Medida, a.Tallos, a.Color, o.Abreviatura
FROM tmp.bionic_item t
JOIN vn2008.Articles a ON a.Id_Article = t.item_id
LEFT JOIN vn2008.Articles_producer p ON p.Id_Article = a.Id_Article
LEFT JOIN vn2008.Origen o ON a.id_origen = o.id
WHERE t.available > 0
ORDER BY a.Article, a.Medida
LIMIT 400;
<sql-batch property="batch" id="batch">
<item name="filter" object="filter"/>
</sql-batch>
</db-model>
<db-model id="item-lots" result-index="1" on-status-changed-after="onStatusChange">
CALL bionic_from_item (#item);
SELECT p.warehouse_id, p.grouping, p.price, p.rate,
t.amount, l.available - IFNULL(t.amount, 0) available
FROM tmp.bionic_lot l
JOIN tmp.bionic_price p
ON p.warehouse_id = l.warehouse_id
LEFT JOIN (
SELECT warehouse_id, SUM(amount) amount
FROM basket_item
WHERE item_id = #item
GROUP BY warehouse_id
) t
ON t.warehouse_id = l.warehouse_id
ORDER BY warehouse_id, grouping;
<sql-batch property="batch" id="lots-batch"/>
</db-model>
</vn-group>
<div id="form" class="catalog">
<div class="center">
<div class="main">
<div class="box">
<div id="header" class="header">
<button class="menu" on-click="onShowMenuClick">
<img src="image/dark/menu.svg" alt="_Menu"/>
</button>
<h1 id="title"><t>Catalog</t></h1>
<div class="action-bar">
<div class="search">
<img src="image/search.svg" alt="_Search" class="icon"/>
<input type="text" id="search-entry" on-change="onSearch"/>
</div>
</div>
<div class="clear"/>
</div>
<htk-grid empty-message="_SelectSubtype" id="items-grid" class="items" model="items-model">
<htk-column-image
title="*"
class="icon"
column="Foto"
directory="catalog"
subdir="200x200"
show-full="true"
full-dir="900x900"
editable="true"/>
<vn-column-item title="_Name" column="Article" renderer="nameRenderer"/>
<htk-column-text title="_Cat" renderer="featuresRender"/>
<htk-column-spin title="_Aval" column="available"/>
<htk-column-text
title="_Price"
column="price"
format="_from %.2d€"
class="price"/>
<htk-column-button
column="id"
image="image/add.svg"
tip="_AddToBasket"
on-clicked="onAddItemClick"/>
</htk-grid>
<p class="footer-message">
<t>IndicativePhotos</t>
</p>
</div>
</div>
</div>
<div id="menu" class="menu" on-click="onMenuClick">
<button class="basket" on-click="onBasketClick">
<t>ShoppingBasket</t>
</button>
<htk-repeater
model="realms-model"
form-id="realm-form"
renderer="realmRenderer"
class="realms-box">
<db-model id="realms-model" on-status-changed="onTypeChange">
SELECT id, reino, color FROM vn2008.reinos
WHERE display != FALSE ORDER BY reino
</db-model>
<template>
<a id="link">
<img id="image"/>
</a>
</template>
</htk-repeater>
<htk-repeater
model="types-model"
form-id="type-form"
renderer="typeRenderer"
empty-message="_SelectFamily"
class="types-box">
<db-model id="types-model" on-status-changed="refreshTitle">
CALL type_list (#realm)
<sql-batch property="batch">
<item name="realm" param="realm"/>
</sql-batch>
</db-model>
<template>
<a id="link">
<htk-text form="type-form" column="Tipo"/>
</a>
</template>
</htk-repeater>
</div>
</div>
<div id="lots-popup" class="lots-popup">
<htk-grid class="lots-grid" model="item-lots" show-header="false">
<htk-column-spin title="_Price" column="price" unit="€" digits="2"/>
<htk-column-text title="_Pack" column="grouping" format="x%.0d"/>
<htk-column-button
column="id"
image="image/add.svg"
tip="_Add"
on-clicked="onAddLotClick"/>
</htk-grid>
<div class="amount">
<button on-click="onEraseClick" title="_Erase" class="erase">
<img
src="image/dark/delete.svg"
alt="_Erase"/>
</button>
<htk-text id="amount"/>
<button on-click="onConfirmClick" title="_Confirm" class="confirm">
<img
src="image/dark/ok.svg"
alt="_Confirm"/>
</button>
<div class="clear"/>
</div>
</div>
<!--
<htk-repeater id="grid-view" form-id="item">
<template>
<div class="item-box">
<div class="image">
<div>
<htk-image form="item" column="Foto" directory="catalog/200x200"/>
</div>
</div>
<h2>
<htk-text form="item" column="Article"/>
</h2>
<p>
<htk-text form="item" column="Medida"/> /
<htk-text form="item" column="Categoria"/> /
<htk-text form="item" column="Color"/> /
<htk-text form="item" column="Tallos"/> /
<htk-text form="item" column="Abreviatura"/>
</p>
<p>
<t>Available:</t>
<htk-text form="item" column="available"/>
</p>
<p>
<t>Price:</t>
<htk-text form="item" column="price" format="%.2d€"/>
</p>
<p class="amount-p">
<htk-entry id="stems" class="amount"/>
<htk-text form="item" column="grouping" format="x%.0d"/>
<htk-entry form="item" column="amount" class="amount"/>
</p>
<div class="clear"/>
</div>
</template>
</htk-repeater>
-->
</vn>