diff --git a/modules/entry/front/buy/import/index.html b/modules/entry/front/buy/import/index.html
index 742c156be..179657dae 100644
--- a/modules/entry/front/buy/import/index.html
+++ b/modules/entry/front/buy/import/index.html
@@ -69,6 +69,13 @@
{{::id}} - {{::name}}
+
+
+
+
{{::buy.description | dashIfEmpty}} |
@@ -100,7 +107,95 @@
label="Cancel"
ui-sref="entry.card.buy.index">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ID
+ Item
+ Size
+ Producer
+ Color
+
+
+
+
+
+
+ {{::item.id}}
+
+
+ {{::item.name}}
+ {{::item.size}}
+ {{::item.producer.name}}
+ {{::item.ink.name}}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/modules/entry/front/buy/import/index.js b/modules/entry/front/buy/import/index.js
index b802f36c4..2f13b2746 100644
--- a/modules/entry/front/buy/import/index.js
+++ b/modules/entry/front/buy/import/index.js
@@ -88,6 +88,59 @@ class Controller extends Section {
? {id: $search}
: {name: {like: '%' + $search + '%'}};
}
+
+ showFilterDialog(buy) {
+ this.activeBuy = buy;
+ this.itemFilterParams = {};
+ this.itemFilter = {
+ include: [
+ {
+ relation: 'producer',
+ scope: {
+ fields: ['name']
+ }
+ },
+ {
+ relation: 'ink',
+ scope: {
+ fields: ['name']
+ }
+ }
+ ]
+ };
+
+ this.$.filterDialog.show();
+ }
+
+ selectItem(id) {
+ this.activeBuy['itemFk'] = id;
+ this.$.filterDialog.hide();
+ }
+
+ filter() {
+ const filter = this.itemFilter;
+ const params = this.itemFilterParams;
+ const where = {};
+
+ for (let key in params) {
+ const value = params[key];
+ if (!value) continue;
+
+ switch (key) {
+ case 'name':
+ where[key] = {like: `%${value}%`};
+ break;
+ case 'producerFk':
+ case 'typeFk':
+ case 'size':
+ case 'ink':
+ where[key] = value;
+ }
+ }
+
+ filter.where = where;
+ this.$.itemsModel.applyFilter(filter);
+ }
}
Controller.$inject = ['$element', '$scope'];
diff --git a/modules/entry/front/buy/import/style.scss b/modules/entry/front/buy/import/style.scss
index dba069616..8426d4169 100644
--- a/modules/entry/front/buy/import/style.scss
+++ b/modules/entry/front/buy/import/style.scss
@@ -2,4 +2,10 @@ vn-entry-buy-import {
.vn-table > tbody td:nth-child(1) {
width: 250px
}
+}
+
+.itemFilter {
+ vn-table.scrollable {
+ height: 500px
+ }
}
\ No newline at end of file
diff --git a/modules/entry/front/buy/locale/es.yml b/modules/entry/front/buy/locale/es.yml
index c77587758..55828a3c6 100644
--- a/modules/entry/front/buy/locale/es.yml
+++ b/modules/entry/front/buy/locale/es.yml
@@ -3,4 +3,6 @@ Observation: Observación
Box: Embalaje
Import buys: Importar compras
Some of the imported buys doesn't have an item: Algunas de las compras importadas no tienen un artículo
-JSON files only: Solo ficheros JSON
\ No newline at end of file
+JSON files only: Solo ficheros JSON
+Filter item: Filtrar artículo
+Filter...: Filtrar...
\ No newline at end of file
diff --git a/modules/item/front/search-panel/locale/es.yml b/modules/item/front/search-panel/locale/es.yml
index 197da0695..67a5200d7 100644
--- a/modules/item/front/search-panel/locale/es.yml
+++ b/modules/item/front/search-panel/locale/es.yml
@@ -1,6 +1,6 @@
Ink: Tinta
Origin: Origen
-Producer: Productor.
+Producer: Productor
With visible: Con visible
Field: Campo
More fields: Más campos