Skip to content

Commit 0f0dabb

Browse files
committed
fix: 1. allow empty strings, 2. added new ratetype enum 'annual'
1 parent 9c43b15 commit 0f0dabb

File tree

3 files changed

+29
-25
lines changed

3 files changed

+29
-25
lines changed

src/bootstrap.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const allowedInterviewStatuses = _.values(Interview.Status)
99

1010
global.Promise = require('bluebird')
1111

12-
Joi.rateType = () => Joi.string().valid('hourly', 'daily', 'weekly', 'monthly')
12+
Joi.rateType = () => Joi.string().valid('hourly', 'daily', 'weekly', 'monthly','annual')
1313
Joi.jobStatus = () => Joi.string().valid('sourcing', 'in-review', 'assigned', 'closed', 'cancelled')
1414
Joi.resourceBookingStatus = () => Joi.string().valid('placed', 'closed', 'cancelled')
1515
Joi.jobCandidateStatus = () => Joi.string().valid('open', 'placed', 'selected', 'client rejected - screening', 'client rejected - interview', 'rejected - other', 'cancelled', 'interview', 'topcoder-rejected', 'applied', 'rejected-pre-screen', 'skills-test', 'skills-test', 'phone-screen', 'job-closed', 'offered')

src/services/JobCandidateProcessorService.js

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -86,27 +86,31 @@ async function processCreate (message, transactionId) {
8686
}
8787

8888
processCreate.schema = {
89-
message: Joi.object().keys({
90-
topic: Joi.string().required(),
91-
originator: Joi.string().required(),
92-
timestamp: Joi.date().required(),
93-
'mime-type': Joi.string().required(),
94-
payload: Joi.object().keys({
95-
id: Joi.string().uuid().required(),
96-
jobId: Joi.string().uuid().required(),
97-
userId: Joi.string().uuid().required(),
98-
createdAt: Joi.date().required(),
99-
createdBy: Joi.string().uuid().required(),
100-
updatedAt: Joi.date().allow(null),
101-
updatedBy: Joi.string().uuid().allow(null),
102-
status: Joi.jobCandidateStatus().required(),
103-
externalId: Joi.string().allow(null),
104-
resume: Joi.string().uri().allow(null),
105-
remark: Joi.string().allow(null)
106-
}).required()
107-
}).required(),
108-
transactionId: Joi.string().required()
109-
}
89+
message: Joi.object()
90+
.keys({
91+
topic: Joi.string().required(),
92+
originator: Joi.string().required(),
93+
timestamp: Joi.date().required(),
94+
"mime-type": Joi.string().required(),
95+
payload: Joi.object()
96+
.keys({
97+
id: Joi.string().uuid().required(),
98+
jobId: Joi.string().uuid().required(),
99+
userId: Joi.string().uuid().required(),
100+
createdAt: Joi.date().required(),
101+
createdBy: Joi.string().uuid().required(),
102+
updatedAt: Joi.date().allow(null),
103+
updatedBy: Joi.string().uuid().allow(null),
104+
status: Joi.jobCandidateStatus().required(),
105+
externalId: Joi.string().allow(null),
106+
resume: Joi.string().uri().allow(null).allow(''),
107+
remark: Joi.string().allow(null).allow('')
108+
})
109+
.required(),
110+
})
111+
.required(),
112+
transactionId: Joi.string().required(),
113+
};
110114

111115
/**
112116
* Process update entity message

src/services/JobProcessorService.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,9 +88,9 @@ processCreate.schema = {
8888
minSalary: Joi.number().integer().allow(null),
8989
maxSalary: Joi.number().integer().allow(null),
9090
hoursPerWeek: Joi.number().integer().allow(null),
91-
jobLocation: Joi.string().allow(null),
92-
jobTimezone: Joi.string().allow(null),
93-
currency: Joi.string().allow(null),
91+
jobLocation: Joi.string().allow(null).allow(''),
92+
jobTimezone: Joi.string().allow(null).allow(''),
93+
currency: Joi.string().allow(null).allow(''),
9494
roleIds: Joi.array().items(Joi.string().uuid().required()).allow(null)
9595
}).required()
9696
}).required(),

0 commit comments

Comments
 (0)