Skip to content

Commit 35c1f85

Browse files
weeklypayment added
1 parent 27c346a commit 35c1f85

File tree

1 file changed

+25
-2
lines changed

1 file changed

+25
-2
lines changed

src/services/JobService.js

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,9 @@ async function searchJobs (currentUser, criteria, options = { returnAll: false }
465465
'rateType',
466466
'workload',
467467
'title',
468-
'status'
468+
'status',
469+
'minSalary',
470+
'maxSalary'
469471
]), (value, key) => {
470472
let must
471473
if (key === 'description' || key === 'title') {
@@ -482,6 +484,15 @@ async function searchJobs (currentUser, criteria, options = { returnAll: false }
482484
[`${key}s`]: [value]
483485
}
484486
}
487+
} else if (key === 'minSalary' || key === 'maxSalary') {
488+
const salaryOp = key === 'minSalary' ? 'gte' : 'lte'
489+
must = {
490+
range: {
491+
[key]: {
492+
[salaryOp]: value
493+
}
494+
}
495+
}
485496
} else {
486497
must = {
487498
term: {
@@ -568,6 +579,16 @@ async function searchJobs (currentUser, criteria, options = { returnAll: false }
568579
if (criteria.jobIds && criteria.jobIds.length > 0) {
569580
filter[Op.and].push({ id: criteria.jobIds })
570581
}
582+
if (criteria.minSalary !== undefined) {
583+
filter.minSalary = {
584+
[Op.gte]: criteria.minSalary
585+
}
586+
}
587+
if (criteria.maxSalary !== undefined) {
588+
filter.maxSalary = {
589+
[Op.lte]: criteria.maxSalary
590+
}
591+
}
571592
const jobs = await Job.findAll({
572593
where: filter,
573594
offset: ((page - 1) * perPage),
@@ -609,7 +630,9 @@ searchJobs.schema = Joi.object().keys({
609630
workload: Joi.workload(),
610631
status: Joi.jobStatus(),
611632
projectIds: Joi.array().items(Joi.number().integer()).single(),
612-
jobIds: Joi.array().items(Joi.string().uuid())
633+
jobIds: Joi.array().items(Joi.string().uuid()),
634+
minSalary: Joi.number().integer(),
635+
maxSalary: Joi.number().integer()
613636
}).required(),
614637
options: Joi.object()
615638
}).required()

0 commit comments

Comments
 (0)