From d5894106a09ea9bc900bad176c177763a1df0568 Mon Sep 17 00:00:00 2001
From: 田源 <tianyuan@vci-tech.com>
Date: 星期五, 27 十二月 2024 14:29:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/tableDialog.vue | 597 +++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 415 insertions(+), 182 deletions(-)
diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/tableDialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/tableDialog.vue
index 0805b0c..ec0dabf 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/tableDialog.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/tableDialog.vue
@@ -9,35 +9,35 @@
width="60%"
@close="closeDialog"
>
- <el-form :model="form" :rules="rules" label-position="right" label-width="100px">
+ <el-form ref="form" size="small" v-loading="formLoading" :model="form" :rules="rules" label-position="right" label-width="100px">
<el-row>
<el-col :span="12">
- <el-form-item label="鍚嶇О">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-form-item label="鍚嶇О" prop="viName">
+ <el-input v-model="form.viName" placeholder="璇疯緭鍏ュ悕绉�" ></el-input>
</el-form-item>
</el-col>
-
<el-col :span="12">
<el-form-item label="姣忛〉琛屾暟">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="form.itemPageSize" placeholder="璇疯緭鍏ユ瘡椤佃鏁�" type="number"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="闄勫姞鏌ヨ鏉′欢">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="form.itemAddFilter" placeholder="璇疯緭鍏ユ煡璇㈡潯浠�"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="缁戝畾琛ㄥ崟">
+ <el-form-item label="缁戝畾琛ㄥ崟" prop="itemInObj">
<div style="display: flex;align-items: center;">
- <el-select v-model="form.region" placeholder="璇烽�夋嫨娲诲姩鍖哄煙" size="mini">
- <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
- <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+ <el-select v-model="form.itemInObj" clearable placeholder="璇烽�夋嫨缁戝畾琛ㄥ崟"
+ @change="formSelectChange">
+ <el-option v-for="(item,index) in selectList" :key="index" :label="item.viName"
+ :value="item.id"></el-option>
</el-select>
- <el-button plain size="mini" style="margin-left: 3px" type="success">閫夋嫨</el-button>
+
</div>
</el-form-item>
</el-col>
@@ -45,146 +45,74 @@
<el-col :span="12">
<el-form-item label="鐖跺悕绉�">
<div style="display: flex;align-items: center;">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
- <el-checkbox v-model="checked" style="margin-left: 5px; margin-right: 5px">鏄剧ず鏌ヨ鍖哄煙</el-checkbox>
- <el-checkbox v-model="checked" style="margin-left: 5px;margin-right: 0px">鏄剧ず鏂囦欢澶�</el-checkbox>
+ <el-input v-model="form.itemParentFolderName" placeholder="璇疯緭鍏ョ埗鍚嶇О" ></el-input>
+ <el-checkbox v-model="form.itemIsNavigatorExpand" style="margin-left: 5px; margin-right: 5px">鏄剧ず鏌ヨ鍖哄煙
+ </el-checkbox>
+ <el-checkbox v-model="form.itemIsShowFolder" style="margin-left: 5px;margin-right: 0px">鏄剧ず鏂囦欢澶�
+ </el-checkbox>
</div>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="鏄剧ず瀛楁">
- <div style="display: flex; align-items: center">
- <div style="height: 260px; width: 160px; border: 1px solid #bdbbbb;overflow-y: auto">
- <el-table
- :data="showLifeTable"
- style="width: 100%">
- <el-table-column
- align="center"
- label="鍙娇鐢ㄥ瓧娈�"
- prop="id">
- </el-table-column>
- </el-table>
- </div>
- <div style="margin-left: 10px; margin-right: 10px">
- <el-button circle icon="el-icon-back" style="margin-right: 10px"></el-button>
- <el-button circle icon="el-icon-right"></el-button>
- </div>
- <div style="height: 260px; width: 160px; border: 1px solid #bdbbbb;overflow-y: auto">
- <el-table
- :data="showRightTable"
- style="width: 100%">
- <el-table-column
- align="center"
- label="闇�瑕佷娇鐢ㄥ瓧娈�"
- prop="id">
- </el-table-column>
- </el-table>
- </div>
- </div>
- </el-form-item>
- </el-col>
-
- <el-col :span="12">
- <el-form-item label="鎼滅储瀛楁">
- <div style="display: flex; align-items: center">
- <div style="height: 260px; width: 160px; border: 1px solid #bdbbbb;overflow-y: auto">
- <el-table
- :data="searchLifeTable"
- style="width: 100%">
- <el-table-column
- align="center"
- label="鍙緵鎼滅储瀛楁"
- prop="id">
- </el-table-column>
- </el-table>
- </div>
- <div style="margin-left: 10px; margin-right: 10px">
- <el-button circle icon="el-icon-back" style="margin-right: 10px"></el-button>
- <el-button circle icon="el-icon-right"></el-button>
- </div>
- <div style="height: 260px; width: 160px; border: 1px solid #bdbbbb;overflow-y: auto">
- <el-table
- :data="searchRightTable"
- style="width: 100%">
- <el-table-column
- align="center"
- label="闇�鎼滅储瀛楁"
- prop="id">
- </el-table-column>
- </el-table>
- </div>
- </div>
- </el-form-item>
- </el-col>
-
- <el-col :span="12">
- <el-form-item label="鍒�">
- <el-select v-model="form.region" placeholder="璇烽�夋嫨鍒�" size="mini">
- <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
- <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+ <el-col :span="24">
+ <el-form-item label="鏄剧ず瀛楁" prop="showLabel">
+ <el-select v-model="form.itemOutFieldList" multiple placeholder="璇烽�夋嫨" style="width: 100%"
+ @change="outFileChange">
+ <el-option
+ v-for="(item,index) in form.itemSelectOutFieldList"
+ :key="index"
+ :label="item.id"
+ :value="item.id">
+ </el-option>
</el-select>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="瀹藉害">
- <div style="display: flex;align-items: center;">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini" style="width: 193px"></el-input>
- <el-button plain size="mini" style="margin-left: 3px" type="success">璁剧疆</el-button>
- </div>
+ <el-col :span="24">
+ <el-form-item label="鎼滅储瀛楁">
+ <el-select v-model="form.itemKeyFieldList" multiple placeholder="璇烽�夋嫨" style="width: 100%">
+ <el-option
+ v-for="(item,index) in form.itemSearchFieldList"
+ :key="index"
+ :label="item.id"
+ :value="item.id">
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
+
</el-row>
<el-col :span="24">
<el-form-item label="璁剧疆鍒楀">
- <div style="height: 150px; width: 100%; border: 1px solid #bdbbbb;overflow-y: auto">
- <el-table
- :data="columnWidthData"
- :highlight-current-row="true"
- border
- stripe
- style="width: 100%">
- <el-table-column
- align="center"
- label="鍒楀悕"
- prop="id">
- <template slot-scope="scope">
- <el-tag size="medium">{{ scope.row.id }}</el-tag>
- </template>
- </el-table-column>
- <el-table-column
- align="center"
- label="鍒楀"
- prop="width">
- <template slot-scope="scope">
- <el-tag size="medium">{{ scope.row.width }}</el-tag>
- </template>
- </el-table-column>
- </el-table>
- </div>
+ <avue-crud
+ :data="form.itemFieldWidthList"
+ :option="fileWidthOption">
+ </avue-crud>
+
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="鏌ヨ瀛楁">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-form-item label="鏌ヨ瀛楁" >
+ <el-input v-model="form.searchLabel" placeholder="璇疯緭鍏ユ煡璇㈠瓧娈�" size="mini"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="鏌ヨ娆℃暟">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="form.searchNumber" placeholder="璇疯緭鍏ユ煡璇㈡鏁�" size="mini"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="鏌ヨsql">
<div style="display: flex;align-items: center">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
- <el-button plain size="mini" style="margin-left: 3px" type="success">娣诲姞</el-button>
- <el-button plain size="mini" style="margin-left: 3px" type="danger">鍒犻櫎</el-button>
+ <el-input v-model="form.searchSql" placeholder="璇疯緭鍏ql" size="mini"></el-input>
+ <el-button plain size="mini" style="margin-left: 3px" type="success" @click="searchAddClickHandler">娣诲姞
+ </el-button>
+ <el-button plain size="mini" style="margin-left: 3px" type="danger" @click="searchDelClickHandler">鍒犻櫎
+ </el-button>
</div>
</el-form-item>
</el-col>
@@ -193,33 +121,34 @@
<el-form-item label="鏌ヨ瀛楁">
<div style="height: 150px; width: 100%; border: 1px solid #bdbbbb;overflow-y: auto">
<el-table
- :data="columnSearchData"
+ :data="form.itemSeniorQueryBOS"
:highlight-current-row="true"
border
stripe
- style="width: 100%">
+ style="width: 100%"
+ @row-click="itemSeniorRowClick">
<el-table-column
align="center"
label="鏌ヨ瀛楁"
- prop="id">
+ prop="itemSeniorQueryCols">
<template slot-scope="scope">
- <el-tag size="medium">{{ scope.row.id }}</el-tag>
+ <el-tag size="medium">{{ scope.row.itemSeniorQueryCols }}</el-tag>
</template>
</el-table-column>
<el-table-column
align="center"
label="鏌ヨ娆℃暟"
- prop="name">
+ prop="itemSeniorQueryColsCounts">
<template slot-scope="scope">
- <el-tag size="medium">{{ scope.row.name }}</el-tag>
+ <el-tag size="medium">{{ scope.row.itemSeniorQueryColsCounts }}</el-tag>
</template>
</el-table-column>
<el-table-column
align="center"
label="鏌ヨsql"
- prop="sql">
+ prop="itemQuerySql">
<template slot-scope="scope">
- <el-tag size="medium">{{ scope.row.sql }}</el-tag>
+ <el-tag size="medium">{{ scope.row.itemQuerySql }}</el-tag>
</template>
</el-table-column>
</el-table>
@@ -229,9 +158,9 @@
<el-col :span="24">
<el-form-item label="鍙屽嚮鎿嶄綔">
- <el-select v-model="form.region" placeholder="璇烽�夋嫨鍙屽嚮鎿嶄綔" size="mini">
- <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
- <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+ <el-select v-model="form.itemDbl" placeholder="璇烽�夋嫨鍙屽嚮鎿嶄綔" >
+ <el-option v-for="(item,index) in itemDblList" :key="index" :label="item.value"
+ :value="item.key"></el-option>
</el-select>
</el-form-item>
</el-col>
@@ -241,11 +170,11 @@
<div style="display: flex;align-items: center">
<div style="display: flex;align-items: center;width: 100%;">
<span>闀匡細</span>
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="itemImgHeight" placeholder="璇疯緭鍏ラ暱搴�" ></el-input>
</div>
<div style="display: flex;align-items: center;width: 100%;margin-left: 30px">
<span>瀹斤細</span>
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="itemImgWidth" placeholder="璇疯緭鍏ュ搴�"></el-input>
</div>
</div>
</el-form-item>
@@ -253,83 +182,386 @@
<el-col :span="12">
<el-form-item label="瀛楃涓叉埅鍙�">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="form.itemCut" placeholder="璇疯緭鍏ュ瓧绗︿覆" size="mini"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="瓒呴摼鎺�">
- <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+ <el-input v-model="form.itemHrefConf" placeholder="璇疯緭鍏ヨ秴閾炬帴" size="mini"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="鏌ヨ妯℃澘">
- <el-select v-model="form.region" placeholder="璇烽�夋嫨鏌ヨ妯℃澘" size="mini">
- <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
- <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+ <el-select v-model="form.itemQtName" placeholder="璇烽�夋嫨鏌ヨ妯℃澘" >
+ <el-option v-for="(item,index) in searchQtNameList" :key="index" :label="item.qtName"
+ :value="item.qtName"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-form>
<span slot="footer" class="dialog-footer">
- <el-button>鍙� 娑�</el-button>
- <el-button type="primary">纭� 瀹�</el-button>
+ <el-button @click="closeDialog">鍙� 娑�</el-button>
+ <el-button type="primary" @click="dialogSaveClickHandler">纭� 瀹�</el-button>
</span>
</el-dialog>
+
</template>
<script>
+import basicOption from "@/util/basic-option";
+import {gridPortalVIDatas, getPortalVIById, getItemDblList, savePortalVI, getObjTypeQTs} from "@/api/UI/formDefine/api";
+import func from "@/util/func";
+
export default {
name: "tableDialog",
+ props: {
+ TreeNodeRow: {
+ type: Object,
+ default: () => {
+ }
+ },
+ treeRadio: {
+ type: String,
+ default: ""
+ }
+ },
+ created() {
+ // this.getDbList();
+ },
data() {
return {
- columnSearchData: [
- {
- id: 'test',
- name: '3',
- sql: 'xxxxx'
- }
- ],
- columnWidthData: [
- {
- id: 'test',
- width: '250'
- }
- ],
- searchLifeTable: [],
- searchRightTable: [],
- showRightTable: [],
- showLifeTable: [
- {
- id: 'test1'
- },
- {
- id: 'test2'
- },
- {
- id: 'test1'
- },
- {
- id: 'test2'
- },
- {
- id: 'test1'
- },
- {
- id: 'test2'
- }
- ],
- rules: {},
- form: {},
+ fileWidthOption: {
+ ...basicOption,
+ addBtn: false,
+ editBtn: false,
+ delBtn: false,
+ refreshBtn: false,
+ highlightCurrentRow: true,
+ height: 200,
+ menu: false,
+ selection: false,
+ column: [
+ {
+ label: '鍒楀悕',
+ prop: 'key',
+ },
+ {
+ label: '鍒楀',
+ prop: 'value',
+ cell: true,
+ rules: [
+ {
+ required: true,
+ message: '璇疯緭鍏ュ垪瀹�',
+ trigger: 'blur'
+ }
+ ]
+ }
+ ]
+ },
+ searchQtNameList: [],
+ formLoading: false,
+ itemImgHeight: '',
+ itemImgWidth: '',
+ itemSeniorRow: {},
+ itemDblList: [],
+ selectFormOption: {
+ ...basicOption,
+ addBtn: false,
+ menu: false,
+ refreshBtn: false,
+ column: [
+ {
+ label: '涓氬姟鍚嶇О',
+ prop: 'typeName',
+
+ },
+ {
+ label: '鍚嶇О',
+ prop: 'viName',
+ sortable: true,
+ },
+ {
+ label: '绫诲瀷',
+ prop: 'viTypeText',
+ },
+ ]
+ },
+ selectFormData: [],
+ selectFormLoading: false,
+ selectFormVisible: false,
+ rules: {
+ viName: [{
+ required: true,
+ message: '璇疯緭鍏ュ悕绉�',
+ trigger: 'blur'
+ }],
+ itemInObj: [{
+ required: true,
+ message: '璇烽�夋嫨缁戝畾琛ㄥ崟',
+ trigger: 'change'
+ }],
+ // showLabel: [{
+ // required: true,
+ // message: '璇烽�夋嫨鏄剧ず瀛楁',
+ // trigger: 'submit'
+ // }],
+ },
+ form: {
+ viName: '', // 鍚嶇О
+ itemPageSize: '', // 姣忛〉鍙樉绀鸿鏁�
+ itemAddFilter: '', // 闄勫姞鏌ヨ鏉′欢
+ itemInObj: '', // 缁戝畾琛ㄥ崟
+ itemParentFolderName: '', // 鐖跺悕绉�
+ itemIsShowFolder: false, // 鏄惁鏄剧ず鏂囦欢澶�
+ itemIsNavigatorExpand: false, // 鏄剧ず鏌ヨ鍖哄煙
+ itemSelectOutFieldList: [], // 鍙娇鐢ㄥ瓧娈�
+ itemOutFieldList: [], // 闇�瑕佷娇鐢ㄥ瓧娈� // 鍒椾笅鎷夋
+ itemSearchFieldList: [], // 鍙緵鎼滅储浣跨敤瀛楁
+ itemKeyFieldList: [], // 闇�瑕佹悳绱㈠瓧娈�
+ itemWidth: '250', // 瀹藉害
+ itemFieldWidthList: [], // 璁剧疆鍒楀鏁扮粍 涓� itemOutFieldList 鐩稿尮閰�
+ searchLabel: '', // 鏌ヨ瀛楁
+ searchNumber: '1', // 鏌ヨ娆℃暟
+ searchSql: '', // 鏌ヨsql
+ itemSeniorQueryBOS: [], // 鏌ヨ瀛楁鍒楄〃
+ itemDbl: [], // 鍙屽嚮鎿嶄綔
+ itemImgWH: '', // 鍥剧墖瀹介珮 w,h
+ itemCut: '', // 瀛楃涓叉埅鍙�
+ itemHrefConf: '', // 瓒呴摼鎺�
+ itemQtName: '', // 鏌ヨ妯℃澘
+ },
+ defaultForm: {
+ viName: '', // 鍚嶇О
+ itemPageSize: '', // 姣忛〉鍙樉绀鸿鏁�
+ itemAddFilter: '', // 闄勫姞鏌ヨ鏉′欢
+ itemInObj: '', // 缁戝畾琛ㄥ崟
+ itemParentFolderName: '', // 鐖跺悕绉�
+ itemIsShowFolder: false, // 鏄惁鏄剧ず鏂囦欢澶�
+ itemIsNavigatorExpand: false, // 鏄剧ず鏌ヨ鍖哄煙
+ itemSelectOutFieldList: [], // 鍙娇鐢ㄥ瓧娈�
+ itemOutFieldList: [], // 闇�瑕佷娇鐢ㄥ瓧娈� // 鍒椾笅鎷夋
+ itemSearchFieldList: [], // 鍙緵鎼滅储浣跨敤瀛楁
+ itemKeyFieldList: [], // 闇�瑕佹悳绱㈠瓧娈�
+ itemWidth: '250', // 瀹藉害
+ itemFieldWidthList: [], // 璁剧疆鍒楀鏁扮粍 涓� itemOutFieldList 鐩稿尮閰�
+ searchLabel: '', // 鏌ヨ瀛楁
+ searchNumber: '1', // 鏌ヨ娆℃暟
+ searchSql: '', // 鏌ヨsql
+ itemSeniorQueryBOS: [], // 鏌ヨ瀛楁鍒楄〃
+ itemDbl: [], // 鍙屽嚮鎿嶄綔
+ itemImgWH: '', // 鍥剧墖瀹介珮 w,h
+ itemCut: '', // 瀛楃涓叉埅鍙�
+ itemHrefConf: '', // 瓒呴摼鎺�
+ itemQtName: '', // 鏌ヨ妯℃澘
+ },
loading: false,
- visible: false
+ visible: false,
+ selectList: [],
+ lastIndex: null,
+ showLabelLeftRow: {},
+ showLabelRightRow: {},
+ searchLeftRow: {},
+ searchRightRow: {},
+ itemFileWidthRow: {},
+ itemFileWidthChangeVal: '',
}
},
methods: {
- closeDialog() {
+ // 鑾峰彇鍒濆鍖栬〃鏍奸噷闇�瑕佺殑榛樿鏁版嵁
+ getFormSelectList() {
+ this.formLoading = true;
+ const params = {
+ 'conditionMap[typeName]': this.treeRadio === '0' ? this.TreeNodeRow.id : this.TreeNodeRow.name,
+ 'conditionMap[viType]': 'Form',
+ 'conditionMap[viTypeFlag]': this.treeRadio === '0' ? 'BtmType' : this.treeRadio === '1' ? 'LinkType' : '',
+ };
+ // 鍙戣捣绗竴涓姹�
+ gridPortalVIDatas(1, -1, params).then(res => {
+ if (res.data.code === 200) {
+ const data = res.data.data;
+ this.selectList = data;
+
+ // 纭繚 this.selectList 宸茬粡璧嬪�间笖涓嶄负绌�
+ if (this.selectList && this.selectList.length > 0) {
+ const param = {
+ id: this.form.itemInObj,
+ viType: '1'
+ };
+
+ // 鍙戣捣绗簩涓姹�
+ return getPortalVIById(param);
+ }
+ }
+ }).then(res => {
+ if (res.data.code === 200) {
+ const data = res.data.obj.prm.prmItemList.map(item => ({
+ id: item.itemField
+ }));
+ // 杩囨护鍑烘潵闇�瑕佷娇鐢ㄥ瓧娈� 璧嬪�肩粰 鍙娇鐢ㄥ瓧娈垫覆鏌� 锛堜娇鐢ㄥ瓧娈电敱缂栬緫鎺ュ彛浼犻�掞級
+ const list = data.filter(item =>
+ !this.form.itemOutFieldList.some(outItem => outItem.id === item.id)
+ );
+ this.getSearchSelectList(); // 閫夋嫨琛ㄥ崟涓嬫媺鎺ュ彛
+ this.getFormSelect(); // 鏌ヨ妯℃澘涓嬫媺鎺ュ彛
+ this.getDbList(); // 鍙屽嚮鎿嶄綔涓嬫媺鎺ュ彛
+ this.$set(this.form, 'itemSelectOutFieldList', list);
+ this.formLoading = false;
+ }
+ })
+ },
+ // 鍏抽棴瀵硅瘽妗�
+ closeDialog() {
+ this.visible = false;
+ this.$refs.form.clearValidate();
+ this.form = {...this.defaultForm};
+ },
+
+ // 鑾峰彇閫夋嫨琛ㄥ崟鏁版嵁
+ getFormSelect() {
+ const params = {
+ 'conditionMap[typeName]': this.treeRadio === '0' ? this.TreeNodeRow.id : this.TreeNodeRow.name,
+ 'conditionMap[viType]': 'Form',
+ 'conditionMap[viTypeFlag]': this.treeRadio === '0' ? 'BtmType' : this.treeRadio === '1' ? 'LinkType' : '',
+ }
+ gridPortalVIDatas(1, -1, params).then(res => {
+ if (res.data.code === 200) {
+ const data = res.data.data;
+ this.selectList = data;
+ }
+ });
+ },
+
+ // 琛ㄥ崟閫夋嫨change浜嬩欢
+ formSelectChange(val) {
+ this.form.itemOutFieldList = [];
+ this.form.itemKeyFieldList = [];
+ this.form.itemFieldWidthList = [];
+
+ const params = {
+ id: val,
+ viType: '1'
+ }
+ getPortalVIById(params).then(res => {
+ if (res.data.code === 200) {
+ const data = res.data.obj.prm.prmItemList.map(item => {
+ return {
+ id: item.itemField
+ }
+ });
+ this.form.itemSelectOutFieldList = data;
+ }
+ })
+ },
+
+ // 鏄剧ず瀛楁change
+ outFileChange(val) {
+ this.form.itemSearchFieldList = this.form.itemOutFieldList.map(item => {
+ return {
+ id: item
+ }
+ })
+ this.form.itemFieldWidthList = this.form.itemOutFieldList.map(item => {
+ return {
+ $cellEdit: true,
+ key: item,
+ value: '250',
+
+ }
+ })
+ },
+
+ // 鏌ヨ妯℃澘涓嬫媺鎺ュ彛鏌ヨ
+ getSearchSelectList() {
+ getObjTypeQTs({btName: this.treeRadio === '0' ? this.TreeNodeRow.id : this.TreeNodeRow.name}).then(res => {
+ this.searchQtNameList = res.data.data;
+ })
+ },
+
+ // 鑾峰彇鍙屽嚮鎿嶄綔鏁版嵁
+ getDbList() {
+ getItemDblList().then(res => {
+ if (res.data.code === 200) {
+ const data = res.data.data;
+ this.itemDblList = data;
+ }
+ })
+ },
+
+ // 鏌ヨ妯℃澘琛ㄦ牸琛岀偣鍑�
+ itemSeniorRowClick(row) {
+ this.itemSeniorRow = row;
+ },
+
+ // 鏌ヨ妯℃澘娣诲姞
+ searchAddClickHandler() {
+ if (!this.form.searchLabel) {
+ this.$message.error('鏌ヨ瀛楁涓嶈兘涓虹┖!');
+ return;
+ }
+ this.form.itemSeniorQueryBOS.push({
+ itemSeniorQueryCols: this.form.searchLabel,
+ itemSeniorQueryColsCounts: this.form.searchNumber,
+ itemQuerySql: this.form.searchSql
+ });
+ },
+
+ // 鏌ヨ妯℃澘鍒犻櫎
+ searchDelClickHandler() {
+ if (func.isEmptyObject(this.itemSeniorRow)) {
+ this.$message.error('璇烽�夋嫨涓�鏉℃暟鎹繘琛屽垹闄�');
+ return;
+ }
+
+ this.form.itemSeniorQueryBOS = this.form.itemSeniorQueryBOS.filter(item => item.itemSeniorQueryCols != this.itemSeniorRow.itemSeniorQueryCols);
+ },
+
+ // 琛ㄦ牸瀵硅瘽妗嗕繚瀛�
+ dialogSaveClickHandler() {
+ this.$refs.form.validate((valid) => {
+ if (valid) {
+ if(this.form.itemOutFieldList.length <= 0){
+ this.$message.error('璇烽�夋嫨鏄剧ず瀛楁');
+ return;
+ }
+ const paramsForm = {...this.form};
+ paramsForm.itemSelectOutFieldList = this.form.itemSelectOutFieldList.map(item => item.id); // 鍙娇鐢ㄥ瓧娈�
+ paramsForm.itemOutFieldList = this.form.itemOutFieldList; // 闇�瑕佷娇鐢ㄥ瓧娈�
+ paramsForm.itemSearchFieldList = this.form.itemSearchFieldList.map(item => item.id); // 鍙緵鎼滅储瀛楁
+ paramsForm.itemKeyFieldList = this.form.itemKeyFieldList; // 闇�瑕佷娇鐢ㄥ瓧娈�
+ paramsForm.itemImgWH = `${this.itemImgWidth},${this.itemImgHeight}`;
+ const params = {
+ id: this.form.editNodeId,
+ prm: {
+ formQtName: this.form.itemQtName,
+ prmItemList: [
+ paramsForm
+ ],
+ },
+ typeFlag: this.treeRadio,
+ typeFlagText: this.treeRadio === '0' ? "涓氬姟绫诲瀷鐨勮〃鍗�" : '閾炬帴绫诲瀷鐨勮〃鍗�',
+ typeName: this.treeRadio === '0' ? this.TreeNodeRow.id : this.TreeNodeRow.name, // 涓氬姟绫诲瀷鍚� or 閾炬帴绫诲瀷鍚�
+ viName: this.form.viName,
+ viType: 0,
+ viTypeText: "琛ㄦ牸"
+ }
+ savePortalVI(params).then(res => {
+ if (res.data.code === 200) {
+ this.$message.success(res.data.obj);
+ // this.closeDialog();
+ this.$emit('updataTable');
+ // this.$refs.form.clearValidate();
+ this.visible = false;
+ }
+ })
+ } else {
+ return false;
+ }
+ });
}
}
}
@@ -342,3 +574,4 @@
}
}
</style>
+
--
Gitblit v1.9.3