@getjones/test-infra 2.6.1 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/package.json +29 -30
  2. package/src/common/commonFlows/index.js +3 -3
  3. package/src/common/commonFlows/records/records.js +71 -71
  4. package/src/common/consts/userTypes.js +5 -0
  5. package/src/common/httpResponseStatusCodes.json +11 -11
  6. package/src/common/requests/apiKeyAuth/requests.js +38 -38
  7. package/src/common/requests/cookieAuth/requests.js +40 -40
  8. package/src/common/requests/requestHandlers.js +60 -60
  9. package/src/common/utils/dataTypeUtils.js +41 -41
  10. package/src/common/utils/numberUtils.js +22 -22
  11. package/src/common/utils/objectUtils.js +7 -9
  12. package/src/common/utils/timeUtils.js +171 -171
  13. package/src/common/validations/errorValidation.js +16 -16
  14. package/src/common/validations/typeValidations.js +36 -36
  15. package/src/defaults/configs/auditConfigs.js +85 -85
  16. package/src/defaults/configs/polices.js +47 -47
  17. package/src/defaults/configs/requirement.js +29 -29
  18. package/src/defaults/index.js +5 -5
  19. package/src/env.js +57 -57
  20. package/src/factory/index.js +5 -0
  21. package/src/factory/records/records.js +105 -0
  22. package/src/index.js +74 -73
  23. package/src/resources/coi/coi.pdf +0 -0
  24. package/src/resources/coi/realCoi.pdf +5617 -20
  25. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +28 -28
  26. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +77 -77
  27. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  28. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  29. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  30. package/src/saas/internal-api/accounts/api/settings/settings.service.js +24 -24
  31. package/src/saas/internal-api/accounts/consts/consts.js +6 -6
  32. package/src/saas/internal-api/accounts/index.js +21 -21
  33. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  34. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +23 -23
  35. package/src/saas/internal-api/accounts/utils/utils.js +32 -32
  36. package/src/saas/internal-api/auth/api/auth.api.js +18 -18
  37. package/src/saas/internal-api/auth/api/auth.service.js +67 -67
  38. package/src/saas/internal-api/auth/index.js +3 -3
  39. package/src/saas/internal-api/coi/api/coi.api.js +34 -34
  40. package/src/saas/internal-api/coi/api/coi.service.js +22 -22
  41. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -7
  42. package/src/saas/internal-api/coi/index.js +13 -13
  43. package/src/saas/internal-api/coi/models/submit.coi.model.js +9 -9
  44. package/src/saas/internal-api/coi/utils/utils.js +48 -48
  45. package/src/saas/internal-api/compliance/api/audit/audit.api.js +40 -40
  46. package/src/saas/internal-api/compliance/api/audit/audit.service.js +152 -151
  47. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  48. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  49. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  50. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +24 -24
  51. package/src/saas/internal-api/compliance/api/waive/waive.api.js +21 -21
  52. package/src/saas/internal-api/compliance/api/waive/waive.service.js +100 -15
  53. package/src/saas/internal-api/compliance/consts/audit.js +71 -81
  54. package/src/saas/internal-api/compliance/index.js +28 -28
  55. package/src/saas/internal-api/compliance/models/audit/audit.model.js +84 -84
  56. package/src/saas/internal-api/compliance/models/waive/waive.model.js +48 -45
  57. package/src/saas/internal-api/compliance/utils/util.js +207 -175
  58. package/src/saas/internal-api/contractors/api/contractors.api.js +141 -141
  59. package/src/saas/internal-api/contractors/api/contractors.service.js +147 -147
  60. package/src/saas/internal-api/contractors/index.js +8 -8
  61. package/src/saas/internal-api/contractors/models/create.contractor.model.js +22 -22
  62. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +60 -60
  63. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  64. package/src/saas/internal-api/dashboardInnerPage/api/recordList.api.js +12 -12
  65. package/src/saas/internal-api/dashboardInnerPage/api/recordList.service.js +7 -7
  66. package/src/saas/internal-api/dashboardInnerPage/index.js +5 -5
  67. package/src/saas/internal-api/dashboardInnerPage/models/dashboard.filter.criteria.model.js +38 -38
  68. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  69. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +127 -127
  70. package/src/saas/internal-api/dbEmails/consts/consts.js +3 -3
  71. package/src/saas/internal-api/dbEmails/index.js +4 -4
  72. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +21 -21
  73. package/src/saas/internal-api/dbEmails/utils/util.js +59 -59
  74. package/src/saas/internal-api/globalRecord/api/global.record.api.js +76 -76
  75. package/src/saas/internal-api/globalRecord/api/global.record.service.js +83 -83
  76. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  77. package/src/saas/internal-api/globalRecord/index.js +6 -6
  78. package/src/saas/internal-api/globalRecord/models/global.record.model.js +43 -43
  79. package/src/saas/internal-api/globalRecord/utils/util.js +148 -148
  80. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  81. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  82. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  83. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  84. package/src/saas/internal-api/projects/api/core/projects.service.js +65 -65
  85. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  86. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +17 -17
  87. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  88. package/src/saas/internal-api/projects/index.js +24 -24
  89. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  90. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  91. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +39 -39
  92. package/src/saas/internal-api/projects/utils/utils.js +82 -82
  93. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  94. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +29 -29
  95. package/src/saas/internal-api/recordNotes/index.js +3 -3
  96. package/src/saas/internal-api/reports/api/reports.api.js +39 -39
  97. package/src/saas/internal-api/reports/api/reports.service.js +34 -34
  98. package/src/saas/internal-api/reports/consts/consts.js +63 -63
  99. package/src/saas/internal-api/reports/index.js +15 -15
  100. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  101. package/src/saas/internal-api/requests/api/requests.api.js +54 -54
  102. package/src/saas/internal-api/requests/api/requests.service.js +84 -51
  103. package/src/saas/internal-api/requests/index.js +14 -14
  104. package/src/saas/internal-api/requests/models/create.request.model.js +22 -22
  105. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  106. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  107. package/src/saas/internal-api/requests/utils.js +8 -8
  108. package/src/saas/internal-api/requirements/api/requirements.api.js +45 -45
  109. package/src/saas/internal-api/requirements/api/requirements.service.js +94 -94
  110. package/src/saas/internal-api/requirements/consts/attributeTypes.json +5 -5
  111. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  112. package/src/saas/internal-api/requirements/index.js +8 -8
  113. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  114. package/src/saas/internal-api/requirements/models/policy.model.js +32 -32
  115. package/src/saas/internal-api/requirements/models/update.requirement.model.js +21 -21
  116. package/src/saas/internal-api/requirements/utils/utils.js +101 -101
  117. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  118. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  119. package/src/saas/internal-api/serviceArea/index.js +4 -4
  120. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  121. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  122. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  123. package/src/saas/internal-api/tabs/index.js +3 -3
  124. package/src/saas/internal-api/tabs/models/tabs.model.js +18 -18
  125. package/src/saas/internal-api/thread-scheduler/runner.js +39 -39
  126. package/src/saas/internal-api/users/api/users.api.js +77 -77
  127. package/src/saas/internal-api/users/api/users.service.js +101 -101
  128. package/src/saas/internal-api/users/index.js +4 -4
  129. package/src/saas/internal-api/users/models/users.model.js +31 -31
  130. package/src/saas/internal-api/users/utils/util.js +14 -14
  131. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +20 -20
  132. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +14 -14
  133. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  134. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  135. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  136. package/src/saas/openapi/projects/projects.api.js +59 -59
  137. package/src/saas/openapi/projects/projects.service.js +44 -44
  138. package/src/saas/openapi/requests/index.js +6 -6
  139. package/src/saas/openapi/requests/models/invite.request.model.js +37 -37
  140. package/src/saas/openapi/requests/requests.api.js +20 -20
  141. package/src/saas/openapi/requests/requests.service.js +18 -18
  142. package/src/saas/openapi/requirements/index.js +6 -6
  143. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  144. package/src/saas/openapi/requirements/requirements.api.js +12 -12
  145. package/src/saas/openapi/requirements/requirements.service.js +20 -20
  146. package/src/saas/openapi/tabs/tabs.api.js +13 -13
  147. package/src/saas/openapi/tabs/tabs.service.js +7 -7
  148. package/tests/env.test.js +40 -40
  149. package/tests/validation.test.js +83 -83
@@ -1,81 +1,71 @@
1
- const COI_AUDIT_STATUSES = {
2
- NOT_AUDITED: '0',
3
- REAUDIT: '3'
4
- };
5
-
6
- const AUDIT_ENTITY_STATUSES = {
7
- YES: 'Yes',
8
- NO: 'No',
9
- EMPTY: 'empty',
10
- OTHER: 'other',
11
- CLAIMS: 'Claims'
12
- };
13
-
14
- const AUDIT_ATTRIBUTE_NAMES = {
15
- CERTIFICATE_ISSUE_DATE: 'certIssueDate'
16
- };
17
-
18
- const AUDIT_POLICY_NAMES = {
19
- GENERAL_LIABILITY: ''
20
- };
21
-
22
- const VALID_SCORES = ['A+', 'A'];
23
-
24
- const AUDITOR_ROLE = 'Auditor';
25
-
26
- const DEFAULT_POLICY_ID = '-3';
27
-
28
- const POLICY_NAMES_MAP = {
29
- certificateOfInsurance: 'Certificate of Insurance',
30
- generalLiability: 'General Liability',
31
- excessLiability: 'Excess Liability',
32
- umbrella: 'Umbrella',
33
- professionalLiability: 'Professional Liability',
34
- environmentalLiability: 'Environmental Liability',
35
- liquorLiability: 'Liquor Liability',
36
- garageLiability: 'Garage Liability',
37
- garageKeepersLiability: 'Garage Keepers Liability',
38
- workersCompensation: 'Workers’ Compensation',
39
- automobileLiability: 'Automobile Liability',
40
- propertyInsurance: 'Property Insurance',
41
- rentedLeasedEquipment: 'Rented/Leased Equipment',
42
- fidelityCrime: 'Fidelity / Crime',
43
- employmentPracticesLiability: 'Employment Practices Liability',
44
- directorsAndOfficersLiability: 'Directors and Officers Liability',
45
- cyberLiability: 'Cyber Liability',
46
- waiverOfSubrogation: 'Waiver Of Subrogation',
47
- agreement: 'Agreement',
48
- certificateHolder: 'Certificate Holder',
49
- additionalInformation: 'Additional Information',
50
- additionalInsured: 'Additional Insured'
51
- };
52
-
53
- const ATTRIBUTE_NAMES_MAP = {
54
- isPolicyExist: 'coverageexists',
55
- eachOccurrence: 'Each Occurrence',
56
- expiryDate: 'expirydate',
57
- policyNumber: 'policyNumber',
58
- perOccurrence: 'PerOccur',
59
- perPolicy: 'Per Policy',
60
- perProject: 'Per Project',
61
- perLocation: 'Per Location',
62
- certificateIssueDate: 'certIssueDate',
63
- insuredAddress: 'Insured Address',
64
- insuredName: 'Insured Name',
65
- amRating: 'AMBestRating',
66
- cancellationTerms: 'cancellationTerms',
67
- coiAuthentication: 'COIauthentication',
68
- signature: 'signature'
69
- };
70
-
71
- module.exports = {
72
- DEFAULT_POLICY_ID,
73
- POLICY_NAMES_MAP,
74
- ATTRIBUTE_NAMES_MAP,
75
- COI_AUDIT_STATUSES,
76
- AUDITOR_ROLE,
77
- AUDIT_POLICY_NAMES,
78
- AUDIT_ATTRIBUTE_NAMES,
79
- AUDIT_ENTITY_STATUSES,
80
- VALID_SCORES
81
- };
1
+ const COI_AUDIT_STATUSES = {
2
+ NOT_AUDITED: '0',
3
+ REAUDIT: '3'
4
+ };
5
+
6
+ const AUDIT_ENTITY_STATUSES = {
7
+ YES: 'Yes',
8
+ NO: 'No',
9
+ EMPTY: 'empty',
10
+ OTHER: 'other',
11
+ CLAIMS: 'Claims'
12
+ };
13
+
14
+ const VALID_SCORES = ['A+', 'A'];
15
+
16
+ const AUDITOR_ROLE = 'Auditor';
17
+
18
+ const DEFAULT_POLICY_ID = '-3';
19
+
20
+ const POLICY_NAMES_MAP = {
21
+ certificateOfInsurance: 'Certificate of Insurance',
22
+ generalLiability: 'General Liability',
23
+ excessLiability: 'Excess Liability',
24
+ umbrella: 'Umbrella',
25
+ professionalLiability: 'Professional Liability',
26
+ environmentalLiability: 'Environmental Liability',
27
+ liquorLiability: 'Liquor Liability',
28
+ garageLiability: 'Garage Liability',
29
+ garageKeepersLiability: 'Garage Keepers Liability',
30
+ workersCompensation: 'Workers’ Compensation',
31
+ automobileLiability: 'Automobile Liability',
32
+ propertyInsurance: 'Property Insurance',
33
+ rentedLeasedEquipment: 'Rented/Leased Equipment',
34
+ fidelityCrime: 'Fidelity / Crime',
35
+ employmentPracticesLiability: 'Employment Practices Liability',
36
+ directorsAndOfficersLiability: 'Directors and Officers Liability',
37
+ cyberLiability: 'Cyber Liability',
38
+ waiverOfSubrogation: 'Waiver Of Subrogation',
39
+ agreement: 'Agreement',
40
+ certificateHolder: 'Certificate Holder',
41
+ additionalInformation: 'Additional Information',
42
+ additionalInsured: 'Additional Insured'
43
+ };
44
+
45
+ const ATTRIBUTE_NAMES_MAP = {
46
+ isPolicyExist: 'coverageexists',
47
+ eachOccurrence: 'Each Occurrence',
48
+ expiryDate: 'expirydate',
49
+ policyNumber: 'policyNumber',
50
+ perOccurrence: 'PerOccur',
51
+ perPolicy: 'Per Policy',
52
+ perProject: 'Per Project',
53
+ perLocation: 'Per Location',
54
+ certificateIssueDate: 'certIssueDate',
55
+ insuredAddress: 'Insured Address',
56
+ insuredName: 'Insured Name',
57
+ amRating: 'AMBestRating',
58
+ cancellationTerms: 'cancellationTerms',
59
+ coiAuthentication: 'COIauthentication',
60
+ signature: 'signature'
61
+ };
62
+
63
+ module.exports = {
64
+ DEFAULT_POLICY_ID,
65
+ POLICY_NAMES_MAP,
66
+ ATTRIBUTE_NAMES_MAP,
67
+ COI_AUDIT_STATUSES,
68
+ AUDITOR_ROLE,
69
+ AUDIT_ENTITY_STATUSES,
70
+ VALID_SCORES
71
+ };
@@ -1,28 +1,28 @@
1
- const auditModels = require('./models/audit/audit.model');
2
- const auditServices = require('./api/audit/audit.service');
3
-
4
- const waiveModels = require('./models/waive/waive.model');
5
- const waiveServices = require('./api/waive/waive.service');
6
-
7
- const convertServices = require('./api/convert/convert.service');
8
- const coverageServices = require('./api/coverage/coverage.service');
9
-
10
- const auditConsts = require('./consts/audit');
11
-
12
- const models = {
13
- audit: auditModels,
14
- waive: waiveModels
15
- };
16
-
17
- const consts = {
18
- audit: auditConsts
19
- };
20
-
21
- const services = {
22
- audit: auditServices,
23
- waive: waiveServices,
24
- convert: convertServices,
25
- coverage: coverageServices
26
- };
27
-
28
- module.exports = { services, models, consts };
1
+ const auditModels = require('./models/audit/audit.model');
2
+ const auditServices = require('./api/audit/audit.service');
3
+
4
+ const waiveModels = require('./models/waive/waive.model');
5
+ const waiveServices = require('./api/waive/waive.service');
6
+
7
+ const convertServices = require('./api/convert/convert.service');
8
+ const coverageServices = require('./api/coverage/coverage.service');
9
+
10
+ const auditConsts = require('./consts/audit');
11
+
12
+ const models = {
13
+ audit: auditModels,
14
+ waive: waiveModels
15
+ };
16
+
17
+ const consts = {
18
+ audit: auditConsts
19
+ };
20
+
21
+ const services = {
22
+ audit: auditServices,
23
+ waive: waiveServices,
24
+ convert: convertServices,
25
+ coverage: coverageServices
26
+ };
27
+
28
+ module.exports = { services, models, consts };
@@ -1,84 +1,84 @@
1
- const { validateType, validateInteger, validateArray, validateDateString } = require('../../../../../common/validations/typeValidations');
2
- const { AUDITOR_ROLE, COI_AUDIT_STATUSES } = require('../../consts/audit');
3
-
4
- class AuditRequestModel {
5
- constructor(
6
- accountId = null,
7
- projectId = null,
8
- requirementId = null,
9
- contractorId = null,
10
- certificateId = null,
11
- auditorId = null,
12
- auditEntities = null,
13
- isReaudit = null,
14
- isProjectOnboarding = false,
15
- shouldSendNotificationToPM = true,
16
- auditDates = {},
17
- auditStatus = null,
18
- auditorRole = AUDITOR_ROLE
19
- ) {
20
- const auditData = {
21
- userId: accountId,
22
- projectId: projectId,
23
- requirementId: requirementId,
24
- contractorId: contractorId,
25
- certificateId: certificateId,
26
- auditorId: auditorId,
27
- policyDetails: auditEntities,
28
- auditorStatus: COI_AUDIT_STATUSES.NOT_AUDITED,
29
- isReaudit: isReaudit,
30
- projectOnboarding: isProjectOnboarding,
31
- role: auditorRole,
32
- sendNotificationToPM: shouldSendNotificationToPM,
33
- auditStatus
34
- };
35
-
36
- validateType(auditDates, AuditDatesModel);
37
- this.auditData = auditData;
38
- this.auditDates = auditDates;
39
- }
40
- }
41
-
42
- class AuditEntityModel {
43
- constructor(policyId, attributeName, status, value) {
44
- this.contractorInsuranceId = policyId;
45
- this.limitname = attributeName;
46
- this.status = status;
47
- this.value = value;
48
- }
49
- }
50
-
51
- class AuditDatesModel {
52
- constructor(contractorId, contractorDateModified, dateStartedAudit, contractorOverrideDateModified, contractCreateDate) {
53
- this.contractorId = contractorId;
54
- this.contractorDateModified = contractorDateModified;
55
- this.dateStartedAudit = dateStartedAudit;
56
- this.contractorOverrideDateModified = contractorOverrideDateModified;
57
- this.contractCreateDate = contractCreateDate;
58
- }
59
- }
60
-
61
- class AuditListParametersModel {
62
- constructor(page, accountIds, { fromDate, toDate } = {}) {
63
- validateInteger(page, { min: 1 });
64
- validateArray(accountIds);
65
-
66
- if (fromDate) {
67
- validateDateString(fromDate);
68
- }
69
-
70
- if (toDate) {
71
- validateDateString(toDate);
72
- }
73
-
74
- this.page = page;
75
- this.filters = { accountIds, fromDate, toDate };
76
- }
77
- }
78
-
79
- module.exports = {
80
- AuditRequestModel,
81
- AuditEntityModel,
82
- AuditDatesModel,
83
- AuditListParametersModel
84
- };
1
+ const { validateType, validateInteger, validateArray, validateDateString } = require('../../../../../common/validations/typeValidations');
2
+ const { AUDITOR_ROLE, COI_AUDIT_STATUSES } = require('../../consts/audit');
3
+
4
+ class AuditRequestModel {
5
+ constructor(
6
+ accountId = null,
7
+ projectId = null,
8
+ requirementId = null,
9
+ contractorId = null,
10
+ certificateId = null,
11
+ auditorId = null,
12
+ auditEntities = null,
13
+ isReaudit = null,
14
+ isProjectOnboarding = false,
15
+ shouldSendNotificationToPM = true,
16
+ auditDates = {},
17
+ auditStatus = null,
18
+ auditorRole = AUDITOR_ROLE
19
+ ) {
20
+ const auditData = {
21
+ userId: accountId,
22
+ projectId: projectId,
23
+ requirementId: requirementId,
24
+ contractorId: contractorId,
25
+ certificateId: certificateId,
26
+ auditorId: auditorId,
27
+ policyDetails: auditEntities,
28
+ auditorStatus: COI_AUDIT_STATUSES.NOT_AUDITED,
29
+ isReaudit: isReaudit,
30
+ projectOnboarding: isProjectOnboarding,
31
+ role: auditorRole,
32
+ sendNotificationToPM: shouldSendNotificationToPM,
33
+ auditStatus
34
+ };
35
+
36
+ validateType(auditDates, AuditDatesModel);
37
+ this.auditData = auditData;
38
+ this.auditDates = auditDates;
39
+ }
40
+ }
41
+
42
+ class AuditEntityModel {
43
+ constructor(policyId, attributeName, status, value) {
44
+ this.contractorInsuranceId = policyId;
45
+ this.limitname = attributeName;
46
+ this.status = status;
47
+ this.value = value;
48
+ }
49
+ }
50
+
51
+ class AuditDatesModel {
52
+ constructor(contractorId, contractorDateModified, dateStartedAudit, contractorOverrideDateModified, contractCreateDate) {
53
+ this.contractorId = contractorId;
54
+ this.contractorDateModified = contractorDateModified;
55
+ this.dateStartedAudit = dateStartedAudit;
56
+ this.contractorOverrideDateModified = contractorOverrideDateModified;
57
+ this.contractCreateDate = contractCreateDate;
58
+ }
59
+ }
60
+
61
+ class AuditListParametersModel {
62
+ constructor(page, accountIds, { fromDate, toDate } = {}) {
63
+ validateInteger(page, { min: 1 });
64
+ validateArray(accountIds);
65
+
66
+ if (fromDate) {
67
+ validateDateString(fromDate);
68
+ }
69
+
70
+ if (toDate) {
71
+ validateDateString(toDate);
72
+ }
73
+
74
+ this.page = page;
75
+ this.filters = { accountIds, fromDate, toDate };
76
+ }
77
+ }
78
+
79
+ module.exports = {
80
+ AuditRequestModel,
81
+ AuditEntityModel,
82
+ AuditDatesModel,
83
+ AuditListParametersModel
84
+ };
@@ -1,45 +1,48 @@
1
- const DEFAULT_USER_ROLE = 'ICS';
2
-
3
- const WAIVE_ACTIONS = {
4
- WAIVE: 'ignored',
5
- RETRACT: 'notIgnored'
6
- };
7
-
8
- const WAIVER_REASONS = {
9
- BUSINESS_DECISION: 'Business_Decision',
10
- NO_EXPOSURE: 'No_Exposure',
11
- EXECUTIVE_APPROVAL: 'Executive_Approval'
12
- };
13
-
14
- function WaiveRequestModel({
15
- userId,
16
- contractorId,
17
- auditId,
18
- waiverReason,
19
- remarks = '',
20
- userRole = DEFAULT_USER_ROLE
21
- }) {
22
- this.auditorContractorId = auditId;
23
- this.contractorId = contractorId;
24
- this.userId = userId;
25
- this.waiverReason = waiverReason;
26
- this.remarks = remarks;
27
-
28
- this.userRole = userRole;
29
- this.status = WAIVE_ACTIONS.WAIVE;
30
- }
31
-
32
- function RetractRequestModel({ userId, contractorId, auditId, userRole = DEFAULT_USER_ROLE }) {
33
- this.auditorContractorId = auditId;
34
- this.contractorId = contractorId;
35
- this.userId = userId;
36
- this.userRole = userRole;
37
- this.status = WAIVE_ACTIONS.RETRACT;
38
- }
39
-
40
- module.exports = {
41
- WaiveRequestModel,
42
- RetractRequestModel,
43
- WAIVE_ACTIONS,
44
- WAIVER_REASONS
45
- };
1
+ const WAIVE_ACTIONS = {
2
+ WAIVE: 'ignored',
3
+ RETRACT: 'notIgnored'
4
+ };
5
+
6
+ const WAIVER_REASONS = {
7
+ BUSINESS_DECISION: 'Business_Decision',
8
+ NO_EXPOSURE: 'No_Exposure',
9
+ EXECUTIVE_APPROVAL: 'Executive_Approval'
10
+ };
11
+
12
+ function WaiveRequestModel({
13
+ contractorId,
14
+ auditId,
15
+ waiverReason,
16
+ remarks,
17
+ userId,
18
+ userRole
19
+ }) {
20
+ this.auditorContractorId = auditId;
21
+ this.contractorId = contractorId;
22
+ this.waiverReason = waiverReason;
23
+ this.remarks = remarks || '';
24
+
25
+ this.userId = userId,
26
+ this.userRole = userRole,
27
+ this.status = WAIVE_ACTIONS.WAIVE;
28
+ }
29
+
30
+ function RetractRequestModel({
31
+ contractorId,
32
+ auditId,
33
+ userId,
34
+ userRole
35
+ }) {
36
+ this.auditorContractorId = auditId;
37
+ this.contractorId = contractorId;
38
+ this.userId = userId;
39
+ this.userRole = userRole;
40
+ this.status = WAIVE_ACTIONS.RETRACT;
41
+ }
42
+
43
+ module.exports = {
44
+ WaiveRequestModel,
45
+ RetractRequestModel,
46
+ WAIVE_ACTIONS,
47
+ WAIVER_REASONS
48
+ };