Include mod data in /workers/get-work
parent
c7828eed45
commit
bcd15e1046
|
@ -16,17 +16,22 @@ router.get("/get-work", function(req, res) {
|
||||||
limit: 1,
|
limit: 1,
|
||||||
where: {
|
where: {
|
||||||
workerId: null
|
workerId: null
|
||||||
}
|
},
|
||||||
|
include: [{
|
||||||
|
model: db.Mod,
|
||||||
|
include: [db.User]
|
||||||
|
}]
|
||||||
}).then(function(jobs) {
|
}).then(function(jobs) {
|
||||||
if (jobs && jobs.length == 1) {
|
if (jobs && jobs.length == 1) {
|
||||||
var job = jobs[0]
|
var job = jobs[0]
|
||||||
job.workerId = worker.id
|
// job.workerId = worker.id
|
||||||
job.save()
|
// job.save()
|
||||||
|
|
||||||
|
var mod = db.convertRowToMod(job.mod)
|
||||||
res.send({
|
res.send({
|
||||||
work: {
|
work: {
|
||||||
author: job.author,
|
type: job.work_type,
|
||||||
basename: job.basename,
|
mod: mod.toPlainDictionary()
|
||||||
type: job.work_type
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -43,12 +43,13 @@ var Worker = sequelize.define("worker", {
|
||||||
})
|
})
|
||||||
|
|
||||||
var Work = sequelize.define("work", {
|
var Work = sequelize.define("work", {
|
||||||
author: Sequelize.STRING(100),
|
|
||||||
basename: Sequelize.STRING(100),
|
|
||||||
work_type: Sequelize.ENUM("fetch", "scan", "forum")
|
work_type: Sequelize.ENUM("fetch", "scan", "forum")
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Mod.hasMany(Work)
|
||||||
|
Worker.hasMany(Worker)
|
||||||
Work.belongsTo(Worker)
|
Work.belongsTo(Worker)
|
||||||
|
Work.belongsTo(Mod)
|
||||||
|
|
||||||
const CMod = require("./../../common/mod")
|
const CMod = require("./../../common/mod")
|
||||||
function convertRowToMod(row) {
|
function convertRowToMod(row) {
|
||||||
|
@ -112,6 +113,8 @@ async.parallel([
|
||||||
approved: true
|
approved: true
|
||||||
}
|
}
|
||||||
}).then(function(mod) {
|
}).then(function(mod) {
|
||||||
|
mod = mod[0]
|
||||||
|
|
||||||
Worker.findOrCreate({
|
Worker.findOrCreate({
|
||||||
where: {
|
where: {
|
||||||
token: "foobar"
|
token: "foobar"
|
||||||
|
@ -122,10 +125,10 @@ async.parallel([
|
||||||
|
|
||||||
Work.findOrCreate({
|
Work.findOrCreate({
|
||||||
where: {
|
where: {
|
||||||
author: "rubenwardy",
|
modId: mod.id
|
||||||
basename: "awards",
|
|
||||||
},
|
},
|
||||||
defaults: {
|
defaults: {
|
||||||
|
mod: mod,
|
||||||
work_type: "fetch"
|
work_type: "fetch"
|
||||||
}
|
}
|
||||||
}).then(function(mod) {
|
}).then(function(mod) {
|
||||||
|
|
Loading…
Reference in New Issue