浏览代码

修改form的下拉数据和回显

zhaoke 1 年之前
父节点
当前提交
6dc9514749
共有 2 个文件被更改,包括 44 次插入10 次删除
  1. 23 6
      src/components/publicPageForm/index.vue
  2. 21 4
      src/views/tablePage/index.vue

+ 23 - 6
src/components/publicPageForm/index.vue

@@ -122,6 +122,12 @@ export default {
       deep: true,
       immediate: true
     },
+    formPass: {
+      handler (array) {
+        this.setPassters(array)
+      },
+      deep: true
+    },
     formData: {
       handler (obj) {
         if (!Object.keys(obj).length) {
@@ -201,24 +207,35 @@ export default {
       } else {
         this.formItemArr = formItem
       }
+      this.setPassters(this.formPass)
+      this.loading = false
+    },
+    //设置下拉数据
+    setPassters (array = []) {
       const passitem = this.formItemArr.filter(item => item.pagecode == 'passparameters')
       if (passitem?.length) {
         const passitemkey = passitem[0]
         passitemkey.datatype = 'DROP'
-        this.formPass.map(item => {
+        array.map(item => {
           item.dropdownlistid = item.pageconfigurationid
           item.dropdownlistlabel = item.pagename
         })
-        this.tableOptions['passparameters'] = this.formPass.length ? this.formPass : ''
+        this.tableOptions['passparameters'] = array.length ? array : ''
       }
-      this.loading = false
     },
     formatData (returnData) {
       return typeof returnData == 'string' ? JSON.parse(returnData) : returnData
     },
-    //设置下拉数据
-    formatSelectData () {
-
+    //回显下拉数据
+    resPassters (obj) {
+      const nitem = _.cloneDeep(obj)
+      const { passparameters } = nitem
+      if (!passparameters) return ''
+      const ndata = this.formatData(passparameters)
+      if (!Array.isArray(ndata)) return ''
+      const narr = []
+      ndata.map(({ pageconfigurationid }) => { narr.push(pageconfigurationid) })
+      return narr
     },
     //获取表单下拉数据
     changeSelect (code, item) { },

+ 21 - 4
src/views/tablePage/index.vue

@@ -275,6 +275,20 @@ export default {
       }
       // this.formItem = tableColumnArrs.filter(item => item.isdisplay == 1)
     },
+    formatData (returnData) {
+      return typeof returnData == 'string' ? JSON.parse(returnData) : returnData
+    },
+    //回显下拉数据
+    resPassters (obj) {
+      const narr = []
+      const nitem = _.cloneDeep(obj)
+      const { passparameters } = nitem
+      if (!passparameters) return ''
+      const ndata = this.formatData(passparameters)
+      if (!Array.isArray(ndata)) return ''
+      ndata.map(({ pageconfigurationid }) => { narr.push(pageconfigurationid) })
+      return narr
+    },
     //表格-编辑
     handleEdit (row) {
       const { openmode, pageroute } = this.pageAuthBtnEdit
@@ -283,6 +297,9 @@ export default {
       this.flag = true
       this.tableType = "edit"
       this.tableTitle = "编辑"
+      if (row.passparameters) {
+        row.passparameters = this.resPassters(row)
+      }
       this.tableForm = _.cloneDeep(row)
 
     },
@@ -462,14 +479,14 @@ export default {
             // const nitem = this.formatPass(passparameters)
             // console.log(passparameters)
             const passparametersArray = JSON.parse(passparameters)
-            passparametersArray.map(item =>{
-              if(row[item.pagecode]){
+            passparametersArray.map(item => {
+              if (row[item.pagecode]) {
                 const alias = item.alias
                 const pagecode = item.pagecode
-                if(alias){
+                if (alias) {
                   params[alias] = row[item['pagecode']]
                 }
-                else{
+                else {
                   params[pagecode] = row[item['pagecode']]
                 }
               }