From 8b26c41b7fa9bdda5acdc98cda068b85615d5637 Mon Sep 17 00:00:00 2001
From: jgallego <jgallego@verdnatura.es>
Date: Fri, 28 Aug 2020 17:06:27 +0200
Subject: [PATCH] campo packageFk

---
 db/dump/fixtures.sql                          | 52 +++++++++----------
 .../ticket/back/methods/expedition/filter.js  | 14 +++--
 modules/ticket/back/models/expedition.json    | 15 +++---
 modules/ticket/front/expedition/index.html    | 14 ++---
 package-lock.json                             | 32 ++++++------
 5 files changed, 63 insertions(+), 64 deletions(-)

diff --git a/db/dump/fixtures.sql b/db/dump/fixtures.sql
index 2b70cf2bee..6cb6e3455c 100644
--- a/db/dump/fixtures.sql
+++ b/db/dump/fixtures.sql
@@ -735,36 +735,36 @@ INSERT INTO `vn`.`intrastat`(`id`, `description`, `taxClassFk`, `taxCodeFk`)
 
 INSERT INTO `vn`.`item`(`id`, `typeFk`, `size`, `inkFk`, `stems`, `originFk`, `description`, `producerFk`, `intrastatFk`, `isOnOffer`, `expenceFk`, `isBargain`, `comment`, `relevancy`, `image`, `taxClassFk`, `subName`)
     VALUES
-        (1,  2, 70,   'AMA', 1,    1, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 66540, 1, NULL),
-        (2,  2, 70,   'AZL', 1,    2, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 65540, 1, NULL),
-        (3,  1, 60,   'AMR', 1,    3, NULL, 1,    05080000, 0, 4751000000, 0, NULL, 0, 61692, 1, NULL),
-        (4,  1, 60,   'AMR', 1,    1, NULL, 1,    05080000, 1, 4751000000, 0, NULL, 0, 66090, 2, NULL),
-        (5,  3, 30,   'GRE', 1,    2, NULL, 2,    06021010, 1, 4751000000, 0, NULL, 0, 67350, 2, NULL),
-        (6,  5, 30,   'GRE', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 67350, 2, NULL),
-        (7,  5, 90,   'AZL', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 67350, 2, NULL),
-        (8,  2, 70,   'AMA', 1,    1, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 66540, 1, NULL),
-        (9,  2, 70,   'AZL', 1,    2, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 65540, 1, NULL),
-        (10, 1, 60,   'AMR', 1,    3, NULL, 1,    05080000, 0, 4751000000, 0, NULL, 0, 61692, 1, NULL),
-        (11, 1, 60,   'AMR', 1,    1, NULL, 1,    05080000, 1, 4751000000, 0, NULL, 0, 66090, 2, NULL),
-        (12, 3, 30,   'GRE', 1,    2, NULL, 2,    06021010, 1, 4751000000, 0, NULL, 0, 67350, 2, NULL),
-        (13, 5, 30,   'GRE', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 67350, 2, NULL),
-        (14, 5, 90,   'AZL', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 67350, 2, NULL),
+        (1,  2, 70,   'AMA', 1,    1, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 67, 1, NULL),
+        (2,  2, 70,   'AZL', 1,    2, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 66, 1, NULL),
+        (3,  1, 60,   'AMR', 1,    3, NULL, 1,    05080000, 0, 4751000000, 0, NULL, 0, 65, 1, NULL),
+        (4,  1, 60,   'AMR', 1,    1, NULL, 1,    05080000, 1, 4751000000, 0, NULL, 0, 69, 2, NULL),
+        (5,  3, 30,   'GRE', 1,    2, NULL, 2,    06021010, 1, 4751000000, 0, NULL, 0, 74, 2, NULL),
+        (6,  5, 30,   'GRE', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 62, 2, NULL),
+        (7,  5, 90,   'AZL', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 64, 2, NULL),
+        (8,  2, 70,   'AMA', 1,    1, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 75, 1, NULL),
+        (9,  2, 70,   'AZL', 1,    2, NULL, 1,    06021010, 0, 2000000000, 0, NULL, 0, 76, 1, NULL),
+        (10, 1, 60,   'AMR', 1,    3, NULL, 1,    05080000, 0, 4751000000, 0, NULL, 0, 77, 1, NULL),
+        (11, 1, 60,   'AMR', 1,    1, NULL, 1,    05080000, 1, 4751000000, 0, NULL, 0, 78, 2, NULL),
+        (12, 3, 30,   'GRE', 1,    2, NULL, 2,    06021010, 1, 4751000000, 0, NULL, 0, 82, 2, NULL),
+        (13, 5, 30,   'GRE', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 83, 2, NULL),
+        (14, 5, 90,   'AZL', 1,    2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 84, 2, NULL),
         (15, 4, NULL,  NULL, NULL, 1, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 67350,  2, NULL),
         (16, 4, NULL,  NULL, NULL, 1, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, 67350,  2, NULL),
-        (71, 4, NULL,  NULL, NULL, 1, NULL, NULL, 06021010, 1, 4751000000, 0, NULL, 0, 67350,  2, NULL);
+        (71, 4, NULL,  NULL, NULL, 1, NULL, NULL, 06021010, 1, 4751000000, 0, NULL, 0, 88,  2, NULL);
 
-INSERT INTO `vn`.`expedition`(`id`, `agencyModeFk`, `ticketFk`, `isBox`, `created`, `itemFk`, `counter`, `checked`, `workerFk`)
+INSERT INTO `vn`.`expedition`(`id`, `agencyModeFk`, `ticketFk`, `isBox`, `created`, `itemFk`, `counter`, `workerFk`, `packagingFk`)
     VALUES
-        (1,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1, 1, 18),
-        (2,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 2, 1, 18),
-        (3,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 2, 3, 1, 18),
-        (4,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 4, 4, 1, 18),
-        (5,  1, 2, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1, 1, 18),
-        (6,  7, 3, 71, DATE_ADD(CURDATE(), INTERVAL -2 MONTH), 1, 1, 1, 18),
-        (7,  2, 4, 71, DATE_ADD(CURDATE(), INTERVAL -3 MONTH), 1, 1, 1, 18),
-        (8,  3, 5, 71, DATE_ADD(CURDATE(), INTERVAL -4 MONTH), 1, 1, 1, 18),
-        (9,  3, 6, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1, 1, 18),
-        (10, 7, 7, 71, CURDATE(),                              1, 1, 1, 18);
+        (2,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 2, 1, 1),
+        (1,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1, 1, 1),
+        (3,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 2, 3, 1, 1),
+        (4,  1, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 4, 4, 1, 1),
+        (5,  1, 2, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1, 1, 1),
+        (1,  7, 3, 71, DATE_ADD(CURDATE(), INTERVAL -2 MONTH), 1, 1, 1, 1),
+        (7,  2, 4, 71, DATE_ADD(CURDATE(), INTERVAL -3 MONTH), 1, 1, 1, 1),
+        (8,  3, 5, 71, DATE_ADD(CURDATE(), INTERVAL -4 MONTH), 1, 1, 1, 1),
+        (9,  3, 1, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1, 1, 1),
+        (10, 7, 7, 71, CURDATE(),                              1, 1, 1, 1);
 
 INSERT INTO `vn`.`packaging`(`id`, `volume`, `width`, `height`, `depth`, `isPackageReturnable`, `created`, `itemFk`, `price`)
     VALUES
diff --git a/modules/ticket/back/methods/expedition/filter.js b/modules/ticket/back/methods/expedition/filter.js
index 3ff2fcb595..79c7131ea3 100644
--- a/modules/ticket/back/methods/expedition/filter.js
+++ b/modules/ticket/back/methods/expedition/filter.js
@@ -29,20 +29,24 @@ module.exports = Self => {
                 e.ticketFk,
                 e.isBox,
                 e.workerFk,
-                i1.name namePackage,
+                i1.name packageItemName,
                 e.counter,
                 e.checked,
-                i2.name nameBox,
+                i2.name freightItemName,
                 e.itemFk,
                 u.nickname userNickname,
                 e.created,
-                e.externalId
+                e.externalId,
+                i3.name packagingName,
+                i3.id packagingItemFk,
+                e.packagingFk
             FROM
                 vn.expedition e
                 LEFT JOIN vn.item i2 ON i2.id = e.itemFk 
                 INNER JOIN vn.item i1 ON i1.id = e.isBox
-                LEFT JOIN vn.worker w ON w.id = e.workerFk
-                LEFT JOIN account.user u ON u.id = w.userFk
+                LEFT JOIN vn.packaging p ON p.id = e.packagingFk
+                LEFT JOIN vn.item i3 ON i3.id = p.itemFk
+                LEFT JOIN account.user u ON u.id = e.workerFk
                 `);
         stmt.merge(Self.buildSuffix(filter, 'e'));
 
diff --git a/modules/ticket/back/models/expedition.json b/modules/ticket/back/models/expedition.json
index 4a9682e03a..c0b8d65085 100644
--- a/modules/ticket/back/models/expedition.json
+++ b/modules/ticket/back/models/expedition.json
@@ -24,12 +24,6 @@
       },
       "counter": {
         "type": "Number"
-      },
-      "checked": {
-        "type": "Number"
-      },
-      "externalId": {
-        "type": "Number"
       }
     },
     "relations": {
@@ -43,7 +37,7 @@
         "model": "agency-mode",
         "foreignKey": "agencyModeFk"
       },
-      "item": {
+      "packageItem": {
         "type": "belongsTo",
         "model": "Item",
         "foreignKey": "itemFk"
@@ -58,10 +52,15 @@
         "model": "TicketPackaging",
         "foreignKey": "ticketFk"
       },
-      "box": {
+      "freightItem": {
         "type": "belongsTo",
         "model": "Item",
         "foreignKey": "isBox"
+      },
+      "packaging": {
+        "type": "belongsTo",
+        "model": "Package",
+        "foreignKey": "packagingFk"
       }
     }
   }
diff --git a/modules/ticket/front/expedition/index.html b/modules/ticket/front/expedition/index.html
index 3b17a3b880..fc7b473cc7 100644
--- a/modules/ticket/front/expedition/index.html
+++ b/modules/ticket/front/expedition/index.html
@@ -14,12 +14,10 @@
             <vn-tr>
                 <vn-th></vn-th>
                 <vn-th field="itemFk" number>Expedition</vn-th>
-                <vn-th field="itemFk" number>Envialia</vn-th>
                 <vn-th field="itemFk" number>Item</vn-th>
                 <vn-th field="name">Name</vn-th>
                 <vn-th field="isBox">Package type</vn-th>
                 <vn-th field="counter" number>Counter</vn-th>
-                <vn-th field="checked" number>Checked</vn-th>
                 <vn-th field="worker">Worker</vn-th>
                 <vn-th field="created">Created</vn-th>
             </vn-tr>
@@ -33,18 +31,16 @@
                     </vn-icon-button>
                 </vn-td>
                 <vn-td number>{{expedition.id | zeroFill:6}}</vn-td>
-                <vn-td number>{{expedition.externalId | zeroFill:6}}</vn-td>
                 <vn-td number>
                     <span
-                        ng-class="{link: expedition.itemFk}"
-                        ng-click="itemDescriptor.show($event, expedition.itemFk)">
-                        {{expedition.itemFk | zeroFill:6}}
+                        ng-class="{link: expedition.packagingItemFk}"
+                        ng-click="itemDescriptor.show($event, expedition.packagingItemFk)">
+                        {{expedition.packagingFk}}
                     </span>
                 </vn-td>
-                <vn-td>{{::expedition.namePackage}}</vn-td>
-                <vn-td>{{::expedition.nameBox}}</vn-td>
+                <vn-td>{{::expedition.packageItemName}}</vn-td>
+                <vn-td>{{::expedition.freightItemName}}</vn-td>
                 <vn-td number>{{::expedition.counter}}</vn-td>
-                <vn-td number>{{::expedition.checked}}</vn-td>
                 <vn-td expand>
                     <span 
                         class="link" 
diff --git a/package-lock.json b/package-lock.json
index afded3c936..85f6650f19 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -5824,7 +5824,7 @@
                 },
                 "util": {
                     "version": "0.10.3",
-                    "resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz",
+                    "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
                     "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
                     "dev": true,
                     "requires": {
@@ -6786,7 +6786,7 @@
         "base": {
             "version": "0.11.2",
             "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
-            "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
+            "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=",
             "dev": true,
             "requires": {
                 "cache-base": "^1.0.1",
@@ -7293,7 +7293,7 @@
         "cache-base": {
             "version": "1.0.1",
             "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
-            "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
+            "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=",
             "dev": true,
             "requires": {
                 "collection-visit": "^1.0.0",
@@ -7507,7 +7507,7 @@
         "class-utils": {
             "version": "0.3.6",
             "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
-            "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+            "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=",
             "dev": true,
             "requires": {
                 "arr-union": "^3.1.0",
@@ -9765,7 +9765,7 @@
         },
         "file-loader": {
             "version": "1.1.11",
-            "resolved": "http://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz",
+            "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz",
             "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==",
             "dev": true,
             "requires": {
@@ -10951,7 +10951,7 @@
         "global-modules": {
             "version": "1.0.0",
             "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
-            "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
+            "integrity": "sha1-bXcPDrUjrHgWTXK15xqIdyZcw+o=",
             "dev": true,
             "requires": {
                 "global-prefix": "^1.0.1",
@@ -13104,7 +13104,7 @@
         },
         "is-obj": {
             "version": "1.0.1",
-            "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
+            "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
             "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8="
         },
         "is-path-cwd": {
@@ -13134,7 +13134,7 @@
         "is-plain-object": {
             "version": "2.0.4",
             "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
-            "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+            "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=",
             "dev": true,
             "requires": {
                 "isobject": "^3.0.1"
@@ -13488,7 +13488,7 @@
         "jasmine-spec-reporter": {
             "version": "4.2.1",
             "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz",
-            "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==",
+            "integrity": "sha1-HWMq7ANBZwrTJPkrqEtLMrNeniI=",
             "dev": true,
             "requires": {
                 "colors": "1.1.2"
@@ -22342,7 +22342,7 @@
         },
         "safe-regex": {
             "version": "1.1.0",
-            "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+            "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
             "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
             "dev": true,
             "requires": {
@@ -22543,7 +22543,7 @@
             "dependencies": {
                 "source-map": {
                     "version": "0.4.4",
-                    "resolved": "http://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+                    "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
                     "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
                     "dev": true,
                     "requires": {
@@ -22991,7 +22991,7 @@
         "snapdragon-node": {
             "version": "2.1.1",
             "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
-            "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+            "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=",
             "dev": true,
             "requires": {
                 "define-property": "^1.0.0",
@@ -23042,7 +23042,7 @@
         "snapdragon-util": {
             "version": "3.0.1",
             "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
-            "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+            "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=",
             "dev": true,
             "requires": {
                 "kind-of": "^3.2.0"
@@ -23326,7 +23326,7 @@
         "split-string": {
             "version": "3.1.0",
             "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
-            "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+            "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=",
             "dev": true,
             "requires": {
                 "extend-shallow": "^3.0.0"
@@ -24599,7 +24599,7 @@
         "touch": {
             "version": "3.1.0",
             "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz",
-            "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==",
+            "integrity": "sha1-/jZfX3XsntTlaCXgu3bSSrdK+Ds=",
             "dev": true,
             "requires": {
                 "nopt": "~1.0.10"
@@ -26363,7 +26363,7 @@
         },
         "xmlbuilder": {
             "version": "9.0.7",
-            "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
+            "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
             "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0="
         },
         "xmlchars": {