|
@@ -2,6 +2,7 @@
|
|
import text from "@/utils/handsontable/mainText"
|
|
import text from "@/utils/handsontable/mainText"
|
|
import tools from "@/utils/scan/tools"
|
|
import tools from "@/utils/scan/tools"
|
|
import fieldData from "@/utils/handsontable/fillterField"
|
|
import fieldData from "@/utils/handsontable/fillterField"
|
|
|
|
+import dataTypeMap from "./dataTypeMap"
|
|
|
|
|
|
let inputModeArr = ["A1", "A2", "B1", "C5", "D1", "D2", "E1", "L", "L1", "L2", "F1", "F2", "M", "Own"]
|
|
let inputModeArr = ["A1", "A2", "B1", "C5", "D1", "D2", "E1", "L", "L1", "L2", "F1", "F2", "M", "Own"]
|
|
//在编辑模式下并且勾选隐藏自动填充的信息点不显示的字段
|
|
//在编辑模式下并且勾选隐藏自动填充的信息点不显示的字段
|
|
@@ -141,6 +142,7 @@ let partsAddNoShow = [
|
|
]
|
|
]
|
|
const showTools = {
|
|
const showTools = {
|
|
inputModeArr: ["A1", "A2", "B1", "B2", "C5", "D1", "D1L", "D2", "E1", "E2", "L", "L1", "L2", "F1", "F2", "M"],
|
|
inputModeArr: ["A1", "A2", "B1", "B2", "C5", "D1", "D1L", "D2", "E1", "E2", "L", "L1", "L2", "F1", "F2", "M"],
|
|
|
|
+ // ["A1", "A2", "B1", "C5", "D1", "D2", "E1", "L", "L1", "L2", "F1", "F2", "M", "Own"]
|
|
addArr: () => {
|
|
addArr: () => {
|
|
return cutArr
|
|
return cutArr
|
|
},
|
|
},
|
|
@@ -181,7 +183,14 @@ const showTools = {
|
|
})
|
|
})
|
|
return falg
|
|
return falg
|
|
},
|
|
},
|
|
-
|
|
|
|
|
|
+ // 将映射表枚举值转为数组
|
|
|
|
+ mapToArr: () => {
|
|
|
|
+ const arr = []
|
|
|
|
+ for(let key in dataTypeMap) {
|
|
|
|
+ arr.push(dataTypeMap[key])
|
|
|
|
+ }
|
|
|
|
+ return arr;
|
|
|
|
+ },
|
|
//插入需要的关系
|
|
//插入需要的关系
|
|
insertionRea: (data) => {
|
|
insertionRea: (data) => {
|
|
cutArr.map(item => {
|
|
cutArr.map(item => {
|
|
@@ -334,117 +343,118 @@ const showTools = {
|
|
})
|
|
})
|
|
return arr
|
|
return arr
|
|
},
|
|
},
|
|
- changeTypes(arr, onlyRead, isWatch, allMess, falg = false, taizhang = false) {
|
|
|
|
- let data = arr.map(item => {
|
|
|
|
- if (falg) {
|
|
|
|
- if (item.firstTag == "控制参数" ||
|
|
|
|
- item.firstTag == "设定参数" ||
|
|
|
|
- item.firstTag == "运行参数") {
|
|
|
|
- return undefined
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (item.code == "BIMLocation") {
|
|
|
|
- return undefined
|
|
|
|
- }
|
|
|
|
- if (onlyRead || inputModeArr.indexOf(item.inputMode) > -1) {
|
|
|
|
- if (item.Visible || !allMess) {
|
|
|
|
- //固定不显示的code
|
|
|
|
- if (!showTools.cantShow(item.code) && !onlyRead && !taizhang) {
|
|
|
|
- return undefined
|
|
|
|
- }
|
|
|
|
|
|
+ // 弃用
|
|
|
|
+ // changeTypes(arr, onlyRead, isWatch, allMess, falg = false, taizhang = false) {
|
|
|
|
+ // let data = arr.map(item => {
|
|
|
|
+ // if (falg) {
|
|
|
|
+ // if (item.firstTag == "控制参数" ||
|
|
|
|
+ // item.firstTag == "设定参数" ||
|
|
|
|
+ // item.firstTag == "运行参数") {
|
|
|
|
+ // return undefined
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // if (item.code == "BIMLocation") {
|
|
|
|
+ // return undefined
|
|
|
|
+ // }
|
|
|
|
+ // if (onlyRead || inputModeArr.indexOf(item.inputMode) > -1) {
|
|
|
|
+ // if (item.Visible || !allMess) {
|
|
|
|
+ // //固定不显示的code
|
|
|
|
+ // if (!showTools.cantShow(item.code) && !onlyRead && !taizhang) {
|
|
|
|
+ // return undefined
|
|
|
|
+ // }
|
|
|
|
|
|
- if (!showTools.isShow(item.code) && !taizhang && !taizhang) {
|
|
|
|
- if (isWatch && !onlyRead) {
|
|
|
|
- return undefined
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ // if (!showTools.isShow(item.code) && !taizhang && !taizhang) {
|
|
|
|
+ // if (isWatch && !onlyRead) {
|
|
|
|
+ // return undefined
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
|
|
- if (item.code == "EquipQRCode") {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- renderer: text.lookQRCode,
|
|
|
|
- readOnly: true
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ // if (item.code == "EquipQRCode") {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // renderer: text.lookQRCode,
|
|
|
|
+ // readOnly: true
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
|
|
- if (item.inputMode == "D1") {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- renderer: tools.customDropdownRenderer,
|
|
|
|
- editor: "chosen",
|
|
|
|
- chosenOptions: {
|
|
|
|
- // multiple: true,//多选
|
|
|
|
- data: item.dataSource || ""
|
|
|
|
- }
|
|
|
|
- };
|
|
|
|
- } else if (item.inputMode == "A1" || item.inputMode == "A2") {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- type: "numeric",
|
|
|
|
- numericFormat: {
|
|
|
|
- pattern: "0,0.00"
|
|
|
|
- // culture: 'de-DE' // use this for EUR (German),
|
|
|
|
- // more cultures available on http://numbrojs.com/languages.html
|
|
|
|
- }
|
|
|
|
- };
|
|
|
|
- } else if (item.inputMode == "C5") {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- type: "date",
|
|
|
|
- dateFormat: "YYYY-MM-DD",
|
|
|
|
- correctFormat: true
|
|
|
|
- };
|
|
|
|
- } else if (
|
|
|
|
- item.inputMode == "B1" ||
|
|
|
|
- item.inputMode == "L" ||
|
|
|
|
- item.inputMode == "L1" ||
|
|
|
|
- item.inputMode == "L2" ||
|
|
|
|
- item.inputMode == "M"
|
|
|
|
- ) {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code
|
|
|
|
- };
|
|
|
|
- } else if (
|
|
|
|
- item.inputMode == "X"
|
|
|
|
- // item.inputMode == "L1" ||
|
|
|
|
- // item.inputMode == "L2"
|
|
|
|
- ) {
|
|
|
|
- // return undefined
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- readOnly: true
|
|
|
|
- };
|
|
|
|
- } else if (item.inputMode == "D2") {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- renderer: tools.customDropdownRenderer,
|
|
|
|
- editor: "chosen",
|
|
|
|
- chosenOptions: {
|
|
|
|
- multiple: true, //多选
|
|
|
|
- data: item.dataSource || ""
|
|
|
|
- }
|
|
|
|
- };
|
|
|
|
- } else if (item.inputMode == "Own" && !onlyRead) {
|
|
|
|
- return {
|
|
|
|
- data: "Infos." + item.code,
|
|
|
|
- renderer: text.idType,
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- return {
|
|
|
|
- data: "infos." + item.code
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- return undefined
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- return false
|
|
|
|
- }
|
|
|
|
|
|
+ // if (item.inputMode == "D1") {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // renderer: tools.customDropdownRenderer,
|
|
|
|
+ // editor: "chosen",
|
|
|
|
+ // chosenOptions: {
|
|
|
|
+ // // multiple: true,//多选
|
|
|
|
+ // data: item.dataSource || ""
|
|
|
|
+ // }
|
|
|
|
+ // };
|
|
|
|
+ // } else if (item.inputMode == "A1" || item.inputMode == "A2") {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // type: "numeric",
|
|
|
|
+ // numericFormat: {
|
|
|
|
+ // pattern: "0,0.00"
|
|
|
|
+ // // culture: 'de-DE' // use this for EUR (German),
|
|
|
|
+ // // more cultures available on http://numbrojs.com/languages.html
|
|
|
|
+ // }
|
|
|
|
+ // };
|
|
|
|
+ // } else if (item.inputMode == "C5") {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // type: "date",
|
|
|
|
+ // dateFormat: "YYYY-MM-DD",
|
|
|
|
+ // correctFormat: true
|
|
|
|
+ // };
|
|
|
|
+ // } else if (
|
|
|
|
+ // item.inputMode == "B1" ||
|
|
|
|
+ // item.inputMode == "L" ||
|
|
|
|
+ // item.inputMode == "L1" ||
|
|
|
|
+ // item.inputMode == "L2" ||
|
|
|
|
+ // item.inputMode == "M"
|
|
|
|
+ // ) {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code
|
|
|
|
+ // };
|
|
|
|
+ // } else if (
|
|
|
|
+ // item.inputMode == "X"
|
|
|
|
+ // // item.inputMode == "L1" ||
|
|
|
|
+ // // item.inputMode == "L2"
|
|
|
|
+ // ) {
|
|
|
|
+ // // return undefined
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // readOnly: true
|
|
|
|
+ // };
|
|
|
|
+ // } else if (item.inputMode == "D2") {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // renderer: tools.customDropdownRenderer,
|
|
|
|
+ // editor: "chosen",
|
|
|
|
+ // chosenOptions: {
|
|
|
|
+ // multiple: true, //多选
|
|
|
|
+ // data: item.dataSource || ""
|
|
|
|
+ // }
|
|
|
|
+ // };
|
|
|
|
+ // } else if (item.inputMode == "Own" && !onlyRead) {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "Infos." + item.code,
|
|
|
|
+ // renderer: text.idType,
|
|
|
|
+ // }
|
|
|
|
+ // } else {
|
|
|
|
+ // return {
|
|
|
|
+ // data: "infos." + item.code
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // } else {
|
|
|
|
+ // return undefined
|
|
|
|
+ // }
|
|
|
|
+ // } else {
|
|
|
|
+ // return false
|
|
|
|
+ // }
|
|
|
|
|
|
|
|
|
|
- }).filter(item => item);
|
|
|
|
- return data
|
|
|
|
- },
|
|
|
|
|
|
+ // }).filter(item => item);
|
|
|
|
+ // return data
|
|
|
|
+ // },
|
|
|
|
|
|
showTypes(arr, onlyRead, isWatch, allMess, falg = false, typeArr = false) {
|
|
showTypes(arr, onlyRead, isWatch, allMess, falg = false, typeArr = false) {
|
|
let data = arr.map(item => {
|
|
let data = arr.map(item => {
|
|
@@ -1197,58 +1207,58 @@ const showTools = {
|
|
if (!item.inputMode) {
|
|
if (!item.inputMode) {
|
|
console.log('新版字典无输入类型', item)
|
|
console.log('新版字典无输入类型', item)
|
|
}
|
|
}
|
|
-
|
|
|
|
- if (item.inputMode == "D1" || item.inputMode == "E1" || item.inputMode == "D1L") { //单选输入
|
|
|
|
- return {
|
|
|
|
- data: item.path,
|
|
|
|
- renderer: tools.customDropdownRenderer,
|
|
|
|
- editor: "chosen",
|
|
|
|
- readOnly: !item.editable,
|
|
|
|
- chosenOptions: {
|
|
|
|
- data: item.dataSource ? tools.formatDataSource(item.dataSource) : ""
|
|
|
|
- }
|
|
|
|
- };
|
|
|
|
- } else if (item.inputMode == "D2" || item.inputMode == "E2") { //多选输入
|
|
|
|
- return {
|
|
|
|
- data: item.path,
|
|
|
|
- renderer: tools.customDropdownRenderer,
|
|
|
|
- editor: "chosen",
|
|
|
|
- readOnly: !item.editable,
|
|
|
|
- chosenOptions: {
|
|
|
|
- multiple: true, //多选
|
|
|
|
- data: item.dataSource ? tools.formatDataSource(item.dataSource) : ""
|
|
|
|
|
|
+ if (item.category == 'STATIC') {
|
|
|
|
+ if (item.dataType == dataTypeMap.ENUM || item.dataType == dataTypeMap.BOOLEAN) { //单选输入
|
|
|
|
+ return {
|
|
|
|
+ data: item.path,
|
|
|
|
+ renderer: tools.customDropdownRenderer,
|
|
|
|
+ editor: "chosen",
|
|
|
|
+ readOnly: !item.editable,
|
|
|
|
+ chosenOptions: {
|
|
|
|
+ data: item.dataSource ? tools.formatDataSource(item.dataSource) : ""
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+ } else if (item.dataType == dataTypeMap.MENUM) { //多选输入
|
|
|
|
+ return {
|
|
|
|
+ data: item.path,
|
|
|
|
+ renderer: tools.customDropdownRenderer,
|
|
|
|
+ editor: "chosen",
|
|
|
|
+ readOnly: !item.editable,
|
|
|
|
+ chosenOptions: {
|
|
|
|
+ multiple: true, //多选
|
|
|
|
+ data: item.dataSource ? tools.formatDataSource(item.dataSource) : ""
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+ } else if (item.dataType == dataTypeMap.DOUBLE || item.dataType == dataTypeMap.INTEGER) { // 数字输入
|
|
|
|
+ return {
|
|
|
|
+ data: item.path,
|
|
|
|
+ type: "numeric",
|
|
|
|
+ readOnly: !item.editable,
|
|
|
|
+ numericFormat: {
|
|
|
|
+ pattern: "0,0.00"
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+ } else if (item.dataType == dataTypeMap.DATETIME) { // 日期输入
|
|
|
|
+ return {
|
|
|
|
+ data: item.path,
|
|
|
|
+ type: "date",
|
|
|
|
+ dateFormat: item.formater || "YYYYMMDDHHmmss",
|
|
|
|
+ readOnly: !item.editable,
|
|
|
|
+ correctFormat: true
|
|
|
|
+ };
|
|
|
|
+ } else if (item.dataType == dataTypeMap.STRING) { // 文本输入
|
|
|
|
+ return {
|
|
|
|
+ data: item.path,
|
|
|
|
+ readOnly: !item.editable
|
|
}
|
|
}
|
|
- };
|
|
|
|
- } else if (item.inputMode == "A1" || item.inputMode == "A2") { //数字输入
|
|
|
|
- return {
|
|
|
|
- data: item.path,
|
|
|
|
- type: "numeric",
|
|
|
|
- readOnly: !item.editable,
|
|
|
|
- numericFormat: {
|
|
|
|
- pattern: "0,0.00"
|
|
|
|
|
|
+ } else { // (未支持的输入方式)暂不支持编辑
|
|
|
|
+ return {
|
|
|
|
+ data: item.path,
|
|
|
|
+ readOnly: !item.editable
|
|
}
|
|
}
|
|
- };
|
|
|
|
- } else if (item.inputMode == "C5") { //日期输入
|
|
|
|
- return {
|
|
|
|
- data: item.path,
|
|
|
|
- type: "date",
|
|
|
|
- dateFormat: "YYYYMMDDHHmmss",
|
|
|
|
- readOnly: !item.editable,
|
|
|
|
- correctFormat: true
|
|
|
|
- };
|
|
|
|
- } else if (item.inputMode == "B1" ||
|
|
|
|
- item.inputMode == "B2" ||
|
|
|
|
- item.inputMode == "F1" ||
|
|
|
|
- item.inputMode == "F2" ||
|
|
|
|
- item.inputMode == "L1" ||
|
|
|
|
- item.inputMode == "L2" ||
|
|
|
|
- item.inputMode == "L" ||
|
|
|
|
- item.inputMode == "M") { //文本输入
|
|
|
|
- return {
|
|
|
|
- data: item.path,
|
|
|
|
- readOnly: !item.editable
|
|
|
|
}
|
|
}
|
|
- } else { //(未支持的输入方式)暂不支持编辑
|
|
|
|
|
|
+ } else { // 动态信息点
|
|
|
|
+ console.log(`%c${item.category}-${item.dataType}`,`color:#c215e1;font-size: 20px;background:#434101`);
|
|
return {
|
|
return {
|
|
data: item.path,
|
|
data: item.path,
|
|
readOnly: !item.editable
|
|
readOnly: !item.editable
|