You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
3.0 KiB
101 lines
3.0 KiB
'use strict';
|
|
|
|
async function getTask(ctx) {
|
|
try {
|
|
const models = ctx.fs.dc.models
|
|
const query = ctx.query
|
|
const whereopt = {
|
|
isdanger: query.isdanger
|
|
}
|
|
console.log('whereopt', whereopt)
|
|
const whereRoadOpt = {
|
|
id: query.id
|
|
}
|
|
console.log('wherwhereRoadOpteopt', whereRoadOpt)
|
|
|
|
const taskRes = await models.TaskManage.findAndCountAll({
|
|
order: [['id', 'DESC']],
|
|
attributes: ['id', 'dangerDescription', 'isdanger', 'issuanceTime', 'reportTime'],
|
|
include: [
|
|
{
|
|
attributes: ['routeName', 'routeCode'],
|
|
model: models.Road,
|
|
where: query.id == undefined ? {} : whereRoadOpt
|
|
|
|
},
|
|
{
|
|
attributes: ['name'],
|
|
model: models.User
|
|
}
|
|
],
|
|
where: query.isdanger == undefined ? {} : whereopt
|
|
})
|
|
ctx.body = taskRes
|
|
console.log('tas', taskRes)
|
|
ctx.status = 200
|
|
}
|
|
catch (error) {
|
|
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`);
|
|
ctx.status = 400;
|
|
ctx.body = {
|
|
message: '获取失败'
|
|
}
|
|
}
|
|
}
|
|
|
|
//删除任务
|
|
async function delTask(ctx) {
|
|
try {
|
|
const models = ctx.fs.dc.models
|
|
const { id } = ctx.params
|
|
console.log('params', id)
|
|
await models.TaskManage.destroy({ where: { id: id } })
|
|
ctx.status = 204
|
|
} catch (error) {
|
|
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`);
|
|
ctx.status = 400;
|
|
ctx.body = {
|
|
message: '删除失败'
|
|
}
|
|
}
|
|
|
|
}
|
|
//编辑任务
|
|
async function editTask(ctx) {
|
|
//const transaction = await ctx.fs.dc.orm.transaction();
|
|
try {
|
|
const models = ctx.fs.dc.models
|
|
const params = ctx.request.body
|
|
if (!params.id) {
|
|
|
|
const road = await models.Road.findOne({ where: { routeCode: params.routeCode } })
|
|
const user = await models.User.findOne({ where: { name: params.name } })
|
|
console.log('params', road.id, user.id)
|
|
await models.TaskManage.create({
|
|
roadid: road.id, userid: user.id, dangerDescription: params.dangerDescription.trim()
|
|
})
|
|
} else {
|
|
const road = await models.Road.findOne({ where: { routeCode: params.routeCode } })
|
|
const user = await models.User.findOne({ where: { name: params.name } })
|
|
await models.TaskManage.update({
|
|
roadid: road.id, userid: user.id, dangerDescription: params.dangerDescription.trim()
|
|
}, { where: { id: params.id } })
|
|
}
|
|
ctx.status = 204
|
|
//await transaction.commit();
|
|
} catch (error) {
|
|
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`);
|
|
ctx.status = 400;
|
|
ctx.body = {
|
|
message: '新增失败'
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
module.exports = {
|
|
getTask, delTask, editTask
|
|
};
|