| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281 |
- const utils = {
- // 设定通知人员的提交数据处理
- setNoticeUserData: function(data) {
- let arr = []
- data.forEach(item => {
- let obj = {
- id: item.id,
- sendMessage: item.sendMessage || 0,
- sendEmail: item.sendEmail || 0,
- sendWechat: item.sendWechat || 0
- }
- arr.push(obj)
- })
- return arr
- },
- // 获取objType名称
- getObjName(code) {
- let name = '---'
- switch (code) {
- case 'building':
- name = '建筑'
- break
- case 'floor':
- name = '楼层'
- break
- case 'space':
- name = '空间'
- break
- case 'system':
- name = '系统类'
- break
- case 'facility':
- name = '设备类'
- break
- }
- return name
- },
- // 通过查看报警通知的原始数据=》树形结构
- userToTree(userData) {
- let obj = {}
- userData.forEach(ele => {
- obj[ele.id] = {}
- obj[ele.id].userInfo = ele
- })
- return obj
- },
- //报警条目 =》 树形结构
- alarmToTree(treeObj, userId, alarmData) {
- treeObj[userId].alarmData = alarmData
- return treeObj
- },
- //树形结构转为正常数据
- treeToData(treeObj) {
- // console.log('utils---------------------------------------------')
- // console.log(treeObj)
- let arr = []
- for (let key in treeObj) {
- var index1 = null
- var index2 = null
- var index3 = null
- // console.log(treeObj[key])
- let obj = {}
- let userValue = treeObj[key]
- Object.assign(obj, userValue.userInfo)
- obj.level = 1
- obj.isExpend = false
- obj.isLow = true
- obj.isShow = true
- obj.index = arr.length
- obj.pid = null
- index1 = arr.length
- arr.push(obj) //1级数据
- if (userValue.alarmData) {
- let alarmArr = userValue.alarmData
- var objType = alarmArr[0].objType
- var count = 0
- let userInfoData = Object.assign({}, userValue.userInfo)
- alarmArr.forEach(item => {
- // console.log("_________________________________________")
- // console.log(item)
- if (item.objType == objType) {
- if (count == 0) {
- let obj2 = {}
- Object.assign(obj2, userInfoData)
- obj2.alarmId = item.id
- obj2.notifyUserList = item.notifyUserList
- // obj2.alarmLevel = item.level;
- obj2.objName = item.objName
- // obj2.instanceInfo = item.instanceInfo;
- // obj2.alarmName = item.name;
- obj2.level = 2
- obj2.isExpend = false
- obj2.isLow = true
- obj2.isShow = false
- obj2.index = arr.length
- obj2.pid = index1
- index2 = arr.length
- arr.push(obj2) //2级
- let obj3 = {}
- Object.assign(obj3, userInfoData)
- obj3.alarmId = item.id
- obj3.notifyUserList = item.notifyUserList
- // obj3.alarmLevel = item.level;
- // obj3.objName = item.objName;
- obj3.instanceInfo = item.instanceInfo
- // obj3.alarmName = item.name;
- obj3.level = 3
- obj3.isExpend = false
- obj3.isLow = true
- obj3.isShow = false
- obj3.index = arr.length
- obj3.pid = index2
- index3 = arr.length
- arr.push(obj3) //3级
- let obj4 = {}
- Object.assign(obj4, userInfoData)
- obj4.alarmId = item.id
- obj4.notifyUserList = item.notifyUserList
- obj4.alarmLevel = item.level
- // obj4.objName = item.objName;
- // obj4.instanceInfo = item.instanceInfo;
- obj4.alarmName = item.name
- obj4.level = 4
- obj4.isExpend = false
- obj4.isLow = false
- obj4.isShow = false
- obj4.index = arr.length
- obj4.pid = index3
- arr.push(obj4) //4级
- count++
- } else {
- //同4
- let obj4 = {}
- Object.assign(obj4, userInfoData)
- obj4.alarmId = item.id
- obj4.notifyUserList = item.notifyUserList
- obj4.alarmLevel = item.level
- // obj4.objName = item.objName;
- // obj4.instanceInfo = item.instanceInfo;
- obj4.alarmName = item.name
- obj4.level = 4
- obj4.isExpend = false
- obj4.isLow = false
- obj4.isShow = false
- obj4.index = arr.length
- obj4.pid = index3
- arr.push(obj4) //4级
- }
- } else {
- count = 1
- objType = item.objType
- //同上2-4
- let obj2 = {}
- Object.assign(obj2, userInfoData)
- obj2.alarmId = item.id
- // obj2.notifyUserList = item.notifyUserList;
- // obj2.alarmLevel = item.level;
- obj2.objName = item.objName
- // obj2.instanceInfo = item.instanceInfo;
- // obj2.alarmName = item.name;
- obj2.level = 2
- obj2.isExpend = false
- obj2.isLow = true
- obj2.isShow = false
- obj2.index = arr.length
- obj2.pid = index1
- index2 = arr.length
- arr.push(obj2) //2级
- let obj3 = {}
- Object.assign(obj3, userInfoData)
- obj3.alarmId = item.id
- // obj3.notifyUserList = item.notifyUserList;
- // obj3.alarmLevel = item.level;
- // obj3.objName = item.objName;
- obj3.instanceInfo = item.instanceInfo
- // obj3.alarmName = item.name;
- obj3.level = 3
- obj3.isExpend = false
- obj3.isLow = true
- obj3.isShow = false
- obj3.index = arr.length
- obj3.pid = index2
- index3 = arr.length
- arr.push(obj3) //3级
- let obj4 = {}
- Object.assign(obj4, userInfoData)
- obj4.alarmId = item.id
- obj4.notifyUserList = item.notifyUserList
- obj4.alarmLevel = item.level
- // obj4.objName = item.objName;
- // obj4.instanceInfo = item.instanceInfo;
- obj4.alarmName = item.name
- obj4.level = 4
- obj4.isExpend = false
- obj4.isLow = false
- obj4.isShow = false
- obj4.index = arr.length
- obj4.pid = index3
- arr.push(obj4) //4级
- }
- })
- }
- }
- return arr
- },
- // 增加通知获取报警通知人员的多条报警条目
- getAlarmItemAndNotice(tableData) {
- let alarmConfigResultIdList = []
- let alarmIdArr = []
- tableData.forEach(item => {
- if (item.sendEmail || item.sendMessage || item.sendWechat) {
- let obj = {
- alarmConfigResultId: item.id,
- sendEmail: item.sendEmail,
- sendMessage: item.sendMessage,
- sendWechat: item.sendWechat
- }
- alarmConfigResultIdList.push(obj)
- alarmIdArr.push(item.id)
- }
- })
- return { alarmConfigResultIdList, alarmIdArr }
- },
- // 批量适用于人员处理
- applyUserHandle(data) {
- let arr = []
- data.forEach(item => {
- if (item.sendMessage || item.sendEmail || item.sendWechat) {
- let obj = {
- id: item.id,
- sendMessage: item.sendMessage,
- sendEmail: item.sendEmail,
- sendWechat: item.sendWechat
- }
- arr.push(obj)
- }
-
- })
- return arr
- },
- // 判断手机号是否重复
- repetePhone(arr, row) {
- let flag = true;
- let farr = arr.filter(item => {
- return item.phone == row.phone
- })
- if (farr.length > 1) {
- flag = false
- }
- return flag;
- },
- // 整合物理实体字典
- entityDict(oldArr) {
- let obj = {};
- oldArr.forEach((ele, index) => {
- obj[ele.id] = ele
- })
- return obj;
- },
- // 获取根据objtype获取名字前缀
- objPreName: function (objType) {
- let pre = null;
- switch (objType) {
- case "building":
- pre = "Build"; break;
- case "floor":
- pre = "Floor"; break;
- case "space":
- pre = "Room"; break;
- case "system":
- pre = "Sys"; break;
- case "facility":
- pre = "Equip"; break;
- }
- return pre;
- }
- }
- export default utils
|