Skip to content

Commit c28d333

Browse files
authored
Fix remainling legislation code (#894)
1 parent 0b5ecbf commit c28d333

33 files changed

+343
-308
lines changed

api/src/controllers/post/administrative-penalty.js

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -543,23 +543,7 @@ exports.createNRCED = function(args, res, next, incomingObj) {
543543
incomingObj.issuingAgency && (administrativePenaltyBCMI.issuingAgency = incomingObj.issuingAgency);
544544
incomingObj.author && (administrativePenaltyBCMI.author = incomingObj.author);
545545

546-
incomingObj.legislation &&
547-
incomingObj.legislation.act &&
548-
(administrativePenaltyBCMI.legislation.act = incomingObj.legislation.act);
549-
incomingObj.legislation &&
550-
incomingObj.legislation.regulation &&
551-
(administrativePenaltyBCMI.legislation.regulation = incomingObj.legislation.regulation);
552-
incomingObj.legislation &&
553-
incomingObj.legislation.section &&
554-
(administrativePenaltyBCMI.legislation.section = incomingObj.legislation.section);
555-
incomingObj.legislation &&
556-
incomingObj.legislation.subSection &&
557-
(administrativePenaltyBCMI.legislation.subSection = incomingObj.legislation.subSection);
558-
incomingObj.legislation &&
559-
incomingObj.legislation.paragraph &&
560-
(administrativePenaltyBCMI.legislation.paragraph = incomingObj.legislation.paragraph);
561-
562-
incomingObj.offence && (administrativePenaltyBCMI.offence = incomingObj.offence);
546+
administrativePenaltyBCMI.legislation = postUtils.populateLegislation(incomingObj.legislation);
563547

564548
administrativePenaltyBCMI.issuedTo.read = utils.ApplicationAdminRoles;
565549
administrativePenaltyBCMI.issuedTo.write = [utils.ApplicationRoles.ADMIN, utils.ApplicationRoles.ADMIN_BCMI];

api/src/controllers/post/court-conviction.js

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -536,23 +536,7 @@ exports.createBCMI = function(args, res, next, incomingObj) {
536536
incomingObj.issuingAgency && (courtConvictionBCMI.issuingAgency = incomingObj.issuingAgency);
537537
incomingObj.author && (courtConvictionBCMI.author = incomingObj.author);
538538

539-
incomingObj.legislation &&
540-
incomingObj.legislation.act &&
541-
(courtConvictionBCMI.legislation.act = incomingObj.legislation.act);
542-
incomingObj.legislation &&
543-
incomingObj.legislation.regulation &&
544-
(courtConvictionBCMI.legislation.regulation = incomingObj.legislation.regulation);
545-
incomingObj.legislation &&
546-
incomingObj.legislation.section &&
547-
(courtConvictionBCMI.legislation.section = incomingObj.legislation.section);
548-
incomingObj.legislation &&
549-
incomingObj.legislation.subSection &&
550-
(courtConvictionBCMI.legislation.subSection = incomingObj.legislation.subSection);
551-
incomingObj.legislation &&
552-
incomingObj.legislation.paragraph &&
553-
(courtConvictionBCMI.legislation.paragraph = incomingObj.legislation.paragraph);
554-
555-
incomingObj.offence && (courtConvictionBCMI.offence = incomingObj.offence);
539+
courtConvictionBCMI.legislation = postUtils.populateLegislation(incomingObj.legislation);
556540

557541
courtConvictionBCMI.issuedTo.read = utils.ApplicationAdminRoles;
558542
courtConvictionBCMI.issuedTo.write = [utils.ApplicationRoles.ADMIN, utils.ApplicationRoles.ADMIN_BCMI];

api/src/importers/alc/inspections-utils.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,14 @@ class Inspections extends BaseRecordUtils {
4747

4848
inspection['location'] = csvRow['local government'] || null;
4949

50-
inspection['legislation'] = {
51-
act: 'Agricultural Land Commission Act',
52-
section: '49',
53-
subSection: '1'
54-
};
55-
inspection['legislationDescription'] = 'Inspection to verify compliance with regulatory requirements';
50+
inspection['legislation'] = [
51+
{
52+
act: 'Agricultural Land Commission Act',
53+
section: '49',
54+
subSection: '1',
55+
legislationDescription: 'Inspection to verify compliance with regulatory requirements'
56+
}
57+
];
5658

5759
inspection['outcomeDescription'] = CsvUtils.getOutcomeDescription(csvRow);
5860

@@ -75,7 +77,7 @@ class Inspections extends BaseRecordUtils {
7577
dateOfBirth: null,
7678
firstName: '',
7779
lastName: '',
78-
middleName: '',
80+
middleName: ''
7981
};
8082
}
8183

api/src/importers/alc/inspections-utils.test.js

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,14 @@ describe('transformRecord', () => {
2323
description: '-',
2424
sourceSystemRef: 'alc-csv',
2525
issuingAgency: 'Agricultural Land Commission',
26-
legislation: {
27-
act: 'Agricultural Land Commission Act',
28-
section: '49',
29-
subSection: '1'
30-
},
31-
legislationDescription: 'Inspection to verify compliance with regulatory requirements',
26+
legislation: [
27+
{
28+
act: 'Agricultural Land Commission Act',
29+
section: '49',
30+
subSection: '1',
31+
legislationDescription: 'Inspection to verify compliance with regulatory requirements'
32+
}
33+
],
3234
location: null,
3335
outcomeDescription: 'undefined - undefined',
3436
recordName: '-',
@@ -65,15 +67,18 @@ describe('transformRecord', () => {
6567
type: MiscConstants.IssuedToEntityTypes.Individual
6668
},
6769
issuingAgency: 'Agricultural Land Commission',
68-
legislation: {
69-
act: 'Agricultural Land Commission Act',
70-
section: '49',
71-
subSection: '1'
72-
},
73-
legislationDescription:
74-
'Inspection to verify compliance with regulatory requirements',
70+
legislation: [
71+
{
72+
act: 'Agricultural Land Commission Act',
73+
section: '49',
74+
subSection: '1',
75+
legislationDescription: 'Inspection to verify compliance with regulatory requirements'
76+
}
77+
],
78+
7579
location: 'West Coast',
76-
outcomeDescription: 'Alleged Non-Compliance - Notice of Contravention; Alleged Contravention: 20 (1) Non-farm use of land without authority',
80+
outcomeDescription:
81+
'Alleged Non-Compliance - Notice of Contravention; Alleged Contravention: 20 (1) Non-farm use of land without authority',
7782
sourceSystemRef: 'alc-csv'
7883
});
7984
});

api/src/importers/ams/orders-utils.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -69,21 +69,21 @@ class Orders extends BaseRecordUtils {
6969
}
7070

7171
const authorizationType = csvRow['authorizationtype'];
72-
order['legislation'] = {
72+
const legislation = {
7373
act: 'Environmental Management Act'
7474
};
7575
if (authorizationType === 'Information') {
76-
order['legislation']['section'] = 77;
77-
order['legislationDescription'] = 'Information Order';
76+
legislation['section'] = 77;
77+
legislation['legislationDescription'] = 'Information Order';
7878
} else if (authorizationType === 'Pollution Prevention') {
79-
order['legislation']['section'] = 81;
80-
order['legislationDescription'] = 'Pollution Prevention Order';
79+
legislation['section'] = 81;
80+
legislation['legislationDescription'] = 'Pollution Prevention Order';
8181
} else if (authorizationType === 'Pollution Abatement') {
82-
order['legislation']['section'] = 83;
83-
order['legislationDescription'] = 'Pollution Abatement Order';
82+
legislation['section'] = 83;
83+
legislation['legislationDescription'] = 'Pollution Abatement Order';
8484
}
8585

86-
86+
order['legislation'] = [legislation];
8787

8888
return order;
8989
}

api/src/importers/ams/orders-utils.test.js

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ describe('transformRecord', () => {
2222
issuedTo: { type: MiscConstants.IssuedToEntityTypes.Company, companyName: '' },
2323
sourceSystemRef: 'ams-csv',
2424
issuingAgency: 'Environmental Protection Division',
25-
legislation: { act: 'Environmental Management Act' },
25+
legislation: [{ act: 'Environmental Management Act' }],
2626
location: 'British Columbia',
2727
recordName: '-',
2828
summary: 'Authorization Number: undefined',
@@ -55,11 +55,13 @@ describe('transformRecord', () => {
5555
type: MiscConstants.IssuedToEntityTypes.Company
5656
},
5757
issuingAgency: 'Environmental Protection Division',
58-
legislation: {
59-
act: 'Environmental Management Act',
60-
section: 83
61-
},
62-
legislationDescription: 'Pollution Abatement Order',
58+
legislation: [
59+
{
60+
act: 'Environmental Management Act',
61+
section: 83,
62+
legislationDescription: 'Pollution Abatement Order'
63+
}
64+
],
6365
location: 'North Region',
6466
centroid: [-125, 50],
6567

api/src/importers/cmdb/inspection-utils.js

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ const MiscConstants = require('../../utils/constants/misc');
88
* @class Inspections
99
*/
1010

11-
class Inspections extends BaseRecordUtils {
11+
class Inspections extends BaseRecordUtils {
1212
/**
1313
* Creates an instance of Inspections.
1414
*
@@ -28,7 +28,6 @@ const MiscConstants = require('../../utils/constants/misc');
2828
* @memberof Inspections
2929
*/
3030
transformRecord(csvRow, outcomeDescription = '') {
31-
3231
if (!csvRow) {
3332
throw Error('transformRecord - required csvRow must be non-null.');
3433
}
@@ -43,24 +42,26 @@ const MiscConstants = require('../../utils/constants/misc');
4342
inspection['issuingAgency'] = 'Ministry of Agriculture Food and Fisheries';
4443
inspection['author'] = 'Ministry of Agriculture';
4544

46-
inspection['recordName'] = (csvRow['inspection type']) || '';
45+
inspection['recordName'] = csvRow['inspection type'] || '';
4746

4847
inspection['description'] = 'Inspection to verify compliance with regulatory requirements';
49-
inspection['outcomeDescription'] = (outcomeDescription || '');
48+
inspection['outcomeDescription'] = outcomeDescription || '';
5049
inspection['location'] = csvRow['location'] || null;
5150

52-
inspection['legislation'] = {
53-
act: 'Fish and Seafood Act',
54-
section: 22
55-
}
56-
inspection['legislationDescription'] = 'Inspection to verify compliance with regulatory requirements';
51+
inspection['legislation'] = [
52+
{
53+
act: 'Fish and Seafood Act',
54+
section: 22,
55+
legislationDescription: 'Inspection to verify compliance with regulatory requirements'
56+
}
57+
];
5758

5859
inspection['issuedTo'] = {
5960
type: MiscConstants.IssuedToEntityTypes.Company,
60-
companyName: (csvRow['company name']) || ''
61-
}
61+
companyName: csvRow['company name'] || ''
62+
};
6263
return inspection;
6364
}
64-
}
65+
}
6566

66-
module.exports = Inspections;
67+
module.exports = Inspections;

api/src/importers/cmdb/inspection-utils.test.js

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -29,26 +29,29 @@ describe('transformRecord', () => {
2929
outcomeDescription: '',
3030
sourceSystemRef: 'agri-cmdb-csv',
3131
issuingAgency: 'Ministry of Agriculture Food and Fisheries',
32-
legislation: {
33-
act: 'Fish and Seafood Act',
34-
section: 22
35-
},
36-
legislationDescription: descriptionString,
32+
legislation: [
33+
{
34+
act: 'Fish and Seafood Act',
35+
section: 22,
36+
legislationDescription: descriptionString
37+
}
38+
],
3739
location: null,
38-
recordName: '',
40+
recordName: ''
3941
});
4042
});
4143

4244
it('transforms csv row fields into NRPTI record fields', () => {
43-
const result = inspections.transformRecord({
44-
'company name': 'Company 5',
45-
'date issued': '10-07-20',
46-
'inspection id': '1303',
47-
'inspection type': 'Higher Risk Inspection',
48-
'location':'Test Region',
49-
'regulation section': 'FSLR-s.34'
50-
},
51-
'Compliance issue(s) identified under the following acts or regulations: FSLR-s.34'
45+
const result = inspections.transformRecord(
46+
{
47+
'company name': 'Company 5',
48+
'date issued': '10-07-20',
49+
'inspection id': '1303',
50+
'inspection type': 'Higher Risk Inspection',
51+
location: 'Test Region',
52+
'regulation section': 'FSLR-s.34'
53+
},
54+
'Compliance issue(s) identified under the following acts or regulations: FSLR-s.34'
5255
);
5356

5457
expect(result).toEqual({
@@ -65,11 +68,13 @@ describe('transformRecord', () => {
6568
type: MiscConstants.IssuedToEntityTypes.Company
6669
},
6770
issuingAgency: 'Ministry of Agriculture Food and Fisheries',
68-
legislation: {
69-
act: 'Fish and Seafood Act',
70-
section: 22
71-
},
72-
legislationDescription: descriptionString,
71+
legislation: [
72+
{
73+
act: 'Fish and Seafood Act',
74+
section: 22,
75+
legislationDescription: descriptionString
76+
}
77+
],
7378
location: 'Test Region',
7479
outcomeDescription: 'Compliance issue(s) identified under the following acts or regulations: FSLR-s.34',
7580

0 commit comments

Comments
 (0)