From 9494306b253c5f8c1afbe7eb00b2b25e3cb74981 Mon Sep 17 00:00:00 2001
From: ludc <pUXmgxCf6A>
Date: 星期三, 17 五月 2023 20:37:54 +0800
Subject: [PATCH] 以及发布webservice接口功能搭建,将通通用接口移植过来
---
Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue | 662 ++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 507 insertions(+), 155 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 38708a5..120dca7 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigDialog.vue
@@ -6,68 +6,104 @@
:visible.sync="isShowReferConfig"
width="90%"
@close="recoveryDataAndForm('initData')"
- style="height: 110vh; margin-top: -13vh; overflow-y: hidden">
- <div style="width: 100%; overflow-y: auto; height: 70vh">
- <el-row>
- <avue-form :option="formOption" v-model="form"></avue-form>
- </el-row>
- <el-row v-show="form.referWindowType==0 || form.referWindowType==3">
- <avue-crud
- ref="crudAttr"
- :option="attrOption"
- :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="openAddSearchOrAttrDialog('selectAttr')">閫夋嫨灞炴��
- </el-button>
- </template>
- </avue-crud>
- </el-row>
- <el-row>
- <avue-crud
- ref="crudAddCondition"
- :option="addSearchCondtionOption"
- :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="openAddSearchOrAttrDialog('addSearchCondition')">
- 娣诲姞鏌ヨ鏉′欢
- </el-button>
- </template>
- </avue-crud>
- </el-row>
- </div>
+ 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>
+ <el-input
+ ref="referType"
+ placeholder="璇烽�夋嫨 鍙傜収鐨勪笟鍔$被鍨�"
+ prefix-icon="el-icon-search"
+ readonly="true"
+ v-model="form.referType"
+ @focus="openAttrSelectOrGetValue('referType')">
+ <i slot="suffix" class="el-icon-circle-close" @click="clearAttrDataByIcon('referType')" 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"
+ :option="attrOption"
+ @cell-click="clicktest"
+ :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="openAddSearchOrAttrDialog('selectAttr')">閫夋嫨灞炴��
+ </el-button>
+ </template>
+ </avue-crud>
+ </el-row>
+ <el-row>
+ <avue-crud
+ ref="crudAddCondition"
+ :option="addSearchCondtionOption"
+ :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="openAddSearchOrAttrDialog('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="optionSelectReferConfig"
+ :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>
@@ -83,19 +119,38 @@
props: {
//鏈満鏅彉閲�
thisSceneTableData: {
- type: Array,
+ type: Array,
},
},
data() {
return {
+ activeName: 'first', //褰撳墠娲诲姩鐨則abs
labelWidth: '150', // 鏍囬瀹藉害
isShowReferConfig: false, // 瀵硅瘽妗嗘樉绀洪殣钘忔帶鍒�
// 琛ㄥ崟瀵硅薄
form: {
- text: '',
- text1: '',
- text2: '',
- referWindowType: 0, //鍙傜収绐楀彛绫诲瀷
+ 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: [
{
@@ -211,12 +266,96 @@
prop: "value",
}
]
- }
+ },
+
+ optionSelectReferConfig: {
+ 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: {},
+
};
},
// 琛ㄥ崟鐣岄潰鏄剧ず鍐呭閰嶇疆
computed: {
formOption() {
+ /** 妫�楠屾槸鍚︿负鏁板瓧 */
+ let validateNumber = "";
+ validateNumber = (rule, value,callback) => {
+ if(/[^\d]/g.test(value)){
+ callback(new Error('绐楀彛鏄剧ず鐨勯珮搴﹀繀椤讳负鏁板�肩被鍨�'));
+ }else {
+ callback();
+ }
+ };
return {
submitBtn: false,
emptyBtn: false,
@@ -225,11 +364,27 @@
column: [
{
label: '鍙傜収鐨勪笟鍔$被鍨�',
- prop: 'text1',
+ prop: 'referType',
span: 7,
- type: 'table',
+ tip: '鍙傜収鏁版嵁鏌ヨ鐨勪笟鍔$被鍨嬨��',
+ tipPlacement: 'right',
+ type: 'input',
+ rules: [{
+ required: true,
+ message: "(鍙傜収鐨勪笟鍔$被鍨�)蹇呭~椤逛笉鑳戒负绌�",
+ trigger: "blur",
+ }],
children: {
border: true,
+ height: '200px',
+ tip: false,
+ //searchShow: false,
+ index: true,
+ selection: true,
+ //refreshBtn: false,
+ //columnBtn: false,
+ dialogClickModal: false,
+ highlightCurrentRow: true,
column: [{
label: '涓氬姟绫诲瀷缂栧彿',
width: 120,
@@ -249,17 +404,60 @@
prop: 'description'
}],
},
- rules: [{
- required: true,
- message: "(鍙傜収鐨勪笟鍔$被鍨�)蹇呭~椤逛笉鑳戒负绌�",
- trigger: "blur",
- }],
+ // formatter: (row) => {
+ // console.log(row.name);
+ // if (!row.name)
+ // return ''
+ // return row.name;
+ // },
+ // onLoad: ({ page, value, data }, callback) => {
+ // console.log(page);
+ // console.log(value);
+ // console.log(data);
+ // //棣栨鍔犺浇鍘绘煡璇㈠搴旂殑鍊�
+ // if (value) {
+ // console.log(111+"======="+ value);
+ // this.$message.success('棣栨鏌ヨ' + value)
+ // callback({
+ // id: 't1',
+ // name: 'test1',
+ // description: 'test1',
+ // })
+ // return;
+ // }
+ // if (data) {
+ // console.log(111+"======="+ data);
+ // this.$message.success('鎼滅储鏌ヨ鍙傛暟' + JSON.stringify(data))
+ // }
+ // if (page) {
+ // console.log(111+"======="+ page);
+ // this.$message.success('鍒嗛〉鍙傛暟' + JSON.stringify(page))
+ // }
+ // //鍒嗛〉鏌ヨ淇℃伅
+ // callback({
+ // total: 2,
+ // data: [{
+ // id: 't2',
+ // name: 'test2',
+ // description: 'test2',
+ // }, {
+ // id: 't3',
+ // name: 'test3',
+ // description: 'test3',
+ // }]
+ // })
+ // },
+ // props: {
+ // label: 'name',
+ // value: 'id',
+ // }
},{
label: '鏄剧ず鐨勫睘鎬�',
- prop: 'text2',
- tip: '閫夋嫨鏁版嵁鍚庯紝鏄剧ず鍒板瓧娈典笂鐨勪俊鎭墍灞炵殑灞炴�э紝涓�鑸兘鏄痭ame,濡傛灉鏄涓睘鎬т娇鐢ㄩ�楀彿鍒嗗壊锛屽id,name',
+ prop: 'textField',
+ tip: '閫夋嫨鏁版嵁鍚庯紝鏄剧ず鍒板瓧娈典笂鐨勪俊鎭墍灞炵殑灞炴�э紝涓�鑸兘鏄痭ame,濡傛灉鏄涓睘鎬т娇鐢ㄩ�楀彿鍒嗗壊锛屽id,name銆�',
tipPlacement: 'right',
span: 7,
+ value: 'name',
rules: [{
required: true,
message: "(鏄剧ず鐨勫睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
@@ -267,8 +465,9 @@
}],
},{
label: '瀛樺偍鍊肩殑灞炴��',
- prop: 'text2',
+ prop: 'valueField',
tip: '閫夋嫨鏁版嵁鍚庯紝淇濆瓨鍒版暟鎹簱閲岀殑灞炴�э紝涓�鑸兘鏄痮id鎴栬�卛d锛屽鏋滄槸澶氫釜灞炴�т娇鐢ㄩ�楀彿鍒嗗壊锛屽oid ,id',
+ value: 'oid',
tipPlacement: 'right',
span: 7,
rules: [{
@@ -278,101 +477,158 @@
}],
},{
label: '鍙傜収绐楀彛绫诲瀷',
- prop: 'referWindowType',
- //tip: '鎴戞槸涓�涓乏杈规彁绀鸿',
- //tipPlacement: 'left',
+ prop: 'type',
+ tip: 'default:榛樿鐨勫弬鐓х獥鍙f牱寮�; stand:UI涓婁笅鏂囬厤缃殑鏂瑰紡; classify:鍒嗙被+妗f鐨勬樉绀�; 鑷畾涔夌殑鍙傜収鐩存帴鍐檍s鐨勭粍浠惰矾寰勶紱tree:鏍戝舰灞曠ず;grid:鍒楄〃灞曠ず',
+ tipPlacement: 'right',
span: 7,
+ value: 'default',
type: 'select',
dicData: [{
label: '榛樿鏍峰紡',
- value: 0
+ value: 'default'
}, {
label: '骞冲彴閰嶇疆',
- value: 1
+ value: 'stand'
}, {
label: '鏍戝舰',
- value: 2
+ value: 'tree'
}, {
label: '鍒楄〃',
- value: 3
+ value: 'grid'
}, {
label: '閮ㄩ棬鏍�',
- value: 4
+ value: 'refer/OrgDepartmentRefer'
}, {
label: '閮ㄩ棬鍒楄〃',
- value: 5
+ value: 'refer/OrgDepartmentGridRefers'
}, {
label: '鐢ㄦ埛',
- value: 6
+ value: 'refer/SmUserRefer'
}, {
label: '鐢ㄦ埛鍒楄〃',
- value: 7
+ value: 'refer/SmUserGridRefer'
}, {
label: '瑙掕壊鍒楄〃',
- value: 8
+ value: 'refer/SmRoleRefer'
}, {
label: '鑱屽姟',
- value: 9
+ value: 'refer/OrgDutyRefer'
}, {
label: '宸ョ',
- value: 10
+ value: 'refer/SmWorkTypeRefer'
}, {
label: '娴佺▼妯℃澘',
- value: 11
+ 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: 'text2',
- tip: '閫氬父涓虹┖;濡傛灉鏄垪琛紝鍚庡彴蹇呴』杩斿洖DataGrid锛屽鏋滄槸鏍戯紝鍚庡彴蹇呴』杩斿洖List',
+ prop: 'url',
+ tip: '閫氬父涓虹┖;濡傛灉鏄垪琛紝鍚庡彴蹇呴』杩斿洖DataGrid锛屽鏋滄槸鏍戯紝鍚庡彴蹇呴』杩斿洖List<Tree>',
tipPlacement: 'right',
span: 7,
},{
label: '鏈嶅姟鐨勫湴鍧�',
- prop: 'text2',
+ prop: 'backPath',
tip: '閫氬父涓虹┖锛屽湪鏀寔寰湇鍔℃垨鑰呭垎甯冨紡閮ㄧ讲鐨勬椂鍊欐墠閰嶇疆',
tipPlacement: 'right',
span: 7,
},{
label: '璇锋眰鍚庡彴鐨勫崗璁柟寮�',
- prop: 'text2',
- //tip: '',
- //tipPlacement: 'right',
+ 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: 'text2',
+ prop: 'height',
tip: '榛樿绌虹潃锛岃缃悗琛ㄧず寮哄埗鏄剧ず杩欐牱鐨勯珮搴�',
tipPlacement: 'right',
span: 7,
+ rules:[{
+ validator: validateNumber,
+ message: "绐楀彛鏄剧ず鐨勯珮搴﹀繀椤讳负鏁板�肩被鍨�",
+ trigger: "blur",
+ }]
},{
label: '杩囨护(绾ц仈)灞炴��',
- prop: 'text2',
+ prop: 'useFormKey',
tip: '鑾峰彇琛ㄥ崟涓婄殑鍏朵粬灞炴�х殑灞炴�х殑鍊兼潵杩囨护,鎴栬�呬娇鐢ㄦ煇涓睘鎬ф潵绾ц仈閫夋嫨',
tipPlacement: 'right',
span: 7,
},{
label: '杩囨护灞炴�ц姹傚弬鏁�',
- prop: 'text2',
+ prop: 'paramForFormKey',
tip: '浣跨敤杩囨护灞炴�ф椂锛屽彂閫佺粰鍚庡彴鐨勮姹傚弬鏁�',
tipPlacement: 'right',
span: 7,
},{
label: '鏄惁澶氶��',
type: 'switch',
- prop: 'text2',
- //tip: '',
- //tipPlacement: 'right',
+ prop: 'isMuti',
+ value: false,
span: 7,
row: true,
},{
label: '鏄犲皠鍏朵粬灞炴��',
- prop: 'text2',
+ prop: 'mapFields',
tip: '閫夋嫨鏁版嵁鍚庯紝灏嗛�夋嫨鐨勬暟鎹嫹璐濆埌琛ㄥ崟閲岀殑鍏朵粬灞炴�э紝涔﹀啓鏍煎紡涓簕褰撳墠琛ㄥ崟涓婄殑灞炴��:閫夋嫨鏁版嵁閲岀殑灞炴��,XXXXx:yyyy}',
tipPlacement: 'right',
span: 18,
@@ -381,23 +637,26 @@
// 鍙樺姩鐨勮〃鍗曞尯鍩�
group: [
{
- display: this.form.referWindowType==0||this.form.referWindowType==3,
+ display: this.form.type=='default'||this.form.type=='grid',
icon: 'el-icon-info',
- label: this.form.referWindowType==0 ? '榛樿鍙傜収鐨勯厤缃�(涓嬫柟鍒楄〃)':'鍒楄〃鍙傜収鐨勯厤缃紙涓嬫柟鍒楄〃)',
+ label: this.form.type=='default' ? '榛樿鍙傜収鐨勯厤缃�(涓嬫柟鍒楄〃)':'鍒楄〃鍙傜収鐨勯厤缃紙涓嬫柟鍒楄〃)',
collapse: true,
- prop: 'group1',
+ prop: 'groupDdefaultOrGrid',
column: [
{
label: '姣忛〉鏄剧ず鏉℃暟',
- prop: 'text1',
+ prop: 'limit',
span: 7,
tip: '鍒嗛〉鏃舵瘡椤垫樉绀虹殑鏁伴噺锛屼笉鍒嗛〉濉�-1',
+ //value: 15,
tipPlacement: 'right',
},{
label: '鎺掑簭瀛楁',
- prop: 'text1',
+ prop: 'sortField',
span: 7,
type: 'table',
+ tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭瀛楁',
+ tipPlacement: 'right',
children: {
border: true,
column: [{
@@ -423,10 +682,18 @@
prop: 'attrType'
}],
},
+ // 杩欏効闇�瑕佹坊鍔犱笟鍔$被鍨嬫帴鍙�
+
},{
label: '鎺掑簭绫诲瀷',
- prop: 'text1',
+ prop: 'sortType',
span: 7,
+ dicData: [{
+ label: '鍗囧簭', value: 'asc'
+ }, {
+ label: '闄嶅簭', value: 'desc'
+ }],
+ //value: 'asc',
type: 'select',
tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭绫诲瀷',
tipPlacement: 'right',
@@ -434,93 +701,80 @@
]
},
{
- display: this.form.referWindowType==1,
+ display: this.form.type=='stand',
icon: 'el-icon-info',
label: 'stand(骞冲彴閰嶇疆)鍙傜収',
collapse: true,
- prop: 'group2',
+ prop: 'groupStand',
column: [
{
label: '鍙傝�冪殑UI涓婁笅鏂�',
- prop: 'text1',
+ prop: 'referContent',
span: 7,
tip: '鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆,涓斿湪stand绫诲瀷涓嬫墠鑳界敓鏁�',
tipPlacement: 'right',
},
{
label: '骞冲彴鐨勮〃鏍肩紪鍙�',
- prop: 'text1',
+ prop: 'displayTable',
span: 7,
tip: '涓庡弬鐓х殑UI涓婁笅鏂囦簰鏂ワ紝鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆锛屼笖鍦╯tand绫诲瀷涓嬫墠鑳界敓鏁�',
tipPlacement: 'right',
- type: 'table',
- 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'
- }],
- },
},
]
},
{
- display: this.form.referWindowType==2,
+ display: this.form.type=='tree',
icon: 'el-icon-info',
label: '鏍戝舰鍙傜収淇℃伅',
collapse: true,
- prop: 'group3',
+ prop: 'groupTree',
labelWidth: '158',
column: [
{
- label: '鏍戝舰鐨勪笂绾ф爲褰�',
- prop: 'text1',
+ label: '鏍戝舰鐨勪笂绾у睘鎬�',
+ prop: 'parentFieldName',
span: 7,
tip: '鏍戝舰灞曠ず鐨勬椂鍊欙紝涓婁笅绾у叧绯绘煡鎵剧殑灞炴�с��',
tipPlacement: 'right',
+ rules: [{
+ required: true,
+ message: "(鏍戝舰鐨勪笂绾у睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
+ trigger: "blur",
+ }],
},{
label: '涓婄骇灞炴�у�煎搴斿睘鎬�',
- prop: 'text1',
+ prop: 'parentUsedField',
span: 7,
tip: '涓婄骇灞炴�у瓨鍌ㄧ殑鍊�,鏄笂绾ф暟鎹殑浠�涔堝睘鎬с�備竴鑸兘鏄痮id銆�',
+ value: 'oid',
tipPlacement: 'right',
},{
label: '鏍硅妭鐐圭殑鍊�',
- prop: 'text1',
+ prop: 'parentValue',
span: 7,
tip: '鏍戝舰灞曠ず鐨勬椂鍊欙紝涓婄骇鐨勫�笺��',
tipPlacement: 'right',
},{
label: '鏍戝姞杞芥柟寮�',
- prop: 'text1',
+ prop: 'loadType',
span: 7,
+ value: 'all',
+ dicData: [{
+ label: '鍏ㄩ儴', value: 'all'
+ }, {
+ label: '閫愮骇鍔犺浇', value: 'node'
+ }],
type: 'select',
},{
label: '鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣',
- prop: 'text1',
+ prop: 'onlyLeaf',
span: 7,
+ value: false,
type: 'switch',
},{
label: '鎺掑簭瀛楁',
- prop: 'text1',
+ prop: 'sortField',
span: 7,
type: 'table',
children: {
@@ -548,11 +802,18 @@
prop: 'attrType'
}],
},
+ // 杩欏効闇�瑕佹坊鍔犱笟鍔$被鍨嬫帴鍙h姹傚疄鐜板脊绐楃晫闈㈣〃鏍兼覆鏌�
},{
label: '鎺掑簭绫诲瀷',
- prop: 'text1',
+ prop: 'sortType',
span: 7,
type: 'select',
+ value: 'asc',
+ dicData: [{
+ label: '鍗囧簭', value: 'asc'
+ }, {
+ label: '闄嶅簭', value: 'desc'
+ }],
},
]
},
@@ -561,10 +822,40 @@
},
},
methods: {
+ clicktest(cell){
+
+ //cell.$cellEdit = true;
+ },
+ // 鍒囨崲褰撳墠娲诲姩鐨則abs
+ handleClick(tab, event) {
+ if(tab.index=='0'){
+ this.onloadAttrData();
+ }else{
+ this.onloadselectReferConfigData();
+ }
+ },
// 閫夋嫨瀹屽弬鐓ч厤缃箣鍚庣偣鍑讳繚瀛樻寜閽Е鍙�
selectedListReferConfig(){
- console.log(this.option);
- console.log(this.form.referWindowType);
+ //琛ㄥ崟楠岃瘉
+ this.$refs.form.validate((valid, done, msg) => {
+ if (valid) {
+ let submitForm = this.filterForm();
+ //console.log(submitForm);
+ //杞崲鎴怞SON瀛楃涓茶繘琛岀埗缁勪欢鍥炴樉
+ let submitFormJson = JSON.stringify(submitForm);
+ //console.log(submitFormJson);
+ this.$emit('echoReferConfig', submitFormJson) // 瑙﹀彂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;
+ }
+ })
},
/** 鍏跺疄閫夊彇灞炴�ц〃鏍肩殑榛樿鏁版嵁涓嶉渶瑕佸姞杞斤紝
浣嗘槸寮圭獥鎵撳紑浼氭湁琛ㄦ牸閿欒闂鎵�浠ラ渶瑕佸湪杩欒皟鐢╠oLayout鏂规硶*/
@@ -584,7 +875,12 @@
// 璇ョ晫闈㈢殑鏁版嵁杩涜鍒濆鍖栧鍘�
recoveryDataAndForm(condition){
if(condition=='initForm'){
+ let currentType = this.form.type;
this.form = this.$options.data().form;
+ this.form.type = currentType;
+ console.log(this.form);
+ // this.form.referContent = '';
+ // this.form.displayTable = '';
return;
}
Object.assign(this.$data,this.$options.data());
@@ -594,9 +890,65 @@
if(condition=='addSearchCondition'){
console.log('this is open addSearchCondition');
}else {
+ if(this.form.referType == '' || this.form.referType == null){
+ this.$message.warning("璇疯緭鍏ュ弬鐓х殑涓氬姟绫诲瀷")
+ return;
+ }
+
console.log('this is open selectAttr');
}
- }
+ },
+ // 鎻愪氦琛ㄥ崟涔嬪墠杩囨护鎺夌┖鎴栦笉闇�瑕佺殑琛ㄥ崟鏁版嵁
+ filterForm(){
+ const oldForm = this.form;
+ let submittDefaultForm = [
+ 'referType',
+ 'textField',
+ 'valueField',
+ 'type', //鍙傜収绐楀彛绫诲瀷
+ 'url',
+ 'backPath',
+ 'method',
+ 'height',
+ 'useFormKey',
+ 'paramForFormKey',
+ 'isMuti',
+ 'mapFields',
+ ];
+ 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);
+ submittDefaultForm.forEach(item=>{
+ //console.log(item);
+ if(item == 'isMuti' || item == 'onlyLeaf' || oldForm[item] != '' || oldForm[item] != ''){
+ newForm = Object.assign(newForm,{[item]:oldForm[item]});
+ }
+ });
+ // console.log(newForm);
+ return newForm;
+ },
+ onloadselectReferConfigData(){
+ this.$nextTick(() => {
+ this.$refs.selectReferConfigCrud.doLayout()
+ })
+ },
+
}
};
</script>
--
Gitblit v1.9.3