diff --git a/db/changes/10451-april/00-aclSupplierActivity.sql b/db/changes/10451-april/00-aclSupplierActivity.sql
new file mode 100644
index 000000000..bf73a1506
--- /dev/null
+++ b/db/changes/10451-april/00-aclSupplierActivity.sql
@@ -0,0 +1,5 @@
+INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
+VALUES('SupplierActivity', '*', 'READ', 'ALLOW', 'ROLE', 'employee');
+
+INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
+VALUES('SupplierActivity', '*', 'WRITE', 'ALLOW', 'ROLE', 'administrative');
diff --git a/db/dump/fixtures.sql b/db/dump/fixtures.sql
index 576a0d913..d48077d89 100644
--- a/db/dump/fixtures.sql
+++ b/db/dump/fixtures.sql
@@ -1313,11 +1313,11 @@ INSERT INTO `vn`.`supplierAddress`(`id`, `supplierFk`, `nickname`, `street`, `pr
(5, 442, 'GCR building', 'Bristol district', 1, '46000', 'Gotham', '111111111', '222222222'),
(6, 442, 'The Gotham Tonight building', 'Bristol district', 1, '46000', 'Gotham', '111111111', '222222222');
-INSERT INTO `vn`.`supplier`(`id`, `name`, `nickname`,`account`,`countryFk`,`nif`, `commission`, `created`, `isActive`, `street`, `city`, `provinceFk`, `postCode`, `payMethodFk`, `payDemFk`, `payDay`, `taxTypeSageFk`, `withholdingSageFk`, `transactionTypeSageFk`, `workerFk`, `supplierActivityFk`, `isPayMethodChecked`)
+INSERT INTO `vn`.`supplier`(`id`, `name`, `nickname`,`account`,`countryFk`,`nif`, `commission`, `created`, `isActive`, `street`, `city`, `provinceFk`, `postCode`, `payMethodFk`, `payDemFk`, `payDay`, `taxTypeSageFk`, `withholdingSageFk`, `transactionTypeSageFk`, `workerFk`, `supplierActivityFk`, `isPayMethodChecked`, `healthRegister`)
VALUES
- (1, 'Plants SL', 'Plants nick', 4100000001, 1, '06089160W', 0, CURDATE(), 1, 'supplier address 1', 'PONTEVEDRA', 1, 15214, 1, 1, 15, 4, 1, 1, 18, 'flowerPlants', 1),
- (2, 'Farmer King', 'The farmer', 4000020002, 1, '87945234L', 0, CURDATE(), 1, 'supplier address 2', 'SILLA', 2, 43022, 1, 2, 10, 93, 2, 8, 18, 'animals', 1),
- (442, 'Verdnatura Levante SL', 'Verdnatura', 5115000442, 1, '06815934E', 0, CURDATE(), 1, 'supplier address 3', 'SILLA', 1, 43022, 1, 2, 15, 6, 9, 3, 18, 'flowerPlants', 1);
+ (1, 'Plants SL', 'Plants nick', 4100000001, 1, '06089160W', 0, CURDATE(), 1, 'supplier address 1', 'PONTEVEDRA', 1, 15214, 1, 1, 15, 4, 1, 1, 18, 'flowerPlants', 1, '400664487V'),
+ (2, 'Farmer King', 'The farmer', 4000020002, 1, '87945234L', 0, CURDATE(), 1, 'supplier address 2', 'SILLA', 2, 43022, 1, 2, 10, 93, 2, 8, 18, 'animals', 1, '400664487V'),
+ (442, 'Verdnatura Levante SL', 'Verdnatura', 5115000442, 1, '06815934E', 0, CURDATE(), 1, 'supplier address 3', 'SILLA', 1, 43022, 1, 2, 15, 6, 9, 3, 18, 'complements', 1, '400664487V');
INSERT INTO `vn`.`supplierContact`(`id`, `supplierFk`, `phone`, `mobile`, `email`, `observation`, `name`)
VALUES
diff --git a/modules/supplier/back/methods/supplier/getSummary.js b/modules/supplier/back/methods/supplier/getSummary.js
index c29a2a058..bf3fa56f5 100644
--- a/modules/supplier/back/methods/supplier/getSummary.js
+++ b/modules/supplier/back/methods/supplier/getSummary.js
@@ -41,7 +41,9 @@ module.exports = Self => {
'sageTaxTypeFk',
'sageTransactionTypeFk',
'sageWithholdingFk',
- 'workerFk'
+ 'workerFk',
+ 'supplierActivityFk',
+ 'healthRegister'
],
include: [
{
@@ -98,6 +100,12 @@ module.exports = Self => {
}
}
},
+ {
+ relation: 'supplierActivity',
+ scope: {
+ fields: ['code', 'name']
+ }
+ }
]
};
diff --git a/modules/supplier/back/methods/supplier/specs/updateFiscalData.spec.js b/modules/supplier/back/methods/supplier/specs/updateFiscalData.spec.js
index 0eec54926..a47e547d1 100644
--- a/modules/supplier/back/methods/supplier/specs/updateFiscalData.spec.js
+++ b/modules/supplier/back/methods/supplier/specs/updateFiscalData.spec.js
@@ -66,6 +66,8 @@ describe('Supplier updateFiscalData', () => {
city: 'VALENCIA',
provinceFk: 2,
countryFk: 1,
+ supplierActivityFk: 'animals',
+ healthRegister: '400664487H'
};
const result = await app.models.Supplier.updateFiscalData(ctx, supplierId);
@@ -80,6 +82,8 @@ describe('Supplier updateFiscalData', () => {
expect(result.city).toEqual('VALENCIA');
expect(result.provinceFk).toEqual(2);
expect(result.countryFk).toEqual(1);
+ expect(result.supplierActivityFk).toEqual('animals');
+ expect(result.healthRegister).toEqual('400664487H');
// Restores
ctx.args = defaultData;
diff --git a/modules/supplier/back/methods/supplier/updateFiscalData.js b/modules/supplier/back/methods/supplier/updateFiscalData.js
index daa602af0..4604b3f91 100644
--- a/modules/supplier/back/methods/supplier/updateFiscalData.js
+++ b/modules/supplier/back/methods/supplier/updateFiscalData.js
@@ -56,6 +56,14 @@ module.exports = Self => {
{
arg: 'countryFk',
type: 'any'
+ },
+ {
+ arg: 'supplierActivityFk',
+ type: 'string'
+ },
+ {
+ arg: 'healthRegister',
+ type: 'string'
}],
returns: {
arg: 'res',
diff --git a/modules/supplier/back/model-config.json b/modules/supplier/back/model-config.json
index 7c1bba1ec..dbc387ed2 100644
--- a/modules/supplier/back/model-config.json
+++ b/modules/supplier/back/model-config.json
@@ -11,6 +11,9 @@
"SupplierAccount": {
"dataSource": "vn"
},
+ "SupplierActivity": {
+ "dataSource": "vn"
+ },
"SupplierAgencyTerm": {
"dataSource": "vn"
},
diff --git a/modules/supplier/back/models/supplier-activity.json b/modules/supplier/back/models/supplier-activity.json
new file mode 100644
index 000000000..7a0b9a537
--- /dev/null
+++ b/modules/supplier/back/models/supplier-activity.json
@@ -0,0 +1,18 @@
+{
+ "name": "SupplierActivity",
+ "base": "VnModel",
+ "options": {
+ "mysql": {
+ "table": "supplierActivity"
+ }
+ },
+ "properties": {
+ "code": {
+ "type": "string",
+ "id": true
+ },
+ "name": {
+ "type": "string"
+ }
+ }
+}
\ No newline at end of file
diff --git a/modules/supplier/back/models/supplier.json b/modules/supplier/back/models/supplier.json
index 8b4b8f26f..b27073ca5 100644
--- a/modules/supplier/back/models/supplier.json
+++ b/modules/supplier/back/models/supplier.json
@@ -101,6 +101,12 @@
},
"isPayMethodChecked": {
"type": "boolean"
+ },
+ "supplierActivityFk": {
+ "type": "string"
+ },
+ "healthRegister": {
+ "type": "string"
}
},
"relations": {
@@ -159,6 +165,11 @@
"type": "hasMany",
"model": "SupplierAddress",
"foreignKey": "supplierFk"
+ },
+ "supplierActivity": {
+ "type": "belongsTo",
+ "model": "SupplierActivity",
+ "foreignKey": "supplierActivityFk"
}
}
}
\ No newline at end of file
diff --git a/modules/supplier/front/fiscal-data/index.html b/modules/supplier/front/fiscal-data/index.html
index 4f34528f2..77a5cce4e 100644
--- a/modules/supplier/front/fiscal-data/index.html
+++ b/modules/supplier/front/fiscal-data/index.html
@@ -30,6 +30,11 @@
data="sageWithholdings"
order="withholding">
+