From 3afcc2a5c713eb6cc59d5b01d305b2da32ad267d Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期三, 24 一月 2024 16:54:38 +0800
Subject: [PATCH] 分类授权 数据授权bug修复
---
Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue | 1750 ++-------------------------------------------------------
1 files changed, 79 insertions(+), 1,671 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
index 23f3bcc..2896334 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
@@ -1,1685 +1,93 @@
<template>
- <!-- 绗簩灞傚璇濇,灞炴�х爜娈碉紝鍏紡缂栬緫妗嗗脊绐� -->
- <el-dialog
- title="鍙傜収閰嶇疆"
- append-to-body
- :visible.sync="isShowReferConfig"
- width="90%"
- id="refer-config"
- @close="recoveryDataAndForm('initData')"
- style="height: 115vh; margin-top: -14vh; overflow-y: hidden">
- <el-tabs v-model="activeName" @tab-click="handleClick">
- <el-tab-pane label="鑷畾涔夊弬鐓ч厤缃�" name="first">
- <div style="width: 100%; overflow-y: auto; height: 65vh">
- <el-row>
- <avue-form ref="form" :option="formOption" v-model="form" class="referTypeForm">
- <template #referTypeName="{disabled,size}">
- <el-input :disabled="disabled"
- :size="size"
- v-model="form.referTypeName"
- ref="referTypeName"
- placeholder="璇烽�夋嫨 鍙傜収鐨勪笟鍔$被鍨�"
- prefix-icon="el-icon-search"
- readonly="true"
- @focus="openSelectionTable('referType')">
- <i v-show="!disabled" slot="suffix" class="el-icon-circle-close" @click="clearSelectionTable('referType')" style="margin-right: 5px;cursor: pointer;"></i>
- </el-input>
- </template>
- <template #sortField="{disabled,size}">
- <el-input :disabled="disabled"
- :size="size"
- v-model="form.sortField"
- ref="sortField"
- placeholder="璇烽�夋嫨 鎺掑簭瀛楁"
- prefix-icon="el-icon-search"
- readonly="true"
- @focus="openSelectionTable('sortField')">
- <i slot="suffix" class="el-icon-circle-close" @click="clearSelectionTable('sortField')" style="margin-right: 5px;cursor: pointer;"></i>
- </el-input>
- </template>
- </avue-form>
- </el-row>
- <el-row v-show="form.type=='default' || form.type=='grid'">
- <avue-crud
- ref="crudAttr"
- class="crud-attr"
- :option="attrOption"
- @cell-click="clickAttrEdit"
- :data="attrData">
- <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
- <template slot="menu" slot-scope="scope">
- <el-button type="text"
- size="small"
- icon="el-icon-search"
- plain
- @click="scope.row.isquery=!scope.row.isquery">
- {{scope.row.isquery ? "鍙栨秷蹇�熸煡璇�":"蹇�熸煡璇�"}}
- </el-button>
- <el-button type="text"
- size="small"
- icon="el-icon-minus"
- plain
- @click="removeCurrentRow(scope.row,'removeAttr')">绉婚櫎
- </el-button>
- </template>
- <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
- <template slot="menuLeft" slot-scope="scope">
- <el-button type="primary"
- size="small"
- icon="el-icon-plus"
- @click="openSelectionTable('selectAttr')">閫夋嫨灞炴��
- </el-button>
- <div class="tag-group" style="display: inline">
- <el-tag
- v-for="item in attrData"
- v-show="item.isquery && item.title!=''"
- style="margin-left: 3px"
- :key="item.title"
- type="info"
- size="small"
- effect="dark">
- {{ item.title }}
- </el-tag>
- </div>
- </template>
- </avue-crud>
- </el-row>
- <el-row style="margin-top: 10px">
- <avue-crud
- ref="crudAddCondition"
- :option="addSearchCondtionOption"
- @cell-click="clickAddSearchCondtionEdit"
- :data="addSearchCondtionData">
- <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
- <template slot="menu" slot-scope="scope">
- <el-button type="text"
- size="small"
- icon="el-icon-minus"
- plain
- @click="removeCurrentRow(scope.row,'removeaddSearchCondtion')">绉婚櫎
- </el-button>
- </template>
- <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
- <template slot="menuLeft" slot-scope="scope">
- <el-button type="primary"
- size="small"
- icon="el-icon-plus"
- @click="openSelectionTable('addSearchCondition')">
- 娣诲姞鏌ヨ鏉′欢
- </el-button>
- </template>
- </avue-crud>
- </el-row>
- </div>
- </el-tab-pane>
- <el-tab-pane label="鐩存帴閫夊彇鍙傜収閰嶇疆" name="second">
- <div style="width: 100%; overflow-y: auto; height: 65vh">
- <avue-crud
- :option="selectReferConfigOption"
- :table-loading="selectReferConfigLoading"
- :data="selectReferConfigData"
- :page.sync="selectReferConfigPage"
- ref="selectReferConfigCrud"
- @row-click="codeRuleRowClick"
- @search-change="searchChange"
- @search-reset="searchReset"
- @selection-change="selectionChange"
- @current-change="currentChange"
- @size-change="sizeChange"
- @refresh-change="refreshChange"
- @on-load="onLoad">
- </avue-crud>
- </div>
- </el-tab-pane>
- </el-tabs>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectedListReferConfig">纭� 瀹�</el-button>
- <el-button @click="recoveryDataAndForm('initForm')">娓呯┖鍐呭</el-button>
- <el-button @click="isShowReferConfig = false">鍙� 娑�</el-button>
- </div>
-
- <el-dialog title="涓恒�愬弬鐓х殑涓氬姟绫诲瀷銆戦�夊彇鍊�"
- append-to-body
- :visible.sync="isShowReferBtmType"
- width="70%"
- destroy-on-close
- @close="clearTableRowSelection('referType')"
- style="height: 110vh; margin-top: -12vh; overflow-y: hidden">
- <avue-crud :option="selectionReferBtmTypeOption"
- :table-loading="selectReferBtmTypeLoading"
- :data="selectReferBtmTypeData"
- :page.sync="selectReferBtmTypePage"
- ref="selectReferBtmTypeCrud"
- class="referBtmType-crud"
- @row-click="referBtmTypeRowClick"
- @search-change="referBtmTypeSearchChange"
- @search-reset="referBtmTypeSearchReset"
- @current-change="referBtmTypeCurrentChange"
- @size-change="referBtmTypeSizeChange">
- <template #radio="{row}">
- <el-radio v-model="referBtmTypeSelectRow"
- :label="row.$index">
- -
- </el-radio>
- </template>
- </avue-crud>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectedReferBtmType">纭� 瀹�</el-button>
- <el-button @click="isShowReferBtmType = false">鍙� 娑�</el-button>
- </div>
- </el-dialog>
-
- <el-dialog title="涓恒�愭帓搴忓瓧娈点�戦�夊彇鍊�"
- append-to-body
- :visible.sync="isShowSortField"
- width="70%"
- destroy-on-close
- @close="clearTableRowSelection('sortField')"
- style="height: 110vh; margin-top: -12vh; overflow-y: hidden">
- <avue-crud :option="selectionSortFieldOption"
- :table-loading="selectSortFieldLoading"
- :data="selectSortFieldData"
- :page.sync="selectSortFieldPage"
- ref="selectSortFieldCrud"
- @row-click="sortFieldRowClick"
- @search-change="sortFieldChange"
- @search-reset="sortFieldSearchReset"
- @current-change="sortFieldCurrentChange"
- @size-change="sortFieldSizeChange">
- <template #radio="{row}">
- <el-radio v-model="sortFieldSelectRow"
- :label="row.$index">
- -
- </el-radio>
- </template>
- </avue-crud>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectedSortField">纭� 瀹�</el-button>
- <el-button @click="isShowSortField = false">鍙� 娑�</el-button>
- </div>
- </el-dialog>
-
- <el-dialog title="閫夋嫨鏄剧ず瀛楁"
- append-to-body
- :visible.sync="isShowShowField"
- width="70%"
- destroy-on-close
- style="height: 110vh; margin-top: -12vh; overflow-y: hidden">
- <avue-crud :option="selectionShowFieldOption"
- :table-loading="selectShowFieldLoading"
- :data="selectShowFieldData"
- ref="selectShowFieldCrud"
- @row-click="showFieldRowClick"
- @selection-change="selectionShowFieldDataChange"
- @search-change="showFieldSearchChange"
- @search-reset="showFieldSearchReset">
- </avue-crud>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectedShowField">纭� 瀹�</el-button>
- <el-button @click="isShowShowField = false">鍙� 娑�</el-button>
- </div>
- </el-dialog>
-
- <el-dialog title="閫夋嫨鏌ヨ鏉′欢"
- append-to-body
- :visible.sync="isShowSearchCondition"
- width="70%"
- destroy-on-close
- style="height: 110vh; margin-top: -12vh; overflow-y: hidden">
- <avue-crud :option="selectionSearchConditionOption"
- :table-loading="selectSearchConditionLoading"
- :data="selectSearchConditionData"
- ref="selectSearchConditionCrud"
- @row-click="searchConditionRowClick"
- @selection-change="searchConditionDataChange"
- @search-change="searchConditionSearchChange"
- @search-reset="searchConditionSearchReset">
- </avue-crud>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="selectedSearchCondition">纭� 瀹�</el-button>
- <el-button @click="isShowSearchCondition = false">鍙� 娑�</el-button>
- </div>
- </el-dialog>
-
- </el-dialog>
-
+ <div v-if="display">
+ <!-- 绗簩灞傚璇濇,鑷畾涔夊弬鐓ч厤缃瓼orm缁勪欢 -->
+ <refer-config-form-dialog
+ ref="referConfigFormDialog"
+ @echoReferConfig="echoReferConfig">
+ </refer-config-form-dialog>
+ <!-- 绗簩灞傚璇濇,鐩存帴閫夋嫨鍙傜収閰嶇疆crud缁勪欢 -->
+ <refer-config-crud-dialog
+ ref="referConfigCrudDialog"
+ @openReconfigInterFace="openReconfigInterFace"
+ @echoReferConfig="echoReferConfig">
+ </refer-config-crud-dialog>
+ </div>
</template>
-
+
<script>
- export default {
- name: "referConfigDialog",
- props: {
- //鏈満鏅彉閲�
- thisSceneTableData: {
- type: Array,
- },
+import referConfigFormDialog from "./referConfigFormDialog.vue";
+import referConfigCrudDialog from "./referConfigCrudDialog.vue";
+import func from "@/util/func";
+export default {
+ name: "referConfigDialog",
+ props: ["referConfigOption","display"],
+ components: {referConfigFormDialog, referConfigCrudDialog},
+ data() {
+ return {
+ };
+ },
+ watch:{
+ referConfigOption (){
+ if(func.notEmpty(this.referConfigOption.referConfig) || func.notEmpty(this.referConfigOption.referBtmId)){
+ this.openReconfigInterFace(this.referConfigOption);
+ }else{
+ this.openTipsChooseOrCust();
+ }
+
},
- data() {
- let element = '';
- return {
- //娴嬭瘯琛ㄦ牸琛岀紪杈戞晥鏋�
- // tableData:[{
- // field: 'id',
- // title: '缂栧彿',
- // fieldType: 'text',
- // fieldTypeText: '鏂囨湰妗�',
- // sort: true,
- // sortField: 'id',
- // width: '150',
- // isquery: true,
- // $cellEdit: false
- // },{
- // field: 'name',
- // title: '鍚嶇О',
- // fieldType: 'text',
- // fieldTypeText: '鏂囨湰妗�',
- // sort: true,
- // sortField: 'name',
- // width: '180',
- // isquery: true,
- // $cellEdit: false
- // }],
- // tableOption:{
- // tableData:[], //琛ㄦ牸鏁版嵁
- // options:[] //琛ㄦ牸閰嶇疆椤逛俊鎭紙琛ㄥご锛宭abel瀹藉害绛夛級
- // },
-
- activeName: 'first', //褰撳墠娲诲姩鐨則abs
- labelWidth: '150', // 鏍囬瀹藉害
- isShowReferConfig: false, // 绗竴灞傚璇濇鏄剧ず闅愯棌鎺у埗
- referTypeIsReadOnly: false,
- // 琛ㄥ崟瀵硅薄
- form: {
- referTypeName: '', //鏄剧ず鐨勫��
- referType: '', //瀹為檯瀛樺偍鐨勫��
- textField: 'name',
- valueField: 'oid',
- type: 'default', //鍙傜収绐楀彛绫诲瀷
- url: '',
- backPath: '',
- method: 'GET',
- height: '',
- useFormKey: '',
- paramForFormKey: '',
- isMuti: false,
- mapFields: '',
- // 鏌ヨ鏉′欢鍒楄〃
- // limit: '15',
- // sortField: '',
- // sortType: 'asc',
- // referContent: '',
- // displayTable: '',
- // parentFieldName: '',
- // parentUsedField: 'oid',
- // parentValue: '',
- // loadType: 'all',
- // onlyLeaf: false,
- },
- attrData: [],
- attrOption: {
- height:'180',
- tip: false,
- addBtn: false,
- editBtn: false,
- searchShow: false,
- searchMenuSpan: 6,
- border: false,
- index: true,
- viewBtn: false,
- delBtn: false,
- selection: false,
- disablePage: false,
- refreshBtn: false,
- columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- column: [
- {
- label: "鍒楀瓧娈�(*)",
- prop: "field",
- cell: true,
- clearable: false,
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "鍒楀悕(*)",
- prop: "title",
- cell: true,
- clearable: false,
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "瀛楁绫诲瀷(*)",
- prop: "fieldTypeText",
- cell: true,
- clearable: false,
- type:"select",
- value: 'text',
- dicData: [{
- value: 'text', label: '鏂囨湰妗�'
- }, {
- value: 'combox', label: '涓嬫媺鑿滃崟'
- }, {
- value: 'radio',label: '鍗曢��'
- }, {
- value: 'swtich', label: '寮�鍏�'
- }, {
- value: 'date', label: '鏃堕棿'
- }, {
- value: 'textarea', label: '鏂囨湰鍩�'
- }],
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "鍒楄〃鍙帓搴�",
- prop: "sort",
- cell: true,
- clearable: false,
- type:"switch",
- width: '80px',
- value: true,
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "鎺掑簭瀛楁",
- prop: "sortField",
- cell: true,
- clearable: false,
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "瀛楁瀹藉害",
- prop: "width",
- cell: true,
- clearable: false,
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "鍒楀浐瀹氫綅缃�",
- prop: "fixedText",
- cell: true,
- type:"select",
- clearable: false,
- value: 'noFixed',
- dicData: [{value: 'noFixed', label: '涓嶅浐瀹�'}, {value: 'left', label: '宸﹁竟'}, {value: 'right', label: '鍙宠竟'}],
- blur: (value) => this.updateAttrBlur(value),
- },{
- label: "js鏄剧ず浠g爜",
- prop: "templet",
- cell: true,
- clearable: false,
- blur: (value) => this.updateAttrBlur(value),
- },
- ]
- },
- addSearchCondtionData: [],
- addSearchCondtionOption: {
- height:'150',
- tip: false,
- addBtn: false,
- editBtn: false,
- searchShow: false,
- searchMenuSpan: 6,
- border: false,
- index: true,
- viewBtn: false,
- delBtn: false,
- selection: false,
- disablePage: false,
- refreshBtn: false,
- columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- column: [
- {
- label: "绛涢�夊瓧娈�",
- prop: "filterField",
- cell: true,
- clearable: false,
- },{
- label: "绛涢�夌被鍨�",
- prop: "filterType",
- type: "select",
- cell: true,
- clearable: false,
- dicData: [{
- value: 'like', label: '鍖呭惈'
- }, {
- value: '=', label: '绛変簬'
- }, {
- value: '>', label: '澶т簬'
- }, {
- value: '<', label: '灏忎簬'
- }, {
- value: '!=', label: '涓嶇瓑浜�'
- }, {
- value: '>=', label: '澶т簬绛変簬'
- }, {
- value: '<=', label: '灏忎簬绛変簬'
- }]
- },{
- label: "绛涢�夊��",
- prop: "filterValue",
- cell: true,
- clearable: false,
- }
- ]
- },
-
- selectReferConfigOption: {
- height:'auto',
- tip: false,
- addBtn: false,
- editBtn: false,
- //searchShow: false,
- searchMenuSpan: 6,
- border: false,
- index: true,
- viewBtn: false,
- delBtn: false,
- //selection: false,
- //disablePage: false,
- //refreshBtn: false,
- //columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- column: [
- {
- label: "鍒楀瓧娈�(*)",
- prop: "field",
- },{
- label: "鍒楀悕(*)",
- prop: "title",
- },{
- label: "瀛楁绫诲瀷(*)",
- prop: "fieldTypeText",
- },{
- label: "鍒楄〃鍙帓搴�",
- prop: "sort",
- },{
- label: "鎺掑簭瀛楁",
- prop: "sortField",
- },{
- label: "瀛楁瀹藉害",
- prop: "width",
- },{
- label: "鍒楀浐瀹氫綅缃�",
- prop: "fixedText",
- },{
- label: "js鏄剧ず浠g爜",
- prop: "templet",
- },
- ]
- },
- selectReferConfigLoading: false,
- selectReferConfigData: [
- {
- field: 'id',
- title: '缂栧彿',
- fieldType: 'text',
- fieldTypeText: '鏂囨湰妗�',
- sort: "true",
- sortField: 'id',
- width: '150',
- isquery: true,
- },{
- field: 'name',
- title: '鍚嶇О',
- fieldType: 'text',
- fieldTypeText: '鏂囨湰妗�',
- sort: "true",
- sortField: 'name',
- width: '180',
- isquery: true,
- }
- ],
- selectReferConfigPage: {
- pageSize: 10,
- currentPage: 1,
- total: 0
- },
- selectReferConfigQuery: {},
-
- //涓恒�愬弬鐓х殑涓氬姟绫诲瀷銆戦�夊彇鍊煎璇濇
- selectionReferBtmTypeOption: {
- border: true,
- height: '260',
- tip: false,
- //searchShow: false,
- index: true,
- selection: false,
- menu: false,
- addBtn: false,
- refreshBtn: false,
- searchShowBtn: false,
- columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- align: 'center',
- menuAlign: 'center',
- column: [{
- label: '-',
- prop: 'radio',
- width: 60,
- hide: false
- },{
- label: '涓氬姟绫诲瀷缂栧彿',
- width: 120,
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'id'
- },{
- label: '涓氬姟绫诲瀷鍚嶇О',
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'name'
- },{
- label: '鎻忚堪',
- search: false,
- prop: 'description'
- }],
- },
- selectReferBtmTypeLoading: false,
- selectReferBtmTypeData: [],
- selectReferBtmTypePage: {
- pageSize: 10,
- currentPage: 1,
- total: 0
- },
- referBtmTypeQuery: {},
- isShowReferBtmType: false,
- referBtmTypeSelectRowData: '',
- referBtmTypeSelectRow: '',
-
-
- // 涓恒�愭帓搴忓瓧娈点�戦�夊彇鍊煎璇濇
- isShowSortField: false,
- selectionSortFieldOption: {
- border: true,
- height: '220px',
- tip: false,
- //searchShow: false,
- index: true,
- selection: false,
- addBtn: false,
- menu: false,
- refreshBtn: false,
- searchShowBtn: false,
- columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- align: 'center',
- menuAlign: 'center',
- border: true,
- column: [{
- label: '-',
- prop: 'radio',
- width: 60,
- hide: false
- },{
- label: '灞炴�ц嫳鏂囩紪鍙�',
- width: 120,
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'id'
- },{
- label: '灞炴�т腑鏂囧悕绉�',
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'name'
- },{
- label: '灞炴�ч暱搴�',
- search: false,
- prop: 'attrLength'
- },{
- label: '灞炴�х被鍨�',
- search: false,
- prop: 'attrType'
- }],
- },
- selectSortFieldLoading: false,
- selectSortFieldData: [],
- selectSortFieldPage: {
- pageSize: 10,
- currentPage: 1,
- total: 0
- },
- sortFieldQuery: {},
- sortFieldSelectRow: '',
- sortFieldSelectRowData: '',
-
-
- //閫夋嫨鏄剧ず瀛楁
- isShowShowField: false,
- selectionShowFieldOption: {
- border: true,
- height: '220px',
- tip: false,
- //searchShow: false,
- index: true,
- selection: true,
- addBtn: false,
- menu: false,
- refreshBtn: false,
- searchShowBtn: false,
- columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- align: 'center',
- menuAlign: 'center',
- border: true,
- column: [{
- label: '灞炴�ц嫳鏂囩紪鍙�',
- width: 120,
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'id'
- },{
- label: '灞炴�т腑鏂囧悕绉�',
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'name'
- },{
- label: '灞炴�ч暱搴�',
- search: false,
- prop: 'attrLength'
- },{
- label: '灞炴�х被鍨�',
- search: false,
- prop: 'attrType'
- }],
- },
- showFieldQuery: {},
- selectShowFieldLoading: false,
- selectShowFieldData: [],
- showFieldSelectList: [],
-
- //娣诲姞鏌ヨ鏉′欢
- isShowSearchCondition: false,
- selectionSearchConditionOption: {
- border: true,
- height: '220px',
- tip: false,
- //searchShow: false,
- index: true,
- selection: true,
- addBtn: false,
- menu: false,
- refreshBtn: false,
- searchShowBtn: false,
- columnBtn: false,
- dialogClickModal: false,
- highlightCurrentRow: true,
- align: 'center',
- menuAlign: 'center',
- border: true,
- column: [{
- label: '灞炴�ц嫳鏂囩紪鍙�',
- width: 120,
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'id'
- },{
- label: '灞炴�т腑鏂囧悕绉�',
- search: true,
- searchSpan: 8,
- searchLabelWidth: 100,
- prop: 'name'
- },{
- label: '灞炴�ч暱搴�',
- search: false,
- prop: 'attrLength'
- },{
- label: '灞炴�х被鍨�',
- search: false,
- prop: 'attrType'
- }],
- },
- selectSearchConditionLoading: false,
- selectSearchConditionData: [],
- searchConditionQuery: {},
- searchConditionSelectList: [],
-
- //涓婁竴娆$偣鍑荤殑琛岀紪杈戞暟鎹�
- preClickAttrRow: '',
- preClickAddSearchConditionRow: '',
-
- };
- },
- // 琛ㄥ崟鐣岄潰鏄剧ず鍐呭閰嶇疆
- computed: {
- formOption() {
- /** 妫�楠屾槸鍚︿负鏁板瓧 */
- let validateNumber = "";
- validateNumber = (rule, value,callback) => {
- if(/[^\d]/g.test(value)){
- callback(new Error('绐楀彛鏄剧ず鐨勯珮搴﹀繀椤讳负鏁板�肩被鍨�'));
- }else {
- callback();
- }
- };
- return {
- submitBtn: false,
- emptyBtn: false,
- labelWidth: '145', //榛樿鏍囩瀹藉害
- // 鍩虹琛ㄥ崟淇℃伅灞曠ず鍖哄煙
- column: [
- {
- label: '鍙傜収鐨勪笟鍔$被鍨�',
- prop: 'referTypeName',
- span: 7,
- disabled: this.referTypeIsReadOnly,
- clearable: !this.referTypeIsReadOnly,
- tip: '鍙傜収鏁版嵁鏌ヨ鐨勪笟鍔$被鍨嬨��',
- tipPlacement: 'right',
- rules: [{
- required: true,
- message: "(鍙傜収鐨勪笟鍔$被鍨�)蹇呭~椤逛笉鑳戒负绌�",
- trigger: ["blur","change"],
- }],
- },{
- label: '鏄剧ず鐨勫睘鎬�',
- prop: 'textField',
- tip: '閫夋嫨鏁版嵁鍚庯紝鏄剧ず鍒板瓧娈典笂鐨勪俊鎭墍灞炵殑灞炴�э紝涓�鑸兘鏄痭ame,濡傛灉鏄涓睘鎬т娇鐢ㄩ�楀彿鍒嗗壊锛屽id,name銆�',
- tipPlacement: 'right',
- span: 7,
- value: 'name',
- rules: [{
- required: true,
- message: "(鏄剧ず鐨勫睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
- trigger: "blur",
- }],
- },{
- label: '瀛樺偍鍊肩殑灞炴��',
- prop: 'valueField',
- tip: '閫夋嫨鏁版嵁鍚庯紝淇濆瓨鍒版暟鎹簱閲岀殑灞炴�э紝涓�鑸兘鏄痮id鎴栬�卛d锛屽鏋滄槸澶氫釜灞炴�т娇鐢ㄩ�楀彿鍒嗗壊锛屽oid ,id',
- value: 'oid',
- tipPlacement: 'right',
- span: 7,
- rules: [{
- required: true,
- message: "(瀛樺偍鍊肩殑灞炴��)蹇呭~椤逛笉鑳戒负绌�",
- trigger: "blur",
- }],
- },{
- label: '鍙傜収绐楀彛绫诲瀷',
- prop: 'type',
- tip: 'default:榛樿鐨勫弬鐓х獥鍙f牱寮�; stand:UI涓婁笅鏂囬厤缃殑鏂瑰紡; classify:鍒嗙被+妗f鐨勬樉绀�; 鑷畾涔夌殑鍙傜収鐩存帴鍐檍s鐨勭粍浠惰矾寰勶紱tree:鏍戝舰灞曠ず;grid:鍒楄〃灞曠ず',
- tipPlacement: 'right',
- span: 7,
- value: 'default',
- type: 'select',
- dicData: [{
- label: '榛樿鏍峰紡',
- value: 'default'
- }, {
- label: '骞冲彴閰嶇疆',
- value: 'stand'
- }, {
- label: '鏍戝舰',
- value: 'tree'
- }, {
- label: '鍒楄〃',
- value: 'grid'
- }, {
- label: '閮ㄩ棬鏍�',
- value: 'refer/OrgDepartmentRefer'
- }, {
- label: '閮ㄩ棬鍒楄〃',
- value: 'refer/OrgDepartmentGridRefers'
- }, {
- label: '鐢ㄦ埛',
- value: 'refer/SmUserRefer'
- }, {
- label: '鐢ㄦ埛鍒楄〃',
- value: 'refer/SmUserGridRefer'
- }, {
- label: '瑙掕壊鍒楄〃',
- value: 'refer/SmRoleRefer'
- }, {
- label: '鑱屽姟',
- value: 'refer/OrgDutyRefer'
- }, {
- label: '宸ョ',
- value: 'refer/SmWorkTypeRefer'
- }, {
- label: '娴佺▼妯℃澘',
- value: 'refer/WfProcessTemplateRefer'
- }],
- rules: [{
- required: true,
- message: "(鍙傜収绐楀彛绫诲瀷)蹇呭~椤逛笉鑳戒负绌�",
- trigger: "blur",
- }],
- change: ({ value, column }) => {
- // 澶嶅師琛ㄥ崟,鍥犱负鍏朵粬鍒嗙粍涓鏋滃瓨鍦ㄥ�硷紝鍦ㄥ垏鎹㈡椂,浼氫繚鐣欒緭鍏ョ殑瀛楁鍊兼墍浠ラ渶瑕佽繕鍘�
- let oldForm = this.form;
- this.form = {}; // 琛ㄥ崟瀵硅薄璧嬬┖
- this.form.referType = oldForm.referType
- this.form.textField = oldForm.textField
- this.form.valueField = oldForm.valueField
- this.form.type = oldForm.type //鍙傜収绐楀彛绫诲瀷
- this.form.url = oldForm.url
- this.form.backPath = oldForm.backPath
- this.form.method = oldForm.method
- this.form.height = oldForm.height
- this.form.useFormKey = oldForm.useFormKey
- this.form.paramForFormKey = oldForm.paramForFormKey
- this.form.isMuti = oldForm.isMuti
- this.form.mapFields = oldForm.mapFields
- let addFrom = {}; //鏍规嵁绫诲瀷闇�瑕佹坊鍔犵殑涓嶅悓灞炴��
- if(value == 'stand'){
- addFrom = {
- referContent: '',
- displayTable: '',
- }
- } else if(value == 'default' || value == 'grid'){
- addFrom = {
- limit: '15',
- sortField: '',
- sortType: 'asc',
- }
- } else if(value == 'tree'){
- addFrom = {
- parentFieldName: '',
- parentUsedField: 'oid',
- parentValue: '',
- loadType: 'all',
- onlyLeaf: false,
- sortField: '',
- sortType: 'asc',
- }
- }
- // 鍚堝苟涓や釜琛ㄥ崟
- this.form = Object.assign(addFrom,this.form);
- //console.log(this.form);
- },
- },{
- label: '鑷畾涔夌殑鍚庡彴璺緞',
- prop: 'url',
- tip: '閫氬父涓虹┖;濡傛灉鏄垪琛紝鍚庡彴蹇呴』杩斿洖DataGrid锛屽鏋滄槸鏍戯紝鍚庡彴蹇呴』杩斿洖List<Tree>',
- tipPlacement: 'right',
- span: 7,
- },{
- label: '鏈嶅姟鐨勫湴鍧�',
- prop: 'backPath',
- tip: '閫氬父涓虹┖锛屽湪鏀寔寰湇鍔℃垨鑰呭垎甯冨紡閮ㄧ讲鐨勬椂鍊欐墠閰嶇疆',
- tipPlacement: 'right',
- span: 7,
- },{
- label: '璇锋眰鍚庡彴鐨勫崗璁柟寮�',
- prop: 'method',
- tip: 'HTTP鐨勫崗璁柟寮忥紝鏀寔POST,PUT,GET锛屼竴鑸兘鏄疓ET',
- tipPlacement: 'right',
- span: 7,
- value: 'GET',
- type: 'select',
- dicData: [{
- label:'GET',value: "GET"
- },{
- label:'PUT',value: "PUT"
- },
- {
- label:'POST',value: "POST"
- }],
- },{
- label: '绐楀彛鏄剧ず鐨勯珮搴�',
- prop: 'height',
- tip: '榛樿绌虹潃锛岃缃悗琛ㄧず寮哄埗鏄剧ず杩欐牱鐨勯珮搴�',
- tipPlacement: 'right',
- span: 7,
- rules:[{
- validator: validateNumber,
- message: "绐楀彛鏄剧ず鐨勯珮搴﹀繀椤讳负鏁板�肩被鍨�",
- trigger: "blur",
- }]
- },{
- label: '杩囨护(绾ц仈)灞炴��',
- prop: 'useFormKey',
- tip: '鑾峰彇琛ㄥ崟涓婄殑鍏朵粬灞炴�х殑灞炴�х殑鍊兼潵杩囨护,鎴栬�呬娇鐢ㄦ煇涓睘鎬ф潵绾ц仈閫夋嫨',
- tipPlacement: 'right',
- span: 7,
- },{
- label: '杩囨护灞炴�ц姹傚弬鏁�',
- prop: 'paramForFormKey',
- tip: '浣跨敤杩囨护灞炴�ф椂锛屽彂閫佺粰鍚庡彴鐨勮姹傚弬鏁�',
- tipPlacement: 'right',
- span: 7,
- },{
- label: '鏄惁澶氶��',
- type: 'switch',
- prop: 'isMuti',
- value: false,
- span: 7,
- row: true,
- },{
- label: '鏄犲皠鍏朵粬灞炴��',
- prop: 'mapFields',
- tip: '閫夋嫨鏁版嵁鍚庯紝灏嗛�夋嫨鐨勬暟鎹嫹璐濆埌琛ㄥ崟閲岀殑鍏朵粬灞炴�э紝涔﹀啓鏍煎紡涓簕褰撳墠琛ㄥ崟涓婄殑灞炴��:閫夋嫨鏁版嵁閲岀殑灞炴��,XXXXx:yyyy}',
- tipPlacement: 'right',
- span: 18,
- }
- ],
- // 鍙樺姩鐨勮〃鍗曞尯鍩�
- group: [
- {
- display: this.form.type=='default'||this.form.type=='grid',
- icon: 'el-icon-info',
- label: this.form.type=='default' ? '榛樿鍙傜収鐨勯厤缃�(涓嬫柟鍒楄〃)':'鍒楄〃鍙傜収鐨勯厤缃紙涓嬫柟鍒楄〃)',
- collapse: true,
- prop: 'groupDdefaultOrGrid',
- column: [
- {
- label: '姣忛〉鏄剧ず鏉℃暟',
- prop: 'limit',
- span: 7,
- tip: '鍒嗛〉鏃舵瘡椤垫樉绀虹殑鏁伴噺锛屼笉鍒嗛〉濉�-1',
- //value: 15,
- tipPlacement: 'right',
- },{
- label: '鎺掑簭瀛楁',
- prop: 'sortField',
- span: 7,
- tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭瀛楁',
- //clearable: false,
- tipPlacement: 'right',
- },{
- label: '鎺掑簭绫诲瀷',
- prop: 'sortType',
- span: 7,
- dicData: [{
- label: '鍗囧簭', value: 'asc'
- }, {
- label: '闄嶅簭', value: 'desc'
- }],
- //value: 'asc',
- type: 'select',
- tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭绫诲瀷',
- tipPlacement: 'right',
- }
- ]
- },
- {
- display: this.form.type=='stand',
- icon: 'el-icon-info',
- label: 'stand(骞冲彴閰嶇疆)鍙傜収',
- collapse: true,
- prop: 'groupStand',
- column: [
- {
- label: '鍙傝�冪殑UI涓婁笅鏂�',
- prop: 'referContent',
- span: 7,
- tip: '鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆,涓斿湪stand绫诲瀷涓嬫墠鑳界敓鏁�',
- tipPlacement: 'right',
- },
- {
- label: '骞冲彴鐨勮〃鏍肩紪鍙�',
- prop: 'displayTable',
- span: 7,
- tip: '涓庡弬鐓х殑UI涓婁笅鏂囦簰鏂ワ紝鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆锛屼笖鍦╯tand绫诲瀷涓嬫墠鑳界敓鏁�',
- tipPlacement: 'right',
- },
- ]
- },
- {
- display: this.form.type=='tree',
- icon: 'el-icon-info',
- label: '鏍戝舰鍙傜収淇℃伅',
- collapse: true,
- prop: 'groupTree',
- labelWidth: '158',
- column: [
- {
- label: '鏍戝舰鐨勪笂绾у睘鎬�',
- prop: 'parentFieldName',
- span: 7,
- tip: '鏍戝舰灞曠ず鐨勬椂鍊欙紝涓婁笅绾у叧绯绘煡鎵剧殑灞炴�с��',
- tipPlacement: 'right',
- rules: [{
- required: true,
- message: "(鏍戝舰鐨勪笂绾у睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
- trigger: "blur",
- }],
- },{
- label: '涓婄骇灞炴�у�煎搴斿睘鎬�',
- prop: 'parentUsedField',
- span: 7,
- tip: '涓婄骇灞炴�у瓨鍌ㄧ殑鍊�,鏄笂绾ф暟鎹殑浠�涔堝睘鎬с�備竴鑸兘鏄痮id銆�',
- value: 'oid',
- tipPlacement: 'right',
- },{
- label: '鏍硅妭鐐圭殑鍊�',
- prop: 'parentValue',
- span: 7,
- tip: '鏍戝舰灞曠ず鐨勬椂鍊欙紝涓婄骇鐨勫�笺��',
- tipPlacement: 'right',
- },{
- label: '鏍戝姞杞芥柟寮�',
- prop: 'loadType',
- span: 7,
- value: 'all',
- dicData: [{
- label: '鍏ㄩ儴', value: 'all'
- }, {
- label: '閫愮骇鍔犺浇', value: 'node'
- }],
- type: 'select',
- },{
- label: '鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣',
- prop: 'onlyLeaf',
- span: 7,
- value: false,
- type: 'switch',
- },{
- label: '鎺掑簭瀛楁',
- prop: 'sortField',
- span: 7,
- //type: 'table',
- tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭瀛楁',
- tipPlacement: 'right',
- // children: {
- // border: true,
- // column: [{
- // label: '灞炴�ц嫳鏂囩紪鍙�',
- // width: 120,
- // search: true,
- // searchSpan: 8,
- // searchLabelWidth: 100,
- // prop: 'id'
- // },{
- // label: '灞炴�т腑鏂囧悕绉�',
- // search: true,
- // searchSpan: 8,
- // searchLabelWidth: 100,
- // prop: 'name'
- // },{
- // label: '灞炴�ч暱搴�',
- // search: false,
- // prop: 'attrLength'
- // },{
- // label: '灞炴�х被鍨�',
- // search: false,
- // prop: 'attrType'
- // }],
- // },
- // 杩欏効闇�瑕佹坊鍔犱笟鍔$被鍨嬫帴鍙h姹傚疄鐜板脊绐楃晫闈㈣〃鏍兼覆鏌�
- },{
- label: '鎺掑簭绫诲瀷',
- prop: 'sortType',
- span: 7,
- type: 'select',
- value: 'asc',
- dicData: [{
- label: '鍗囧簭', value: 'asc'
- }, {
- label: '闄嶅簭', value: 'desc'
- }],
- },
- ]
- },
- ]
+ },
+ methods: {
+ // 褰撳墠宸插瓨鍦ㄧ紪杈戣繃鐨勫弬鐓ч厤缃紝鎵�浠ョ洿鎺ユ墦寮�鍙傜収閰嶇疆鐣岄潰
+ openReconfigInterFace(preReferConfigForm){
+ const form = preReferConfigForm;
+ let data = {
+ referTypeName: form.referBtmName || '',
+ referType: form.referBtmId || '',
+ }
+ if(this.referConfigOption.referConfig){
+ // 缂栬緫鐮佹鏃秗eferConfig鍙兘浼氬湪涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊间箣鍚庢敼鍙�
+ let referConfigValue =JSON.parse(form.referConfig);
+ if(referConfigValue.referType != form.referBtmId && data.referType){
+ referConfigValue.referType = form.referBtmId || '';
+ referConfigValue.referTypeName = form.referBtmName || form.referBtmId;
+ this.referConfigOption.referConfig = JSON.stringify(referConfigValue);
}
- },
-
+ this.$set(data,"referConfig",this.referConfigOption.referConfig)
+ }
+ // 棣栨鐐瑰嚮鎶ラ敊鏈畾涔�
+ this.$nextTick(()=>{
+ this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
+ this.$refs.referConfigFormDialog.initPageData(data);
+ })
},
- mounted() {
- // 楹荤殑杩欎釜鍦版柟璋冩鎴戜簡
- this.element = document.getElementById('refer-config');
- this.element.addEventListener("click", (e) => {
- //<table cellspacing="0" cellpadding="0" border="0" class="el-table__body" style="width: 911px;">
- //console.log(e.target);
- // console.log(this.$refs.crudAttr);
- // console.log(this.$refs.crudAttr.$el.contains(e.target));
- //console.log(!this.$refs.crudAttr.$el.contains(e.target) && this.preClickAttrRow != null);
- if (!this.$refs.crudAttr.$el.contains(e.target) &&
- this.preClickAttrRow != '') {
- this.preClickAttrRow.$cellEdit = false;
- }
- if (!this.$refs.crudAddCondition.$el.contains(e.target) &&
- this.preClickAddSearchConditionRow != '') {
- this.preClickAddSearchConditionRow.$cellEdit = false;
+ // 鎵撳紑鑷畾涔夊弬鐓ч厤缃垨鐩存帴閫夋嫨鍙傜収閰嶇疆鐨勬彁绀烘
+ openTipsChooseOrCust(){
+ this.$confirm('璇烽�夋嫨鍙傜収閰嶇疆鐨勫畾涔夋柟寮忥紵','鍙傜収閰嶇疆鐨勬柟寮�', {
+ distinguishCancelAndClose: true,
+ closeOnClickModal: false,
+ confirmButtonText: '鑷畾涔夊弬鐓ч厤缃�',
+ cancelButtonText: '鐩存帴閫夋嫨鍙傜収閰嶇疆'
+ })
+ .then(() => {
+ // 鎵撳紑鑷畾鍙傜収閰嶇疆瀵硅瘽妗�
+ this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
+ })
+ .catch(action => {
+ if (action === "cancel") {
+ // 鎵撳紑鐩存帴閫夋嫨鍙傜収閰嶇疆瀵硅瘽妗�
+ this.$refs.referConfigCrudDialog.isShowReferConfigCrud = true;
+
}
});
},
- watch: {
- // 璐煎潙锛屽垏鎹㈢被鍨嬫椂琛ㄦ牸锛岄殣钘忓啀鏄剧ず灏变細鍑虹幇琛ㄦ牸閿欎綅闂锛�
- 'form.type'(val) {
- //console.log(val);
- this.onloadAttrData();
- }
+ /* 寮曠敤鐮佹鍙傜収閰嶇疆,瀛愮粍浠跺~瀹屽弬鐓ч厤缃箣鍚庡唴瀹瑰洖鏄炬椂璋冪敤 */
+ echoReferConfig(content){
+ this.$emit('setReferConfigValue', content) // 瑙﹀彂update:data灏嗗瓙缁勪欢鍊间紶閫掔粰鐖剁粍浠�
},
- methods: {
-
- // 鍗曞嚮琛ㄦ牸瀹炵幇琛ㄦ牸琛岀紪杈�
- clickAttrEdit(row, column, event){
- if(this.preClickAttrRow && this.preClickAttrRow != row){
- //console.log(this.attrData[this.preClickAttrRow.$index]);
- this.attrData[this.preClickAttrRow.$index].$cellEdit = false;
- }
- row.$cellEdit = true;
- this.preClickAttrRow = row;
- },
- // 灞炴�ц〃鏍艰缂栬緫澶卞幓鐒︾偣鏃朵繚瀛樻柟娉�
- updateAttrBlur(value){
- //console.log(this.attrData[0]);
-
- },
- // 鍗曞嚮琛ㄦ牸瀹炵幇琛ㄦ牸琛岀紪杈�
- clickAddSearchCondtionEdit(row, column, event){
- if(this.preClickAddSearchConditionRow && this.preClickAddSearchConditionRow != row){
- //console.log(this.attrData[this.preClickAttrRow.$index]);
- this.addSearchCondtionData[this.preClickAddSearchConditionRow.$index].$cellEdit = false;
- }
- row.$cellEdit = true;
- this.preClickAddSearchConditionRow = row;
- },
- //涓婁竴涓〉闈㈠凡缁忛�変腑鍙傜収搴旂敤鐨勪笟鍔$被鍨嬬殑鎯呭喌锛屽拰涓婁竴娆″凡缁忛厤缃繃鍙傜収閰嶇疆鐨勬儏鍐典笅杩涜椤甸潰鍒濆鍖栨覆鏌�
- initPageData(val){
- let value = JSON.parse(val);
- if(value != null || value != 'undefined' ){
- this.form = value;
- //console.log(val);
- this.referTypeIsReadOnly = true;
- }
- //console.log(localStorage.getItem("userId"));
- },
- // 鍒囨崲褰撳墠娲诲姩鐨則abs
- handleClick(tab, event) {
- if(tab.index=='0'){
- this.onloadAttrData();
- }else{
- //this.onloadSelectReferConfigData();
- }
- },
- // 閫夋嫨瀹屽弬鐓ч厤缃箣鍚庣偣鍑讳繚瀛樻寜閽Е鍙�
- selectedListReferConfig(){
- //琛ㄥ崟楠岃瘉
- this.$refs.form.validate((valid, done, msg) => {
- if (valid) {
- // 鏍规嵁绫诲瀷瀵筬orm琛ㄥ崟涓殑鍙傛暟杩涜杩囨护锛屽彧淇濈暀闈炵┖涓旈渶瑕佺殑灞炴��
- let submitForm = this.filterForm();
- //console.log(submitForm);
- this.$emit('echoReferConfig', submitForm) // 瑙﹀彂update:data灏嗗瓙缁勪欢鍊间紶閫掔粰鐖剁粍浠�
- this.isShowReferConfig = false;
- done()
- } else {
- for(let attr in msg) {
- //console.log(msg[attr][0].message);
- this.$message.warning(msg[attr][0].message);
- break;
- }
- return false;
- }
- })
- },
- //浠庣紦瀛樹腑閭orm琛ㄥ崟瀵硅薄
- getLocalStoregeForm(){
- localStorage.getItem("userId");
-
- },
- /** 鍏跺疄閫夊彇灞炴�ц〃鏍肩殑榛樿鏁版嵁涓嶉渶瑕佸姞杞斤紝
- 浣嗘槸寮圭獥鎵撳紑浼氭湁琛ㄦ牸閿欒闂鎵�浠ラ渶瑕佸湪杩欒皟鐢╠oLayout鏂规硶*/
- onloadAttrData(){
- this.$nextTick(() => {
- this.$refs.crudAttr.doLayout()
- })
- this.attrData = [
- {
- field: 'id',
- title: '缂栧彿',
- fieldType: 'text',
- fieldTypeText: '鏂囨湰妗�',
- sort: true,
- sortField: 'id',
- width: '150',
- isquery: true,
- $cellEdit: false
- },{
- field: 'name',
- title: '鍚嶇О',
- fieldType: 'text',
- fieldTypeText: '鏂囨湰妗�',
- sort: true,
- sortField: 'name',
- width: '180',
- isquery: true,
- $cellEdit: false
- }
- ];
- },
- // 灞炴�ч�夋嫨琛ㄦ牸涓殑绉婚櫎鎸夐挳鍔熻兘
- removeCurrentRow(row,condition){
- if(condition=='removeAttr'){
- this.$delete(this.attrData, row.$index);
- return;
- }
- this.$delete(this.addSearchCondtionData, row.$index);
- },
- // 璇ョ晫闈㈢殑鏁版嵁杩涜鍒濆鍖栧鍘�
- recoveryDataAndForm(condition){
- if(condition=='initForm'){
- this.referTypeIsReadOnly = false;
- let currentType = this.form.type;
- this.form = this.$options.data().form;
- this.form.type = currentType;
- // this.form.referContent = '';
- // this.form.displayTable = '';
- return;
- }
- Object.assign(this.$data,this.$options.data());
- // 绉婚櫎缁戝畾鍦ㄨ椤甸潰瀵硅瘽妗嗕笂鐨勫叏灞�鐩戝惉浜嬩欢
- if(this.element != ''){
- let te = window.removeEventListener('click', this.element)
- }
- },
- // 鎻愪氦琛ㄥ崟涔嬪墠杩囨护鎺夌┖鎴栦笉闇�瑕佺殑琛ㄥ崟鏁版嵁
- filterForm(){
- const oldForm = this.form;
- let submittDefaultForm = [
- 'referTypeName',
- 'referType',
- 'textField',
- 'valueField',
- 'type', //鍙傜収绐楀彛绫诲瀷
- 'url',
- 'backPath',
- 'method',
- 'height',
- 'useFormKey',
- 'paramForFormKey',
- 'isMuti',
- 'mapFields',
- 'searchCondition',
- ];
- let addArray = [];
- let newForm ={};
- // 鏍规嵁涓嶅悓绫诲瀷杩囨护鍑轰笉鍚岀殑鐨勮〃鍗曞睘鎬�
- if(oldForm.type == 'stand'){
- addArray = ['referContent', 'displayTable'];
- } else if(oldForm.type == 'default' || oldForm.type == 'grid'){
- addArray = ['limit', 'sortField', 'sortType'];
- } else if(oldForm.type == 'tree'){
- addArray = [
- "parentFieldName",
- 'parentUsedField',
- 'parentValue',
- 'loadType',
- 'onlyLeaf',
- 'sortField',
- 'sortType'
- ];
- }
- submittDefaultForm = submittDefaultForm.concat(addArray);
- if(!this.checkArrayIsUndefined(this.addSearchCondtionData)){
- newForm = {
- searchCondition: this.addSearchCondtionData,
- }
- }
- if((oldForm.type == 'default' || oldForm.type == 'grid') && (this.attrData.length >= 0 && !this.checkArrayIsUndefined(this.addSearchCondtionData))){
- newForm = Object.assign(newForm,{attrData:this.attrData});
- }
- // 杩囨护鍑虹┖鍊煎睘鎬у拰涓嶉渶瑕佺殑灞炴��
- submittDefaultForm.forEach(item=>{
- // console.log(!this.checkStringIsEmpty(oldForm[item]) || !this.checkArrayIsUndefined(oldForm[item]));
- if((item == 'isMuti' || item == 'onlyLeaf') || (!this.checkStringIsEmpty(oldForm[item]) || !this.checkArrayIsUndefined(oldForm[item]))){
- //console.log(item,oldForm[item]);
- newForm = Object.assign(newForm,{[item]:oldForm[item]});
- }
- });
- // console.log(newForm);
- return newForm;
- },
- /**
- * 涓虹┖
- * @param val
- * @returns {boolean}
- */
- checkStringIsEmpty(val){
- if (
- val === null ||
- typeof val === 'undefined' ||
- (typeof val === 'string' && val === "" && val !== 'undefined')
- ) {
- return true;
- }
- return false;
- },
- /**
- * 鏄惁涓哄畾涔�
- * @param val
- * @returns {boolean}
- */
- checkArrayIsUndefined(val){
- return typeof val === 'array' && (val.length === 0 ||val === null || typeof val === 'undefined');
- },
- onloadSelectReferConfigData(){
- this.$nextTick(() => {
- this.$refs.selectReferConfigCrud.doLayout()
- })
- this.selectReferConfigData = [{
- field: 'id',
- title: '缂栧彿',
- fieldType: 'text',
- fieldTypeText: '鏂囨湰妗�',
- sort: "true",
- sortField: 'id',
- width: '150',
- isquery: true,
- },{
- field: 'name',
- title: '鍚嶇О',
- fieldType: 'text',
- fieldTypeText: '鏂囨湰妗�',
- sort: "true",
- sortField: 'name',
- width: '180',
- isquery: true,
- }];
- },
- // 鎵撳紑琛ㄦ牸閫夋嫨妗�
- openSelectionTable(condition){
- if (condition == 'referType'){
- this.isShowReferBtmType = true;
- this.referBtmTypeOnLoad();
- }else if (condition == 'sortField'){
- this.isShowSortField = true;
- this.sortFieldOnLoad();
- }else {
- if(this.form.referType == '' || this.form.referType == null){
- this.$message.warning("璇疯緭鍏ュ弬鐓х殑涓氬姟绫诲瀷")
- return;
- }
- if(condition == 'addSearchCondition'){
- this.isShowSearchCondition = true;
- this.selectSearchConditionDataOnload();
- }else {
- this.isShowShowField = true;
- this.selectShowFieldDataOnload();
- }
- }
- },
- // 娓呯┖琛ㄦ牸閫夋嫨妗�
- clearSelectionTable(condition){
- if(condition == 'referType'){
- this.form.referType = '';
- this.form.referTypeName = '';
- }else {
- this.form.sortField = '';
- }
- },
- // 鍏抽棴瀵硅瘽妗嗘椂瀵归�変腑鍐呭杩涜娓呯┖锛屽苟瑙g粦鍏ㄥ眬鐩戝惉浜嬩欢
- clearTableRowSelection(condition){
- if(condition == 'sortField'){
- this.sortFieldSelectRow = '';
- this.sortFieldSelectRowData = '';
- }else if(condition == 'referType'){
- this.referBtmTypeSelectRow='';
- this.referBtmTypeSelectRowData = '';
- }
-
- },
-
- // 涓恒�愬弬鐓х殑涓氬姟绫诲瀷銆戦�夊彇鍊�
- referBtmTypeOnLoad(page, params = {}){
- this.selectReferBtmTypeLoading = true;
- // 璋冪敤api璇锋眰
- const data = {
- total: 2,
- data: [{
- id: 't2',
- name: 'test2',
- description: 'test2',
- }, {
- id: 't3',
- name: 'test3',
- description: 'test3',
- }]
- }
- this.selectReferBtmTypeData = data.data;
- this.selectReferBtmTypePage.total = data.total;
- this.selectReferBtmTypeLoading = false;
- },
- referBtmTypeSizeChange(pageSize){
- this.selectReferBtmTypePage.pageSize = pageSize;
- },
- referBtmTypeSearchChange(params, done){
- this.referBtmTypeQuery = params;
- this.selectReferBtmTypePage.currentPage = 1;
- this.referBtmTypeOnLoad(this.page, params);
- done();
- },
- referBtmTypeSearchReset(){
- this.referBtmTypeQuery = {};
- this.referBtmTypeOnLoad(this.selectReferBtmTypePage);
- },
- referBtmTypeRowClick(row){
- this.referBtmTypeSelectRowData = row;
- this.referBtmTypeSelectRow = row.$index
- //console.log( this.referBtmTypeSelectRowData);
- },
- referBtmTypeCurrentChange(currentPage){
- this.selectReferBtmTypePage.currentPage = currentPage;
- },
- selectedReferBtmType(){
- if(!this.referBtmTypeSelectRowData) {
- this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
- return;
- }
- this.form.referTypeName = this.referBtmTypeSelectRowData.name;
- this.form.referType = this.referBtmTypeSelectRowData.id;
- this.isShowReferBtmType = false;
- },
-
- // 涓恒�愭帓搴忓瓧娈点�戦�夊彇鍊�
- sortFieldOnLoad(page, params = {}){
- this.selectSortFieldLoading = true;
- // 璋冪敤api璇锋眰
- const data = {
- total: 2,
- data: [{
- id: 'test',
- name: '娴嬭瘯',
- attrLength: 11,
- attrType: '瀛楃涓�'
- }, {
- id: 'test1',
- name: '娴嬭瘯1',
- attrLength: 12,
- attrType: '鏁板瓧'
- }]
- }
- this.selectSortFieldData = data.data;
- this.selectSortFieldPage.total = data.total;
- this.selectSortFieldLoading = false;
- },
- sortFieldSizeChange(pageSize){
- this.selectSortFieldPage.pageSize = pageSize;
- },
- sortFieldSearchChange(params, done){
- this.sortFieldQuery = params;
- this.selectSortFieldPage.currentPage = 1;
- this.sortFieldOnLoad(this.page, params);
- done();
- },
- sortFieldSearchReset(){
- this.sortFieldQuery = {};
- this.sortFieldOnLoad(this.selectSortFieldPage);
- },
- sortFieldRowClick(row){
- this.sortFieldSelectRowData = row;
- this.sortFieldSelectRow = row.$index
- //console.log( this.sortFieldSelectRowData);
- },
- sortFieldCurrentChange(currentPage){
- this.selectReferBtmTypePage.currentPage = currentPage;
- },
- selectedSortField(){
- if(!this.sortFieldSelectRowData) {
- this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
- return;
- }
- this.form.sortField = this.sortFieldSelectRowData.id;
- this.isShowSortField = false;
- },
-
- // 閫夋嫨鏄剧ず瀛楁
- selectShowFieldDataOnload(params = {}){
- this.selectShowFieldLoading = true;
- // 璋冪敤api璇锋眰
- const data = {
- total: 2,
- data: [{
- id: 'test',
- name: '娴嬭瘯',
- attrLength: 11,
- attrType: 'text',
- attrTypeText: '鏂囨湰妗�'
- }, {
- id: 'test1',
- name: '娴嬭瘯1',
- attrLength: 12,
- attrType: 'number',
- attrTypeText: '鏁板瓧'
- }, {
- id: 'test2',
- name: '娴嬭瘯2',
- attrLength: 13,
- attrType: 'date',
- attrTypeText: '鏃ユ湡'
- }]
- }
- this.selectShowFieldData = data.data;
- this.selectShowFieldLoading = false;
- },
- selectionShowFieldDataChange(list){
- this.showFieldSelectList = list;
- this.$refs.selectShowFieldCrud.setCurrentRow(this.showFieldSelectList[list.length-1]);
- },
- showFieldRowClick(row){
- //this.showFieldSelectList.push(row);
- this.$refs.selectShowFieldCrud.setCurrentRow(row);
- this.$refs.selectShowFieldCrud.toggleRowSelection(row); //閫変腑褰撳墠琛�
- },
- showFieldSearchChange(params, done){
- this.showFieldQuery = params;
- this.selectShowFieldDataOnload(params);
- done();
- },
- showFieldSearchReset(){
- this.showFieldQuery = {};
- this.sortFieldOnLoad();
- },
- selectedShowField(){
- //console.log(this.showFieldSelectList);
- if(this.showFieldSelectList.length <= 0) {
- this.$message.warning("璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�");
- return;
- }
- //this.showFieldSelectList;
- this.showFieldSelectList.forEach(item => {
- this.attrData.push(
- {
- field: item.id,
- title: item.id,
- fieldType: item.attrType,
- fieldTypeText: item.attrTypeText,
- sort: false,
- sortField: item.id,
- width: item.attrLength,
- isquery: false,
- $cellEdit: false
- }
- )
-
- })
- this.isShowShowField = false;
- },
-
-
- // 閫夋嫨鏌ヨ鏉′欢
- selectSearchConditionDataOnload(params = {}){
- this.selectSearchConditionLoading = true;
- // 璋冪敤api璇锋眰
- this.selectSearchConditionData = [{
- id: 'test',
- name: '娴嬭瘯',
- attrLength: 11,
- attrType: '瀛楃涓�',
- $cellEdit: false,
- }, {
- id: 'test1',
- name: '娴嬭瘯1',
- attrLength: 12,
- attrType: '鏁板瓧',
- $cellEdit: false,
- }, {
- id: 'test2',
- name: '娴嬭瘯2',
- attrLength: 13,
- attrType: '鏃ユ湡',
- $cellEdit: false,
- }];
- this.selectSearchConditionLoading = false;
- },
- searchConditionRowClick(row){
- this.$refs.selectSearchConditionCrud.setCurrentRow(row);
- this.$refs.selectSearchConditionCrud.toggleRowSelection(row); //閫変腑褰撳墠琛�
- },
- searchConditionDataChange(list){
- this.searchConditionSelectList = list;
- this.$refs.selectSearchConditionCrud.setCurrentRow(this.searchConditionSelectList[list.length-1]);
- },
- searchConditionSearchChange(params, done){
- this.searchConditionQuery = params;
- this.selectSearchConditionDataOnload(params);
- done();
- },
- searchConditionSearchReset(){
- this.searchConditionQuery = {};
- this.sortFieldOnLoad();
- },
- selectedSearchCondition(){
- console.log(this.searchConditionSelectList);
- if(this.searchConditionSelectList.length <= 0) {
- this.$message.warning("璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�");
- return;
- }
- this.searchConditionSelectList.forEach(item => {
- this.addSearchCondtionData.push(
- {
- filterField: item.id,
- filterType: '=',
- filterValue: '',
- $cellEdit: false
- }
- )
-
- })
- this.isShowSearchCondition = false;
- },
-
- }
- };
+ },
+}
</script>
<style>
- .referBtmType-crud > .el-card > .el-card__body > .avue-crud__menu {
- display: none!important;
- }
-
- /* 鎻愮ず鏂囨湰鍑虹幇鐨勯�熷害 */
- .el-tooltip__popper{
- width: 200px !important;
- transition-duration: 0.2s !important;
- transition-delay: 0.1s !important;
- }
- /* 鎻愮ず鏂囨湰娑堝け鏃剁殑閫熷害 */
- .fel-fade-in-linear-leave-active,.el-fade-in-linear-leave-to{
- -webkit-transition:opacity .0s !important;
- transition:opacity .0s !important;
- }
-
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3