From 19d9b8debbe4fca6376d64d081c15e2b3358747b Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 04 一月 2024 17:24:50 +0800
Subject: [PATCH] 273:枚举定义接口修改;271:表格返回数据没有按照分页的限制
---
Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue | 301 ++++++++++++++++++++++++++++---------------------
1 files changed, 170 insertions(+), 131 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
index a8f99fe..c8f38c1 100644
--- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
@@ -4,107 +4,102 @@
<!-- 宸︿晶鑿滃崟-->
<el-aside>
<basic-container>
- <div>
- <div>
- <div style="display: flex; flex-direction: column;">
- <div style="display: flex;">
- <el-button v-if="permissionList.TreeAddStatus" plain size="small" type="primary" @click="TreeAdd">娣诲姞
- </el-button>
- <el-button v-if="permissionList.TreeEditStatus" plain size="small" type="primary" @click="TreeEdit">淇敼
- </el-button>
- <el-button v-if="permissionList.TreeDelStatus" plain size="small" type="primary" @click="TreeDel">鍒犻櫎
- </el-button>
- <el-button v-if="permissionList.flushedStatus" plain size="small" type="primary" @click="flushed">鍒锋柊
- </el-button>
- </div>
- <div style="display: flex; margin-top: 10px">
- <el-button v-if="permissionList.EnableStatus" plain size="small" type="primary" @click="Enable">鍚敤
- </el-button>
- <el-button v-if="permissionList.DeactivateStatus" plain size="small" type="primary" @click="Deactivate">
- 鍋滅敤
- </el-button>
- <el-button v-if="permissionList.ImportExcelStatus" plain size="small" type="primary"
- @click.native="ImportExcel">瀵煎叆
- </el-button>
- <el-button v-if="permissionList.ExportExcelStatus" plain size="small" type="primary"
- @click="ExportExcel">瀵煎嚭
- </el-button>
- </div>
- </div>
- <div style="display: flex;margin-top: 5px;margin-bottom: 5px">
- <el-button v-if="permissionList.flowingBtnStuatus" plain size="mini" type="primary" @click="testHandler">娴佹按澶勭悊
- </el-button>
- </div>
+ <div style="height: calc(100vh - 142px);!important;">
+ <div class="headerCon" style="display: flex; flex-wrap: wrap;margin-bottom: 5px">
+ <el-button v-if="permissionList.TreeAddStatus" plain size="small" type="primary" @click="TreeAdd">娣诲姞</el-button>
+ <el-button v-if="permissionList.TreeEditStatus" plain size="small" type="primary" @click="TreeEdit">淇敼</el-button>
+ <el-button v-if="permissionList.TreeDelStatus" plain size="small" type="primary" @click="TreeDel">鍒犻櫎</el-button>
+ <el-button v-if="permissionList.flushedStatus" plain size="small" type="primary" @click="flushed">鍒锋柊</el-button>
+ <el-button v-if="permissionList.EnableStatus" plain size="small" type="primary" @click="Enable">鍚敤</el-button>
+ <el-button v-if="permissionList.DeactivateStatus" plain size="small" type="primary" @click="Deactivate">鍋滅敤</el-button>
+ <el-button v-if="permissionList.ImportExcelStatus" plain size="small" type="primary" @click.native="ImportExcel">瀵煎叆</el-button>
+ <el-button v-if="permissionList.ExportExcelStatus" plain size="small" type="primary" @click="ExportExcel">瀵煎嚭</el-button>
+ <el-button style="width: 56px;text-align: center;padding-left: 3px" v-if="permissionList.flowingBtnStuatus" plain size="small" type="primary" @click="flowingDependHandler">娴佹按澶勭悊</el-button>
+ <el-button style="width: 56px;text-align: center;padding-left: 3px" v-if="permissionList.classifyAuth" plain size="small" type="primary" @click="classifyAuthHandler">鍒嗙被鎺堟潈</el-button>
</div>
- </div>
- <!-- 宸︿晶鏍�-->
- <div style="height: calc(100vh - 230px);overflow: auto">
- <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata"
- :defaultExpandAll="false"
- :option="Treeoption"
- class="classifyTree"
- style="height: calc(100vh - 280px)"
- @node-click="nodeClick"
- >
- </avue-tree>
- </div>
+ <!-- 宸︿晶鏍�-->
- <!-- 鏍戣妭鐐规坊鍔犲璇濇-->
- <el-dialog v-loading="AddLoading" :before-close="TreeEscHandler"
- :title="this.TreeFlag ? '娣诲姞鍒嗙被' :'娣诲姞涓婚搴�'" :visible.sync="TreeAddFormVisible" append-to-body
- style="width: 1700px;margin: auto">
- <el-form ref="myForm" :model="TreeAddform" :rules="rules">
- <el-form-item :label="this.TreeFlag ? '鍒嗙被缂栧彿锛�' :'涓婚搴撶紪鍙凤細'" label-width="150px" prop="id"
- style="display: inline-block">
- <el-input v-model="TreeAddform.id" autocomplete="off" style="width: 170px"></el-input>
- </el-form-item>
- <el-form-item :label="this.TreeFlag ? '鍒嗙被鍚嶇О锛�' :'涓婚搴撳悕绉帮細'" label-width="110px" prop="name"
- style="display: inline-block">
- <el-input v-model="TreeAddform.name" autocomplete="off" style="width: 170px"></el-input>
- </el-form-item>
- <el-form-item v-if="TreeFlagCode" label="瀛樺偍鐨勪笟鍔$被鍨嬶細" label-width="150px" prop="btmTypeName">
- <el-input v-model="TreeAddform.btmTypeName" autocomplete="off" style="width: 585px"
- @focus="btmFoucus"></el-input>
- </el-form-item>
- <el-form-item label="鎻忚堪锛�" label-width="150px">
- <el-input v-model="TreeAddform.description" autocomplete="off" style="width: 585px"></el-input>
- </el-form-item>
- <el-form-item label="缂栫爜瑙勫垯锛�" label-width="150px">
- <el-input v-model="TreeAddform.codeRuleOidName" autocomplete="off" style="width: 585px"
- @focus="CodeFoucus"></el-input>
- </el-form-item>
- <el-form-item label="鍏抽敭灞炴�ф煡璇㈣鍒欙細" label-width="150px">
- <el-input v-model="TreeAddform.codeKeyAttrRepeatOidName" autocomplete="off" style="width: 585px"
- @focus="Keyfouce"></el-input>
- </el-form-item>
- <el-form-item label="鏄惁鍙備笌鍏抽敭灞炴�ф牎楠岋細" label-width="170px">
- <el-switch
- v-model="TreeAddform.codeKeyAttrValue"
- active-color="#13ce66"
- active-text="鏄�"
- inactive-color="#ff4949"
- inactive-text="鍚�"
- @change="switchChange">
- </el-switch>
- </el-form-item>
- <el-form-item label="鐩镐技鏌ヨ瑙勫垯锛�" label-width="150px">
- <el-input v-model="TreeAddform.codeResembleRuleOidName" autocomplete="off" style="width: 585px"
- @focus="simFouce"></el-input>
- </el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button @click="TreeEscHandler">鍙� 娑�</el-button>
- <el-button type="primary" @click="TreeAddHandler">纭� 瀹�</el-button>
- </div>
- </el-dialog>
- <!-- 淇敼瀵硅瘽妗�-->
- <el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
- <classifyTreeform ref="childForm" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="editTreeFLagCode"
- :flag="'edit'"
- :loneTreeNewForm="TreeList" :nodeClickList="nodeClickList"
- :nodeList="nodeList" @MasterHandler="MasterHandler" @flushed="flushed"
- @referTreeForm="referTreeForm"></classifyTreeform>
- </el-dialog>
+ <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata"
+ :defaultExpandAll="false"
+ :option="Treeoption"
+ class="classifyTree"
+ style="height: 690px"
+ @node-click="nodeClick"
+ >
+ <template slot-scope="{ node, data }" class="el-tree-node__label">
+ <el-tooltip :content="$createElement('div', { domProps: { innerHTML: node.label } })" class="item"
+ effect="dark"
+ open-delay="500"
+ placement="right-start">
+ <span style="font-size: 14px;">
+ {{ (node || {}).label }}
+ </span>
+ </el-tooltip>
+ </template>
+ </avue-tree>
+
+ </div>
+ <!-- 鏍戣妭鐐规坊鍔犲璇濇-->
+ <el-dialog v-loading="AddLoading" :before-close="TreeEscHandler"
+ :title="this.TreeFlag ? '娣诲姞鍒嗙被' :'娣诲姞涓婚搴�'" :visible.sync="TreeAddFormVisible" append-to-body
+ style="width: 1700px;margin: auto">
+ <el-form ref="myForm" :model="TreeAddform" :rules="rules">
+ <el-form-item :label="this.TreeFlag ? '鍒嗙被缂栧彿锛�' :'涓婚搴撶紪鍙凤細'" label-width="150px" prop="id"
+ style="display: inline-block">
+ <el-input v-model="TreeAddform.id" autocomplete="off" style="width: 170px"></el-input>
+ </el-form-item>
+ <el-form-item :label="this.TreeFlag ? '鍒嗙被鍚嶇О锛�' :'涓婚搴撳悕绉帮細'" label-width="110px" prop="name"
+ style="display: inline-block">
+ <el-input v-model="TreeAddform.name" autocomplete="off" style="width: 170px"></el-input>
+ </el-form-item>
+ <el-form-item v-if="TreeFlagCode" label="瀛樺偍鐨勪笟鍔$被鍨嬶細" label-width="150px" prop="btmTypeName">
+ <el-input v-model="TreeAddform.btmTypeName" autocomplete="off" style="width: 585px"
+ @focus="btmFoucus"></el-input>
+ </el-form-item>
+ <el-form-item label="鎻忚堪锛�" label-width="150px">
+ <el-input v-model="TreeAddform.description" autocomplete="off" style="width: 585px"></el-input>
+ </el-form-item>
+ <el-form-item label="缂栫爜瑙勫垯锛�" label-width="150px">
+ <el-input v-model="TreeAddform.codeRuleOidName" autocomplete="off" style="width: 585px"
+ @focus="CodeFoucus"></el-input>
+ </el-form-item>
+ <el-form-item label="鍏抽敭灞炴�ф煡璇㈣鍒欙細" label-width="150px">
+ <el-input v-model="TreeAddform.codeKeyAttrRepeatOidName" autocomplete="off" style="width: 585px"
+ @focus="Keyfouce"></el-input>
+ </el-form-item>
+ <el-form-item label="鏄惁鍙備笌鍏抽敭灞炴�ф牎楠岋細" label-width="170px">
+ <el-switch
+ v-model="TreeAddform.codeKeyAttrValue"
+ active-color="#13ce66"
+ active-text="鏄�"
+ inactive-color="#ff4949"
+ inactive-text="鍚�"
+ @change="switchChange">
+ </el-switch>
+ </el-form-item>
+ <el-form-item label="鐩镐技鏌ヨ瑙勫垯锛�" label-width="150px">
+ <el-input v-model="TreeAddform.codeResembleRuleOidName" autocomplete="off" style="width: 585px"
+ @focus="simFouce"></el-input>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="TreeEscHandler">鍙� 娑�</el-button>
+ <el-button type="primary" @click="TreeAddHandler">纭� 瀹�</el-button>
+ </div>
+ </el-dialog>
+ <!-- 淇敼瀵硅瘽妗�-->
+ <el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
+ <classifyTreeform ref="childForm" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="editTreeFLagCode"
+ :flag="'edit'"
+ :loneTreeNewForm="TreeEditObj" :nodeClickList="nodeClickList"
+ :nodeList="nodeList" @MasterHandler="MasterHandler" @flushed="flushed"
+ @referTreeForm="referTreeForm"></classifyTreeform>
+ </el-dialog>
+ <!-- 鍒嗙被鎺堟潈瀵硅瘽妗�-->
+ <classify-auth-dialog
+ :classifyData="classifyData"
+ :visible.sync="classifyAuthVisible"
+ ></classify-auth-dialog>
</basic-container>
</el-aside>
<el-main>
@@ -112,7 +107,7 @@
<!-- 鍙充晶琛ㄦ牸-->
<avue-tabs :option="tabOption" @change="handleChange"></avue-tabs>
<span v-if="type.prop==='tab1'">
- <classifyTreeform ref="childForm" :flag="'renonly'" :loneTreeNewForm="TreeList"
+ <classifyTreeform ref="childForm" :flag="'renonly'" :loneTreeNewForm="TreeEditObj"
:nodeList="nodeList"></classifyTreeform>
</span>
<span v-else-if="type.prop==='tab2'">
@@ -260,7 +255,7 @@
</basic-container>
<templatePro :Formlist="this.Formlist" :ProData="this.ProData" :codeClassifyOid="this.codeClassifyOid"
:crudArray="this.crudArray" :crudLCStatus="this.crudLCStatus" :crudOid="this.crudOid"
- :rowIndex="this.selectRow"></templatePro>
+ :rowIndex="this.selectRow" :btnAuthList="btnAuthList"></templatePro>
</span>
<!-- 缂栫爜瑙勫垯-->
<el-dialog :before-close="masterEscHandler" :visible.sync="MasterdialogVisible" append-to-body
@@ -431,11 +426,15 @@
import {defaultReferDataGrid, referDataGrid} from '@/api/MasterData/master'
import func from "@/util/func";
import {mapGetters} from "vuex";
+import ClassifyAuth from './ClassifyAuthDialog.vue';
+import {getAuthButtonList} from '@/api/system/classifyAuth'
export default {
+ components: {ClassifyAuth},
name: "classifyTrees.vue",
data() {
return {
+ btnAuthList: [],
activeName: 'first',
masterRow: null,
AddLoading: false,
@@ -476,6 +475,8 @@
masterOption: {
addBtn: false,
index: true,
+ refreshBtn: false,
+ columnBtn: false,
border: true,
menu: false,
height: 380,
@@ -504,6 +505,7 @@
addBtn: false,
index: true,
columnBtn: false,
+ refreshBtn: false,
border: true,
menu: false,
height: 380,
@@ -595,6 +597,8 @@
TreeEditFormVisible: false,
//娣诲姞瀵硅瘽妗�
TreeAddFormVisible: false,
+ //鍒嗙被鎺堟潈瀵硅瘽妗�
+ classifyAuthVisible: false,
//褰撳墠鐐瑰嚮椤�
nodeClickList: "",
ClonenodeClickList: "",
@@ -766,7 +770,7 @@
}
],
//浼犻�掔粰瀛愮粍浠跺姩鎬佹覆鏌撶殑鏁版嵁
- TreeList: {},
+ TreeEditObj: {},
codeClassifyOid: "",
upAndStopAndStartData: {
upVersion: {
@@ -790,6 +794,8 @@
},
//妯℃澘绠$悊缂栬緫
showEditBtn: false,
+ //浼犻�掔粰鍒嗙被鎺堟潈瀛愮粍浠跺璇濇鐨勫綋鍓嶉�変腑鐨勫垎绫昏妭鐐逛俊鎭�
+ classifyData: "",
}
},
watch: {},
@@ -799,10 +805,12 @@
const treeEle = this.$refs.tree.$el
treeEle.addEventListener('click', (e) => {
if (e.target.nodeName !== 'SPAN') {
- this.$refs.tree.setCurrentKey(null)
- this.nodeClickList = {}
- this.TreeList = []
+ this.$refs.tree.setCurrentKey(null);
+ this.nodeClickList = {};
this.TreeFlagCode = true;
+ // this.$nextTick(()=>{
+ // this.btnAuthList = [];
+ // })
}
}, true)
},
@@ -810,19 +818,25 @@
...mapGetters(["permission"]),
permissionList() {
return {
- TreeAddStatus: this.vaildData(this.permission.classifyTree.tree_add, false),
- TreeEditStatus: this.vaildData(this.permission.classifyTree.tree_edit, false),
- TreeDelStatus: this.vaildData(this.permission.classifyTree.tree_delete, false),
- flushedStatus: this.vaildData(this.permission.classifyTree.tree_break, false),
- EnableStatus: this.vaildData(this.permission.classifyTree.tree_enable, false),
- DeactivateStatus: this.vaildData(this.permission.classifyTree.tree_stop, false),
- ImportExcelStatus: this.vaildData(this.permission.classifyTree.tree_import, false),
- ExportExcelStatus: this.vaildData(this.permission.classifyTree.tree_export, false),
- FindStatus: this.vaildData(this.permission.classifyTree.manage_search, false),
- TemRefreshStatus: this.vaildData(this.permission.classifyTree.manage_break, false),
- CloneBtnStuatus: this.vaildData(this.permission.classifyTree.manage_clone, false),
- flowingBtnStuatus: this.vaildData(this.permission.classifyTree.tree_flowing, false),
+ TreeAddStatus: this.vaildData(this.btnAuthList.tree_add, false),
+ TreeEditStatus: this.vaildData(this.btnAuthList.tree_edit, false),
+ TreeDelStatus: this.vaildData(this.btnAuthList.tree_delete, false),
+ flushedStatus: this.vaildData(this.btnAuthList.tree_break, false),
+ EnableStatus: this.vaildData(this.btnAuthList.tree_enable, false),
+ DeactivateStatus: this.vaildData(this.btnAuthList.tree_stop, false),
+ ImportExcelStatus: this.vaildData(this.btnAuthList.tree_import, false),
+ ExportExcelStatus: this.vaildData(this.btnAuthList.tree_export, false),
+ FindStatus: this.vaildData(this.btnAuthList.manage_search, false),
+ TemRefreshStatus: this.vaildData(this.btnAuthList.manage_break, false),
+ CloneBtnStuatus: this.vaildData(this.btnAuthList.manage_clone, false),
+ flowingBtnStuatus: this.vaildData(this.btnAuthList.tree_flowing, false),
+ classifyAuth: this.vaildData(this.btnAuthList.classify_auth, false),
}
+ },
+ treeStyle() {
+ return {
+ height: this.btnAuthList.length > 0 ? '620px' : '785px',
+ };
},
crudTreeOption() {
return {
@@ -884,11 +898,17 @@
created() {
},
methods: {
- handleTabClick(){
-
+ // 鍒嗙被鎺堟潈瀵硅瘽妗嗘墦寮�
+ classifyAuthHandler() {
+ if (this.nodeClickList.oid === '' || this.nodeClickList.oid === undefined) {
+ this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹紒')
+ return;
+ }
+ this.classifyData = this.nodeClickList;
+ this.classifyAuthVisible = true;
},
- testHandler(){
- if(this.nodeClickList.length <=0 ){
+ flowingDependHandler() {
+ if (this.nodeClickList.length <= 0) {
this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹紒')
return;
}
@@ -1121,7 +1141,7 @@
},
//瀛愪紶鐖�
MasterHandler(val) {
- this.TreeList = val;
+ this.TreeEditObj = val;
},
rowHandle(row, column) {
this.selectRow = row.$index;
@@ -1301,11 +1321,11 @@
},
//鏍戝埛鏂�
async flushed() {
- await this.getAttr()
- this.$refs.tree.setCurrentKey(null);
- this.nodeClickList = {}
- this.TreeList = []
- this.TreeFlagCode = true;
+ await this.getAttr()
+ this.$refs.tree.setCurrentKey(null);
+ this.nodeClickList = {};
+ this.TreeEditObj = {};
+ this.TreeFlagCode = true;
},
//鍚敤鍜屽仠鐢ㄩ兘鍏堝垽鏂姸鎬�
//鍚敤
@@ -1394,6 +1414,11 @@
},
//鏍戠偣鍑讳簨浠�
async nodeClick(data) {
+ getAuthButtonList({classifyId: data.oid}).then(res => {
+ this.btnAuthList = res.data.data;
+ }).catch(error => {
+ console.log(error)
+ })
//鎿嶄綔鏂板鍜屼慨鏀圭殑涓氬姟绫诲瀷闅愯棌
this.TreeFlagCode = !data;
this.editTreeFLagCode = !data.parentId;
@@ -1423,9 +1448,9 @@
this.ProData = [];
this.crudOid = ''
}
- this.TreeList = res3.data.data;
- if (this.TreeList.isParticipateCheck === null || this.TreeList.isParticipateCheck === undefined || this.TreeList.isParticipateCheck === "") {
- this.$set(this.TreeList, "isParticipateCheck", 1)
+ this.TreeEditObj = res3.data.data;
+ if (this.TreeEditObj.isParticipateCheck === null || this.TreeEditObj.isParticipateCheck === undefined || this.TreeEditObj.isParticipateCheck === "") {
+ this.$set(this.TreeEditObj, "isParticipateCheck", 1)
return
}
} catch (error) {
@@ -1462,7 +1487,7 @@
//鍩烘湰淇℃伅琛ㄥ崟鍒锋柊
referTreeForm() {
getObjectByOid(this.nodeClickList.oid).then(res => {
- this.TreeList = res.data.data;
+ this.TreeEditObj = res.data.data;
}).catch(res => {
this.$message.error(res)
})
@@ -1738,4 +1763,18 @@
width: 500px;
}
+.headerCon{
+ .el-button+.el-button {
+ margin-left: 5px;
+ }
+ .el-button {
+ margin-top: 5px;
+ }
+}
+.headerCon > .el-button:nth-child(5) {
+ margin-left: 0;
+}
+.headerCon > .el-button:nth-child(9) {
+ margin-left: 0;
+}
</style>
--
Gitblit v1.9.3