From da42dea3ebb81daefad8741d618d5be10d3dcb84 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期三, 27 十二月 2023 09:19:27 +0800 Subject: [PATCH] 主题库定义分类授权样式修改 --- Source/UBCS-WEB/src/components/Theme/ClassifyAuthDialog.vue | 136 ++++++++++++++++++++++++--------------------- 1 files changed, 72 insertions(+), 64 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Theme/ClassifyAuthDialog.vue b/Source/UBCS-WEB/src/components/Theme/ClassifyAuthDialog.vue index dd2cac3..f6a26ad 100644 --- a/Source/UBCS-WEB/src/components/Theme/ClassifyAuthDialog.vue +++ b/Source/UBCS-WEB/src/components/Theme/ClassifyAuthDialog.vue @@ -1,10 +1,12 @@ <template> - <el-dialog - v-dialogDrag - :close-on-click-modal="false" - :visible.sync="isShowDialog" - @close="closeDialog" - append-to-body title="鍒嗙被鎺堟潈"> + <el-dialog + v-dialogDrag + :close-on-click-modal="false" + :visible.sync="isShowDialog" + append-to-body + class="avue-dialog avue-dialog--top" + title="鍒嗙被鎺堟潈" + top="-45px" @close="closeDialog"> <el-table ref="dataTable" v-loading="isLoading" @@ -20,13 +22,12 @@ @sort-change="sortChange" > <el-table-column - fixed type="selection" width="55" ></el-table-column> <el-table-column - v-if="classifyAuthHeader.length !== 0" v-for="(item, index) in classifyAuthHeader" + v-if="classifyAuthHeader.length !== 0" :key="index" :label="item.label" :prop="item.prop" @@ -50,12 +51,12 @@ </el-select> <el-input v-if="item.type === 'text'" - type="text" - readonly v-model="row[item.prop]" + readonly + type="text" > </el-input> - <el-checkbox + <el-checkbox v-if="item.type === 'checkbox'" v-model="row[item.prop]"> </el-checkbox> @@ -63,19 +64,20 @@ </el-table-column> </el-table> <div slot="footer" class="dialog-footer"> - <el-button type="success" class="el-icon-plus" @click="addClassifyAuth"></el-button> - <el-button type="warning" class="el-icon-minus" @click="subClassifyAuth"></el-button> - <el-button type="primary" @click="submit">鎻� 浜�</el-button> - <el-button type="danger" @click="isShowDialog = false">鍏� 闂�</el-button> + <el-button class="el-icon-plus" type="success" @click="addClassifyAuth"></el-button> + <el-button class="el-icon-minus" type="warning" @click="subClassifyAuth"></el-button> + <el-button type="primary" @click="submit">鎻� 浜�</el-button> + <el-button type="danger" @click="isShowDialog = false">鍏� 闂�</el-button> </div> </el-dialog> </template> <script> -import { getButtonByParentCode } from "@/api/system/menu" -import { getPage } from "@/api/system/role" -import { saveOrUpdate,getClassifyAuthList } from "@/api/system/classifyAuth" -import { v4 as uuidv4 } from 'uuid'; +import {getButtonByParentCode} from "@/api/system/menu" +import {getPage} from "@/api/system/role" +import {saveOrUpdate, getClassifyAuthList} from "@/api/system/classifyAuth" +import {v4 as uuidv4} from 'uuid'; + export default { name: "classifyAuthDialog.vue", props: { @@ -94,7 +96,7 @@ // 瀵硅瘽妗嗘樉绀烘帶鍒� isShowDialog: this.visible, isLoading: false, - tableHeight: 'calc(100vh - 550px)', + tableHeight: '520px', classifyAuthData: [], //鍒楀ご classifyAuthHeader: [], @@ -108,11 +110,11 @@ }, watch: { // 鐩戝惉鐖剁粍浠朵紶鐨勭獥鍙f樉绀洪殣钘忕殑鍊� - visible (){ - if(this.visible){ + visible() { + if (this.visible) { this.isShowDialog = this.visible; return new Promise((resolve, reject) => { - getButtonByParentCode({code:"classifyTree"}).then(res=>{ + getButtonByParentCode({code: "classifyTree"}).then(res => { // 璁板綍鎸夐挳鏁版嵁 this.classifyAuthButton = res.data.data; const list = res.data.data; @@ -146,15 +148,15 @@ reject(err) }); // 鑾峰彇瑙掕壊鍒楄〃 - getPage(1,-1,null).then(res => { + getPage(1, -1, null).then(res => { this.roleList = res.data.data.records; }); // 鑾峰彇璇ュ垎绫讳笅宸叉巿鏉冪殑鍒嗙被鎺堟潈淇℃伅 - getClassifyAuthList({classifyId:this.classifyData.oid}).then(res => { + getClassifyAuthList({classifyId: this.classifyData.oid}).then(res => { //console.log(res.data.data); let authDatas = res.data.data; if (authDatas.length > 0) { - authDatas.forEach(authData=>{ + authDatas.forEach(authData => { let item = { oid: authData.oid, roleData: authData.roleId, @@ -162,8 +164,8 @@ uuid: uuidv4(),//鐢熸垚鍞竴鐨刬d } //灏嗘寜閽缃繘鍘� - authData.buttonIdList.forEach(data=>{ - Vue.set(item,data,true); + authData.buttonIdList.forEach(data => { + Vue.set(item, data, true); }); //console.log(item) this.classifyAuthData.push(item); @@ -175,38 +177,40 @@ }, }, computed: {}, - mounted() {}, - created() {}, + mounted() { + }, + created() { + }, methods: { // 鍏抽棴瀵硅瘽妗� - closeDialog(){ + closeDialog() { this.$emit('update:visible', false); this.classifyAuthData = []; }, // 澧炲姞琛� - addClassifyAuth(){ + addClassifyAuth() { let item = { roleData: this.roleList[0].id, classifyItem: this.classifyData.text, uuid: uuidv4(),//鐢熸垚鍞竴鐨刬d } //灏嗘寜閽缃繘鍘� - this.classifyAuthButton.forEach(data=>{ - Vue.set(item,data.id,false); + this.classifyAuthButton.forEach(data => { + Vue.set(item, data.id, false); }) //console.log(item) this.classifyAuthData.push(item) // console.log(this.classifyAuthData); }, // 鍒犻櫎琛� - subClassifyAuth(){ + subClassifyAuth() { for (let item of this.selectList) { - let index = this.classifyAuthData.findIndex(data => data.index === item.index); - if (index !== -1) { - this.classifyAuthData.splice(index, 1); + let index = this.classifyAuthData.findIndex(data => data.index === item.index); + if (index !== -1) { + this.classifyAuthData.splice(index, 1); + } } - } - }, + }, handleRowClick(row, column) { this.selectList.push(row); this.$refs.dataTable.toggleRowSelection(row); @@ -221,8 +225,8 @@ this.selectList = list; }, // 淇濆瓨鍒嗙被鎺堟潈淇℃伅 - submit(){ - if(this.classifyAuthData.length <= 0){ + submit() { + if (this.classifyAuthData.length <= 0) { this.$message.warning('鎺堟潈鍒楄〃涓虹┖锛�') return; } @@ -236,11 +240,11 @@ break; } } - if(isRepeat){ + if (isRepeat) { break; } } - if(isRepeat) { + if (isRepeat) { this.$message.warning("瑙掕壊鍜屽垎绫诲凡缁忓瓨鍦紝璇烽噸鏂伴厤缃紒"); return; } @@ -255,8 +259,8 @@ } } /**濡傛灉itemButtonList涓虹┖璇佹槑鏄紝 - 娣诲姞浜嗚鑹蹭絾鏄病鍕鹃�変换浣曠殑鎸夐挳*/ - if(itemButtonList.length <= 0) { + 娣诲姞浜嗚鑹蹭絾鏄病鍕鹃�変换浣曠殑鎸夐挳*/ + if (itemButtonList.length <= 0) { flag = true; return; } @@ -268,19 +272,19 @@ } form.push(data); }); - if(flag) { + if (flag) { this.$message.warning('鏈夋湭鍕鹃�夋搷浣滅殑鏉冮檺锛屼笉鍏佽鎺堟潈') return; } // console.log(form) // 璋冪敤淇濆瓨鍒嗙被鎺堟潈鐨勬帴鍙� - saveOrUpdate(form).then(res=>{ + saveOrUpdate(form).then(res => { this.$message({ type: "success", message: res.data.msg, }); // this.isShowDialog = false - },(error) => { + }, (error) => { window.console.log(error); }) }, @@ -290,21 +294,25 @@ <style lang="scss" scoped> - // 婊氬姩鏉℃牱寮忎慨鏀� - // 婊氬姩鏉$殑瀹藉害 - /deep/ .el-table__body-wrapper::-webkit-scrollbar { - height: 15px; // 绾靛悜婊氬姩鏉� 蹇呭啓 - background: white; - border: white; - width: 10px; +// 婊氬姩鏉℃牱寮忎慨鏀� +// 婊氬姩鏉$殑瀹藉害 +/deep/ .el-table__body-wrapper::-webkit-scrollbar { + height: 15px; // 绾靛悜婊氬姩鏉� 蹇呭啓 + background: white; + border: white; + width: 10px; - } +} - // 婊氬姩鏉$殑婊戝潡 - /deep/ .el-table__body-wrapper::-webkit-scrollbar-thumb { - background-color: #ececec; - border-radius: 20px; - border: #ececec; - } +// 婊氬姩鏉$殑婊戝潡 +/deep/ .el-table__body-wrapper::-webkit-scrollbar-thumb { + background-color: #ececec; + border-radius: 20px; + border: #ececec; +} -</style> \ No newline at end of file +/deep/ .el-table__body-wrapper { + height: calc(100% - 50px) !important; +} + +</style> -- Gitblit v1.9.3