diff --git a/CHANGELOG.md b/CHANGELOG.md
index 17259f5459..3388ceb73a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- (Client -> Descriptor) Nuevo icono $ con barrotes para los clientes con impago
+- (Trabajador -> Datos Básicos) Añadido nuevo campo Taquilla
+- (Trabajador -> PDA) Nueva sección
### Changed
-
diff --git a/db/changes/230801/.gitkeep b/db/changes/230801/.gitkeep
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/db/changes/230801/00-workerLocker.sql b/db/changes/230801/00-workerLocker.sql
new file mode 100644
index 0000000000..1a7c2e98e0
--- /dev/null
+++ b/db/changes/230801/00-workerLocker.sql
@@ -0,0 +1 @@
+ALTER TABLE `vn`.`worker` ADD locker INT UNSIGNED NULL UNIQUE;
diff --git a/e2e/helpers/selectors.js b/e2e/helpers/selectors.js
index efaa13ee3c..a96b7fd51c 100644
--- a/e2e/helpers/selectors.js
+++ b/e2e/helpers/selectors.js
@@ -973,6 +973,7 @@ export default {
id: 'vn-worker-summary vn-one:nth-child(1) > vn-label-value:nth-child(3) > section > span',
email: 'vn-worker-summary vn-one:nth-child(1) > vn-label-value:nth-child(4) > section > span',
department: 'vn-worker-summary vn-one:nth-child(1) > vn-label-value:nth-child(5) > section > span',
+ locker: 'vn-worker-summary vn-one:nth-child(1) > vn-label-value:nth-child(10) > section > span',
userId: 'vn-worker-summary vn-one:nth-child(2) > vn-label-value:nth-child(2) > section > span',
userName: 'vn-worker-summary vn-one:nth-child(2) > vn-label-value:nth-child(3) > section > span',
role: 'vn-worker-summary vn-one:nth-child(2) > vn-label-value:nth-child(4) > section > span',
@@ -983,6 +984,7 @@ export default {
name: 'vn-worker-basic-data vn-textfield[ng-model="$ctrl.worker.firstName"]',
surname: 'vn-worker-basic-data vn-textfield[ng-model="$ctrl.worker.lastName"]',
phone: 'vn-worker-basic-data vn-textfield[ng-model="$ctrl.worker.phone"]',
+ locker: 'vn-worker-basic-data vn-input-number[ng-model="$ctrl.worker.locker"]',
saveButton: 'vn-worker-basic-data button[type=submit]'
},
workerPbx: {
diff --git a/e2e/paths/03-worker/01_summary.spec.js b/e2e/paths/03-worker/01_summary.spec.js
index 4e5b0cfa90..bcb6ad848b 100644
--- a/e2e/paths/03-worker/01_summary.spec.js
+++ b/e2e/paths/03-worker/01_summary.spec.js
@@ -1,7 +1,7 @@
import selectors from '../../helpers/selectors.js';
import getBrowser from '../../helpers/puppeteer';
-describe('Worker summary path', () => {
+fdescribe('Worker summary path', () => {
const workerId = 3;
let browser;
let page;
@@ -29,5 +29,6 @@ describe('Worker summary path', () => {
expect(await page.getProperty(selectors.workerSummary.userName, 'innerText')).toEqual('agency');
expect(await page.getProperty(selectors.workerSummary.role, 'innerText')).toEqual('agency');
expect(await page.getProperty(selectors.workerSummary.extension, 'innerText')).toEqual('1101');
+ expect(await page.getProperty(selectors.workerSummary.locker, 'innerText')).toEqual('-');
});
});
diff --git a/e2e/paths/03-worker/02_basicData.spec.js b/e2e/paths/03-worker/02_basicData.spec.js
index 66a597dd13..381375dc7e 100644
--- a/e2e/paths/03-worker/02_basicData.spec.js
+++ b/e2e/paths/03-worker/02_basicData.spec.js
@@ -25,6 +25,7 @@ describe('Worker basic data path', () => {
await page.overwrite(selectors.workerBasicData.name, 'David C.');
await page.overwrite(selectors.workerBasicData.surname, 'H.');
await page.overwrite(selectors.workerBasicData.phone, '444332211');
+ await page.overwrite(selectors.workerBasicData.locker, '1');
await page.click(selectors.workerBasicData.saveButton);
const message = await page.waitForSnackbar();
@@ -36,5 +37,6 @@ describe('Worker basic data path', () => {
expect(await page.waitToGetProperty(selectors.workerBasicData.name, 'value')).toEqual('David C.');
expect(await page.waitToGetProperty(selectors.workerBasicData.surname, 'value')).toEqual('H.');
expect(await page.waitToGetProperty(selectors.workerBasicData.phone, 'value')).toEqual('444332211');
+ expect(await page.waitToGetProperty(selectors.workerBasicData.locker, 'value')).toEqual('1');
});
});
diff --git a/loopback/locale/es.json b/loopback/locale/es.json
index ad6d53d640..10db9a54ff 100644
--- a/loopback/locale/es.json
+++ b/loopback/locale/es.json
@@ -263,6 +263,7 @@
"It is not possible to modify sales that their articles are from Floramondo": "No es posible modificar líneas de pedido cuyos artículos sean de Floramondo",
"It is not possible to modify cloned sales": "No es posible modificar líneas de pedido clonadas",
"A supplier with the same name already exists. Change the country.": "Un proveedor con el mismo nombre ya existe. Cambie el país.",
- "There is no assigned email for this client": "No hay correo asignado para este cliente"
+ "There is no assigned email for this client": "No hay correo asignado para este cliente",
+ "This locker has already been assigned": "Esta taquilla ya ha sido asignada"
}
diff --git a/modules/worker/back/models/worker.js b/modules/worker/back/models/worker.js
index e66259cd05..68baec6caf 100644
--- a/modules/worker/back/models/worker.js
+++ b/modules/worker/back/models/worker.js
@@ -14,4 +14,8 @@ module.exports = Self => {
require('../methods/worker/holidays')(Self);
require('../methods/worker/activeContract')(Self);
require('../methods/worker/new')(Self);
+
+ Self.validatesUniquenessOf('locker', {
+ message: 'This locker has already been assigned'
+ });
};
diff --git a/modules/worker/back/models/worker.json b/modules/worker/back/models/worker.json
index e3a941dd36..d21094f26c 100644
--- a/modules/worker/back/models/worker.json
+++ b/modules/worker/back/models/worker.json
@@ -55,6 +55,9 @@
},
"code": {
"type" : "string"
+ },
+ "locker": {
+ "type" : "number"
}
},
"relations": {
diff --git a/modules/worker/front/basic-data/index.html b/modules/worker/front/basic-data/index.html
index 5a3acdde59..d89d88f2e8 100644
--- a/modules/worker/front/basic-data/index.html
+++ b/modules/worker/front/basic-data/index.html
@@ -11,7 +11,7 @@
@@ -24,14 +24,14 @@
@@ -73,11 +73,16 @@
+
+
diff --git a/modules/worker/front/basic-data/locale/es.yml b/modules/worker/front/basic-data/locale/es.yml
index a83c30d99d..edf08de906 100644
--- a/modules/worker/front/basic-data/locale/es.yml
+++ b/modules/worker/front/basic-data/locale/es.yml
@@ -5,4 +5,5 @@ SSN: NSS
Married: Casado/a
Single: Soltero/a
Business phone: Teléfono de empresa
-Mobile extension: Extensión móvil
\ No newline at end of file
+Mobile extension: Extensión móvil
+Locker: Taquilla
diff --git a/modules/worker/front/summary/index.html b/modules/worker/front/summary/index.html
index 0a6bec822e..72b8e729aa 100644
--- a/modules/worker/front/summary/index.html
+++ b/modules/worker/front/summary/index.html
@@ -11,23 +11,23 @@
-
Basic data
-
-
-
-
-
-
+
+
+
User data
-
-
-
-
-
-
\ No newline at end of file
+
diff --git a/modules/worker/front/summary/locale/es.yml b/modules/worker/front/summary/locale/es.yml
index e9c8e55836..fb9d2e2cac 100644
--- a/modules/worker/front/summary/locale/es.yml
+++ b/modules/worker/front/summary/locale/es.yml
@@ -1,3 +1,4 @@
Business phone: Teléfono de empresa
Personal phone: Teléfono personal
-Mobile extension: Extensión móvil
\ No newline at end of file
+Mobile extension: Extensión móvil
+Locker: Taquilla