巴林闲侠
2 years ago
11343 changed files with 1456450 additions and 4094 deletions
@ -1,71 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
/** |
|||
* 提交审批、驳回修改 |
|||
* body { |
|||
* action:1驳回修改 2审批通过 |
|||
* userRegionType:提交用户所属区域级别:3乡镇级,2区县级 |
|||
* userId:提交用户id |
|||
* rejectReasons:驳回意见 |
|||
* correctiveAction:采取措施。区县复核时提交内容 |
|||
* punishment:实施处罚,强制措施情况。区县复核时提交内容 |
|||
* } |
|||
*/ |
|||
const moment = require('moment'); |
|||
async function submitApproval (ctx) { |
|||
try { |
|||
const data = ctx.request.body; |
|||
const models = ctx.fs.dc.models; |
|||
let oldData = await models.UserPlaceSecurityRecord.findOne({ where: { id: data.id } }) |
|||
if (oldData == null) { |
|||
ctx.status = 400; |
|||
ctx.body = { name: `message`, message: `该条填报数据不存在` }; |
|||
} else { |
|||
if ((data.action == 1 || data.action == 2) && (data.userRegionType == 3 || data.userRegionType == 2)) { |
|||
let dataSave = {} |
|||
if (data.action == 1) {//驳回
|
|||
dataSave = { |
|||
rejectManId: data.userId, |
|||
rejectReasons: data.rejectReasons, |
|||
type: false,//是否重新发起true默认false可以重新发起
|
|||
rejectTime: moment() |
|||
} |
|||
if (data.userRegionType == 2) {//区县复核,14、15项可修改
|
|||
dataSave.correctiveAction = data.correctiveAction; |
|||
dataSave.punishment = data.punishment; |
|||
} |
|||
} else {//通过
|
|||
if (data.userRegionType == 3) { |
|||
dataSave = { |
|||
audit1ManId: data.userId, |
|||
audit1ManIdTime: moment().format() |
|||
} |
|||
} else { |
|||
dataSave = {//区县复核,14、15项可修改
|
|||
correctiveAction: data.correctiveAction, |
|||
punishment: data.punishment, |
|||
audit2ManId: data.userId, |
|||
audit2ManIdTime: moment().format() |
|||
} |
|||
} |
|||
} |
|||
await models.UserPlaceSecurityRecord.update(dataSave, { where: { id: data.id } }); |
|||
ctx.status = 200; |
|||
ctx.body = { name: `message`, message: `提交成功` }; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { name: `message`, message: `提交数据有误` }; |
|||
} |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": { name: `message`, message: `提交审批、驳回修改数据失败` } |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
submitApproval |
|||
}; |
@ -1,116 +0,0 @@ |
|||
|
|||
function deepCompare(x, y) { |
|||
var i, l, leftChain, rightChain; |
|||
|
|||
function compare2Objects(x, y) { |
|||
var p; |
|||
|
|||
// remember that NaN === NaN returns false
|
|||
// and isNaN(undefined) returns true
|
|||
if (isNaN(x) && isNaN(y) && typeof x === 'number' && typeof y === 'number') { |
|||
return true; |
|||
} |
|||
|
|||
// Compare primitives and functions.
|
|||
// Check if both arguments link to the same object.
|
|||
// Especially useful on the step where we compare prototypes
|
|||
if (x === y) { |
|||
return true; |
|||
} |
|||
|
|||
// Works in case when functions are created in constructor.
|
|||
// Comparing dates is a common scenario. Another built-ins?
|
|||
// We can even handle functions passed across iframes
|
|||
if ((typeof x === 'function' && typeof y === 'function') || |
|||
(x instanceof Date && y instanceof Date) || |
|||
(x instanceof RegExp && y instanceof RegExp) || |
|||
(x instanceof String && y instanceof String) || |
|||
(x instanceof Number && y instanceof Number)) { |
|||
return x.toString() === y.toString(); |
|||
} |
|||
|
|||
// At last checking prototypes as good as we can
|
|||
if (!(x instanceof Object && y instanceof Object)) { |
|||
return false; |
|||
} |
|||
|
|||
if (x.isPrototypeOf(y) || y.isPrototypeOf(x)) { |
|||
return false; |
|||
} |
|||
|
|||
if (x.constructor !== y.constructor) { |
|||
return false; |
|||
} |
|||
|
|||
if (x.prototype !== y.prototype) { |
|||
return false; |
|||
} |
|||
|
|||
// Check for infinitive linking loops
|
|||
if (leftChain.indexOf(x) > -1 || rightChain.indexOf(y) > -1) { |
|||
return false; |
|||
} |
|||
|
|||
// Quick checking of one object being a subset of another.
|
|||
// todo: cache the structure of arguments[0] for performance
|
|||
for (p in y) { |
|||
if (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) { |
|||
return false; |
|||
} else if (typeof y[p] !== typeof x[p]) { |
|||
return false; |
|||
} |
|||
} |
|||
|
|||
for (p in x) { |
|||
if (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) { |
|||
return false; |
|||
} else if (typeof y[p] !== typeof x[p]) { |
|||
return false; |
|||
} |
|||
|
|||
switch (typeof (x[p])) { |
|||
case 'object': |
|||
case 'function': |
|||
|
|||
leftChain.push(x); |
|||
rightChain.push(y); |
|||
|
|||
if (!compare2Objects(x[p], y[p])) { |
|||
return false; |
|||
} |
|||
|
|||
leftChain.pop(); |
|||
rightChain.pop(); |
|||
break; |
|||
|
|||
default: |
|||
if (x[p] !== y[p]) { |
|||
return false; |
|||
} |
|||
break; |
|||
} |
|||
} |
|||
|
|||
return true; |
|||
} |
|||
|
|||
if (arguments.length < 1) { |
|||
return true; //Die silently? Don't know how to handle such case, please help...
|
|||
// throw "Need two or more arguments to compare";
|
|||
} |
|||
|
|||
for (i = 1, l = arguments.length; i < l; i++) { |
|||
|
|||
leftChain = []; //Todo: this can be cached
|
|||
rightChain = []; |
|||
|
|||
if (!compare2Objects(arguments[0], arguments[i])) { |
|||
return false; |
|||
} |
|||
} |
|||
|
|||
return true; |
|||
} |
|||
module.exports = { |
|||
deepCompare |
|||
} |
@ -1,63 +0,0 @@ |
|||
//获取固化数据接口
|
|||
async function getDataDictionary(ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { model } = ctx.params; |
|||
const { where, attributes, order } = ctx.query; |
|||
let findObj = {}; |
|||
if (where) { |
|||
let whereJson = JSON.parse(where); |
|||
findObj.where = whereJson; |
|||
} |
|||
if (order) { |
|||
findObj.order = [JSON.parse(order)]; |
|||
} |
|||
if (attributes) { |
|||
attributes = attributes.split(','); |
|||
} |
|||
let rslt = await models[model].findAll(findObj); |
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取数据字典失败" |
|||
} |
|||
} |
|||
} |
|||
//基础修改接口
|
|||
async function putDataDictionary(ctx) { |
|||
const transaction = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
let errMsg = "修改失败"; |
|||
|
|||
const { model } = ctx.params; |
|||
const { where, dataToSave } = ctx.request.body; |
|||
|
|||
const oldData = await models[model].findOne({ where: where }); |
|||
if (oldData) { |
|||
await models[model].update(dataToSave, { where: where, transaction }); |
|||
} else { |
|||
errMsg = "未找到需要修改的数据"; |
|||
ctx.throw(400) |
|||
} |
|||
ctx.status = 204; |
|||
await transaction.commit(); |
|||
} catch (error) { |
|||
await transaction.rollback(); |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": errMsg |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
getDataDictionary, |
|||
putDataDictionary |
|||
}; |
@ -0,0 +1,72 @@ |
|||
'use strict'; |
|||
|
|||
async function get (ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
const vehicleRes = await models.Vehicle.findAll() |
|||
|
|||
ctx.status = 200; |
|||
ctx.body = vehicleRes |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
message: typeof error == 'string' ? error : undefined |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function edit (ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { vehicleId, name, count } = ctx.request.body; |
|||
|
|||
if (!vehicleId) { |
|||
const vehicleRes = await models.Vehicle.create({ |
|||
name, count |
|||
}) |
|||
} else { |
|||
const vehicleRes = await models.Vehicle.update({ |
|||
name, count |
|||
}, { |
|||
where: { |
|||
id: vehicleId |
|||
} |
|||
}) |
|||
} |
|||
|
|||
ctx.status = 204 |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
message: typeof error == 'string' ? error : undefined |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function del (ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { vehicleId } = ctx.params; |
|||
|
|||
const vehicleRes = await models.Vehicle.destroy({ |
|||
where: { |
|||
id: vehicleId |
|||
} |
|||
}) |
|||
|
|||
ctx.status = 204 |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
message: typeof error == 'string' ? error : undefined |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
get, edit, del, |
|||
}; |
@ -1,25 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
//获取南昌市下所有区县
|
|||
async function getCountiesList(ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
let rslt = await models.Department.findAll({ |
|||
where: { type: 2 }, |
|||
order: [['id', 'asc']], |
|||
}); |
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取南昌市下所有区县失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
getCountiesList, |
|||
}; |
@ -1,87 +0,0 @@ |
|||
async function getResource(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
const res = await models.Resource.findAll({ |
|||
where: { parentResource: null }, |
|||
include: [{ |
|||
model: models.Resource, |
|||
}] |
|||
}) |
|||
|
|||
ctx.body = res; |
|||
ctx.status = 200; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "查询所有权限数据失败" |
|||
} |
|||
} |
|||
} |
|||
async function getUserResource(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { userId } = ctx.query; |
|||
|
|||
const res = await models.UserResource.findAll({ |
|||
where: { userId: userId }, |
|||
include: [{ |
|||
model: models.Resource, |
|||
}] |
|||
}) |
|||
|
|||
ctx.body = res; |
|||
ctx.status = 200; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "查询用户权限数据失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function updateUserRes(ctx, next) { |
|||
const transaction = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { userId, resCode } = ctx.request.body; |
|||
|
|||
const res = await models.UserResource.findAll({ |
|||
attributes: ["resourceId"], |
|||
raw: true, |
|||
where: { userId: userId } |
|||
}) |
|||
|
|||
const addRes = resCode.filter(r => !res.some(rr => rr.resourceId == r)).map(r => { return { userId: userId, resourceId: r } }); |
|||
const delRes = res.filter(r => !resCode.includes(r.resourceId)).map(r => r.resourceId); |
|||
addRes.length && await models.UserResource.bulkCreate(addRes, { transaction: transaction }); |
|||
delRes.length && await models.UserResource.destroy({ |
|||
where: { |
|||
resourceId: { $in: delRes }, |
|||
userId: userId |
|||
}, |
|||
transaction: transaction |
|||
}) |
|||
|
|||
ctx.status = 204; |
|||
await transaction.commit(); |
|||
|
|||
} catch (error) { |
|||
await transaction.rollback(); |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "更新用户权限数据失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
getResource, |
|||
getUserResource, |
|||
updateUserRes |
|||
}; |
@ -0,0 +1,152 @@ |
|||
'use strict'; |
|||
|
|||
async function getdep (ctx) { |
|||
try { |
|||
const { fs: { api: { userInfo } } } = ctx |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
let depLevel0 = await models.Department.findAll({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
// id: userInfo.departmentId
|
|||
dependence: null, |
|||
delete: false |
|||
}, |
|||
}) |
|||
|
|||
let depRslt = [] |
|||
const getDep = async (d) => { |
|||
let subordinate = [] |
|||
let depRes = await models.Department.findAll({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
dependence: d.id, |
|||
delete: false |
|||
}, |
|||
}) |
|||
if (depRes.length) |
|||
for (let d of depRes) { |
|||
let dep = d.dataValues |
|||
dep.subordinate = await getDep(d.dataValues) |
|||
subordinate.push(dep) |
|||
} |
|||
return subordinate |
|||
} |
|||
for (let d of depLevel0) { |
|||
let dep0 = d.dataValues |
|||
dep0.subordinate = await getDep(d.dataValues) |
|||
depRslt.push(dep0) |
|||
} |
|||
|
|||
ctx.status = 200; |
|||
ctx.body = depRslt |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = {} |
|||
} |
|||
} |
|||
|
|||
async function editDep (ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { depId, name, dependence } = ctx.request.body; |
|||
if (dependence) { |
|||
let dep = await models.Department.findOne({ |
|||
where: { |
|||
id: dependence, |
|||
delete: false |
|||
}, |
|||
}) |
|||
if (!dep) { |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "上级部门不存在" |
|||
} |
|||
return |
|||
} |
|||
} |
|||
if (depId) { |
|||
await models.Department.update({ |
|||
name: name, |
|||
dependence: dependence || null, |
|||
}, { |
|||
where: { |
|||
id: depId |
|||
} |
|||
}) |
|||
} else { |
|||
await models.Department.create({ |
|||
name: name, |
|||
dependence: dependence || null, |
|||
}) |
|||
} |
|||
ctx.status = 204; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = {} |
|||
} |
|||
} |
|||
|
|||
async function delDep (ctx) { |
|||
const transaction = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { depId } = ctx.params; |
|||
|
|||
let depIds = [] |
|||
let depLevel0 = await models.Department.findAll({ |
|||
where: { |
|||
id: depId |
|||
}, |
|||
}) |
|||
|
|||
const getDep = async (d) => { |
|||
let depRes = await models.Department.findAll({ |
|||
where: { |
|||
dependence: d.id, |
|||
delete: false |
|||
}, |
|||
}) |
|||
if (depRes.length) |
|||
for (let d of depRes) { |
|||
depIds.push(d.dataValues.id) |
|||
await getDep(d.dataValues) |
|||
} |
|||
} |
|||
for (let d of depLevel0) { |
|||
depIds.push(d.id) |
|||
getDep(d.dataValues) |
|||
} |
|||
|
|||
await models.Department.update({ |
|||
delete: true, |
|||
}, { |
|||
where: { |
|||
id: { $in: depId }, |
|||
}, |
|||
transaction |
|||
}) |
|||
await models.User.update({ |
|||
delete: true, |
|||
}, { |
|||
where: { |
|||
departmentId: { $in: depId }, |
|||
}, |
|||
transaction |
|||
}) |
|||
|
|||
await transaction.commit(); |
|||
ctx.status = 204; |
|||
} catch (error) { |
|||
await transaction.rollback(); |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = {} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
getdep, editDep, delDep, |
|||
}; |
@ -1,612 +0,0 @@ |
|||
'use strict'; |
|||
const moment = require('moment'); |
|||
|
|||
/** |
|||
* 提交填报信息/保存填报草稿 |
|||
* @requires.body { |
|||
* isDraft-是否草稿 |
|||
* userId-用户id,填报人 |
|||
* placeName-场所id |
|||
* placeType-场所性质 |
|||
* regionId-所属县/区 |
|||
* address-场所地址 |
|||
* placeOwner-场所负责人 |
|||
* phone-负责人手机号 |
|||
* dimension-面积 |
|||
* floors-多少层 |
|||
* numberOfPeople-常住人数 |
|||
* location-经纬度 |
|||
* isEnable-是否为合用场所 |
|||
* localtionDescribe-经纬度定位描述 |
|||
* hiddenDangerItem12-12项隐患信息,格式:[{ |
|||
* itemIndex-隐患项序号, |
|||
* value-是否存在隐患, |
|||
* description-隐患具体信息描述, |
|||
* photos-隐患图片(多张图片以 , 隔开)" |
|||
* }], |
|||
* description-存在具体问题描述 |
|||
* correctiveAction-采取整改措施 |
|||
* punishment-实施处罚,强制措施情况 |
|||
* } ctx |
|||
*/ |
|||
async function addPlaceSecurityRecord (ctx, next) { |
|||
const transaction = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const body = ctx.request.body; |
|||
let ifRightRegion = true; |
|||
if (body.regionId) { |
|||
//判断填报信息所属乡镇/区县是否存在
|
|||
let region = await models.Department.findOne({ where: { id: body.regionId } }); |
|||
if (!region) { |
|||
ifRightRegion = false; |
|||
} |
|||
} |
|||
if (ifRightRegion) { |
|||
let placeId = null; |
|||
if (body.placeName) { |
|||
//判断“场所名称”是否存在,不存在则“新建场所”
|
|||
let place = await models.Places.findOne({ where: { name: body.placeName, userId: ctx.fs.api.userId } }); |
|||
if (place) { |
|||
placeId = place.id |
|||
} else { |
|||
const newPlace = await models.Places.create({ |
|||
name: body.placeName, |
|||
userId: ctx.fs.api.userId |
|||
}, { transaction: transaction }); |
|||
placeId = newPlace.id; |
|||
} |
|||
} |
|||
//创建填报信息/填报草稿
|
|||
const userPlaceSecurityRecord = await models.UserPlaceSecurityRecord.create({ |
|||
isDraft: body.isDraft,//是否草稿
|
|||
userId: ctx.fs.api.userId,//用户id,填报人
|
|||
time: moment(),//录入时间
|
|||
placeId: placeId,//场所id
|
|||
placeType: body.placeType,//场所性质
|
|||
regionId: body.regionId,//所属县/区
|
|||
address: body.address,//场所地址
|
|||
placeOwner: body.placeOwner,//场所负责人
|
|||
phone: body.phone,//负责人手机号
|
|||
dimension: body.dimension,//面积
|
|||
floors: body.floors,//多少层
|
|||
numberOfPeople: body.numberOfPeople,//常住人数
|
|||
location: body.location,//经纬度
|
|||
isEnable: body.isEnable,//是否为合用场所
|
|||
localtionDescribe: body.localtionDescribe,//经纬度定位描述
|
|||
hiddenDangerItem12: body.hiddenDangerItem12,//12项隐患信息
|
|||
description: body.description,//存在具体问题描述
|
|||
correctiveAction: body.correctiveAction,//采取措施
|
|||
type: true,//是否重新发起true默认false可以重新发起
|
|||
punishment: body.punishment,//实施处罚,强制措施情况
|
|||
departmentId: body.departmentId |
|||
}, { transaction: transaction }); |
|||
ctx.body = { |
|||
id: userPlaceSecurityRecord.id, |
|||
"message": "新增填报信息成功" |
|||
}; |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "所选地址不存在!" |
|||
} |
|||
} |
|||
await transaction.commit(); |
|||
} catch (error) { |
|||
await transaction.rollback(); |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "新增填报信息失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 编辑填报信息 |
|||
* @param {id-填报信息ID} ctx |
|||
* @requires.body { |
|||
* isDraft-是否草稿 |
|||
* userId-用户id,填报人 |
|||
* placeName-场所id |
|||
* placeType-场所性质 |
|||
* regionId-所属县/区 |
|||
* address-场所地址 |
|||
* placeOwner-场所负责人 |
|||
* phone-负责人手机号 |
|||
* dimension-面积 |
|||
* floors-多少层 |
|||
* numberOfPeople-常住人数 |
|||
* location-经纬度 |
|||
* isEnable-是否为合用场所 |
|||
* localtionDescribe-经纬度定位描述 |
|||
* hiddenDangerItem12-12项隐患信息,格式:[{ |
|||
* itemIndex-隐患项序号, |
|||
* value-是否存在隐患, |
|||
* description-隐患具体信息描述, |
|||
* photos-隐患图片(多张图片以 , 隔开)" |
|||
* }], |
|||
* description-存在具体问题描述 |
|||
* correctiveAction-采取整改措施 |
|||
* punishment-实施处罚,强制措施情况 |
|||
* } ctx |
|||
*/ |
|||
async function editPlaceSecurityRecord (ctx, next) { |
|||
const transaction = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { id } = ctx.params; |
|||
//判断该填报信息是否存在
|
|||
let userPlaceSecurityRecord = await models.UserPlaceSecurityRecord.findOne({ where: { id: id } }); |
|||
if (userPlaceSecurityRecord) { |
|||
const body = ctx.request.body; |
|||
let ifRightRegion = true; |
|||
if (body.regionId) { |
|||
//判断填报信息所属乡镇/区县是否存在
|
|||
let region = await models.Department.findOne({ where: { id: body.regionId } }); |
|||
if (!region) { |
|||
ifRightRegion = false; |
|||
} |
|||
} |
|||
if (ifRightRegion) { |
|||
let placeId = null; |
|||
if (body.placeName) { |
|||
//判断“场所名称”是否存在,不存在则“新建场所”
|
|||
let place = await models.Places.findOne({ where: { name: body.placeName, userId: ctx.fs.api.userId } }); |
|||
if (place) { |
|||
placeId = place.id |
|||
} else { |
|||
const newPlace = await models.Places.create({ |
|||
name: body.placeName, |
|||
userId: ctx.fs.api.userId |
|||
}, { transaction: transaction }); |
|||
placeId = newPlace.id; |
|||
} |
|||
} |
|||
//修改填报信息
|
|||
await models.UserPlaceSecurityRecord.update({ |
|||
isDraft: body.isDraft,//是否草稿
|
|||
userId: ctx.fs.api.userId,//用户id,填报人
|
|||
time: moment(),//录入时间
|
|||
placeId: placeId,//场所id
|
|||
placeType: body.placeType,//场所性质
|
|||
regionId: body.regionId,//所属县/区
|
|||
address: body.address,//场所地址
|
|||
placeOwner: body.placeOwner,//场所负责人
|
|||
phone: body.phone,//负责人手机号
|
|||
dimension: body.dimension,//面积
|
|||
floors: body.floors,//多少层
|
|||
numberOfPeople: body.numberOfPeople,//常住人数
|
|||
location: body.location,//经纬度
|
|||
isEnable: body.isEnable,//是否为合用场所
|
|||
localtionDescribe: body.localtionDescribe,//经纬度定位描述
|
|||
hiddenDangerItem12: body.hiddenDangerItem12,//12项隐患信息
|
|||
description: body.description,//存在具体问题描述
|
|||
correctiveAction: body.correctiveAction,//采取措施
|
|||
punishment: body.punishment,//实施处罚,强制措施情况
|
|||
departmentId: body.departmentId |
|||
}, { where: { id: id, }, transaction: transaction }); |
|||
ctx.body = { "message": "修改填报信息成功" }; |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "所选地址不存在!" } |
|||
} |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "该填报信息不存在!" } |
|||
} |
|||
await transaction.commit(); |
|||
} catch (error) { |
|||
await transaction.rollback(); |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "修改填报信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 修改type字段 |
|||
* @param {*} ctx |
|||
* @param {*} next |
|||
*/ |
|||
async function updateType (ctx, next) { |
|||
const models = ctx.fs.dc.models; |
|||
const { id } = ctx.params; |
|||
try { |
|||
await models.UserPlaceSecurityRecord.update({ |
|||
type: true,//是否重新发起true默认false可以重新发起
|
|||
}, { where: { id: id, } }) |
|||
ctx.body = { "message": "修改信息成功" }; |
|||
ctx.status = 200; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "修改信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 删除填报信息 |
|||
* @param {id-填报信息ID} ctx |
|||
*/ |
|||
async function deletePlaceSecurityRecord (ctx, next) { |
|||
const transaction = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { id } = ctx.params; |
|||
//判断该填报信息是否存在
|
|||
let userPlaceSecurityRecord = await models.UserPlaceSecurityRecord.findOne({ where: { id: id } }); |
|||
if (userPlaceSecurityRecord) { |
|||
await models.UserPlaceSecurityRecord.destroy({ where: { id: id }, transaction: transaction }); |
|||
ctx.body = { "message": "删除填报信息成功" }; |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "该填报信息不存在!" } |
|||
} |
|||
await transaction.commit(); |
|||
} catch (error) { |
|||
await transaction.rollback(); |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "删除填报信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据填报信息ID查询填报信息 |
|||
* @param {id-填报信息ID} ctx |
|||
*/ |
|||
async function getPlaceSecurityRecordById (ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { id } = ctx.params; |
|||
//判断该填报信息是否存在
|
|||
let userPlaceSecurityRecord = await models.UserPlaceSecurityRecord.findOne({ where: { id: id } }); |
|||
if (userPlaceSecurityRecord) { |
|||
let userPlaceSecurityRecord = await models.UserPlaceSecurityRecord.findOne({ |
|||
where: { id: id }, |
|||
include: [{ |
|||
model: models.Places, |
|||
}, { |
|||
model: models.User, |
|||
as: 'user', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'audit1ManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'audit2ManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'rejectManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}] |
|||
}); |
|||
ctx.body = userPlaceSecurityRecord; |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "该填报信息不存在!" } |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "查询填报信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据场所ID获取该场所最近用户填报信息 |
|||
* @param {placeId-场所信息ID} ctx |
|||
*/ |
|||
async function getRecentlyPlaceSecurityRecordByPlaceId (ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { placeId } = ctx.params; |
|||
//判断该场所信息是否存在
|
|||
let place = await models.Places.findOne({ where: { id: placeId } }); |
|||
if (place) { |
|||
let userPlaceSecurityRecord = await models.UserPlaceSecurityRecord.findAll({ |
|||
where: { placeId: placeId, userId: place.userId }, |
|||
include: [{ |
|||
model: models.Places, |
|||
}], |
|||
limit: 1, |
|||
order: [["id", "desc"]], |
|||
}); |
|||
ctx.status = 200; |
|||
ctx.body = userPlaceSecurityRecord.length ? userPlaceSecurityRecord[0] : null; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "该场所不存在!" } |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "获取场所最近用户填报信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据筛选条件获取用户填报信息 |
|||
* @query { |
|||
* isDraft-是否草稿 |
|||
* userId-用户ID |
|||
* timeRange-录入时间范围 |
|||
* regionId-区域ID |
|||
* placeId-场所ID |
|||
* state-审批状态 |
|||
* pageIndex-页码 |
|||
* pageSize-页宽 |
|||
* } ctx |
|||
*/ |
|||
async function getPlaceSecurityRecords (ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { isDraft, userId, timeRange, regionId, placeId, state, pageIndex, pageSize } = ctx.query; |
|||
let whereCondition = {}; |
|||
if (userId) { |
|||
let user = await models.User.findOne({ where: { id: userId } }); |
|||
if (user) { |
|||
whereCondition.userId = userId; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "用户不存在!" } |
|||
return; |
|||
} |
|||
} |
|||
if (regionId) { |
|||
let region = await models.Department.findOne({ where: { id: regionId } }); |
|||
if (region) { |
|||
whereCondition.regionId = regionId; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "区域不存在!" } |
|||
return; |
|||
} |
|||
} |
|||
if (placeId) { |
|||
let place = await models.Places.findOne({ where: { id: placeId } }); |
|||
if (place) { |
|||
whereCondition.placeId = placeId; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "场所不存在!" }; |
|||
return; |
|||
} |
|||
} |
|||
if (isDraft) { whereCondition.isDraft = isDraft; } |
|||
let times = timeRange; |
|||
if (timeRange && timeRange.indexOf(',')) { times = timeRange.split(',') } |
|||
if (times && times.length > 0) { |
|||
const len = times.length; |
|||
whereCondition.time = { |
|||
$between: [ |
|||
moment(times[0]).startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
moment(times[len - 1]).endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
}; |
|||
} |
|||
switch (Number(state)) { |
|||
case 1: //待审批:未审核 或者 已审核+未复核
|
|||
whereCondition.$or = [ |
|||
{ '$audit1ManId$': null }, |
|||
{ '$audit2ManId$': null } |
|||
]; |
|||
whereCondition.rejectManId = null; |
|||
break; |
|||
case 2://已审批:已审批+已复核
|
|||
whereCondition.audit1ManId = { $not: null }; |
|||
whereCondition.audit2ManId = { $not: null }; |
|||
break; |
|||
case 3: //驳回
|
|||
whereCondition.rejectManId = { $not: null }; |
|||
break; |
|||
default: break; |
|||
} |
|||
let findObj = { |
|||
where: whereCondition, |
|||
order: [["id", "desc"]], |
|||
include: [{ |
|||
model: models.Places, |
|||
}, { |
|||
model: models.User, |
|||
as: 'user', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'audit1ManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'audit2ManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'rejectManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}] |
|||
}; |
|||
if (Number(pageSize) > 0 && Number(pageIndex) >= 0) { |
|||
findObj.limit = Number(pageSize); |
|||
findObj.offset = Number(pageIndex) * Number(pageSize); |
|||
} |
|||
let userPlaceSecurityRecords = await models.UserPlaceSecurityRecord.findAndCountAll(findObj); |
|||
ctx.status = 200; |
|||
ctx.body = userPlaceSecurityRecords; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "获取用户填报信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据筛选条件获取用户审批填报信息 |
|||
* @query { |
|||
* approveUserId-审批人ID |
|||
* timeRange-录入时间范围 |
|||
* regionId-区域ID |
|||
* placeId-场所ID |
|||
* state-审批状态 |
|||
* pageIndex-页码 |
|||
* pageSize-页宽 |
|||
* } ctx |
|||
*/ |
|||
async function getApprovePlaceSecurityRecords (ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { approveUserId, timeRange, regionId, placeId, state, pageIndex, pageSize } = ctx.query; |
|||
let whereCondition = { isDraft: false }; |
|||
if (approveUserId) { |
|||
let approveUser = await models.User.findOne({ where: { id: approveUserId } }); |
|||
if (approveUser) { |
|||
//获取审批人管辖区域内所有用户ID(注:市级人员查看所有用户数据)
|
|||
const departmentRes = await models.Department.findOne({ where: { id: approveUser.departmentId } }); |
|||
if (departmentRes.dependence) { |
|||
let attentionRegionIds = [departmentRes.id]; |
|||
let regionType = departmentRes.type; |
|||
while (attentionRegionIds.length && regionType && regionType < 4) { |
|||
const departmentChilds = await models.Department.findAll({ where: { dependence: { $in: attentionRegionIds } } }); |
|||
regionType = departmentChilds.length ? departmentChilds[0].type : null; |
|||
attentionRegionIds = departmentChilds.map(d => d.id); |
|||
} |
|||
let users = await models.User.findAll({ where: { departmentId: { $in: attentionRegionIds } }, attributes: ['id'] }); |
|||
if (users.length) { |
|||
let userIds = users.map(u => u.id); |
|||
whereCondition.userId = { $in: userIds }; |
|||
} else { |
|||
ctx.status = 200; |
|||
ctx.body = { |
|||
"count": 0, |
|||
"rows": [] |
|||
} |
|||
return; |
|||
} |
|||
} |
|||
if (regionId) { |
|||
let region = await models.Department.findOne({ where: { id: regionId } }); |
|||
if (region) { |
|||
whereCondition.regionId = regionId; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "区域不存在!" } |
|||
return; |
|||
} |
|||
} |
|||
if (placeId) { |
|||
let place = await models.Places.findOne({ where: { id: placeId } }); |
|||
if (place) { |
|||
whereCondition.placeId = placeId; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "场所不存在!" }; |
|||
return; |
|||
} |
|||
} |
|||
let times = timeRange; |
|||
if (timeRange && timeRange.indexOf(',')) { times = timeRange.split(',') } |
|||
if (times && times.length > 0) { |
|||
const len = times.length; |
|||
whereCondition.time = { |
|||
$between: [ |
|||
moment(times[0]).startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
moment(times[len - 1]).endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
}; |
|||
} |
|||
switch (Number(state)) { |
|||
case 1: //待审批
|
|||
if (departmentRes.type == 2) { |
|||
//区县待审:已审核+未复核
|
|||
whereCondition.audit1ManId = { $not: null }; |
|||
whereCondition.audit2ManId = null; |
|||
} else { |
|||
//乡镇待审:未审核+未复核
|
|||
whereCondition.audit1ManId = null; |
|||
whereCondition.audit2ManId = null; |
|||
} |
|||
whereCondition.rejectManId = null; |
|||
break; |
|||
case 2://已审批:
|
|||
if (departmentRes.type == 3) { |
|||
//乡镇已审:已审核
|
|||
whereCondition.audit1ManId = { $not: null }; |
|||
} else { |
|||
//区域已审:已审批+已复核
|
|||
whereCondition.audit1ManId = { $not: null }; |
|||
whereCondition.audit2ManId = { $not: null }; |
|||
} |
|||
whereCondition.rejectManId = null; |
|||
break; |
|||
case 3: //驳回
|
|||
whereCondition.rejectManId = { $not: null }; |
|||
break; |
|||
default: |
|||
if (departmentRes.type == 2) { |
|||
//区县查看数据:去除未审核
|
|||
whereCondition.audit1ManId = { $not: null }; |
|||
} |
|||
break; |
|||
} |
|||
let findObj = { |
|||
where: whereCondition, |
|||
include: [{ |
|||
model: models.Places, |
|||
}, { |
|||
model: models.User, |
|||
as: 'user', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'audit1ManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'audit2ManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
model: models.User, |
|||
as: 'rejectManUser', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}], |
|||
order: [["id", "desc"]] |
|||
}; |
|||
if (Number(pageSize) > 0 && Number(pageIndex) >= 0) { |
|||
findObj.limit = Number(pageSize); |
|||
findObj.offset = Number(pageIndex) * Number(pageSize); |
|||
} |
|||
let userPlaceSecurityRecords = await models.UserPlaceSecurityRecord.findAndCountAll(findObj); |
|||
ctx.status = 200; |
|||
ctx.body = userPlaceSecurityRecords; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "用户不存在!" } |
|||
} |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "请传用户参数!" } |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "获取用户填报信息失败" } |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
addPlaceSecurityRecord, |
|||
editPlaceSecurityRecord, |
|||
deletePlaceSecurityRecord, |
|||
getPlaceSecurityRecordById, |
|||
getRecentlyPlaceSecurityRecordByPlaceId, |
|||
getPlaceSecurityRecords, |
|||
getApprovePlaceSecurityRecords, |
|||
updateType |
|||
}; |
@ -1,91 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
/** |
|||
* 根据用户ID获取该用户创建的所有场所信息 |
|||
* @param {userId-用户ID} ctx |
|||
*/ |
|||
async function getPlacesByUserId(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { userId } = ctx.params; |
|||
let places = await models.Places.findAll({ where: { userId: userId }, attributes: ['id', 'name'] }); |
|||
ctx.status = 200; |
|||
ctx.body = places; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "查询用户场所信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据审批用户ID获取该审批用户范围内填报人创建的场所信息 |
|||
* @param {approveUserId-审批用户ID} ctx |
|||
*/ |
|||
async function getPlacesByApproveUserId(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { approveUserId } = ctx.params; |
|||
let approveUser = await models.User.findOne({ where: { id: approveUserId } }); |
|||
if (approveUser) { |
|||
let whereCondition = {}; |
|||
//获取审批人管辖区域内所有用户ID
|
|||
const departmentRes = await models.Department.findOne({ where: { id: approveUser.departmentId } }); |
|||
if (departmentRes.dependence) { |
|||
let regionType = departmentRes.type; |
|||
if (regionType == 4) { |
|||
whereCondition.userId = approveUserId; |
|||
} else { |
|||
let attentionRegionIds = [departmentRes.id]; |
|||
while (attentionRegionIds.length && regionType && regionType < 4) { |
|||
const departmentChilds = await models.Department.findAll({ where: { dependence: { $in: attentionRegionIds } } }); |
|||
regionType = departmentChilds.length ? departmentChilds[0].type : null; |
|||
attentionRegionIds = departmentChilds.map(d => d.id); |
|||
} |
|||
let users = await models.User.findAll({ where: { departmentId: { $in: attentionRegionIds } }, attributes: ['id'] }); |
|||
if (users.length) { |
|||
let userIds = users.map(u => u.id); |
|||
whereCondition.userId = { $in: userIds }; |
|||
} else { |
|||
ctx.status = 200; |
|||
ctx.body = []; |
|||
return; |
|||
} |
|||
} |
|||
} |
|||
let places = await models.Places.findAll({ where: whereCondition, attributes: ['id', 'name'] }); |
|||
ctx.status = 200; |
|||
ctx.body = places; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "用户不存在!" } |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "查询用户区域内场所信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 获取所有场所信息 |
|||
*/ |
|||
async function getAllPlaces(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
let places = await models.Places.findAll(); |
|||
ctx.status = 200; |
|||
ctx.body = places; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "获取场所信息失败" } |
|||
} |
|||
} |
|||
|
|||
|
|||
module.exports = { |
|||
getPlacesByUserId, |
|||
getPlacesByApproveUserId, |
|||
getAllPlaces |
|||
}; |
@ -1,140 +0,0 @@ |
|||
const moment = require('moment') |
|||
|
|||
async function getReportRectify(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { fs: { api: { userInfo } } } = ctx |
|||
const { startTime, endTime } = ctx.query |
|||
// 查找自己所属的区县数据 type == 2
|
|||
|
|||
let userDepRes = await models.Department.findOne({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
id: userInfo.departmentId |
|||
}, |
|||
}) |
|||
let depRes = [] |
|||
if (userDepRes.dataValues.type == 1) { |
|||
depRes = await models.Department.findAll({ |
|||
where: { |
|||
type: 2, |
|||
} |
|||
}) |
|||
} else if (userDepRes.dataValues.type == 2) { |
|||
depRes = [userDepRes] |
|||
} |
|||
|
|||
let rectifyReportList = [] |
|||
|
|||
let calDay = moment(startTime).startOf('day') |
|||
let endDay = moment(endTime).endOf('day') |
|||
let today = moment().endOf('day') |
|||
while (calDay.isBefore(endDay) && calDay.isBefore(today)) { |
|||
let curDay_ = calDay.clone(); |
|||
for (let d of depRes) { |
|||
let reportCount = await models.ReportRectify.count({ |
|||
where: { |
|||
regionId: d.dataValues.id, |
|||
userId:{$not:null}, |
|||
dateTime: { |
|||
$between: [ |
|||
curDay_.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
curDay_.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
}) |
|||
let detailCount = await models.ReportRectify.count({ |
|||
where: { |
|||
regionId: d.dataValues.id, |
|||
dateTime: { |
|||
$between: [ |
|||
curDay_.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
curDay_.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
}) |
|||
if (detailCount > 0) |
|||
rectifyReportList.push({ |
|||
day: calDay.format('YYYY-MM-DD'), |
|||
region: d.dataValues.name, |
|||
name: d.dataValues.name + '合用场所安全隐患排查整治汇总表', |
|||
reportBool: reportCount > 0, |
|||
depId: d.id, |
|||
}) |
|||
} |
|||
|
|||
calDay.add(1, 'day') |
|||
} |
|||
|
|||
ctx.body = rectifyReportList; |
|||
ctx.status = 200; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取合用场所安全隐患排查整治汇总表列表失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function getReportRectifyDetail(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { day, depId } = ctx.query |
|||
|
|||
let searchDay = moment(day) |
|||
let reportRes = await models.ReportRectify.findAll({ |
|||
where: { |
|||
regionId: depId, |
|||
dateTime: { |
|||
$between: [ |
|||
searchDay.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
searchDay.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
}) |
|||
|
|||
ctx.body = reportRes; |
|||
ctx.status = 200; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取合用场所安全隐患排查整治汇总表详情失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function compileReportRectifyDetail(ctx, next) { |
|||
const t = await ctx.fs.dc.orm.transaction(); |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const data = ctx.request.body |
|||
for (let d of data) { |
|||
await models.ReportRectify.update(d, { |
|||
transaction: t, |
|||
where: { |
|||
id: d.id |
|||
} |
|||
}) |
|||
} |
|||
await t.commit(); |
|||
ctx.status = 204; |
|||
} catch (error) { |
|||
await t.rollback(); |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "保存合用场所安全隐患排查整治汇总表详情失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
getReportRectify, |
|||
getReportRectifyDetail, |
|||
compileReportRectifyDetail, |
|||
}; |
@ -1,173 +0,0 @@ |
|||
async function getAreas (ctx, next) { |
|||
try { |
|||
const { fs: { api: { userInfo } } } = ctx |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
let userDepRes = await models.Department.findOne({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
id: userInfo.departmentId |
|||
}, |
|||
}) |
|||
|
|||
let rslt = [] |
|||
if (userDepRes) { |
|||
if (userDepRes.dataValues.type == 1) { |
|||
rslt = await models.Department.findAll({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
type: 2 |
|||
} |
|||
}) |
|||
} else if (userDepRes.dataValues.type == 2) { |
|||
rslt = [userDepRes.dataValues] |
|||
} |
|||
} |
|||
|
|||
ctx.body = rslt; |
|||
ctx.status = 200; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "查询区域数据失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function addReportConfig (ctx) { |
|||
let errMsg = "添加报表配置失败" |
|||
try { |
|||
const data = ctx.request.body |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
const repeatRes = await models.ReportConfigition.find({ |
|||
where: { |
|||
regionId: data.regionId, |
|||
reportTypeId: data.reportTypeId, |
|||
excuteTime: data.excuteTime, |
|||
} |
|||
}) |
|||
|
|||
if (repeatRes) { |
|||
errMsg = '已有相同配置信息'; |
|||
throw errMsg |
|||
} |
|||
|
|||
const res = await models.ReportConfigition.create(data) |
|||
|
|||
ctx.body = res; |
|||
ctx.status = 200; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": errMsg |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function getReportConfig (ctx) { |
|||
try { |
|||
const { fs: { api: { userInfo } } } = ctx |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
// 查找自己所属的区县数据 type == 2
|
|||
|
|||
let userDepRes = await models.Department.findOne({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
id: userInfo.departmentId |
|||
}, |
|||
}) |
|||
let depRes = [] |
|||
if (userDepRes.dataValues.type == 1) { |
|||
depRes = await models.Department.findAll({ |
|||
where: { |
|||
type: 2, |
|||
} |
|||
}) |
|||
} else if (userDepRes.dataValues.type == 2) { |
|||
depRes = [userDepRes] |
|||
} |
|||
|
|||
const res = await models.ReportConfigition.findAll({ |
|||
where: { |
|||
regionId: { $in: depRes.map(d => d.dataValues.id) } |
|||
} |
|||
}) |
|||
|
|||
ctx.body = res; |
|||
ctx.status = 200; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取报表配置失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function editReportConfig (ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const data = ctx.request.body |
|||
const { reportId } = ctx.params |
|||
|
|||
const repeatRes = await models.ReportConfigition.find({ |
|||
where: { |
|||
id: { $ne: parseInt(reportId) }, |
|||
regionId: data.regionId, |
|||
reportTypeId: data.reportTypeId, |
|||
excuteTime: data.excuteTime, |
|||
} |
|||
}) |
|||
|
|||
if (repeatRes) { |
|||
errMsg = '已有相同配置信息'; |
|||
throw errMsg |
|||
} |
|||
|
|||
await models.ReportConfigition.update(data, { |
|||
where: { |
|||
id: parseInt(reportId) |
|||
} |
|||
}) |
|||
|
|||
ctx.status = 204; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "编辑报表配置失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
async function delReportConfig (ctx) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { reportId } = ctx.params |
|||
await models.ReportConfigition.destroy({ |
|||
where: { |
|||
id: parseInt(reportId) |
|||
} |
|||
}) |
|||
|
|||
ctx.status = 204; |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "删除报表配置失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
module.exports = { |
|||
getAreas, |
|||
addReportConfig, |
|||
getReportConfig, |
|||
editReportConfig, |
|||
delReportConfig, |
|||
}; |
@ -1,87 +0,0 @@ |
|||
const moment = require('moment'); |
|||
async function getReportList (ctx, next) { |
|||
try { |
|||
const { fs: { api: { userInfo } } } = ctx |
|||
const models = ctx.fs.dc.models; |
|||
const { creatTime, reportName, regionName, limit, offset } = ctx.query; |
|||
|
|||
let where = { |
|||
$and: { |
|||
reportName: { $notLike: '%填报信息导出%' } |
|||
} |
|||
}; |
|||
if (creatTime) { |
|||
where.creatTime = { |
|||
$gte: moment(creatTime[0]).format('YYYY-MM-DD HH:mm:ss'), |
|||
$lte: moment(creatTime[1]).format('YYYY-MM-DD HH:mm:ss') |
|||
} |
|||
} |
|||
|
|||
if (reportName) { |
|||
where.reportName = { |
|||
$iLike: `%${reportName}%` |
|||
} |
|||
} |
|||
|
|||
if (regionName && regionName != -1) { |
|||
where.regionId = regionName |
|||
} else { |
|||
let userDepRes = await models.Department.findOne({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
id: userInfo.departmentId |
|||
}, |
|||
}) |
|||
|
|||
let userDep = [] |
|||
if (userDepRes) { |
|||
if (userDepRes.dataValues.type == 1) { |
|||
userDep = await models.Department.findAll({ |
|||
order: [['id', 'asc']], |
|||
where: { |
|||
type: 2 |
|||
} |
|||
}) |
|||
} else if (userDepRes.dataValues.type == 2) { |
|||
userDep = [userDepRes] |
|||
} |
|||
} |
|||
where.regionId = { $in: userDep.map(u => u.dataValues.id) } |
|||
} |
|||
|
|||
let findObj = { |
|||
include: [{ |
|||
model: models.ReportType, |
|||
attributes: ['name'] |
|||
}, { |
|||
model: models.Department, |
|||
attributes: ['name'] |
|||
}], |
|||
where: where, |
|||
order: [['creatTime', 'desc']], |
|||
}; |
|||
|
|||
if (Number(limit) > 0 && Number(offset) >= 0) { |
|||
findObj.limit = Number(limit); |
|||
findObj.offset = Number(offset); |
|||
} |
|||
|
|||
const res = await models.ReportDownManage.findAndCountAll(findObj) |
|||
|
|||
ctx.body = res; |
|||
ctx.status = 200; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "查询报表数据失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
|
|||
|
|||
module.exports = { |
|||
getReportList, |
|||
}; |
@ -1,342 +0,0 @@ |
|||
const moment = require('moment'); |
|||
const { QueryTypes } = require('sequelize'); |
|||
|
|||
async function reportDailyStatistic (ctx, next) { |
|||
const rslt = { |
|||
added: 0, //今日新增
|
|||
checked: 0, //今日已审填报
|
|||
unChecked: 0, //未审填报
|
|||
danger_place: 0, //隐患场所总数
|
|||
history: 0, //历史填报
|
|||
date: {} |
|||
}; |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const curDay_ = moment(); |
|||
const sequelize = ctx.fs.dc.orm; |
|||
|
|||
|
|||
rslt.added = await models.UserPlaceSecurityRecord.count({ |
|||
where: { |
|||
time: { |
|||
$between: [ |
|||
curDay_.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
curDay_.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
}) |
|||
rslt.unChecked = await models.UserPlaceSecurityRecord.count({ |
|||
where: { |
|||
$or: [ |
|||
{ |
|||
audit2ManId: { $eq: null }, |
|||
rejectManId: { $eq: null }, |
|||
}, |
|||
// {
|
|||
// audit2ManId: { $ne: null },
|
|||
// rejectManId: { $eq: null },
|
|||
// },
|
|||
{ |
|||
audit1ManId: { $eq: null }, |
|||
rejectManId: { $eq: null }, |
|||
} |
|||
] |
|||
} |
|||
}); |
|||
|
|||
rslt.checked = await models.UserPlaceSecurityRecord.count({ |
|||
where: { |
|||
$or: [ |
|||
{ |
|||
audit2ManId: { $ne: null }, |
|||
audit2ManIdTime: { |
|||
$between: [ |
|||
curDay_.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
curDay_.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
}, |
|||
{ |
|||
rejectManId: { $ne: null }, |
|||
rejectTime: { |
|||
$between: [ |
|||
curDay_.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
curDay_.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
] |
|||
} |
|||
}); |
|||
|
|||
const list = await sequelize.query(`SELECT count(*) AS "count" FROM "user_placeSecurityRecord" AS "userPlaceSecurityRecord"
|
|||
WHERE ("userPlaceSecurityRecord"."correctiveAction" IS NOT NULL AND "userPlaceSecurityRecord"."punishment" IS NOT NULL) AND "audit2ManId" IS NOT NULL GROUP BY "placeId";`, { type: QueryTypes.SELECT })
|
|||
rslt.danger_place = list.length; |
|||
|
|||
rslt.history = await models.UserPlaceSecurityRecord.count(); |
|||
|
|||
// seven days data
|
|||
|
|||
const startDay = moment().startOf('day'); |
|||
for (let d = 1; d <= 7; d++) { |
|||
const START_DAY = moment(startDay).add(-d, 'day'); |
|||
const date = START_DAY.format('YYYY-MM-DD'); |
|||
const num = await models.UserPlaceSecurityRecord.count({ |
|||
where: { |
|||
time: { |
|||
$between: [ |
|||
START_DAY.startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
START_DAY.endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
}) |
|||
|
|||
rslt.date[date] = num; |
|||
} |
|||
|
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取数据中台数据失败" |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
|||
async function reportAreaStatistic (ctx, next) { |
|||
let rslt = [], relationRegion = {}; |
|||
try { |
|||
const { startDate, endDate } = ctx.query; |
|||
const models = ctx.fs.dc.models; |
|||
const sequelize = ctx.fs.dc.orm; |
|||
|
|||
const list = await sequelize.query(`select "regionId", count("regionId") from "user_placeSecurityRecord" WHERE "time" BETWEEN '${moment(startDate).startOf('day').format('YYYY-MM-DD HH:mm:ss')}' AND '${moment(endDate).endOf('day').format('YYYY-MM-DD HH:mm:ss')}' AND "hiddenDangerItem12" IS NOT NULL GROUP BY "regionId" `, { type: QueryTypes.SELECT }) |
|||
// let regionIds = []
|
|||
// list.map(item => {
|
|||
// if (item.regionId && item.regionId != '') {
|
|||
// regionIds.push(item.regionId);
|
|||
// }
|
|||
// });
|
|||
|
|||
// const depts = await sequelize.query(`SELECT "id", "name", "type", "dependence" FROM "department" AS "department" WHERE "department"."id" IN (${regionIds.toString()});`, { type: QueryTypes.SELECT });
|
|||
const deptRelation = await sequelize.query(`SELECT "id", "name", "type", "dependence" FROM "department" AS "department";`, { type: QueryTypes.SELECT }); |
|||
const quArea = deptRelation.filter(f => f.type == 2); |
|||
quArea.map(item => { |
|||
relationRegion[item.id] = {}; |
|||
const xiang = deptRelation.filter(f => f.type == 3 && f.dependence == item.id).map(item => item.id); |
|||
|
|||
const cun = deptRelation.filter(f => f.type == 4 && xiang.some(ss => ss == f.dependence)).map(item => item.id); |
|||
relationRegion[item.id]['regionIds'] = [item.id, ...xiang, ...cun]; |
|||
relationRegion[item.id]['name'] = item.name; |
|||
}) |
|||
Object.keys(relationRegion).map(key => { |
|||
const { regionIds, name } = relationRegion[key]; |
|||
let data = list.filter(item => regionIds.some(id => id == item.regionId)) |
|||
let obj = {}; |
|||
obj['name'] = name; |
|||
obj['count'] = 0; |
|||
obj['regionId'] = key; |
|||
data.map(item => { |
|||
obj['count'] += Number(item.count) |
|||
}) |
|||
rslt.push(obj) |
|||
}) |
|||
|
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取数据中台数据失败" |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
|||
async function dangerAreaQuery (ctx, next) { |
|||
const { userId } = ctx.fs.api |
|||
let rslt = { rows: [], count: 0, ids: [] }, relationRegion = {}; |
|||
try { |
|||
const { startDate, endDate, placeType, regionId, placeName, offset = 0, limit = 20 } = ctx.query; |
|||
const models = ctx.fs.dc.models; |
|||
const sequelize = ctx.fs.dc.orm; |
|||
|
|||
let options = { |
|||
audit2ManId: { $ne: null }, |
|||
}, places = [], dep4Ids = []; |
|||
if (startDate && endDate) { |
|||
options.time = { |
|||
$between: [ |
|||
moment(startDate).startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
moment(endDate).endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
} |
|||
} |
|||
if (placeName) { |
|||
places = await models.Places.findAll({ |
|||
where: { |
|||
name: { $like: `%${placeName}%` } |
|||
} |
|||
}) |
|||
options.placeId = { |
|||
$in: places.map(item => item.id) |
|||
} |
|||
} else { |
|||
places = await models.Places.findAll() |
|||
} |
|||
|
|||
if (regionId && regionId != -1) { |
|||
let idList = []; |
|||
const curDeptRelation = await sequelize.query(`SELECT "id", "name", "type", "dependence" FROM "department" WHERE "id" in (${regionId});`, { type: QueryTypes.SELECT }); |
|||
|
|||
const type = curDeptRelation[0].type |
|||
if (type != 1) { |
|||
const deptRelation = await sequelize.query(`SELECT "id", "name", "type", "dependence" FROM "department" AS "department";`, { type: QueryTypes.SELECT }); |
|||
const quArea = deptRelation.filter(f => f.type == 2); |
|||
quArea.map(item => { |
|||
relationRegion[item.id] = {}; |
|||
deptRelation.filter(f => f.type == 3 && f.dependence == item.id).map(x => { |
|||
relationRegion[item.id][x.id] = deptRelation.filter(f => f.type == 4 && x.id == f.dependence).map(cun => cun.id); |
|||
}); |
|||
}) |
|||
if (type == 2) { |
|||
const quList = [regionId]; |
|||
const xiangList = Object.keys(relationRegion[regionId]) |
|||
let cunList = xiangList.map(key => { |
|||
return relationRegion[regionId][key] |
|||
}) |
|||
idList = quList.concat(xiangList).concat(cunList.flat(Infinity)) |
|||
|
|||
options.regionId = { $in: idList }; |
|||
} |
|||
if (type == 3) { |
|||
Object.keys(relationRegion).map(quKey => { |
|||
Object.keys(relationRegion[quKey]).map(xiangKey => { |
|||
if (xiangKey == regionId) { |
|||
const xiangList = [xiangKey]; |
|||
const cunList = relationRegion[quKey][xiangKey] |
|||
idList = xiangList.concat(cunList); |
|||
} |
|||
}) |
|||
}) |
|||
dep4Ids = idList |
|||
} |
|||
if (type == 4) { |
|||
const curUser = await models.User.findOne({ where: { id: userId } }) |
|||
const corUserDepId = curUser.departmentId |
|||
const corUseUserDepRes = await models.Department.findOne({ where: { id: corUserDepId } }) |
|||
if(corUseUserDepRes.type < 4){ |
|||
dep4Ids = [regionId] |
|||
} else { |
|||
options.userId = userId |
|||
} |
|||
// idList = [regionId]
|
|||
// options.userId = userId
|
|||
} |
|||
// options.departmentId = { $in: idList };
|
|||
} |
|||
} |
|||
|
|||
if (placeType != null && placeType != -1) { |
|||
|
|||
if (placeType == 0) { |
|||
options = Object.assign({}, options, { |
|||
$or: [ |
|||
{ |
|||
correctiveAction: { $ne: null }, |
|||
}, |
|||
{ |
|||
punishment: { $ne: null }, |
|||
} |
|||
] |
|||
}) |
|||
} |
|||
|
|||
if (placeType == 1) |
|||
options = Object.assign({}, options, { |
|||
$or: [ |
|||
{ |
|||
correctiveAction: { $eq: null }, |
|||
}, |
|||
{ |
|||
punishment: { $eq: null }, |
|||
} |
|||
], |
|||
hiddenDangerItem12: { |
|||
$ne: null |
|||
} |
|||
}) |
|||
|
|||
if (placeType == 2) |
|||
options.hiddenDangerItem12 = { |
|||
$eq: null |
|||
} |
|||
} |
|||
|
|||
let findOption = { |
|||
where: options, |
|||
offset: offset, |
|||
limit: limit, |
|||
order: [['time', 'DESC']], |
|||
} |
|||
|
|||
if (dep4Ids.length) { |
|||
findOption.include = [{ |
|||
required: true, |
|||
model: models.User, |
|||
as: 'user', |
|||
where: { |
|||
departmentId: { $in: dep4Ids } |
|||
} |
|||
}] |
|||
} |
|||
|
|||
const list = await models.UserPlaceSecurityRecord.findAll(findOption) |
|||
|
|||
for (let item of list) { |
|||
const { name } = places.filter(p => p.id == item.placeId)[0] || {}; |
|||
const checkAreaName = await sequelize.query(`SELECT "dpt"."name" FROM "department" as "dpt" WHERE "dpt"."id" in (SELECT "department_id" FROM "user" WHERE "id" = ${item.userId} );`, { type: QueryTypes.SELECT }) |
|||
const checkUser = await sequelize.query(`SELECT "name", "phone" FROM "user" WHERE "id" = ${item.userId}`, { type: QueryTypes.SELECT }) |
|||
rslt.rows.push(Object.assign({}, item.dataValues, { placeName: name, checkAreaName: (checkAreaName[0] || {}).name || '', checkUserName: (checkUser[0] || {}).name || '', checkUserPhone: (checkUser[0] || {}).phone })) |
|||
} |
|||
|
|||
delete findOption.offset |
|||
delete findOption.limit |
|||
delete findOption.order |
|||
findOption.attributes = ['id'] |
|||
const dataAll = await models.UserPlaceSecurityRecord.findAll( |
|||
findOption |
|||
// {
|
|||
// attributes: ['id'],
|
|||
// where: options,
|
|||
// }
|
|||
); |
|||
rslt.count = dataAll.length; |
|||
rslt.ids = dataAll.map(item => item.dataValues.id); |
|||
|
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取数据中台数据失败" |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
|||
module.exports = { |
|||
reportDailyStatistic, |
|||
reportAreaStatistic, |
|||
dangerAreaQuery, |
|||
} |
@ -1,483 +0,0 @@ |
|||
'use strict'; |
|||
const moment = require('moment'); |
|||
//获取每日汇总
|
|||
async function getDayReport(ctx) { |
|||
try { |
|||
const { date, areaId } = ctx.query; |
|||
const models = ctx.fs.dc.models; |
|||
let range = [moment(date).startOf('day').format("YYYY-MM-DD HH:mm:ss"), moment(date).endOf('day').format("YYYY-MM-DD HH:mm:ss")] |
|||
let rslt = await models.ReportCollection.findAll({ |
|||
where: { |
|||
dateTime: { |
|||
$between: range |
|||
}, |
|||
regionId: areaId |
|||
}, |
|||
include: [{ |
|||
required: true, |
|||
model: models.User, |
|||
attributes: ['name', 'username', 'phone'] |
|||
}, { |
|||
required: false, |
|||
model: models.Department, |
|||
attributes: ['name'] |
|||
}] |
|||
}); |
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取全市每日汇总表失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
//获取排查整治汇总表
|
|||
async function getGovern(ctx) { |
|||
try { |
|||
const { date, areaId } = ctx.query; |
|||
const models = ctx.fs.dc.models; |
|||
let range = [moment(date).startOf('day').format("YYYY-MM-DD HH:mm:ss"), moment(date).endOf('day').format("YYYY-MM-DD HH:mm:ss")] |
|||
let rslt = await models.ReportRectify.findAndCountAll({ |
|||
where: { |
|||
dateTime: { |
|||
$between: range |
|||
}, |
|||
regionId: areaId |
|||
}, |
|||
include: [{ |
|||
required: true, |
|||
model: models.User, |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
required: false, |
|||
model: models.Department, |
|||
attributes: ['id', 'name'] |
|||
}], |
|||
limit: 1 |
|||
}); |
|||
ctx.status = 200; |
|||
let obj = { count: 0 } |
|||
if (rslt.count > 0) { |
|||
obj.area = rslt.rows[0].department; |
|||
obj.dateTime = rslt.rows[0].dateTime; |
|||
obj.count = rslt.count; |
|||
obj.user = rslt.rows[0].user; |
|||
obj.isAudit = rslt.rows[0].isAudit |
|||
} |
|||
ctx.body = obj; |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取排查整治汇总表失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
//获取排查整治汇总详情
|
|||
async function getGovernDetail(ctx) { |
|||
try { |
|||
const { name, date, areaId, pageSize, pageIndex } = ctx.query; |
|||
const models = ctx.fs.dc.models; |
|||
let range = [moment(date).startOf('day').format("YYYY-MM-DD HH:mm:ss"), moment(date).endOf('day').format("YYYY-MM-DD HH:mm:ss")] |
|||
let whereObj = { |
|||
dateTime: { |
|||
$between: range |
|||
}, |
|||
regionId: areaId |
|||
}; |
|||
if (name) { |
|||
whereObj.name = { $like: `%${name}%` } |
|||
} |
|||
let findObj = { |
|||
where: whereObj, |
|||
include: [{ |
|||
required: true, |
|||
model: models.User, |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}, { |
|||
required: false, |
|||
model: models.Department, |
|||
attributes: ['id', 'name'] |
|||
}], |
|||
order: [['dateTime', 'desc']] |
|||
}; |
|||
if (Number(pageSize) > 0 && Number(pageIndex) >= 0) { |
|||
findObj.limit = Number(pageSize); |
|||
findObj.offset = Number(pageIndex) * Number(pageSize); |
|||
} |
|||
let rslt = await models.ReportRectify.findAndCountAll(findObj); |
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取排查整治汇总详情失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 确认整治汇总场所数据 |
|||
* body { |
|||
* governDetailIds:'1,2' |
|||
* } |
|||
*/ |
|||
async function operateGovern(ctx, next) { |
|||
try { |
|||
const data = ctx.request.body; |
|||
const models = ctx.fs.dc.models; |
|||
if (data.governDetailIds && data.governDetailIds.length > 0) { |
|||
await models.ReportRectify.update({ |
|||
isAudit: true |
|||
}, { where: { id: { $in: data.governDetailIds.split(',') } } }); |
|||
|
|||
ctx.body = { "message": "确认整治汇总下场所数据成功" }; |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.body = { "message": "确认参数有误" }; |
|||
ctx.status = 400; |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "确认整治汇总下场所数据失败" } |
|||
} |
|||
} |
|||
|
|||
//获取安全隐患排查详细数据列表
|
|||
async function getSecurityRiskList(ctx) { |
|||
try { |
|||
const { name, date, areaId, pageSize, pageIndex } = ctx.query; |
|||
const models = ctx.fs.dc.models; |
|||
|
|||
let whereObj = {}; |
|||
let wheres = { |
|||
audit1ManId: { $not: null }, |
|||
audit2ManId: { $not: null } |
|||
} |
|||
if (areaId) { |
|||
wheres.regionId = areaId; |
|||
} |
|||
if (name) |
|||
whereObj = { name: { $like: `%${name}%` } } |
|||
let findObj = { |
|||
attributes: ['id', 'time', 'placeId', 'userId'], |
|||
where: |
|||
// time: {
|
|||
// $between: range
|
|||
// },
|
|||
// regionId: areaId,
|
|||
// audit1ManId: { $not: null },
|
|||
// audit2ManId: { $not: null }
|
|||
wheres |
|||
, |
|||
include: [{ |
|||
required: true, |
|||
model: models.Places, |
|||
attributes: ['id', 'name'], |
|||
where: whereObj |
|||
}, { |
|||
required: true, |
|||
model: models.User, |
|||
as: 'user', |
|||
attributes: ['id', 'name', 'username', 'phone'] |
|||
}], |
|||
order: [['time', 'desc']] |
|||
}; |
|||
if (date) { |
|||
let range = [moment(date).startOf('day').format("YYYY-MM-DD HH:mm:ss"), moment(date).endOf('day').format("YYYY-MM-DD HH:mm:ss")] |
|||
findObj.where.time = { |
|||
$between: range |
|||
} |
|||
} |
|||
if (areaId) { |
|||
findObj.where.regionId = areaId |
|||
} |
|||
|
|||
if (Number(pageSize) > 0 && Number(pageIndex) >= 0) { |
|||
findObj.limit = Number(pageSize); |
|||
findObj.offset = Number(pageIndex) * Number(pageSize); |
|||
} |
|||
let rslt = await models.UserPlaceSecurityRecord.findAndCountAll(findObj); |
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取安全隐患排查详细数据列表失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
|
|||
//获取待处理数量
|
|||
async function getHomeCount(ctx) { |
|||
try { |
|||
let { userId, departmentId, userRegionType } = ctx.params; |
|||
const models = ctx.fs.dc.models; |
|||
const departmentRes = await models.Department.findOne({ where: { id: departmentId } }); |
|||
if (userRegionType != 2 && userRegionType != 3 && !departmentRes) { |
|||
ctx.body = { "message": "请求参数有误" }; |
|||
ctx.status = 400; |
|||
} else { |
|||
//获取当前用户数据范围管辖区域内所有用户ID
|
|||
let attentionRegionIds = [departmentRes.id]; |
|||
let regionType = departmentRes.type; |
|||
while (attentionRegionIds.length && regionType && regionType < 4) { |
|||
const departmentChilds = await models.Department.findAll({ where: { dependence: { $in: attentionRegionIds } } }); |
|||
regionType = departmentChilds.length ? departmentChilds[0].type : null; |
|||
attentionRegionIds = departmentChilds.map(d => d.id); |
|||
} |
|||
let users = await models.User.findAll({ where: { departmentId: { $in: attentionRegionIds } }, attributes: ['id'] }); |
|||
let userIds = users.map(u => u.id); |
|||
|
|||
let rslt = { recordCount: 0, reportCount: null } |
|||
if (userIds.length) { |
|||
let whereObj = { |
|||
userId: { $in: userIds }, |
|||
rejectManId: null, |
|||
isDraft: false |
|||
} |
|||
if (userRegionType == 3) { |
|||
whereObj.audit1ManId = null; |
|||
} else { |
|||
whereObj.audit1ManId = { $not: null }; |
|||
whereObj.audit2ManId = null; |
|||
} |
|||
let recordCount = await models.UserPlaceSecurityRecord.count({ |
|||
where: whereObj |
|||
}); |
|||
rslt.recordCount = recordCount; |
|||
if (userRegionType == 2) { |
|||
let reportCount = await models.ReportCollection.count({ |
|||
where: { |
|||
userId: null, |
|||
regionId: departmentId |
|||
} |
|||
}); |
|||
let reportRectify = await models.ReportRectify.findAll({ |
|||
where: { |
|||
userId: null, |
|||
regionId: departmentId |
|||
} |
|||
}); |
|||
let dateArr = []; |
|||
reportRectify.map(r => { |
|||
let date = moment(r.dateTime).format("YYYY-MM-DD"); |
|||
if (!dateArr.includes(date)) { |
|||
dateArr.push(date) |
|||
} |
|||
}) |
|||
rslt.reportCount = reportCount + dateArr.length; |
|||
} |
|||
} |
|||
ctx.status = 200; |
|||
ctx.body = rslt; |
|||
} |
|||
} catch (error) { |
|||
console.log(error) |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { |
|||
"message": "获取待处理数量失败" |
|||
} |
|||
} |
|||
} |
|||
|
|||
//每日汇总表上报
|
|||
async function operateReport(ctx, next) { |
|||
try { |
|||
let { id, userId } = ctx.params; |
|||
const models = ctx.fs.dc.models; |
|||
await models.ReportCollection.update({ |
|||
userId: userId |
|||
}, { where: { id: id } }); |
|||
|
|||
ctx.body = { "message": "每日汇总表上报成功" }; |
|||
ctx.status = 200; |
|||
|
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "每日汇总表上报失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 根据筛选条件获取用户审核报表信息 |
|||
* @query { |
|||
* approveUserId-审批人ID |
|||
* reportType-报表类型(1-整治汇总表,2-每日汇总表,null-整治汇总表+每日汇总表) |
|||
* timeRange-时间范围 |
|||
* regionId-区域ID |
|||
* state-审批状态 |
|||
* pageIndex-页码 |
|||
* pageSize-页宽 |
|||
* } ctx |
|||
*/ |
|||
async function getApproveReportCollections(ctx, next) { |
|||
try { |
|||
const models = ctx.fs.dc.models; |
|||
const { approveUserId, reportType, timeRange, regionId, state, pageIndex, pageSize } = ctx.query; |
|||
let whereCondition = {}; |
|||
if (approveUserId) { |
|||
let approveUser = await models.User.findOne({ where: { id: approveUserId } }); |
|||
if (approveUser) { |
|||
//市级用户可以看到所有报表数据
|
|||
const departmentRes = await models.Department.findOne({ where: { id: approveUser.departmentId } }); |
|||
if (departmentRes.dependence) { |
|||
if (departmentRes.type = 2) { |
|||
//区县人员只能看见自己区县下的报表信息
|
|||
whereCondition.regionId = departmentRes.id; |
|||
} else { |
|||
//其它层级无报表信息
|
|||
ctx.status = 200; |
|||
ctx.body = { |
|||
"count": 0, |
|||
"rows": [] |
|||
}; |
|||
return; |
|||
} |
|||
} |
|||
if (regionId) { |
|||
let region = await models.Department.findOne({ where: { id: regionId } }); |
|||
if (region) { |
|||
if (whereCondition.regionId && whereCondition.regionId != regionId) { |
|||
//区县人员只能看见自己区县下的报表信息
|
|||
ctx.status = 200; |
|||
ctx.body = { |
|||
"count": 0, |
|||
"rows": [] |
|||
}; |
|||
return; |
|||
} else { |
|||
whereCondition.regionId = regionId; |
|||
} |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "区域不存在!" } |
|||
return; |
|||
} |
|||
} |
|||
let times = timeRange; |
|||
if (timeRange && timeRange.indexOf(',')) { times = timeRange.split(',') } |
|||
if (times && times.length > 0) { |
|||
const len = times.length; |
|||
whereCondition.dateTime = { |
|||
$between: [ |
|||
moment(times[0]).startOf('day').format('YYYY-MM-DD HH:mm:ss'), |
|||
moment(times[len - 1]).endOf('day').format('YYYY-MM-DD HH:mm:ss') |
|||
] |
|||
}; |
|||
} |
|||
switch (Number(state)) { |
|||
case 1: //待审批:无审核人员
|
|||
whereCondition.userId = null; |
|||
break; |
|||
case 2://已审批:有审核人员
|
|||
whereCondition.userId = { $not: null }; |
|||
break; |
|||
default: break; |
|||
} |
|||
let findObj = { |
|||
where: whereCondition, |
|||
order: [["id", "desc"]], |
|||
include: [{ |
|||
model: models.User, |
|||
attributes: ['name', 'username', 'phone'] |
|||
}, { |
|||
model: models.Department, |
|||
attributes: ['id', 'name'] |
|||
}] |
|||
}; |
|||
if (Number(pageSize) > 0 && Number(pageIndex) >= 0) { |
|||
findObj.limit = Number(pageSize); |
|||
findObj.offset = Number(pageIndex) * Number(pageSize); |
|||
} |
|||
switch (Number(reportType)) { |
|||
case 1: //整治汇总表
|
|||
ctx.body = await models.ReportRectify.findAndCountAll(findObj); |
|||
break; |
|||
case 2://每日汇总表
|
|||
ctx.body = await models.ReportCollection.findAndCountAll(findObj); |
|||
break; |
|||
default: //整治汇总表+每日汇总表
|
|||
const rectifies = await models.ReportRectify.findAndCountAll(findObj); |
|||
const collections = await models.ReportCollection.findAndCountAll(findObj); |
|||
ctx.body = { |
|||
"totalCount": rectifies.count + collections.count, |
|||
"totalRows": { |
|||
"rectify": rectifies, |
|||
"collection": collections |
|||
} |
|||
}; |
|||
break; |
|||
} |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "用户不存在!" } |
|||
} |
|||
} else { |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "请传用户参数!" } |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "获取审批报表信息失败" } |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 上报排查整治汇总表 |
|||
* query{ |
|||
* userId:1,//上报用户
|
|||
* } |
|||
* body { |
|||
* governDetailIds:'1,2' //排查整治汇总返回数据id字符串
|
|||
* } |
|||
*/ |
|||
async function operateGovernReport(ctx, next) { |
|||
try { |
|||
let { userId } = ctx.params; |
|||
const data = ctx.request.body; |
|||
const models = ctx.fs.dc.models; |
|||
if (data.governDetailIds && data.governDetailIds.length > 0) { |
|||
await models.ReportRectify.update({ |
|||
userId: userId |
|||
}, { where: { id: { $in: data.governDetailIds.split(',') } } }); |
|||
|
|||
ctx.body = { "message": "上报排查整治汇总表成功" }; |
|||
ctx.status = 200; |
|||
} else { |
|||
ctx.body = { "message": "上报排查整治汇总表参数有误" }; |
|||
ctx.status = 400; |
|||
} |
|||
} catch (error) { |
|||
ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); |
|||
ctx.status = 400; |
|||
ctx.body = { "message": "上报排查整治汇总表失败" } |
|||
} |
|||
} |
|||
module.exports = { |
|||
getDayReport, |
|||
getGovern, |
|||
getGovernDetail, |
|||
operateGovern, |
|||
getSecurityRiskList, |
|||
getHomeCount, |
|||
operateReport, |
|||
getApproveReportCollections, |
|||
operateGovernReport |
|||
}; |
@ -1,61 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const Places = sequelize.define("places", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "places_id_uindex" |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "场所名称", |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false |
|||
}, |
|||
describe: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "描述", |
|||
primaryKey: false, |
|||
field: "describe", |
|||
autoIncrement: false |
|||
}, |
|||
userId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "userId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "user" |
|||
} |
|||
}, |
|||
}, { |
|||
tableName: "places", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.Places = Places; |
|||
|
|||
const User = dc.models.User; |
|||
Places.belongsTo(User, { foreignKey: 'userId', targetKey: 'id' }); |
|||
User.hasMany(Places, { foreignKey: 'userId', sourceKey: 'id' }); |
|||
|
|||
return Places; |
|||
}; |
@ -1,47 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const Post = sequelize.define("post", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "post_id_uindex" |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false |
|||
}, |
|||
departmentId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "department_id", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "department" |
|||
} |
|||
} |
|||
}, { |
|||
tableName: "post", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.Post = Post; |
|||
return Post; |
|||
}; |
@ -1,51 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const PostResource = sequelize.define("postResource", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "post_resource_id_uindex" |
|||
}, |
|||
postId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "post_id", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "post" |
|||
} |
|||
}, |
|||
resource: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "resource", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "code", |
|||
model: "resource" |
|||
} |
|||
} |
|||
}, { |
|||
tableName: "post_resource", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.PostResource = PostResource; |
|||
return PostResource; |
|||
}; |
@ -1,34 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const RegionType = sequelize.define("regionType", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "region_type_id_uindex" |
|||
}, |
|||
type: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "type", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "region_type", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.RegionType = RegionType; |
|||
return RegionType; |
|||
}; |
@ -1,88 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const ReportCollection = sequelize.define("reportCollection", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "report_collection_id_uindex" |
|||
}, |
|||
regionId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "县区(id)", |
|||
primaryKey: false, |
|||
field: "regionId", |
|||
autoIncrement: false |
|||
}, |
|||
dateTime: { |
|||
type: DataTypes.DATE, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "dateTime", |
|||
autoIncrement: false |
|||
}, |
|||
placeCount: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "场所总数", |
|||
primaryKey: false, |
|||
field: "placeCount", |
|||
autoIncrement: false |
|||
}, |
|||
hiddenDangerCount: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "排查隐患总数", |
|||
primaryKey: false, |
|||
field: "hiddenDangerCount", |
|||
autoIncrement: false |
|||
}, |
|||
hiddenDangerItem12Count: { |
|||
type: DataTypes.JSON, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "排查隐患详细类目 1-12 项 总数", |
|||
primaryKey: false, |
|||
field: "hiddenDangerItem12Count", |
|||
autoIncrement: false |
|||
}, |
|||
userId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "填报人(县区联络员)", |
|||
primaryKey: false, |
|||
field: "userId", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "report_collection", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.ReportCollection = ReportCollection; |
|||
|
|||
const User = dc.models.User; |
|||
ReportCollection.belongsTo(User, { foreignKey: 'userId', targetKey: 'id' }); |
|||
User.hasMany(ReportCollection, { foreignKey: 'userId', sourceKey: 'id' }); |
|||
|
|||
const Department = dc.models.Department; |
|||
ReportCollection.belongsTo(Department, { foreignKey: 'regionId', targetKey: 'id' }); |
|||
Department.hasMany(ReportCollection, { foreignKey: 'regionId', sourceKey: 'id' }); |
|||
|
|||
return ReportCollection; |
|||
}; |
@ -1,74 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const ReportConfigition = sequelize.define("reportConfigition", { |
|||
reportName: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "报表名称", |
|||
primaryKey: false, |
|||
field: "reportName", |
|||
autoIncrement: false |
|||
}, |
|||
regionId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "区域id", |
|||
primaryKey: false, |
|||
field: "regionId", |
|||
autoIncrement: false |
|||
}, |
|||
reportTypeId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "报表类型", |
|||
primaryKey: false, |
|||
field: "reportTypeId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "reportType" |
|||
} |
|||
}, |
|||
excuteTime: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "生成时间 cron表达式", |
|||
primaryKey: false, |
|||
field: "excuteTime", |
|||
autoIncrement: false |
|||
}, |
|||
isEnable: { |
|||
type: DataTypes.BOOLEAN, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "启用状态", |
|||
primaryKey: false, |
|||
field: "isEnable", |
|||
autoIncrement: false |
|||
}, |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "序号", |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "report_configition_id_uindex" |
|||
} |
|||
}, { |
|||
tableName: "report_configition", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.ReportConfigition = ReportConfigition; |
|||
return ReportConfigition; |
|||
}; |
@ -1,69 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const ReportCountyCollect = sequelize.define("reportCountyCollect", { |
|||
id: { |
|||
type: DataTypes.BIGINT, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "序号", |
|||
primaryKey: false, |
|||
field: "id", |
|||
autoIncrement: false |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "名称", |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false |
|||
}, |
|||
address: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "地址", |
|||
primaryKey: false, |
|||
field: "address", |
|||
autoIncrement: false |
|||
}, |
|||
hiddenDanger: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "排查发现隐患", |
|||
primaryKey: false, |
|||
field: "hiddenDanger", |
|||
autoIncrement: false |
|||
}, |
|||
correctiveAction: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "采取措施", |
|||
primaryKey: false, |
|||
field: "correctiveAction", |
|||
autoIncrement: false |
|||
}, |
|||
punishment: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "实施处罚,强制措施情况", |
|||
primaryKey: false, |
|||
field: "punishment", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "report_countyCollect", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.ReportCountyCollect = ReportCountyCollect; |
|||
return ReportCountyCollect; |
|||
}; |
@ -1,82 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const ReportDownManage = sequelize.define("reportDownManage", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: "nextval(\"report_downManage_id_seq\"::regclass)", |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: false, |
|||
unique: "report_downmanage_id_uindex" |
|||
}, |
|||
reportName: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "报表名称", |
|||
primaryKey: false, |
|||
field: "reportName", |
|||
autoIncrement: false |
|||
}, |
|||
regionId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "区域id", |
|||
primaryKey: false, |
|||
field: "regionId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "department" |
|||
} |
|||
}, |
|||
reportTypeId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "报表类型id\n1.整治表\n2.汇总表", |
|||
primaryKey: false, |
|||
field: "reportTypeId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "reportType" |
|||
} |
|||
}, |
|||
filePath: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "文件路径", |
|||
primaryKey: false, |
|||
field: "filePath", |
|||
autoIncrement: false, |
|||
}, |
|||
creatTime: { |
|||
type: DataTypes.DATE, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "creatTime", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "report_downManage", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.ReportDownManage = ReportDownManage; |
|||
|
|||
const { ReportType, Department } = dc.models; |
|||
ReportDownManage.belongsTo(ReportType, { foreignKey: 'reportTypeId', targetKey: 'id' }); |
|||
ReportDownManage.belongsTo(Department, { foreignKey: 'regionId', targetKey: 'id' }); |
|||
return ReportDownManage; |
|||
}; |
@ -1,115 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const ReportRectify = sequelize.define("reportRectify", { |
|||
id: { |
|||
type: DataTypes.BIGINT, |
|||
allowNull: true, |
|||
defaultValue: "nextval(\"report_countyCollect_id_seq\"::regclass)", |
|||
comment: "序号", |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: false, |
|||
unique: "report_countycollect_id_uindex" |
|||
}, |
|||
regionId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "县区(id)", |
|||
primaryKey: false, |
|||
field: "regionId", |
|||
autoIncrement: false |
|||
}, |
|||
dateTime: { |
|||
type: DataTypes.DATE, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "dateTime", |
|||
autoIncrement: false |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "名称", |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false |
|||
}, |
|||
address: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "地址", |
|||
primaryKey: false, |
|||
field: "address", |
|||
autoIncrement: false |
|||
}, |
|||
hiddenDanger: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "排查发现隐患", |
|||
primaryKey: false, |
|||
field: "hiddenDanger", |
|||
autoIncrement: false |
|||
}, |
|||
correctiveAction: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "采取措施", |
|||
primaryKey: false, |
|||
field: "correctiveAction", |
|||
autoIncrement: false |
|||
}, |
|||
punishment: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "实施处罚,强制措施情况", |
|||
primaryKey: false, |
|||
field: "punishment", |
|||
autoIncrement: false |
|||
}, |
|||
userId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "web端上报", |
|||
primaryKey: false, |
|||
field: "userId", |
|||
autoIncrement: false |
|||
}, |
|||
isAudit: { |
|||
type: DataTypes.BOOLEAN, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "市级 确认审核", |
|||
primaryKey: false, |
|||
field: "isAudit", |
|||
autoIncrement: false |
|||
}, |
|||
}, { |
|||
tableName: "report_rectify", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.ReportRectify = ReportRectify; |
|||
|
|||
const User = dc.models.User; |
|||
ReportRectify.belongsTo(User, { foreignKey: 'userId', targetKey: 'id' }); |
|||
User.hasMany(ReportRectify, { foreignKey: 'userId', sourceKey: 'id' }); |
|||
|
|||
const Department = dc.models.Department; |
|||
ReportRectify.belongsTo(Department, { foreignKey: 'regionId', targetKey: 'id' }); |
|||
Department.hasMany(ReportRectify, { foreignKey: 'regionId', sourceKey: 'id' }); |
|||
|
|||
return ReportRectify; |
|||
}; |
@ -1,33 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const ReportType = sequelize.define("reportType", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: false |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "report_type", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.ReportType = ReportType; |
|||
return ReportType; |
|||
}; |
@ -1,44 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const Resource = sequelize.define("resource", { |
|||
code: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "code", |
|||
autoIncrement: false, |
|||
unique: "resource_code_uindex" |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false, |
|||
unique: "resource_name_uindex" |
|||
}, |
|||
parentResource: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "parent_resource", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "resource", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.Resource = Resource; |
|||
return Resource; |
|||
}; |
@ -1,311 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const UserPlaceSecurityRecord = sequelize.define("userPlaceSecurityRecord", { |
|||
id: { |
|||
type: DataTypes.BIGINT, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "id", |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "user_placesecurityrecord_id_uindex" |
|||
}, |
|||
time: { |
|||
type: DataTypes.DATE, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "录入时间", |
|||
primaryKey: false, |
|||
field: "time", |
|||
autoIncrement: false |
|||
}, |
|||
placeId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "场所id", |
|||
primaryKey: false, |
|||
field: "placeId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "places" |
|||
} |
|||
}, |
|||
hiddenDangerItem12: { |
|||
type: DataTypes.JSON, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "12项隐患信息", |
|||
primaryKey: false, |
|||
field: "hiddenDangerItem12", |
|||
autoIncrement: false |
|||
}, |
|||
description: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "存在具体问题描述", |
|||
primaryKey: false, |
|||
field: "description", |
|||
autoIncrement: false |
|||
}, |
|||
audit1ManId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "乡镇人审核", |
|||
primaryKey: false, |
|||
field: "audit1ManId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "user" |
|||
} |
|||
}, |
|||
audit2ManId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "区县人复核", |
|||
primaryKey: false, |
|||
field: "audit2ManId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "user" |
|||
} |
|||
}, |
|||
regionId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "所属县/区", |
|||
primaryKey: false, |
|||
field: "regionId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "department" |
|||
} |
|||
}, |
|||
userId: { |
|||
type: DataTypes.BIGINT, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "用户id,填报人", |
|||
primaryKey: false, |
|||
field: "userId", |
|||
autoIncrement: false |
|||
}, |
|||
placeType: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "场所性质", |
|||
primaryKey: false, |
|||
field: "placeType", |
|||
autoIncrement: false |
|||
}, |
|||
address: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "场所地址", |
|||
primaryKey: false, |
|||
field: "address", |
|||
autoIncrement: false |
|||
}, |
|||
phone: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: "负责人手机号", |
|||
primaryKey: false, |
|||
field: "phone", |
|||
autoIncrement: false |
|||
}, |
|||
dimension: { |
|||
type: DataTypes.REAL, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "面积", |
|||
primaryKey: false, |
|||
field: "dimension", |
|||
autoIncrement: false |
|||
}, |
|||
floors: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "多少层", |
|||
primaryKey: false, |
|||
field: "floors", |
|||
autoIncrement: false |
|||
}, |
|||
numberOfPeople: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "常住人数", |
|||
primaryKey: false, |
|||
field: "numberOfPeople", |
|||
autoIncrement: false |
|||
}, |
|||
location: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "经纬度", |
|||
primaryKey: false, |
|||
field: "location", |
|||
autoIncrement: false |
|||
}, |
|||
isEnable: { |
|||
type: DataTypes.BOOLEAN, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "是否为合用场所", |
|||
primaryKey: false, |
|||
field: "isEnable", |
|||
autoIncrement: false |
|||
}, |
|||
rejectManId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "驳回人", |
|||
primaryKey: false, |
|||
field: "rejectManId", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "user" |
|||
} |
|||
}, |
|||
rejectReasons: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "驳回意见", |
|||
primaryKey: false, |
|||
field: "rejectReasons", |
|||
autoIncrement: false |
|||
}, |
|||
isDraft: { |
|||
type: DataTypes.BOOLEAN, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "是否草稿", |
|||
primaryKey: false, |
|||
field: "isDraft", |
|||
autoIncrement: false |
|||
}, |
|||
placeOwner: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "场所负责人", |
|||
primaryKey: false, |
|||
field: "placeOwner", |
|||
autoIncrement: false |
|||
}, |
|||
localtionDescribe: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "经纬度定位描述", |
|||
primaryKey: false, |
|||
field: "localtionDescribe", |
|||
autoIncrement: false |
|||
}, |
|||
correctiveAction: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "采取措施", |
|||
primaryKey: false, |
|||
field: "correctiveAction", |
|||
autoIncrement: false |
|||
}, |
|||
type: { |
|||
type: DataTypes.BOOLEAN, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "是否重新发起", |
|||
primaryKey: false, |
|||
field: "type", |
|||
autoIncrement: false |
|||
}, |
|||
punishment: { |
|||
type: DataTypes.STRING, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "实施处罚,强制措施情况", |
|||
primaryKey: false, |
|||
field: "punishment", |
|||
autoIncrement: false |
|||
}, |
|||
audit1ManIdTime: { |
|||
type: DataTypes.DATE, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "乡镇人审核时间", |
|||
primaryKey: false, |
|||
field: "audit1ManIdTime", |
|||
autoIncrement: false |
|||
}, |
|||
audit2ManIdTime: { |
|||
type: DataTypes.DATE, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "区县人复核时间", |
|||
primaryKey: false, |
|||
field: "audit2ManIdTime", |
|||
autoIncrement: false |
|||
}, |
|||
rejectTime: { |
|||
type: DataTypes.DATE, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
comment: "驳回日期", |
|||
primaryKey: false, |
|||
field: "rejectTime", |
|||
autoIncrement: false |
|||
}, |
|||
departmentId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: true, |
|||
defaultValue: null, |
|||
primaryKey: false, |
|||
field: "department_id", |
|||
autoIncrement: false, |
|||
}, |
|||
}, { |
|||
tableName: "user_placeSecurityRecord", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.UserPlaceSecurityRecord = UserPlaceSecurityRecord; |
|||
|
|||
const Places = dc.models.Places; |
|||
UserPlaceSecurityRecord.belongsTo(Places, { foreignKey: 'placeId', targetKey: 'id' }); |
|||
Places.hasMany(UserPlaceSecurityRecord, { foreignKey: 'placeId', sourceKey: 'id' }); |
|||
|
|||
const User = dc.models.User; |
|||
UserPlaceSecurityRecord.belongsTo(User, { as: 'user', foreignKey: 'userId', targetKey: 'id' }); |
|||
User.hasMany(UserPlaceSecurityRecord, { foreignKey: 'userId', sourceKey: 'id' }); |
|||
|
|||
UserPlaceSecurityRecord.belongsTo(User, { as: 'audit1ManUser', foreignKey: 'audit1ManId', targetKey: 'id' }); |
|||
|
|||
UserPlaceSecurityRecord.belongsTo(User, { as: 'audit2ManUser', foreignKey: 'audit2ManId', targetKey: 'id' }); |
|||
|
|||
UserPlaceSecurityRecord.belongsTo(User, { as: 'rejectManUser', foreignKey: 'rejectManId', targetKey: 'id' }); |
|||
|
|||
return UserPlaceSecurityRecord; |
|||
}; |
@ -1,61 +0,0 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const UserResource = sequelize.define("userResource", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "post_resource_id_uindex" |
|||
}, |
|||
userId: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "user_id", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "id", |
|||
model: "post" |
|||
} |
|||
}, |
|||
resourceId: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "resource", |
|||
autoIncrement: false, |
|||
references: { |
|||
key: "code", |
|||
model: "resource" |
|||
} |
|||
} |
|||
}, { |
|||
tableName: "user_resource", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.UserResource = UserResource; |
|||
|
|||
const User = dc.models.User; |
|||
UserResource.belongsTo(User, { foreignKey: 'userId', targetKey: 'id' }); |
|||
User.hasMany(UserResource, { foreignKey: 'userId', sourceKey: 'id' }); |
|||
|
|||
const Resource = dc.models.Resource; |
|||
UserResource.belongsTo(Resource, { foreignKey: 'resourceId', targetKey: 'code' }); |
|||
Resource.hasMany(UserResource, { foreignKey: 'resourceId', sourceKey: 'code' }); |
|||
Resource.hasMany(Resource, { foreignKey: 'parentResource', sourceKey: 'code' }); |
|||
|
|||
return UserResource; |
|||
}; |
@ -0,0 +1,43 @@ |
|||
/* eslint-disable*/ |
|||
'use strict'; |
|||
|
|||
module.exports = dc => { |
|||
const DataTypes = dc.ORM; |
|||
const sequelize = dc.orm; |
|||
const Vehicle = sequelize.define("vehicle", { |
|||
id: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: true, |
|||
field: "id", |
|||
autoIncrement: true, |
|||
unique: "vehicle_id_uindex" |
|||
}, |
|||
name: { |
|||
type: DataTypes.STRING, |
|||
allowNull: false, |
|||
defaultValue: null, |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "name", |
|||
autoIncrement: false |
|||
}, |
|||
count: { |
|||
type: DataTypes.INTEGER, |
|||
allowNull: false, |
|||
defaultValue: "0", |
|||
comment: null, |
|||
primaryKey: false, |
|||
field: "count", |
|||
autoIncrement: false |
|||
} |
|||
}, { |
|||
tableName: "vehicle", |
|||
comment: "", |
|||
indexes: [] |
|||
}); |
|||
dc.models.Vehicle = Vehicle; |
|||
return Vehicle; |
|||
}; |
@ -1,13 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const Approval = require('../../controllers/approval/index'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {POST} approval/submit 提交审批、驳回修改. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup Approval |
|||
*/ |
|||
app.fs.api.logAttr['GET/approval/submit'] = { content: '提交审批、驳回修改', visible: true }; |
|||
router.post('/approval/submit', Approval.submitApproval); |
|||
}; |
@ -1,9 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const common = require('../../controllers/common'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
|
|||
router.get('/data-dictionary/:model', common.getDataDictionary); |
|||
router.put('/data-dictionary/:model', common.putDataDictionary); |
|||
}; |
@ -0,0 +1,15 @@ |
|||
'use strict'; |
|||
|
|||
const vehicle = require('../../controllers/data/vehicle'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
|
|||
app.fs.api.logAttr['GET/vehicle'] = { content: '获取运政列表', visible: true }; |
|||
router.get('/vehicle', vehicle.get); |
|||
|
|||
app.fs.api.logAttr['put/vehicle'] = { content: '编辑运政数据', visible: true }; |
|||
router.put('/vehicle', vehicle.edit); |
|||
|
|||
app.fs.api.logAttr['DEL/vehicle/:vehicleId'] = { content: '删除运政数据', visible: false }; |
|||
router.del('/vehicle/:vehicleId', vehicle.del); |
|||
}; |
@ -1,13 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const Department = require('../../controllers/department/index'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {GET} counties/list 获取南昌市下所有区县. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup Department |
|||
*/ |
|||
app.fs.api.logAttr['GET/counties/list'] = { content: '获取南昌市下所有区县', visible: true }; |
|||
router.get('/counties/list', Department.getCountiesList); |
|||
}; |
@ -1,28 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const Authority = require('../../controllers/organization/authority'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {GET} resource 查询所有权限码. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup Org |
|||
*/ |
|||
app.fs.api.logAttr['GET/resource'] = { content: '查询所有权限码', visible: true }; |
|||
router.get('resource', Authority.getResource); |
|||
/** |
|||
* @api {GET} user/resource 查询用户权限. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup Org |
|||
*/ |
|||
app.fs.api.logAttr['GET/user/resource'] = { content: '查询用户权限', visible: true }; |
|||
router.get('user/resource', Authority.getUserResource); |
|||
|
|||
/** |
|||
* @api {POST} user/resource 更新用户权限. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup Org |
|||
*/ |
|||
app.fs.api.logAttr['POST/user/resource'] = { content: '更新用户权限', visible: true }; |
|||
router.post('user/resource', Authority.updateUserRes); |
|||
}; |
@ -0,0 +1,34 @@ |
|||
'use strict'; |
|||
|
|||
const Department = require('../../controllers/organization/department') |
|||
const user = require('../../controllers/organization/user'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
app.fs.api.logAttr['GET/department'] = { content: '获取部门列表', visible: false }; |
|||
router.get('/department', Department.getdep); |
|||
|
|||
app.fs.api.logAttr['PUT/department'] = { content: '编辑部门信息', visible: false }; |
|||
router.put('/department', Department.editDep); |
|||
|
|||
app.fs.api.logAttr['DEL/department/:depId'] = { content: '删除部门信息', visible: false }; |
|||
router.del('/department/:depId', Department.delDep); |
|||
|
|||
|
|||
app.fs.api.logAttr['GET/department/:depId/user'] = { content: '获取部门下用户信息', visible: false }; |
|||
router.get('/department/:depId/user', user.getUser); |
|||
|
|||
app.fs.api.logAttr['POST/department/user'] = { content: '创建部门下用户信息', visible: false }; |
|||
router.post('/department/user', user.creatUser); |
|||
|
|||
app.fs.api.logAttr['PUT/department/user/:userId'] = { content: '修改部门下用户信息', visible: false }; |
|||
router.put('/department/user/:userId', user.updateUser); |
|||
|
|||
app.fs.api.logAttr['DEL/department/user/:userIds'] = { content: '删除部门下用户信息', visible: false }; |
|||
router.del('/department/user/:userIds', user.deleteUser); |
|||
|
|||
// app.fs.api.logAttr['PUT/department/user/:userId/resetPwd'] = { content: '重置用户密码', visible: false };
|
|||
// router.put('/department/user/:userId/resetPwd', user.resetPwd);
|
|||
|
|||
app.fs.api.logAttr['PUT/department/user/:userId/password'] = { content: '修改用户密码', visible: false }; |
|||
router.put('/department/user/:userId/password', user.setPassword); |
|||
}; |
@ -1,32 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const user = require('../../controllers/organization/user'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
|
|||
app.fs.api.logAttr['GET/organization/department'] = { content: '获取部门信息', visible: false }; |
|||
router.get('/organization/department', user.getDepMessage); |
|||
|
|||
app.fs.api.logAttr['GET/organization/department/:depId/user'] = { content: '获取部门下用户信息', visible: false }; |
|||
router.get('/organization/department/:depId/user', user.getUser); |
|||
|
|||
app.fs.api.logAttr['POST/organization/department/user'] = { content: '创建部门下用户信息', visible: false }; |
|||
router.post('/organization/department/user', user.creatUser); |
|||
|
|||
app.fs.api.logAttr['PUT/organization/department/user/:id'] = { content: '修改部门下用户信息', visible: false }; |
|||
router.put('/organization/department/user/:id', user.updateUser); |
|||
|
|||
app.fs.api.logAttr['DEL/organization/department/user/:ids'] = { content: '删除部门下用户信息', visible: false }; |
|||
router.del('/organization/department/user/:ids', user.deleteUser); |
|||
|
|||
app.fs.api.logAttr['PUT/organization/department/user/resetPwd/:id'] = { content: '重置用户密码', visible: false }; |
|||
router.put('/organization/department/user/resetPwd/:id', user.resetPwd); |
|||
|
|||
/** |
|||
* @api {PUT} user/password/:id 修改用户密码 |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup Organization |
|||
*/ |
|||
app.fs.api.logAttr['PUT/user/password/:userId'] = { content: '修改用户密码', visible: false }; |
|||
router.put('/user/password/:userId', user.updateUserPassword); |
|||
}; |
@ -1,70 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const placeSecurityRecord = require('../../controllers/placeSecurityRecord'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {POST} /add/placeSecurityRecord 提交填报信息/保存填报草稿. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['POST/add/placeSecurityRecord'] = { content: '提交填报信息/保存填报草稿', visible: true }; |
|||
router.post('/add/placeSecurityRecord', placeSecurityRecord.addPlaceSecurityRecord); |
|||
|
|||
/** |
|||
* @api {PUT} /placeSecurityRecord/:id 编辑填报信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['PUT/placeSecurityRecord/:id'] = { content: '编辑填报信息', visible: true }; |
|||
router.put('/placeSecurityRecord/:id', placeSecurityRecord.editPlaceSecurityRecord); |
|||
|
|||
/** |
|||
* @api {PUT} /placeSecurityRecord/:id 修改type字段 |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['PUT/updateType/:id'] = { content: '修改type字段', visible: true }; |
|||
router.put('/updateType/:id', placeSecurityRecord.updateType); |
|||
|
|||
/** |
|||
* @api {DELETE} /placeSecurityRecord/:id 删除填报信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['DELETE/placeSecurityRecord/:id'] = { content: '删除填报信息', visible: true }; |
|||
router.del('/placeSecurityRecord/:id', placeSecurityRecord.deletePlaceSecurityRecord); |
|||
|
|||
/** |
|||
* @api {GET} /placeSecurityRecord/:id 根据填报信息ID查询填报信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['GET/placeSecurityRecord/:id'] = { content: '根据填报信息ID查询填报信息', visible: true }; |
|||
router.get('/placeSecurityRecord/:id', placeSecurityRecord.getPlaceSecurityRecordById); |
|||
|
|||
/** |
|||
* @api {GET} /recently/placeSecurityRecord/:placeId 根据场所ID获取该场所最近用户填报信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['GET/recently/placeSecurityRecord/:placeId'] = { content: '根据场所ID获取该场所最近用户填报信息', visible: true }; |
|||
router.get('/recently/placeSecurityRecord/:placeId', placeSecurityRecord.getRecentlyPlaceSecurityRecordByPlaceId); |
|||
|
|||
/** |
|||
* @api {GET} /placeSecurityRecords 根据筛选条件获取用户填报信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['GET/placeSecurityRecords'] = { content: '根据筛选条件获取用户填报信息', visible: true }; |
|||
router.get('/placeSecurityRecords', placeSecurityRecord.getPlaceSecurityRecords); |
|||
|
|||
/** |
|||
* @api {GET} /approve/placeSecurityRecords 根据筛选条件获取用户审批填报信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup placeSecurityRecord |
|||
*/ |
|||
app.fs.api.logAttr['GET/approve/placeSecurityRecords'] = { content: '根据筛选条件获取用户审批填报信息', visible: true }; |
|||
router.get('/approve/placeSecurityRecords', placeSecurityRecord.getApprovePlaceSecurityRecords); |
|||
|
|||
}; |
@ -1,30 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const places = require('../../controllers/places'); |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {GET} /user/places/:userId 根据用户ID获取该用户创建的所有场所信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup places |
|||
*/ |
|||
app.fs.api.logAttr['GET/user/places/:userId'] = { content: '根据用户ID获取该用户创建的所有场所信息', visible: true }; |
|||
router.get('/user/places/:userId', places.getPlacesByUserId); |
|||
|
|||
/** |
|||
* @api {GET} /approveUser/places/:approveUserId 根据审批用户ID获取该审批用户范围内填报人创建的场所信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup places |
|||
*/ |
|||
app.fs.api.logAttr['GET/approveUser/places/:approveUserId'] = { content: '根据审批用户ID获取该审批用户范围内填报人创建的场所信息', visible: true }; |
|||
router.get('/approveUser/places/:approveUserId', places.getPlacesByApproveUserId); |
|||
|
|||
/** |
|||
* @api {GET} /all/places 获取所有场所信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup places |
|||
*/ |
|||
app.fs.api.logAttr['GET/all/places'] = { content: '获取所有场所信息', visible: true }; |
|||
router.get('/all/places', places.getAllPlaces); |
|||
|
|||
}; |
@ -1,41 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const report = require('../../controllers/report'); |
|||
const reportConfig = require('../../controllers/report/config') |
|||
const reportRectify = require('../../controllers/report/compile') |
|||
|
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {GET} report 报表. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup report |
|||
*/ |
|||
app.fs.api.logAttr['GET/report/list'] = { content: '报表下载列表', visible: true }; |
|||
router.get('/report/list', report.getReportList); |
|||
|
|||
// 报表配置
|
|||
app.fs.api.logAttr['GET/allAreas'] = { content: '获取全部区域', visible: true }; |
|||
router.get('/allAreas', reportConfig.getAreas); |
|||
|
|||
app.fs.api.logAttr['POST/report/config'] = { content: '添加报表配置', visible: true }; |
|||
router.post('/report/config', reportConfig.addReportConfig); |
|||
|
|||
app.fs.api.logAttr['GET/report/config'] = { content: '获取报表配置', visible: true }; |
|||
router.get('/report/config', reportConfig.getReportConfig); |
|||
|
|||
app.fs.api.logAttr['PUT/report/:reportId/config'] = { content: '编辑报表配置', visible: true }; |
|||
router.put('/report/:reportId/config', reportConfig.editReportConfig); |
|||
|
|||
app.fs.api.logAttr['DEL/report/:reportId/config'] = { content: '删除报表配置', visible: true }; |
|||
router.del('/report/:reportId/config', reportConfig.delReportConfig); |
|||
|
|||
// 报表编辑
|
|||
app.fs.api.logAttr['GET/report/rectify'] = { content: '获取合用场所安全隐患排查整治汇总表', visible: true }; |
|||
router.get('/report/rectify', reportRectify.getReportRectify); |
|||
|
|||
app.fs.api.logAttr['GET/report/rectify/detail'] = { content: '获取合用场所安全隐患排查整治汇总表详情', visible: true }; |
|||
router.get('/report/rectify/detail', reportRectify.getReportRectifyDetail); |
|||
|
|||
app.fs.api.logAttr['POST/report/rectify/detail'] = { content: '保存合用场所安全隐患排查整治汇总表编辑信息', visible: true }; |
|||
router.post('/report/rectify/detail', reportRectify.compileReportRectifyDetail); |
|||
}; |
@ -1,28 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const statistic = require('../../controllers/statistic') |
|||
module.exports = function (app, router, opts) { |
|||
/** |
|||
* @api {GET} getGovern 获取数据中台. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/daily/report/data/statistic'] = { content: '获取数据中台', visible: true }; |
|||
router.get('/daily/report/data/statistic', statistic.reportDailyStatistic); |
|||
/** |
|||
* @api {GET} getGovern 获取数据中台地区填报数量. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/daily/report/area/statistic'] = { content: '获取数据中台地区填报数量', visible: true }; |
|||
router.get('/daily/report/area/statistic', statistic.reportAreaStatistic); |
|||
|
|||
/** |
|||
* @api {GET} getGovern 获取填报管理数据. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/report/management/statistic'] = { content: '获取填报管理数据', visible: true }; |
|||
router.get('/report/management/statistic', statistic.dangerAreaQuery); |
|||
|
|||
} |
@ -1,78 +0,0 @@ |
|||
'use strict'; |
|||
|
|||
const wxReport = require('../../controllers/wxReport/index'); |
|||
module.exports = function (app, router, opts) { |
|||
/*******************首页-市级***************************/ |
|||
/** |
|||
* @api {GET} getDayReport 获取每日汇总. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/getDayReport'] = { content: '获取每日汇总', visible: true }; |
|||
router.get('/getDayReport', wxReport.getDayReport); |
|||
|
|||
/** |
|||
* @api {GET} getGovern 获取排查整治汇总. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/getGovern'] = { content: '获取排查整治汇总', visible: true }; |
|||
router.get('/getGovern', wxReport.getGovern); |
|||
|
|||
/** |
|||
* @api {GET} getGovernDetail 获取排查整治汇总详情. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/getGovernDetail'] = { content: '获取排查整治汇总详情', visible: true }; |
|||
router.get('/getGovernDetail', wxReport.getGovernDetail); |
|||
|
|||
/** |
|||
* @api {PUT} /operateGovern 确认整治汇总场所数据. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['PUT/operateGovern'] = { content: '确认整治汇总场所数据', visible: true }; |
|||
router.put('/operateGovern', wxReport.operateGovern); |
|||
|
|||
/** |
|||
* @api {GET} getSecurityRiskList 获取安全隐患排查详细数据列表. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/getSecurityRiskList'] = { content: '获取安全隐患排查详细数据列表', visible: true }; |
|||
router.get('/getSecurityRiskList', wxReport.getSecurityRiskList); |
|||
|
|||
/** |
|||
* @api {GET} /getHomeCount/:userId/:departmentId/:userRegionType 获取待处理数量. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/getHomeCount/:userId/:departmentId/:userRegionType'] = { content: '获取待处理数量', visible: true }; |
|||
router.get('/getHomeCount/:userId/:departmentId/:userRegionType', wxReport.getHomeCount); |
|||
|
|||
|
|||
/** |
|||
* @api {PUT} /operateReport/:id/:userId 每日汇总表上报. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['PUT/operateReport/:id/:userId'] = { content: '每日汇总表上报', visible: true }; |
|||
router.put('/operateReport/:id/:userId', wxReport.operateReport); |
|||
|
|||
/** |
|||
* @api {GET} /approve/reportCollections 根据筛选条件获取用户审核报表信息. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['GET/approve/reportCollections'] = { content: '根据筛选条件获取用户审核报表信息', visible: true }; |
|||
router.get('/approve/reportCollections', wxReport.getApproveReportCollections); |
|||
|
|||
/** |
|||
* @api {PUT} /operateGovernReport/:userId 上报排查整治汇总表. |
|||
* @apiVersion 1.0.0 |
|||
* @apiGroup wxReport |
|||
*/ |
|||
app.fs.api.logAttr['PUT/operateGovernReport/:userId'] = { content: '上报排查整治汇总表', visible: true }; |
|||
router.put('/operateGovernReport/:userId', wxReport.operateGovernReport); |
|||
} |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../mocha/bin/_mocha" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../mocha/bin/_mocha" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\mocha\bin\_mocha" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\mocha\bin\_mocha" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../acorn/bin/acorn" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../acorn/bin/acorn" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\acorn\bin\acorn" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\acorn\bin\acorn" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../adler-32/bin/adler32.njs" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../adler-32/bin/adler32.njs" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\adler-32\bin\adler32.njs" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\adler-32\bin\adler32.njs" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../codepage/bin/codepage.njs" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../codepage/bin/codepage.njs" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\codepage\bin\codepage.njs" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\codepage\bin\codepage.njs" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../crc32/bin/runner.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../crc32/bin/runner.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\crc32\bin\runner.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\crc32\bin\runner.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../detect-libc/bin/detect-libc.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../detect-libc/bin/detect-libc.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\detect-libc\bin\detect-libc.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\detect-libc\bin\detect-libc.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../escodegen/bin/escodegen.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../escodegen/bin/escodegen.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\escodegen\bin\escodegen.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\escodegen\bin\escodegen.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../escodegen/bin/esgenerate.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../escodegen/bin/esgenerate.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\escodegen\bin\esgenerate.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\escodegen\bin\esgenerate.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../esprima/bin/esparse.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../esprima/bin/esparse.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\esprima\bin\esparse.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\esprima\bin\esparse.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../esprima/bin/esvalidate.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../esprima/bin/esvalidate.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\esprima\bin\esvalidate.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\esprima\bin\esvalidate.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../flat/cli.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../flat/cli.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\flat\cli.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\flat\cli.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../handlebars/bin/handlebars" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../handlebars/bin/handlebars" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\handlebars\bin\handlebars" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\handlebars\bin\handlebars" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../he/bin/he" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../he/bin/he" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\he\bin\he" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\he\bin\he" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../@apidevtools/json-schema-ref-parser/node_modules/js-yaml/bin/js-yaml.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../@apidevtools/json-schema-ref-parser/node_modules/js-yaml/bin/js-yaml.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\@apidevtools\json-schema-ref-parser\node_modules\js-yaml\bin\js-yaml.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\@apidevtools\json-schema-ref-parser\node_modules\js-yaml\bin\js-yaml.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../mime/cli.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../mime/cli.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\mime\cli.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\mime\cli.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../mkdirp/bin/cmd.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../mkdirp/bin/cmd.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\mkdirp\bin\cmd.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\mkdirp\bin\cmd.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../mocha/bin/mocha" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../mocha/bin/mocha" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\mocha\bin\mocha" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\mocha\bin\mocha" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../os-name/cli.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../os-name/cli.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\os-name\cli.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\os-name\cli.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../osx-release/cli.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../osx-release/cli.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\osx-release\cli.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\osx-release\cli.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../prebuild-install/bin.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../prebuild-install/bin.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\prebuild-install\bin.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\prebuild-install\bin.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../printj/bin/printj.njs" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../printj/bin/printj.njs" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\printj\bin\printj.njs" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\printj\bin\printj.njs" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../rc/cli.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../rc/cli.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\rc\cli.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\rc\cli.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../resolve/bin/resolve" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../resolve/bin/resolve" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\resolve\bin\resolve" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\resolve\bin\resolve" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../rimraf/bin.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../rimraf/bin.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\rimraf\bin.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\rimraf\bin.js" %* |
|||
) |
@ -0,0 +1,15 @@ |
|||
#!/bin/sh |
|||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") |
|||
|
|||
case `uname` in |
|||
*CYGWIN*) basedir=`cygpath -w "$basedir"`;; |
|||
esac |
|||
|
|||
if [ -x "$basedir/node" ]; then |
|||
"$basedir/node" "$basedir/../@fs/attachment/node_modules/semver/bin/semver.js" "$@" |
|||
ret=$? |
|||
else |
|||
node "$basedir/../@fs/attachment/node_modules/semver/bin/semver.js" "$@" |
|||
ret=$? |
|||
fi |
|||
exit $ret |
@ -0,0 +1,7 @@ |
|||
@IF EXIST "%~dp0\node.exe" ( |
|||
"%~dp0\node.exe" "%~dp0\..\@fs\attachment\node_modules\semver\bin\semver.js" %* |
|||
) ELSE ( |
|||
@SETLOCAL |
|||
@SET PATHEXT=%PATHEXT:;.JS;=;% |
|||
node "%~dp0\..\@fs\attachment\node_modules\semver\bin\semver.js" %* |
|||
) |
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue