{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Device\\deviceManage\\components\\modle\\EquipFunctionDialog.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Device\\deviceManage\\components\\modle\\EquipFunctionDialog.vue","mtime":1667545182426},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["import \"core-js/modules/es6.number.constructor\";\nimport \"core-js/modules/es6.function.name\";\nimport _toConsumableArray from \"D:/jenkins/workspace/bzzgj-fvue/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.string.iterator\";\nimport \"core-js/modules/es6.set\";\nimport \"regenerator-runtime/runtime\";\nimport _asyncToGenerator from \"D:/jenkins/workspace/bzzgj-fvue/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport PhysicalModel from '@/api/device/PhysicalModel.js';\nimport dictUtils from '@/components/dict/DictSelectUtils.js';\nexport default {\n name: 'FunctionDialog',\n props: {\n pId: {\n type: String,\n default: ''\n },\n parameterID: {\n type: Object,\n default: function _default() {\n return;\n }\n }\n },\n components: {},\n data: function data() {\n return {\n jsons: true,\n dtype: true,\n jsons2: true,\n dtype2: true,\n // 输出显示\n time: '时间',\n //时间&日期的lable\n showFormData: '',\n //用于判断类型显示不同输出\n datatimes: [],\n // 用于动态绑定时间/日期的下拉框\n lableName: '',\n //布尔&枚举lable\n boolShow: false,\n //禁用布尔前面的key\n dialogData: [{}],\n //布尔&枚举存储数据\n // 字典\n dateFormarts: [],\n dateTimeFormarts: [],\n dataTypes: [],\n dataUnits: [],\n activeCollapse: '1',\n title: '新增',\n showFormDia: false,\n parameters: {\n code: '',\n isAsyn: 0,\n memo: '',\n name: '',\n outDataFormart: '',\n outDataType: '',\n outDataUnit: '',\n params: [{\n paramCode: '',\n paramDataFormart: '',\n paramDataType: '',\n paramName: '',\n // 输入显示\n showInputData: '',\n time2: '时间',\n //时间&日期的lable\n datatimes2: [],\n // 用于动态绑定时间/日期的下拉框\n lableName2: '',\n //布尔&枚举lable\n boolShow2: false,\n //禁用布尔前面的key\n dialogData2: [{}] //布尔&枚举存储数据\n\n }],\n productId: '',\n sn: 0\n },\n rules: {\n name: [{\n required: true,\n message: '请输入功能名称',\n trigger: 'blur'\n }],\n code: [{\n required: true,\n message: '请输入功能标识',\n trigger: 'blur'\n }],\n isAsyn: [{\n required: true,\n message: '请选择是否异步',\n trigger: 'blur'\n }],\n outDataType: [{\n required: true,\n message: '请选择输出参数类型',\n trigger: 'blur'\n }]\n }\n };\n },\n created: function () {\n var _created = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // 数据单位\n this.dataUnits = dictUtils.getDictItemsFromCache('sjdw'); // 属性类型\n\n this.dataTypes = dictUtils.getDictItemsFromCache('sxlx'); // 时间格式\n\n this.dateTimeFormarts = dictUtils.getDictItemsFromCache('sjgs'); // 日期格式\n\n this.dateFormarts = dictUtils.getDictItemsFromCache('rqgs');\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function created() {\n return _created.apply(this, arguments);\n }\n\n return created;\n }(),\n methods: {\n // 动态渲染数据单位,格式 ===> 输出显示\n changeDataType: function changeDataType(item) {\n if (item == '') {\n this.showFormData = item;\n }\n\n if (item == 'string') {\n this.showFormData = item;\n this.parameters.outDataFormart = 'null';\n }\n\n if (item == 'int') {\n this.showFormData = item;\n this.parameters.outDataFormart = 'null';\n }\n\n if (item == 'float') {\n this.showFormData = item;\n this.parameters.outDataFormart = 0;\n }\n\n if (item == 'bool') {\n this.showFormData = item;\n this.lableName = '布尔值:';\n this.boolShow = true;\n this.dialogData = [{}, {}];\n this.dialogData[0].label = '是';\n this.dialogData[1].label = '否';\n }\n\n if (item == 'date') {\n this.showFormData = item;\n this.time = '日期';\n this.datatimes = this.dateFormarts;\n this.parameters.outDataFormart = 'yyyy-MM-dd';\n }\n\n if (item == 'dateTime') {\n this.showFormData = item;\n this.time = '时间';\n this.datatimes = this.dateTimeFormarts;\n this.parameters.outDataFormart = 'yyyy-MM-dd HH:mm:ss';\n }\n\n if (item == 'enum') {\n this.showFormData = item;\n this.lableName = '枚举项:';\n this.boolShow = false;\n this.dialogData = [{}];\n }\n },\n // 动态渲染数据单位,格式 ===> 输入显示\n changeInputType: function changeInputType(item) {\n if (item.paramDataType == '') {\n item.showInputData = item.paramDataType;\n }\n\n if (item.paramDataType == 'string') {\n item.showInputData = item.paramDataType;\n item.paramDataFormart = 'null';\n }\n\n if (item.paramDataType == 'int') {\n item.showInputData = item.paramDataType;\n item.paramDataFormart = 'null';\n }\n\n if (item.paramDataType == 'float') {\n item.showInputData = item.paramDataType;\n }\n\n if (item.paramDataType == 'date') {\n item.showInputData = item.paramDataType;\n item.time2 = '日期';\n item.datatimes2 = this.dateFormarts;\n }\n\n if (item.paramDataType == 'dateTime') {\n item.showInputData = item.paramDataType;\n item.time2 = '时间';\n item.datatimes2 = this.dateTimeFormarts;\n }\n\n if (item.paramDataType == 'bool') {\n item.showInputData = item.paramDataType;\n item.lableName2 = '布尔值:';\n item.boolShow2 = true;\n item.dialogData2 = [{}, {}];\n item.dialogData2[0].label = '是';\n item.dialogData2[1].label = '否';\n }\n\n if (item.paramDataType == 'enum') {\n item.showInputData = item.paramDataType;\n item.lableName2 = '枚举项:';\n item.boolShow2 = false;\n item.dialogData2 = [{}];\n }\n },\n\n /**\r\n * 输出\r\n * */\n // 布尔&枚举添加\n addTable: function addTable() {\n this.dialogData.push({});\n },\n // 布尔&枚举删除\n removeTable: function removeTable(index) {\n if (this.dialogData.length == 1) {\n this.parameters.outDataFormart = '';\n this.dialogData = [{}];\n } else {\n this.dialogData.splice(index, 1);\n }\n },\n\n /**\r\n * 输入\r\n * */\n // 布尔&枚举添加\n addTable2: function addTable2(item) {\n item.dialogData2.push({});\n },\n // 布尔&枚举删除\n removeTable2: function removeTable2(item, index) {\n if (item.dialogData2.length == 1) {\n item.paramDataFormart = '';\n item.dialogData2 = [{}];\n } else {\n item.dialogData2.splice(index, 1);\n }\n },\n\n /**\r\n * 输入添加项\r\n * */\n //输入参数配置添加\n addItem: function addItem() {\n this.parameters.params.push({\n paramCode: null,\n paramDataFormart: null,\n paramDataType: null,\n paramName: null\n });\n },\n //输入参数配置删除\n removeItem: function removeItem(val) {\n // console.log(val)\n if (this.parameters.params.length == 1) {\n this.parameters.params = [{\n paramCode: null,\n paramDataFormart: null,\n paramDataType: null,\n paramName: null\n }];\n } else {\n this.parameters.params.splice(val, 1);\n }\n },\n add: function add() {\n this.showFormDia = true;\n },\n handleClose: function handleClose() {\n this.parameters = {\n code: '',\n isAsyn: 0,\n memo: '',\n name: '',\n outDataFormart: '',\n outDataType: '',\n outDataUnit: '',\n params: [{\n functionId: '',\n memo: '',\n paramCode: '',\n paramDataFormart: '',\n paramDataType: '',\n paramName: '',\n // 输入显示\n showInputData: '',\n time2: '时间',\n //时间&日期的lable\n datatimes2: [],\n // 用于动态绑定时间/日期的下拉框\n lableName2: '',\n //布尔&枚举lable\n boolShow2: false,\n //禁用布尔前面的key\n dialogData2: [{}] //布尔&枚举存储数据\n\n }],\n productId: ''\n };\n this.title = '新增';\n this.showFormDia = false; // 输出\n\n this.showFormData = '';\n this.boolShow = false;\n this.datatimes = [];\n this.dialogData = [{}];\n },\n handleSave: function handleSave() {\n var _this = this;\n\n // 用于校验布尔&枚举数据 ===> 输出\n if (this.showFormData == 'bool' || this.showFormData == 'enum') {\n // 找到导致重复的元素,ID\n // 将所有对象的ID重新组成数组\n if (this.dialogData[0].label || this.dialogData[0].value) {\n var label = this.dialogData.map(function (e) {\n if (e.label == '' || typeof e.label == 'undefined') {\n _this.dtype = false;\n _this.jsons = false;\n\n _this.$message({\n message: '名称不能为空(输出)',\n type: 'warning'\n });\n } else {\n return e.label;\n }\n });\n var value = this.dialogData.map(function (v) {\n if (v.value == '' || typeof v.value == 'undefined') {\n _this.dtype = false;\n _this.jsons = false;\n\n _this.$message({\n message: '值不能为空(输出)',\n type: 'warning'\n });\n } else {\n return v.value;\n }\n });\n\n if (this.dtype) {\n // 通过Set去除数组重复项\n var labelSet = new Set(label);\n var valueSet = new Set(value); // 比较两个数组的长度来判断是否存在重复项\n\n if (_toConsumableArray(labelSet).length != label.length) {\n this.jsons = false;\n this.$message({\n message: '存在相同名称(输出)',\n type: 'warning'\n });\n } else if (_toConsumableArray(valueSet).length != value.length) {\n this.jsons = false;\n this.$message({\n message: '存在相同值(输出)',\n type: 'warning'\n });\n } else if (_toConsumableArray(labelSet).length === label.length && _toConsumableArray(valueSet).length === value.length) {\n this.parameters.outDataFormart = JSON.stringify(this.dialogData);\n this.jsons = true;\n }\n }\n }\n }\n\n for (var index = 0; index < this.parameters.params.length; index++) {\n var BEvalue = this.parameters.params[index];\n console.log(BEvalue);\n delete BEvalue.showInputData;\n delete BEvalue.datatimes2;\n delete BEvalue.lableName2;\n delete BEvalue.boolShow2;\n delete BEvalue.time2;\n\n if (BEvalue.paramDataType == 'string' || BEvalue.paramDataType == 'int' || BEvalue.paramDataType == 'float') {\n delete BEvalue.dialogData2;\n } // 用于校验布尔&枚举数据 ===> 输入\n\n\n if (BEvalue.paramDataType == 'bool' || BEvalue.paramDataType == 'enum') {\n if (BEvalue.dialogData2[0].label || BEvalue.dialogData2[0].value) {\n var _label = BEvalue.dialogData2.map(function (e) {\n if (e.label == '' || typeof e.label == 'undefined') {\n _this.dtype2 = false;\n _this.jsons2 = false;\n\n _this.$message({\n message: '名称不能为空(输入)',\n type: 'warning'\n });\n } else {\n return e.label;\n }\n });\n\n var _value = BEvalue.dialogData2.map(function (v) {\n if (v.value == '' || typeof v.value == 'undefined') {\n _this.dtype2 = false;\n _this.jsons2 = false;\n\n _this.$message({\n message: '值不能为空(输入)',\n type: 'warning'\n });\n } else {\n return v.value;\n }\n });\n\n if (this.dtype2) {\n // 通过Set去除数组重复项\n var _labelSet = new Set(_label);\n\n var _valueSet = new Set(_value); // 比较两个数组的长度来判断是否存在重复项\n\n\n if (_toConsumableArray(_labelSet).length != _label.length) {\n this.jsons2 = false;\n this.$message({\n message: '存在相同名称(输入)',\n type: 'warning'\n });\n } else if (_toConsumableArray(_valueSet).length != _value.length) {\n this.jsons2 = false;\n this.$message({\n message: '存在相同值(输入)',\n type: 'warning'\n });\n } else if (_toConsumableArray(_labelSet).length === _label.length && _toConsumableArray(_valueSet).length === _value.length) {\n console.log(BEvalue.dialogData2);\n BEvalue.paramDataFormart = JSON.stringify(BEvalue.dialogData2);\n this.jsons2 = true;\n }\n }\n }\n }\n\n console.log(BEvalue, 'value');\n }\n\n this.parameters.productId = this.parameterID.id;\n this.$refs.formInfo.validate(function (valid) {\n if (valid) {\n var method;\n\n if (_this.jsons2 && _this.jsons) {\n if (!_this.parameters.id) {\n // 新增\n method = PhysicalModel.AddFunction;\n }\n\n if (!!_this.parameters.id) {\n // 修改\n method = PhysicalModel.modifyFunction;\n }\n\n method(_this.parameters, function (res) {\n if (res.state) {\n _this.$notify({\n type: 'success',\n message: _this.title + '成功',\n duration: 2000\n });\n\n _this.handleClose();\n\n _this.$emit('loadData');\n } else {\n _this.$message.warning(response.message);\n }\n });\n }\n }\n });\n },\n Update: function Update(row) {\n var _this2 = this;\n\n // console.log(row)\n this.title = '修改';\n /**\r\n * 回显赋值\r\n * */\n\n this.parameters.code = row.code;\n this.parameters.name = row.name;\n this.parameters.outDataType = row.outDataType;\n this.parameters.outDataFormart = row.outDataFormart;\n this.parameters.outDataUnit = row.outDataUnit;\n this.parameters.memo = row.memo;\n this.parameters.code = row.code;\n this.parameters.isAsyn = Number(row.isAsyn);\n this.parameters.id = row.id;\n this.parameters.sn = row.sn; // 获取输入配置数据\n\n PhysicalModel.FunctionDetails(row.id, function (res) {\n _this2.parameters.params = res.params;\n\n for (var index = 0; index < _this2.parameters.params.length; index++) {\n var item = _this2.parameters.params[index];\n\n if (item.paramDataType == 'bool') {\n item.lableName2 = '布尔值:';\n item.showInputData = item.paramDataType;\n item.boolShow2 = true;\n item.dialogData2 = JSON.parse(item.paramDataFormart);\n item.paramDataFormart = null;\n }\n\n if (item.paramDataType == 'enum') {\n item.lableName2 = '枚举项:';\n item.showInputData = item.paramDataType;\n item.boolShow2 = false;\n item.dialogData2 = JSON.parse(item.paramDataFormart);\n item.paramDataFormart = null;\n }\n\n if (item.paramDataType == 'float') {\n item.showInputData = item.paramDataType;\n }\n\n if (item.paramDataType == 'date') {\n item.showInputData = item.paramDataType;\n item.time2 = '日期';\n item.datatimes2 = _this2.dateFormarts;\n }\n\n if (item.paramDataType == 'dateTime') {\n item.showInputData = item.paramDataType;\n item.time2 = '时间';\n item.datatimes2 = _this2.dateTimeFormarts;\n }\n }\n\n console.log(_this2.parameters);\n });\n this.showFormDia = true;\n /***\r\n * 输出回显\r\n * */\n\n this.showFormData = row.outDataType; // 布尔值回显\n\n if (row.outDataType == 'bool') {\n this.lableName = '布尔值:';\n this.boolShow = true;\n this.dialogData = JSON.parse(row.outDataFormart);\n } // 枚举项回显\n\n\n if (row.outDataType == 'enum') {\n this.lableName = '枚举项:';\n this.boolShow = false;\n this.dialogData = JSON.parse(row.outDataFormart);\n }\n\n if (row.outDataType == 'date') {\n this.time = '日期';\n this.datatimes = this.dateFormarts;\n }\n\n if (row.outDataType == 'dateTime') {\n this.time = '时间';\n this.datatimes = this.dateTimeFormarts;\n }\n }\n }\n};",null]}