更新HAZOP分析可能性接口

master
pan 4 years ago
parent b1e49bc332
commit 6d097af3cb
  1. 111
      routes/project/hazop.js
  2. 2
      routes/project/prepare.js

@ -15,6 +15,7 @@ router.get('/analyse/:id', function (req, res, next) {
t:/\d{3}/
}]
})
sst.si.push({t:`<span style="color:${Mock.Random.color()}">${Mock.Random.word()}</span><span style="color:${Mock.Random.color()}">${Mock.Random.word()}</span>`})
var data=Mock.mock({
...mock.ok(`HAZOP分析获取节点${req.params.id}数据成功`),
@ -23,7 +24,7 @@ router.get('/analyse/:id', function (req, res, next) {
sst,
sheetData:{
row:function (){
let rowCount=20
let rowCount=50
let colCount=18
let rows=Array.from(new Array(rowCount).keys())
let cols=Array.from(new Array(colCount).keys())
@ -34,13 +35,22 @@ router.get('/analyse/:id', function (req, res, next) {
c:[]
}
for(let col in cols){
col=String.fromCharCode(+col+"A".charCodeAt())
rows[row].c.push({
r:`${String.fromCharCode(+col+"A".charCodeAt())}${+row+1}`,
s:1,
t:'s',
v:Mock.Random.integer(0,sst.si.length-1)
})
}
r: `${col}${+row + 1}`,
s: 1,
t: 's',
v: (function (col) {
switch (col) {
case 'C':
return sst.si.length - 1
default:
return Mock.Random.integer(0, sst.si.length - 2)
}
})(col)
}
)
}
}
return rows
}
@ -55,13 +65,98 @@ router.get('/analyse/:id', function (req, res, next) {
res.json(data)
})
//获取当前项目使用矩阵
router.get('/analyse/matrix/:name', function (req, res, next) {
var data=Mock.mock({
...mock.ok('获取矩阵详情成功'),
...{
body:{
id:()=>Mock.Random.natural(1,1000),
"useProjectId|0-2":[/\d{3}/],
info:{
name:`matrix${Mock.Random.natural(5,8)}`,
desc:`matrix${Mock.Random.natural(5,8)}`,
x:()=>Mock.Random.natural(5,8),
y:()=>Mock.Random.natural(5,8),
explain:()=>Mock.Random.sentence(3, 5)
},
severity:function (){
const severity=[]
for(let i in Array.from(new Array(this.info.y).keys())){
severity.push({
//等级
level:Mock.Random.natural(1,9),
//严重程度
severity:Mock.Random.natural(1,9),
//人员
personnel:Mock.Random.word(),
//财产
property:Mock.Random.word(),
//环境
environment:Mock.Random.word(),
//声誉
prestige:Mock.Random.word()
})
}
return severity
},
possibility:function (){
const possibility=[]
for(let i in Array.from(new Array(this.info.x).keys())){
possibility.push({
//等级
level:Mock.Random.natural(1,this.info.x),
//概率值
probability:Mock.Random.natural(1,100)/100,
//描述
desc:Mock.Random.sentence(3, 5)
})
}
return possibility
},
'level|3-5':[{
id:/\d{3}/,
//Code
code:/\d{1}/,
//颜色
color:()=>Mock.Random.color(),
//描述
desc:()=>Mock.Random.sentence(3, 5),
//风险等级
level:/\d{1}/,
//应采取措施
measure:()=>Mock.Random.sentence(3, 5),
//实施期限
date:()=>Mock.Random.sentence(3, 5),
//备注
note:()=>Mock.Random.sentence(3, 5)
}],
matrix:function (){
const matrix=[]
for(let i in Array.from(new Array(this.info.y).keys())){
const child=[]
for(let j in Array.from(new Array(this.info.x).keys())){
child.push(this.level[Mock.Random.natural(0,this.level.length-1)])
}
matrix.push(child)
}
return matrix
}
}
}
})
res.json(data)
})
route.addContextMenu(router,'analyse/:id','HAZOP分析')
//HAZOP偏差知识库
router.get('/analyse/repository/:know', function (req, res, next) {
var data=mock.page(req,`查询${req.params.know}知识库成功`,{
//选项值
key: ()=>Mock.Random.integer(1,5),
key: ()=>Mock.Random.word(),
//描述
value: ()=>Mock.Random.word()
})

@ -26,7 +26,7 @@ router.get('/hdivide', function (req, res, next) {
router.get('/hdivide/node', function (req, res, next) {
var data=mock.page(req,'获取HAOZP节点划分成功',{
//节点
id:/\d{3}/,
id:666,
//节点
node:()=>Mock.Random.word(),
//节点编号

Loading…
Cancel
Save