{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Device\\resourceManage\\components\\basicExtensionDialog.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\views\\Device\\resourceManage\\components\\basicExtensionDialog.vue","mtime":1686644136998},{"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":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport basicExtension from '@/api/device/basicExtension.js'\r\nimport utils from '@/hotent-ui-util.js'\r\nimport dictUtils from '@/components/dict/DictSelectUtils.js'\r\nexport default {\r\n name: 'unitManageModal',\r\n data() {\r\n return {\r\n activeCollapse: '1',\r\n visible: false,\r\n title: '新增',\r\n params: {\r\n code: '',\r\n name: '',\r\n ctlType: '',\r\n isRequired: 0,\r\n layout: null,\r\n // sn:99,\r\n type: '',\r\n json: '',\r\n },\r\n dialogData: [{}],\r\n dialogVisible: false,\r\n TypeList: [],\r\n kjlxList: [],\r\n row: {},\r\n companyType: [], //单位类型\r\n rules: {\r\n code: [\r\n {\r\n required: true,\r\n message: '请输入参数代码(英文字母)',\r\n trigger: 'blur',\r\n },\r\n ],\r\n name: [\r\n {\r\n required: true,\r\n message: '请输入参数名称',\r\n trigger: 'blur',\r\n },\r\n ],\r\n ctlType: [\r\n {\r\n required: true,\r\n message: '请选择控件类型',\r\n trigger: 'blur',\r\n },\r\n ],\r\n\r\n layout: [\r\n {\r\n required: true,\r\n message: '请输入布局(小于25数字)',\r\n trigger: 'blur',\r\n },\r\n ],\r\n type: [\r\n {\r\n required: true,\r\n message: '请选择配置类型',\r\n trigger: 'blur',\r\n },\r\n ],\r\n json: [\r\n {\r\n required: true,\r\n message: '请输入可选项',\r\n trigger: 'change',\r\n },\r\n ],\r\n },\r\n }\r\n },\r\n created() {\r\n this.TypeList = dictUtils.getDictItemsFromCache('pzlx')\r\n this.kjlxList = dictUtils.getDictItemsFromCache('kjlx')\r\n },\r\n methods: {\r\n changeType() {\r\n this.$forceUpdate()\r\n },\r\n add() {\r\n this.visible = true\r\n this.dialogData = [{}]\r\n },\r\n edit(row) {\r\n this.row = row\r\n this.params = utils.deepClone(row)\r\n this.params.isRequired = Number(row.isRequired)\r\n this.visible = true\r\n this.title = '修改'\r\n console.log(row.json)\r\n if (row.json) {\r\n this.dialogData = JSON.parse(row.json)\r\n }\r\n },\r\n Layout() {\r\n if (this.params.layout < 25 || typeof this.params.layout == 'number') {\r\n } else {\r\n this.params.layout = ''\r\n }\r\n },\r\n inputCode() {\r\n this.params.code = this.params.code.replace(/[^a-zA-Z]/g, '')\r\n },\r\n changeCtl(val) {\r\n this.dialogData = [{}]\r\n },\r\n addTable() {\r\n this.dialogData.push({})\r\n },\r\n removeTable(index) {\r\n if (this.dialogData.length == 1) {\r\n this.params.json = ''\r\n this.dialogData = [{}]\r\n } else {\r\n this.dialogData.splice(index, 1)\r\n }\r\n },\r\n\r\n handleClose() {\r\n this.params = {\r\n code: '',\r\n name: '',\r\n ctlType: '',\r\n isRequired: 0,\r\n layout: null,\r\n // sn:null,\r\n type: '',\r\n json: '',\r\n }\r\n this.$refs.formInfo.resetFields()\r\n this.title = '新增'\r\n this.activeCollapse = '1'\r\n this.visible = false\r\n },\r\n handleSave() {\r\n // 找到导致重复的元素,ID\r\n // 将所有对象的ID重新组成数组\r\n let jsons = true\r\n let dtype = true\r\n if (this.dialogData[0].label || this.dialogData[0].value) {\r\n const label = this.dialogData.map((e) => {\r\n if (e.label == '' || typeof e.label == 'undefined') {\r\n dtype = false\r\n jsons = false\r\n this.$message({\r\n message: '名称不能为空',\r\n type: 'warning',\r\n })\r\n } else {\r\n return e.label\r\n }\r\n })\r\n const value = this.dialogData.map((v) => {\r\n if (v.value == '' || typeof v.value == 'undefined') {\r\n dtype = false\r\n jsons = false\r\n this.$message({\r\n message: '值不能为空',\r\n type: 'warning',\r\n })\r\n } else {\r\n return v.value\r\n }\r\n })\r\n if (dtype) {\r\n // 通过Set去除数组重复项\r\n const labelSet = new Set(label)\r\n const valueSet = new Set(value)\r\n // 比较两个数组的长度来判断是否存在重复项\r\n if ([...labelSet].length != label.length) {\r\n jsons = false\r\n this.$message({\r\n message: '存在相同名称',\r\n type: 'warning',\r\n })\r\n } else if ([...valueSet].length != value.length) {\r\n jsons = false\r\n this.$message({\r\n message: '存在相同值',\r\n type: 'warning',\r\n })\r\n } else if (\r\n [...labelSet].length === label.length &&\r\n [...valueSet].length === value.length\r\n ) {\r\n this.params.json = JSON.stringify(this.dialogData)\r\n jsons = true\r\n this.dialogVisible = false\r\n }\r\n }\r\n }\r\n this.$refs.formInfo.validate((valid) => {\r\n if (valid) {\r\n let method\r\n if (jsons) {\r\n if (this.title === '新增') {\r\n method = basicExtension.addUnit\r\n } else if (this.title === '修改') {\r\n method = basicExtension.editUnit\r\n }\r\n method(this.params, (response) => {\r\n if (response.state) {\r\n this.$notify({\r\n type: 'success',\r\n message: this.title + '成功',\r\n duration: 2000,\r\n })\r\n this.handleClose()\r\n this.$parent.loadData(1)\r\n } else {\r\n this.$message.warning(response.message)\r\n }\r\n })\r\n }\r\n }else{\r\n this.$notify({\r\n type: 'warning',\r\n message: \"请完善表单信息!\",\r\n duration: 2000,\r\n })\r\n }\r\n })\r\n },\r\n },\r\n}\r\n",null]}