田源
2025-01-09 8a166a60cfd1a2e593ffa103d10c0dc224fc8628
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue
@@ -9,11 +9,10 @@
    width="100%"
    @close="closeDialog"
  >
    <el-container>
      <div style="height: 79vh;display: flex;width: 100%;">
    <el-container style="height: 700px">
        <el-aside width="17%">
          <basic-container>
            <div style="height:650px;">
            <div style="height:620px;">
              <avue-tree
                :data="treeData"
                :loading="treeLoading"
@@ -26,7 +25,7 @@
        <el-main>
          <basic-container>
            <div style="height: 645px;overflow-y: auto;padding-right: 5px" @drop="drop" @dragover.prevent>
            <div style="height: 610px;overflow-y: auto;padding-right: 5px" @drop="drop" @dragover.prevent>
              <div style="display: flex;justify-content: center">
                <span style="display: flex;align-items: center; margin-right: 5px;">
                 <p class="tableTopLabel">名称:</p>
@@ -35,7 +34,7 @@
                <span style="display: flex;align-items: center; margin-right: 5px;">
                 <p class="tableTopLabel">查询模板名称:</p>
                  <el-select v-model="form.itemQtName" placeholder="请选择查询模板" size="mini">
                  <el-select v-model="topForm.itemQtName" placeholder="请选择查询模板" size="mini">
                    <el-option v-for="(item,index) in searchQtNameList" :key="index" :label="item.qtName"
                               :value="item.qtName"></el-option>
                  </el-select>
@@ -122,7 +121,7 @@
                </el-row>
              </el-form>
            </div>
            <div style="display: flex;justify-content: center;margin-top: 15px">
            <div style="display: flex;justify-content: center;margin-top: 15px;">
              <el-button icon="el-icon-check" size="small" type="primary" @click="saveClickHandler">保存</el-button>
              <el-button icon="el-icon-delete" plain size="small" type="danger" @click="emptyClickHandler">清空
              </el-button>
@@ -138,7 +137,7 @@
        <el-aside width="25%">
          <basic-container>
            <div style="height: 660px; overflow-y: auto;padding-right: 10px">
            <div style="height: 600px; overflow-y: auto;padding-right: 10px">
              <h3>设置</h3>
              <h4 style="color: red">属性设置信息后需单击右下角应用按钮进行应用</h4>
              <el-form ref="form" :model="form" :rules="rules" label-position="left" label-width="85px">
@@ -401,15 +400,15 @@
              </el-form>
            </div>
            <div style="display: flex;justify-content: right">
              <el-button plain size="mini" style="margin-top: 10px" type="success" @click="asideFormHandler">应用
              <el-button plain size="mini" style="margin-top: 30px" type="success" @click="asideFormHandler">应用
              </el-button>
            </div>
          </basic-container>
        </el-aside>
      </div>
    </el-container>
    <!-- 添加自定义组件 -->
    <el-dialog
      v-dialogDrag
      v-loading="customLoading"
@@ -795,7 +794,7 @@
          <avue-tree :key="refresh" ref="authTree" v-model="treeAuthForm" :data="treeAuthData" :option="treeAuthOption"
                     @check-change="treeAuthCheckChange">
              <span slot-scope="{ node, data }" class="el-tree-node__label">
           <span style="font-size: 15px">
           <span>
              <i class="el-icon-s-promotion"></i>
                {{ (node || {}).label }}
            </span>
@@ -852,7 +851,6 @@
          children: 'childNodes',
        },
        treeLoad: (node, resolve) => {
          // console.log(node);
          const params = {
            'conditionMap[dataType]': node.data.data,
            'conditionMap[parentId]': node.data.data,
@@ -1027,6 +1025,7 @@
      ],
      form: {},
      topForm: {
        itemQtName: '',
        columnNumber: 8,
        showColumn: '3',
        viName: '',
@@ -1065,7 +1064,6 @@
      const types = ['radio', 'checkbox', 'select'];
      return types.includes(this.form.itemType); // 展示
    },
    itemStyleTypeStatus() {
      const types = ['hidden', 'webeditor', 'radio', 'checkbox'];
      return !types.includes(this.form.itemType); // 不展示
@@ -1245,7 +1243,6 @@
    // 选项表格行点击
    optionTableClick(row) {
      this.optionRow = row;
      console.log(row);
    },
    customOptionTableClick(row) {
@@ -1289,11 +1286,10 @@
    // 选项删除
    optionDeleteClickHandler(val) {
      // console.log(this.optionRow);
      if (val === 'dialog') {
        this.customForm.itemKeyValueList.splice(this.customOptionRow.index,1);
        this.customForm.itemKeyValueList.splice(this.customOptionRow.index, 1);
      } else {
        this.form.itemKeyValueList.splice(this.optionRow.index,1);
        this.form.itemKeyValueList.splice(this.optionRow.index, 1);
      }
    },
@@ -1315,7 +1311,7 @@
      this.formList = this.formList.map(item => {
        return {
          ...item,
          itemField: item.text // 将itemField赋值为text,因为忘记父组件为什么在编辑回填时把itemField赋值为text了
          itemField: item.text // 将itemField重新赋值为text,因为忘记当时在父组件编辑回填方法里为什么把itemField赋值为text了
        };
      });
      const params = {
@@ -1327,7 +1323,7 @@
        viType: 1, // 视图类型
        viTypeText: "表单", // 视图中文名称
        prm: {
          formQtName: this.form.qtName, // 查询模板名称
          formQtName: this.topForm.itemQtName, // 查询模板名称
          showCols: this.topForm.showColumn,
          prmItemList: this.formList
        },
@@ -1416,8 +1412,6 @@
        const data = res.data.data;
        this.customAttrData = data;
        this.customAttrLoading = false;
      }).catch(err => {
        this.$message.error(err)
      });
    },
@@ -1427,7 +1421,6 @@
        this.$message.error('请选择一条数据进行保存');
        return;
      }
      // console.log(this.customAttrRow)
      this.customForm.text = this.customAttrRow.id;
      this.customAttrVisible = false;
    },
@@ -1439,11 +1432,9 @@
        return;
      }
      this.formList = this.formList.map(item =>
        item.text === this.form.text ? this.form : item
      );
      console.log(this.formList);
      this.$message.success('应用成功');
    },
@@ -1501,13 +1492,11 @@
        return `${key}=${oids.join(',')}`; // 用 , 连接同一类型的 oid
      }).join('&&'); // 最后用 && 连接不同类型
      // console.log(resultString);
      if (this.authType === 'attr') {
        this.customForm.itemRight = resultString;
      } else {
        this.form.itemRight = resultString;
      }
      // this.form.itemRight = resultString;
      this.authDialogClose();
    }
@@ -1549,8 +1538,9 @@
  font-size: 14px
}
.formItemMargin {
  margin: 10px 0 10px 0;
}
//.formItemMargin {
//  margin: 10px 0 10px 0;
//}
</style>