|
|
@ -1,33 +1,52 @@ |
|
|
|
'use strict'; |
|
|
|
|
|
|
|
async function findPatrolRecord(ctx, next) { |
|
|
|
async function findPatrolRecord (ctx, next) { |
|
|
|
let rslt = []; |
|
|
|
let error = { name: 'FindError', message: '获取巡检记录失败' }; |
|
|
|
try { |
|
|
|
const models = ctx.fs.dc.models; |
|
|
|
const { startTime, endTime, alarm, patrolPlanId, pointId } = ctx.params; |
|
|
|
// patrolPlanId传all查所有
|
|
|
|
let generalInclude = [{ |
|
|
|
model: models.PatrolPlan, |
|
|
|
attributes: ['name'] |
|
|
|
}] |
|
|
|
if (patrolPlanId == 'all') { |
|
|
|
/* 如果有startTime && endTime,查询所有符合条件的数据 */ |
|
|
|
if (startTime !== 'null' && endTime !== 'null') { |
|
|
|
if (pointId !== 'null') { |
|
|
|
if (alarm == 'null') { |
|
|
|
rslt = await models.PatrolRecord.findAll({ |
|
|
|
where: { inspectionTime: { $between: [startTime, endTime] }, pointId: { $in: pointId.split(',') } }, |
|
|
|
where: { |
|
|
|
inspectionTime: { $between: [startTime, endTime] }, |
|
|
|
pointId: { $in: pointId.split(',') } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} else { |
|
|
|
rslt = await models.PatrolRecord.findAll({ |
|
|
|
where: { alarm, inspectionTime: { $between: [startTime, endTime] }, pointId: { $in: pointId.split(',') } }, |
|
|
|
where: { |
|
|
|
alarm, |
|
|
|
inspectionTime: { $between: [startTime, endTime] }, |
|
|
|
pointId: { $in: pointId.split(',') } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (alarm == 'null') { |
|
|
|
rslt = await models.PatrolRecord.findAll({ |
|
|
|
where: { inspectionTime: { $between: [startTime, endTime] } }, |
|
|
|
where: { |
|
|
|
inspectionTime: { $between: [startTime, endTime] } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} else { |
|
|
|
rslt = await models.PatrolRecord.findAll({ |
|
|
|
where: { alarm, inspectionTime: { $between: [startTime, endTime] } }, |
|
|
|
where: { |
|
|
|
alarm, inspectionTime: { $between: [startTime, endTime] } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
@ -37,7 +56,9 @@ async function findPatrolRecord(ctx, next) { |
|
|
|
if (pointId !== 'null') { |
|
|
|
a = await models.PatrolRecord.findAll({ |
|
|
|
where: { pointId: { $in: pointId.split(',') } }, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
rslt = pointId.split(',').map(i => { |
|
|
|
return a.filter(t => t.pointId == i).sort((a, b) => b.id - a.id)[0] || null |
|
|
@ -47,11 +68,22 @@ async function findPatrolRecord(ctx, next) { |
|
|
|
if (startTime !== 'null' && endTime !== 'null') { |
|
|
|
if (pointId !== 'null') { |
|
|
|
rslt = await models.PatrolRecord.findAll({ |
|
|
|
where: { patrolPlanId: { $in: patrolPlanId.split(',') }, alarm, inspectionTime: { $between: [startTime, endTime] }, pointId: { $in: pointId.split(',') } }, |
|
|
|
where: { |
|
|
|
patrolPlanId: { $in: patrolPlanId.split(',') }, |
|
|
|
alarm, |
|
|
|
inspectionTime: { $between: [startTime, endTime] }, |
|
|
|
pointId: { $in: pointId.split(',') } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} else { |
|
|
|
rslt = await models.PatrolRecord.findAll({ |
|
|
|
where: { patrolPlanId: { $in: patrolPlanId.split(',') }, alarm, inspectionTime: { $between: [startTime, endTime] } }, |
|
|
|
where: { |
|
|
|
patrolPlanId: { $in: patrolPlanId.split(',') }, |
|
|
|
alarm, |
|
|
|
inspectionTime: { $between: [startTime, endTime] } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
@ -60,11 +92,18 @@ async function findPatrolRecord(ctx, next) { |
|
|
|
/* 如果没有startTime && endTime,查询每个点位最新一条符合条件的数据 */ |
|
|
|
if (pointId !== 'null') { |
|
|
|
a = await models.PatrolRecord.findAll({ |
|
|
|
where: { patrolPlanId: { $in: patrolPlanId.split(',') }, pointId: { $in: pointId.split(',') } }, |
|
|
|
where: { |
|
|
|
patrolPlanId: { $in: patrolPlanId.split(',') }, |
|
|
|
pointId: { $in: pointId.split(',') } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} else { |
|
|
|
a = await models.PatrolRecord.findAll({ |
|
|
|
where: { patrolPlanId: { $in: patrolPlanId.split(',') } }, |
|
|
|
where: { |
|
|
|
patrolPlanId: { $in: patrolPlanId.split(',') } |
|
|
|
}, |
|
|
|
include: generalInclude |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
@ -86,7 +125,7 @@ async function findPatrolRecord(ctx, next) { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
async function addPatrolRecord(ctx, next) { |
|
|
|
async function addPatrolRecord (ctx, next) { |
|
|
|
let error = { name: 'addError', message: '新增巡检记录失败' }; |
|
|
|
try { |
|
|
|
const models = ctx.fs.dc.models; |
|
|
|