From e955e0e34f52d3a8f66354f2a75b762791f918b1 Mon Sep 17 00:00:00 2001 From: Surpriseplus <845948745@qq.com> Date: 星期三, 16 十一月 2022 17:24:30 +0800 Subject: [PATCH] 頁面更改 --- src/views/maintenance/tokentool.vue | 19 src/components/MyBread.vue | 1 src/views/maintenance/userManagement.vue | 1251 ++++++++++++++++++++++++++++++++--- src/components/login.vue | 1 src/views/userManage/authorityManage.vue | 21 src/views/maintenance/mochaitmo.vue | 173 +++- src/views/maintenance/systemMonitoring.vue | 75 + src/views/maintenance/safetyManagement.vue | 87 +- src/api/api.js | 9 src/assets/lang/zh.js | 62 + src/views/maintenance/parameterConfiguration.vue | 24 src/views/maintenance/blackwhiteList.vue | 6 src/views/userManage/orgManage.vue | 136 +++ src/components/customElMenu.vue | 15 src/assets/lang/en.js | 57 + src/views/maintenance/menuSettings.vue | 102 ++ src/views/userManage/resourceManage.vue | 24 src/views/userManage/roleManage.vue | 34 src/views/maintenance/logLog.vue | 2 19 files changed, 1,752 insertions(+), 347 deletions(-) diff --git a/src/api/api.js b/src/api/api.js index 55f8557..d4bc4de 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -287,6 +287,11 @@ export function updatePwd(params) { return request.post('/user/updateUsersPwd', params); } +//鍒ゆ柇鐢ㄦ埛鏄惁涓虹鐞嗗憳 +export function userSelectForIsAdmin(params) { + return request.get('/user/selectForIsAdmin', { params: params }); +} + // 鏌ヨ鐢ㄦ埛鍚嶅崰鐢� export function selectByUserid(params) { return request.get('/user/selectByUid', { params: params }); @@ -457,6 +462,10 @@ export function inquiry_SelectTabs(params) { return request.get('/inquiry/selectTabs', { params: params }); } +//杩愮淮绠$悊=>鐢ㄦ埛绠$悊=>鑾峰彇鍒楄〃 +export function userSelectByPageAndCount(params) { + return request.get('/user/selectByPageAndCount', { params: params }); +} //璇锋眰绔欏満鐐瑰唴瀹� export function querySitePoint(size, index, name) { diff --git a/src/assets/lang/en.js b/src/assets/lang/en.js index 81842c5..fcebd65 100644 --- a/src/assets/lang/en.js +++ b/src/assets/lang/en.js @@ -20,6 +20,10 @@ see: 'See', index: 'index', download: 'download', + cancel: 'cancel', + changepassWord: 'Batch password modification', + reset: 'Reset', + submit: 'Submit', }, dataManage: { dataManage: 'Data Manage', @@ -79,15 +83,15 @@ tipsUp: 'Are you sure to save the changes?', }, domainManage: { - index:'index', - bak: "bak", - bsm: "bsm", - codeDesc: "codeDesc", - domCode: "domCode", - domDesc: "domDesc", - domName: "domName", - level: "level", - orderid: "orderid", + index: 'index', + bak: 'bak', + bsm: 'bsm', + codeDesc: 'codeDesc', + domCode: 'domCode', + domDesc: 'domDesc', + domName: 'domName', + level: 'level', + orderid: 'orderid', }, styleManage: 'Style Manage', styleObj: { @@ -114,6 +118,7 @@ }, }, operatManage: { + organizationManage: 'Organizational management', operatManage: 'Operat Manage', ResourceLog: 'Resource Log', UserRoleAuthorization: 'User Role Authorization', @@ -167,7 +172,17 @@ descr: 'Describe', editSysLayOut: 'Modify system configuration', }, - menuSettings: 'Menu Settings', + menuSettings: 'Menu Management', + menuSetObj: { + enName: 'CnName', + cnName: 'EnName', + icon: 'Icon', + isShow: 'DisPlay', + menuUrl: 'Menu Url', + type: 'Type', + bak: 'Remarks', + authorize: 'Authorize', + }, parameterConfiguration: 'parameterConfiguration', rests: 'Rests', authorityManagement: 'Authority Management', @@ -186,6 +201,16 @@ serviceAarm: 'serviceAarm', serviceResourceAlarm: 'serviceResourceAlarm', serviceResourceStatus: 'serviceResourceStatus', + remainingMemory: 'Remaining memory', + userloginStatus: 'User login status', + resourceOperationStatus: 'Resource operation status', + memoryMonitoring: 'Memory monitoring', + + cpuMonitoring: 'CPU monitoring', + heteroconstant: 'Heteroconstant', + + numberOfExceptions: 'Number of exceptions', + userOperationBehavior: 'userOperationBehavior', resourceInvocationStatus: 'resourceInvocationStatus', resourceCallStatistics: 'resourceCallStatistics', @@ -441,6 +466,9 @@ job: 'job', natives: 'natives', pwd: 'password', + confirmPassword: 'Confirm Password', + origpassword: 'Original password', + available: 'Account available', sex: 'gender', status: 'status', uname: 'username', @@ -506,6 +534,9 @@ }, orgManage: 'Org Manage', orgManageObj: { + WebsiteAddress: 'Website address', + continformation: 'contact information', + remarks: 'remarks', companyName: 'companyName', flatType: 'flatType', inquire: 'inquire', @@ -533,8 +564,8 @@ immediatelyCreate: 'immediatelyCreate', pinyinInitials: 'pinyinInitials', abbreviation: 'abbreviation', - unitCode: 'unitCode', - organizationCode: 'organizationCode', + unitCode: 'Code', + organizationCode: 'Organization code', companyAdministrator: 'companyAdministrator', picture: 'picture', division: 'division', @@ -542,7 +573,7 @@ fax: 'fax', postalCode: 'postalCode', website: 'website', - cmpanyAddress: 'cmpanyAddress', + cmpanyAddress: 'Address', companyIntroduction: 'companyIntroduction', }, userAuditing: 'User Auditing', diff --git a/src/assets/lang/zh.js b/src/assets/lang/zh.js index 2c083b6..48b011e 100644 --- a/src/assets/lang/zh.js +++ b/src/assets/lang/zh.js @@ -20,6 +20,10 @@ see: '鏌ョ湅', index: '搴忓彿', download: '涓嬭浇', + cancel: '鍙栨秷', + changepassWord: '鎵归噺淇敼瀵嗙爜', + reset: '閲嶇疆', + submit: '鎻愪氦', }, dataManage: { dataManage: '鏁版嵁绠$悊', @@ -80,15 +84,14 @@ }, domainManage: { index: '搴忓彿', - bak: "澶囨敞", - bsm: "鏍囪瘑鐮�", - codeDesc: "缂栫爜鎻忚堪", - domCode: "缂栫爜", - domDesc: "鍊煎煙琛ㄦ弿杩�", - domName: "鍊煎煙鍚嶇О", - level: "灞傜骇", - orderid: "搴忓彿", - + bak: '澶囨敞', + bsm: '鏍囪瘑鐮�', + codeDesc: '缂栫爜鎻忚堪', + domCode: '缂栫爜', + domDesc: '鍊煎煙琛ㄦ弿杩�', + domName: '鍊煎煙鍚嶇О', + level: '灞傜骇', + orderid: '搴忓彿', }, styleManage: '鏍峰紡绠$悊', styleObj: { @@ -118,6 +121,8 @@ operatManage: { operatManage: '杩愮淮绠$悊', ResourceLog: '璧勬簮鏃ュ織', + organizationManage: '鍗曚綅绠$悊', + UserRoleAuthorization: '鐢ㄦ埛瑙掕壊鎺堟潈', MenuRoleAuthorization: '鑿滃崟鏉冮檺鎺堟潈', RoleResAuthorization: '瑙掕壊璧勬簮鎺堟潈', @@ -168,7 +173,17 @@ descr: '鎻忚堪', editSysLayOut: '淇敼绯荤粺閰嶇疆', }, - menuSettings: '鑿滃崟璁剧疆', + menuSettings: '鑿滃崟绠$悊', + menuSetObj: { + enName: '鑻辨枃鍚嶇О', + cnName: '涓枃鍚嶇О', + icon: '鍥炬爣', + isShow: '鏄惁鏄剧ず', + menuUrl: '鑿滃崟Url', + type: '绫诲瀷', + bak: '澶囨敞', + authorize: '鎺堟潈', + }, parameterConfiguration: '鍙傛暟閰嶇疆', rests: '鍏朵粬', authorityManagement: '鏉冮檺绠$悊', @@ -187,7 +202,16 @@ serviceAarm: '鏈嶅姟鍛婅', serviceResourceAlarm: '鏈嶅姟璧勬簮鍛婅', serviceResourceStatus: '鏈嶅姟璧勬簮鐘舵��', - userOperationBehavior: '鐢ㄦ埛鎿嶄綔琛屼负', + remainingMemory: '鍓╀綑鍐呭瓨', + userloginStatus: '鐢ㄦ埛鐧诲綍鐘舵��', + resourceOperationStatus: '璧勬簮鎿嶄綔鐘舵��', + memoryMonitoring: '鍐呭瓨鐩戞帶', + + cpuMonitoring: 'CPU鐩戞帶', + heteroconstant: '寮傚父鏁�', + + numberOfExceptions: '寮傚父涓暟', + resourceInvocationStatus: '璧勬簮璋冪敤鐘舵��', resourceCallStatistics: '璧勬簮璋冪敤缁熻', inquire: '鏌ヨ', @@ -434,6 +458,9 @@ userStatus: '鐢ㄦ埛鐘舵��', uname: '鐢ㄦ埛鍚�', pwd: '瀵嗙爜', + confirmPassword: '纭瀵嗙爜', + origpassword: '鍘熷瘑鐮�', + available: '璐﹀彿鍙敤', sex: '鎬у埆', natives: '绫嶈疮', depName: '鍗曚綅鍚嶇О', @@ -506,6 +533,9 @@ }, orgManage: '缁勭粐鏈烘瀯绠$悊', orgManageObj: { + remarks: '澶囨敞', + continformation: '鑱旂郴鏂瑰紡', + WebsiteAddress: '缃戠珯鍦板潃', companyName: '鍗曚綅鍚嶇О', flatType: '鍗曚綅绫诲瀷', inquire: '鏌ヨ', @@ -524,7 +554,7 @@ confirm: '纭畾', close: '鍏抽棴', administrativeDvisionsList: '琛屾斂鍖哄垝-鍒楄〃', - name: '鍖哄煙鍚嶇О', + name: '鍚嶇О', coding: '缂栫爜', codeOfAdministrativeDivision: '琛屾斂鍖哄垝浠g爜', LevelForExaminationAndApproval: '瀹℃壒绾у埆', @@ -532,9 +562,9 @@ reset: '閲嶇疆', immediatelyCreate: '绔嬪嵆鍒涘缓', pinyinInitials: '鎷奸煶棣栧瓧姣�', - abbreviation: '鍗曚綅绠�绉�', - unitCode: '鍗曚綅缂栫爜', - organizationCode: '鍗曚綅缁勭粐鏈烘瀯浠g爜', + abbreviation: '绠�绉�', + unitCode: '缂栫爜', + organizationCode: '鏈烘瀯浠g爜', companyAdministrator: '鍗曚綅绠$悊鍛�', picture: '鍥剧墖', division: '鎵�灞炲尯鍒�', @@ -542,7 +572,7 @@ fax: '浼犵湡', postalCode: '閭斂缂栫爜', website: '缃戝潃', - cmpanyAddress: '鍗曚綅鍦板潃', + cmpanyAddress: '鍦板潃', companyIntroduction: '鍗曚綅浠嬬粛', }, userAuditing: '鐢ㄦ埛瀹℃牳', diff --git a/src/components/MyBread.vue b/src/components/MyBread.vue index 1b5996d..9f71cac 100644 --- a/src/components/MyBread.vue +++ b/src/components/MyBread.vue @@ -27,6 +27,7 @@ position: relative; top: 10px; // margin-top: 24px; + width: 500px; margin-left: 10px; } </style> diff --git a/src/components/customElMenu.vue b/src/components/customElMenu.vue index 687218d..bf0ece4 100644 --- a/src/components/customElMenu.vue +++ b/src/components/customElMenu.vue @@ -7,7 +7,7 @@ :index="item.id + ''" > <template slot="title">{{ - $store.state.lang == "zh" ? item.cnName : item.enName + $store.state.lang == 'zh' ? item.cnName : item.enName }}</template> <MenuTree :menuData="item.children"></MenuTree> </el-submenu> @@ -18,7 +18,7 @@ :index="item.url == null ? item.id.toString() : item.url + ''" > <span slot="title">{{ - $store.state.lang == "zh" ? item.cnName : item.enName + $store.state.lang == 'zh' ? item.cnName : item.enName }}</span> </el-menu-item> </template> @@ -27,11 +27,11 @@ <script> export default { - props: ["menuData"], - name: "MenuTree", + props: ['menuData'], + name: 'MenuTree', data() { return { - name: "", + name: '', }; }, }; @@ -42,5 +42,8 @@ background-color: transparent !important; color: #fff; } + /deep/.el-menu { + border: transparent !important; + } } -</style> \ No newline at end of file +</style> diff --git a/src/components/login.vue b/src/components/login.vue index 49c386b..0b35e91 100644 --- a/src/components/login.vue +++ b/src/components/login.vue @@ -206,7 +206,6 @@ // 鑾峰彇vuex涓瑼ctions閲岀殑鏂规硶 ...mapActions(['login', 'getpublickey']), getCode(data) { - console.log(data); this.validCode = data; //鍦╠ata涓畾涔変竴涓� validCode:'',鐢ㄦ潵璁板綍楠岃瘉鐮併�� }, submitForm(formName) { diff --git a/src/views/maintenance/blackwhiteList.vue b/src/views/maintenance/blackwhiteList.vue index b5336c5..1be111c 100644 --- a/src/views/maintenance/blackwhiteList.vue +++ b/src/views/maintenance/blackwhiteList.vue @@ -291,19 +291,19 @@ width="30%" > <el-form ref="insertform" :model="insertform"> - <el-form-item :label-width="formLabelWidth" label="IP鍦板潃"> + <el-form-item :label-width="formLabelWidth" :label="$t('operatManage.tokentoolObj.ip')"> <el-input v-model="insertform.ip" :placeholder="$t('common.pleaseInput')" /> </el-form-item> - <el-form-item :label-width="formLabelWidth" label="璁块棶娆℃暟"> + <el-form-item :label-width="formLabelWidth" :label="$t('operatManage.BWL.PageView')"> <el-input v-model="insertform.visit" :placeholder="$t('common.pleaseInput')" /> </el-form-item> - <el-form-item :label-width="formLabelWidth" label="鎻忚堪"> + <el-form-item :label-width="formLabelWidth" :label="$t('operatManage.BWL.description')"> <el-input v-model="insertform.descr" :placeholder="$t('common.pleaseInput')" diff --git a/src/views/maintenance/logLog.vue b/src/views/maintenance/logLog.vue index 7413bff..4978d67 100644 --- a/src/views/maintenance/logLog.vue +++ b/src/views/maintenance/logLog.vue @@ -76,7 +76,7 @@ </div> <!-- 琛ㄦ牸鏄剧ず --> <div class="table_box"> - <el-table :data="tableData" stripe style="width: 100%" height="80%"> + <el-table :data="tableData" style="width: 100%" height="80%"> <el-table-column width="150" type="index" diff --git a/src/views/maintenance/menuSettings.vue b/src/views/maintenance/menuSettings.vue index 028efb9..e8f8b49 100644 --- a/src/views/maintenance/menuSettings.vue +++ b/src/views/maintenance/menuSettings.vue @@ -1,7 +1,12 @@ <template> <div class="menuSettings_box"> <div class="menuSettings_tree"> - <My-bread :list="['绯荤粺绠$悊', '鑿滃崟璁剧疆']"></My-bread> + <My-bread + :list="[ + `${$t('operatManage.operatManage')}`, + `${$t('operatManage.menuSettings')}`, + ]" + ></My-bread> <el-divider /> </div> <div class="left_Tree"> @@ -48,14 +53,16 @@ <div class="right_menu"> <el-card class="el-card-define"> <el-breadcrumb separator="/"> - <el-breadcrumb-item :to="{ path: '/' }">璇︾粏淇℃伅</el-breadcrumb-item> + <el-breadcrumb-item :to="{ path: '/' }">{{ + $t('dataManage.dictionaryManageObj.particulars') + }}</el-breadcrumb-item> </el-breadcrumb> <el-divider /> <div class="form_box"> <el-form :model="itemdetail" ref="itemdetail" :rules="rules"> <el-form-item prop="enName" - label="鑻辨枃鍚嶇О" + :label="$t('operatManage.menuSetObj.enName')" :label-width="formLabelWidth" > <el-input @@ -66,7 +73,7 @@ </el-form-item> <el-form-item prop="cnName" - label="涓枃鍚嶇О" + :label="$t('operatManage.menuSetObj.cnName')" :label-width="formLabelWidth" > <el-input @@ -74,12 +81,15 @@ autocomplete="off" ></el-input> </el-form-item> - <el-form-item label="鍥炬爣" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.icon')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.icon" autocomplete="off"></el-input> </el-form-item> <el-form-item prop="isShow" - label="鏄惁鏄剧ず" + :label="$t('operatManage.menuSetObj.isShow')" :label-width="formLabelWidth" > <el-select @@ -96,24 +106,30 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="鑿滃崟Url" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.menuUrl')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.url" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鎺堟潈" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.authorize')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.perms" autocomplete="off" ></el-input> </el-form-item> <el-form-item - label="绫诲瀷" + :label="$t('operatManage.menuSetObj.type')" prop="type" :label-width="formLabelWidth" > <el-select style="width: 400px" v-model="itemdetail.type" - placeholder="璇烽�夋嫨绫诲瀷" + :placeholder="$t('common.choose')" > <el-option v-for="item in options2" @@ -124,7 +140,10 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="澶囨敞" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.bak')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.bak" autocomplete="off"></el-input> </el-form-item> <div class="btnBox" v-if="menuStatus.update"> @@ -132,41 +151,44 @@ class="el-button-sure" type="primary" @click="updMenu('itemdetail')" - >淇濆瓨</el-button + >{{ $t('common.confirm') }}</el-button > <el-button class="el-button-remove" type="primary" @click="reset('itemdetail')" - >鍙栨秷</el-button + >{{ $t('common.cancel') }}</el-button > </div> </el-form> </div> </el-card> </div> - <el-dialog title="鏂板瀛愯彍鍗�" :visible.sync="dialogFormVisible"> + <el-dialog :title="$t('common.append')" :visible.sync="dialogFormVisible"> <el-form :model="ruleForm" ref="ruleForm" :rules="rules"> <el-form-item prop="enName" - label="鑻辨枃鍚嶇О" + :label="$t('operatManage.menuSetObj.enName')" :label-width="formLabelWidth" > <el-input v-model="ruleForm.enName" autocomplete="off"></el-input> </el-form-item> <el-form-item prop="cnName" - label="涓枃鍚嶇О" + :label="$t('operatManage.menuSetObj.cnName')" :label-width="formLabelWidth" > <el-input v-model="ruleForm.cnName" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鍥炬爣" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.icon')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.icon" autocomplete="off"></el-input> </el-form-item> <el-form-item prop="isShow" - label="鏄惁鏄剧ず" + :label="$t('operatManage.menuSetObj.isShow')" :label-width="formLabelWidth" > <el-select v-model="ruleForm.isShow" placeholder=""> @@ -179,14 +201,24 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="鑿滃崟Url" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.menuUrl')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.url" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鎺堟潈" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.authorize')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.perms" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="绫诲瀷" prop="type" :label-width="formLabelWidth"> - <el-select v-model="ruleForm.type" placeholder="璇烽�夋嫨绫诲瀷"> + <el-form-item + :label="$t('operatManage.menuSetObj.type')" + prop="type" + :label-width="formLabelWidth" + > + <el-select v-model="ruleForm.type" :placeholder="$t('common.choose')"> <el-option v-for="item in options2" :key="item.value" @@ -196,20 +228,23 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="澶囨敞" :label-width="formLabelWidth"> + <el-form-item + :label="$t('operatManage.menuSetObj.bak')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.bak" autocomplete="off"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> - <el-button class="el-button-sure" @click="resetForm('ruleForm')" - >鍙栨秷</el-button - > + <el-button class="el-button-sure" @click="resetForm('ruleForm')">{{ + $t('common.cancel') + }}</el-button> <el-button class="el-button-remove" type="primary" @click="submitForm('ruleForm')" v-loading.fullscreen.lock="fullscreenLoading" - >鎻愪氦</el-button + >{{ $t('common.confirm') }}</el-button > </div> </el-dialog> @@ -225,6 +260,7 @@ queryMaxId, insertMenu, deleteMenu, + getPerms, } from '../../api/api'; export default { //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� @@ -599,9 +635,17 @@ }, created() { var val = this.$store.state.currentPerms; - + if (!val) { + val = '/menu'; + } var permsEntity = this.$store.state.permsEntity; - + if (permsEntity.length == 0) { + getPerms().then((res) => { + if (res.code == 200) { + permsEntity = res.result; + } + }); + } for (var i = 0; i < permsEntity.length; i++) { if (permsEntity[i].perms == val) { this.showPermsMenu(permsEntity[i]); diff --git a/src/views/maintenance/mochaitmo.vue b/src/views/maintenance/mochaitmo.vue index b4bd902..bb66689 100644 --- a/src/views/maintenance/mochaitmo.vue +++ b/src/views/maintenance/mochaitmo.vue @@ -3,46 +3,64 @@ <div class="left_tree"> <el-card class="el-card-define"> <div class="card_tree"> - <el-tree - :data="treeList" - :props="defaultProps" - node-key="id" - @node-click="handleNodeClick" - :default-expanded-keys="[23]" - :default-checked-keys="[24]" - ></el-tree> + <el-menu + active-text-color="#ffd04b" + class="el-menu-vertical-demo" + :default-active="activeIndex" + background-color="transparent" + text-color="#fff" + @select="handleselect" + > + <customElMenu :menuData="menuList"></customElMenu> + </el-menu> </div> </el-card> </div> <div class="right_page"> <el-card class="el-card-define"> <div> - <menu-settings v-if="setMenuFlag == '1'"></menu-settings> - <user-management v-if="setMenuFlag == '2'"></user-management> - <org-manage v-if="setMenuFlag == '3'"></org-manage> - <resource-manage v-if="setMenuFlag == '4'"></resource-manage> - <role-manage v-if="setMenuFlag == '5'"></role-manage> - <authority-manage v-if="setMenuFlag == '6'"></authority-manage> + <menu-settings v-if="setMenuFlag == 'menuSettings'"></menu-settings> + <user-management + v-if="setMenuFlag == 'userInfoManage'" + ></user-management> + <org-manage v-if="setMenuFlag == 'orgManage'"></org-manage> + <resource-manage + v-if="setMenuFlag == 'resourceManage'" + ></resource-manage> + <role-manage v-if="setMenuFlag == 'roleManage'"></role-manage> + <authority-manage + v-if="setMenuFlag == 'authorityManage'" + ></authority-manage> <user-role-authorization - v-if="setMenuFlag == '7'" + v-if="setMenuFlag == 'userRoleAuthorization'" ></user-role-authorization> <menu-role-authorization - v-if="setMenuFlag == '8'" + v-if="setMenuFlag == 'menuRoleAuthorization'" ></menu-role-authorization> - <role-menu-authorization v-if="setMenuFlag == '9'"> + <role-menu-authorization + v-if="setMenuFlag == 'roleMenuAuthorization'" + > </role-menu-authorization> <role-res-authorization - v-if="setMenuFlag == '10'" + v-if="setMenuFlag == 'roleResAuthorization'" ></role-res-authorization> - <log-log v-if="setMenuFlag == '11'"> </log-log> - <operation-log v-if="setMenuFlag == '12'"></operation-log> - <eventlog-manage v-if="setMenuFlag == '13'"></eventlog-manage> - <tokentool v-if="setMenuFlag == '14'"></tokentool> - <blackwhite-list v-if="setMenuFlag == '15'"></blackwhite-list> - <database-monitoring v-if="setMenuFlag == '16'"></database-monitoring> - <system-monitoring v-if="setMenuFlag == '17'"></system-monitoring> + <log-log v-if="setMenuFlag == 'logLog'"> </log-log> + <operation-log v-if="setMenuFlag == 'operationLog'"></operation-log> + <eventlog-manage + v-if="setMenuFlag == 'eventlogManage'" + ></eventlog-manage> + <tokentool v-if="setMenuFlag == 'tokentool'"></tokentool> + <blackwhite-list + v-if="setMenuFlag == 'blackwhiteList'" + ></blackwhite-list> + <database-monitoring + v-if="setMenuFlag == 'dataIfream'" + ></database-monitoring> + <system-monitoring + v-if="setMenuFlag == 'systemMonitoring'" + ></system-monitoring> <parameter-configuration - v-if="setMenuFlag == '18'" + v-if="setMenuFlag == 'parameterConfiguration'" ></parameter-configuration> </div> </el-card> @@ -70,7 +88,7 @@ import systemMonitoring from '@/views/maintenance/systemMonitoring.vue'; //绯荤粺鐩戞帶 import parameterConfiguration from '@/views/maintenance/parameterConfiguration.vue'; //绯荤粺閰嶇疆 import { selectMenuRecursive } from '../../api/api'; - +import customElMenu from '../../components/customElMenu.vue'; export default { components: { menuSettings, @@ -91,34 +109,80 @@ databaseMonitoring, systemMonitoring, parameterConfiguration, + customElMenu, }, data() { return { - setMenuFlag: '1', - treeList: [], - defaultProps: { - children: 'children', - label: 'cnName', - }, + setMenuFlag: 'menuSettings', + oriData: [], //鍘熷鏍戞暟鎹� + dirData: [], //el鏍戞暟鎹� + newData: [], //鎷栧姩鍚庢暟鎹� + lang: 'zh', + activeIndex: 'menuSettings', + menuList: [], + editTitle: '', + showPopover: false, + showEditInfoWrapper: false, + showEdit: false, + editMenu: false, + editCatalogue: false, + editUnit: false, + itemdetail: {}, + formLabelWidth: '70px', }; }, + mounted() { this.getTreeData(); }, methods: { //鑾峰彇鏍� async getTreeData() { - const data = await selectMenuRecursive({ name: '杩愮淮绠$悊' }); - this.treeList = this.treeData(data.result); + const res = await selectMenuRecursive({ name: '杩愮淮绠$悊' }); + + if (res.code == 200) { + if (res.result.length != 0) { + let menuList = res.result.filter((value) => { + return value.type == 1; + }); + this.menuList = this.treeData(menuList); + } else { + alert('鏆傛棤鑿滃崟鏍忔暟鎹�'); + } + } else { + console.log('鎺ュ彛鎶ラ敊'); + } + + // this.treeList = this.treeData(data.result); }, treeData(source) { let cloneData = JSON.parse(JSON.stringify(source)); // 瀵规簮鏁版嵁娣卞害鍏嬮殕 - return cloneData.filter((father) => { - // 寰幆鎵�鏈夐」 - let branchArr = cloneData.filter((child) => father.id == child.pid); // 瀵规瘮ID锛屽垎鍒笂涓嬬骇鑿滃崟锛屽苟杩斿洖鏁版嵁 - branchArr.length > 1 ? (father.children = branchArr) : ''; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� - return father.pid == 1; // 杩斿洖涓�绾ц彍鍗� - }); + // console.log(cloneData); + if (cloneData.length != 0) { + return cloneData.filter((father) => { + // 寰幆鎵�鏈夐」 + let branchArr = cloneData.filter((child) => father.id == child.pid); // 瀵规瘮ID锛屽垎鍒笂涓嬬骇鑿滃崟锛屽苟杩斿洖鏁版嵁 + branchArr.length > 0 ? (father.children = branchArr) : ''; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� + // 灞炰簬鍚屼竴瀵硅薄闂锛屼緥濡傦細浠� a=b銆乧=1 锛岀劧鍚庡啀浠� b.c=c 锛� 閭d箞 a.c=b.c=c=1 锛涘悓鐞嗭紝鍚庣画浠� c.d=2 ,閭d箞 a.c.d 涔熸槸=2锛� + // 鐢辨寰幆澶氭鍚庯紝灏辫兘褰㈡垚鐩稿簲鐨勬爲褰㈡暟鎹粨鏋� + return father.pid == 1; // 杩斿洖涓�绾ц彍鍗� + }); + } else { + alert('鏆傛棤鑿滃崟鏍忔暟鎹�'); + } + }, + + handleselect(index, indexPath, e) { + var data = e.$attrs.perms; + this.$store.state.currentPerms = data.perms; + var index = data.url; + if (index != null) { + if (index.indexOf('http') != -1) { + this.$store.commit('getIframe', data.url); + index = 'dataIfream'; + } + } + this.setMenuFlag = index; }, //鏍戠偣鍑� handleNodeClick(data) { @@ -215,22 +279,8 @@ background-color: transparent; } .card_tree { - /deep/ .el-tree .el-icon-caret-right:before { - color: white; /** 杩欓噷鏄淇敼鍥炬爣鐨勯鑹� **/ - } - /deep/ .el-tree { - color: white; /** 杩欓噷鏄淇敼鍥炬爣鐨勯鑹� **/ - background: transparent; - } - /deep/.el-tree-node__content { - &:hover { - background-color: rgba(255, 255, 255, 0.3) !important; - } - } - /deep/.el-tree-node.is-current > .el-tree-node__content { - background-color: rgba(255, 255, 255, 0.3) !important; - color: #409eff; - } + height: 730px; + overflow-y: auto; } .el-card__body, .el-main { @@ -243,5 +293,14 @@ position: relative; float: right; } + /deep/.el-menu { + border: transparent !important; + } + /deep/.el-submenu__title:hover { + background: rgba(255, 255, 255, 0.3) !important; + } + /deep/ .el-submenu .el-menu-item:hover { + background: rgba(255, 255, 255, 0.3) !important; + } } </style> diff --git a/src/views/maintenance/parameterConfiguration.vue b/src/views/maintenance/parameterConfiguration.vue index b9a069d..c9291f9 100644 --- a/src/views/maintenance/parameterConfiguration.vue +++ b/src/views/maintenance/parameterConfiguration.vue @@ -147,7 +147,7 @@ insert: false, update: false, }, - formLabelWidth: '100px', + formLabelWidth: '120px', upform: {}, EditFormdialog: false, tableData: [], @@ -357,5 +357,27 @@ background: transparent; } } + /deep/ .el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/ .el-dialog { + background: #303030; + } + /deep/.el-range-editor.is-active, + .el-range-editor.is-active:hover, + .el-select .el-input.is-focus .el-input__inner { + border: 1px solid; + } + /deep/.el-dialog__title { + color: white; + } + /deep/.el-form-item__label { + color: white; + } + .boxlabel { + color: white; + } } </style> diff --git a/src/views/maintenance/safetyManagement.vue b/src/views/maintenance/safetyManagement.vue index 22edf52..8748ecb 100644 --- a/src/views/maintenance/safetyManagement.vue +++ b/src/views/maintenance/safetyManagement.vue @@ -64,7 +64,7 @@ </template> <script> -import MyBread from "../../components/MyBread.vue"; +import MyBread from '../../components/MyBread.vue'; export default { //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� @@ -76,58 +76,58 @@ return { currentPage4: 1, form: { - name: "", - region: "", - jurisdiction: "", + name: '', + region: '', + jurisdiction: '', }, tableData: [ { - number: "1", - name: "dads", - ip: "192.168.11.1", - effectivedate: "2020-08-10", - applicant: "admin", - status: "寮�鍙戦儴鍒嗘潈闄�", + number: '1', + name: 'dads', + ip: '192.168.11.1', + effectivedate: '2020-08-10', + applicant: 'admin', + status: '寮�鍙戦儴鍒嗘潈闄�', }, { - number: "1", - name: "dads", - ip: "192.168.11.1", - effectivedate: "2020-08-10", - applicant: "admin", - status: "寮�鍙戦儴鍒嗘潈闄�", + number: '1', + name: 'dads', + ip: '192.168.11.1', + effectivedate: '2020-08-10', + applicant: 'admin', + status: '寮�鍙戦儴鍒嗘潈闄�', }, { - number: "2", - name: "dads", - ip: "192.168.11.1", - effectivedate: "2020-08-10", - applicant: "admin", - status: "閮ㄥ垎鎷夐粦", + number: '2', + name: 'dads', + ip: '192.168.11.1', + effectivedate: '2020-08-10', + applicant: 'admin', + status: '閮ㄥ垎鎷夐粦', }, { - number: "3", - name: "dads", - ip: "192.168.11.1", - effectivedate: "2020-08-10", - applicant: "admin", - status: "寮�鍙戦儴鍒嗘潈闄�", + number: '3', + name: 'dads', + ip: '192.168.11.1', + effectivedate: '2020-08-10', + applicant: 'admin', + status: '寮�鍙戦儴鍒嗘潈闄�', }, { - number: "4", - name: "dads", - ip: "192.168.11.1", - effectivedate: "2020-08-10", - applicant: "admin", - status: "寮�鍙戦儴鍒嗘潈闄�", + number: '4', + name: 'dads', + ip: '192.168.11.1', + effectivedate: '2020-08-10', + applicant: 'admin', + status: '寮�鍙戦儴鍒嗘潈闄�', }, { - number: "5", - name: "dads", - ip: "192.168.11.1", - effectivedate: "2020-08-10", - applicant: "admin", - status: "寮�鍙戦儴鍒嗘潈闄�", + number: '5', + name: 'dads', + ip: '192.168.11.1', + effectivedate: '2020-08-10', + applicant: 'admin', + status: '寮�鍙戦儴鍒嗘潈闄�', }, ], }; @@ -140,7 +140,7 @@ console.log(`褰撳墠椤�: ${val}`); }, onSubmit() { - console.log("submit!"); + console.log('submit!'); }, resetForm() {}, }, @@ -154,7 +154,7 @@ border-radius: 10px; height: 100%; padding: 10px; - box-sizing: border-box; + .inquire { padding: 10px; margin-top: 20px; @@ -168,6 +168,9 @@ margin-left: auto; } } + /deep/.el-form-item__label { + color: white; + } } .table_box { padding: 10px; diff --git a/src/views/maintenance/systemMonitoring.vue b/src/views/maintenance/systemMonitoring.vue index 7918612..bcd4cf3 100644 --- a/src/views/maintenance/systemMonitoring.vue +++ b/src/views/maintenance/systemMonitoring.vue @@ -12,7 +12,9 @@ <div class="flex_Box"> <div style="width: 100%; height: 20px"> <div class="image1"></div> - <div class="imageTitle">鍐呭瓨鐩戞帶</div> + <div class="imageTitle"> + {{ $t('operatManage.systemMonitoringObj.memoryMonitoring') }} + </div> </div> <div class="top_Box1"> <div class="top_box_left"> @@ -26,7 +28,11 @@ <p>{{ memInfo.use }}</p> </div> <div class="height_title"> - <label>浣跨敤鐜�</label> + <label> + {{ + $t('operatManage.systemMonitoringObj.usageRate') + }}</label + > <p>{{ memInfo.usage }}</p> </div> </div> @@ -40,7 +46,11 @@ <p>{{ memInfo.totalMem }}</p> </div> <div class="height_title"> - <label>鍓╀綑鍐呭瓨</label> + <label> + {{ + $t('operatManage.systemMonitoringObj.remainingMemory') + }}</label + > <p>{{ memInfo.remainMem }}</p> </div> </div> @@ -53,7 +63,9 @@ <div class="flex_Box"> <div> <div class="image2"></div> - <div style="line-height: 32px" class="imageTitle">CPU鐩戞帶</div> + <div style="line-height: 32px" class="imageTitle"> + {{ $t('operatManage.systemMonitoringObj.cpuMonitoring') }} + </div> </div> <div id="Sys_cpu_chart" @@ -63,24 +75,14 @@ <div class="flex_Box"> <div style="width: 100%; height: 34px"> <div class="image3"></div> - <div style="line-height: 32px" class="imageTitle">寮傚父鏁�</div> + <div style="line-height: 32px" class="imageTitle"> + {{ $t('operatManage.systemMonitoringObj.heteroconstant') }} + </div> </div> <div class="ycsBox"> <div class="ycTltle">{{ resInfoCount }}</div> - <div - style=" - width: 110px; - height: 16px; - font-size: 16px; - font-family: Microsoft YaHei; - font-weight: 300; - color: #ffffff; - line-height: 49px; - margin-left: 51px; - margin-top: 20px; - " - > - 绯荤粺寮傚父涓暟 + <div class="heteroTitle"> + {{ $t('operatManage.systemMonitoringObj.numberOfExceptions') }} </div> </div> </div> @@ -114,16 +116,28 @@ > </el-table-column> </el-table ></el-tab-pane> - <el-tab-pane label="鏈嶅姟璧勬簮鐘舵��" name="second"> + <el-tab-pane + :label=" + $t('operatManage.systemMonitoringObj.serviceResourceStatus') + " + name="second" + > <div id="resUseChart" style="width: 995px; height: 310px"></div> </el-tab-pane> - <el-tab-pane label="鐢ㄦ埛鐧诲綍鐘舵��" name="third"> + <el-tab-pane + :label="$t('operatManage.systemMonitoringObj.userloginStatus')" + name="third" + > <div id="userLoginChart" style="width: 995px; height: 310px" ></div> </el-tab-pane> - <el-tab-pane label="璧勬簮鎿嶄綔鐘舵��" name="fourth" + <el-tab-pane + :label=" + $t('operatManage.systemMonitoringObj.resourceOperationStatus') + " + name="fourth" ><div id="operateCountChart" style="width: 995px; height: 310px" @@ -133,7 +147,9 @@ </div> <div class="flex_Box"> <div> - <div style="line-height: 32px" class="imageTitle">鍦ㄧ嚎浜哄憳</div> + <div style="line-height: 32px" class="imageTitle"> + {{ $t('operatManage.systemMonitoringObj.onlinePersonnel') }} + </div> </div> <el-table :data="tableData" style="width: 100%" height="90%"> <el-table-column @@ -855,6 +871,19 @@ margin-top: 61px; margin-left: 88px; } + .heteroTitle { + width: 100%; + height: 16px; + font-size: 16px; + font-family: Microsoft YaHei; + font-weight: 300; + color: #ffffff; + line-height: 49px; + + margin-top: 20px; + + text-align: center; + } } .imageTitle { float: left; diff --git a/src/views/maintenance/tokentool.vue b/src/views/maintenance/tokentool.vue index 7617608..ed58bc4 100644 --- a/src/views/maintenance/tokentool.vue +++ b/src/views/maintenance/tokentool.vue @@ -701,5 +701,24 @@ background: transparent; } } + /deep/ .el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/ .el-dialog { + background: #303030; + } + /deep/.el-range-editor.is-active, + .el-range-editor.is-active:hover, + .el-select .el-input.is-focus .el-input__inner { + border: 1px solid; + } + /deep/.el-dialog__title { + color: white; + } + /deep/.el-form-item__label { + color: white; + } } </style> diff --git a/src/views/maintenance/userManagement.vue b/src/views/maintenance/userManagement.vue index 35152c3..516c75d 100644 --- a/src/views/maintenance/userManagement.vue +++ b/src/views/maintenance/userManagement.vue @@ -1,190 +1,1130 @@ <template> - <div class="userManagement_box"> - <My-bread :list="['杩愮淮绠$悊', '鐢ㄦ埛绠$悊']"></My-bread> + <div class="userInfo_box"> + <My-bread + :list="[ + `${$t('operatManage.operatManage')}`, + `${$t('userManage.userManage')}`, + ]" + ></My-bread> <el-divider /> <div class="inquire"> - <el-form ref="formData1" :model="form" :inline="true"> - <el-form-item label="瑙掕壊鍚嶇О" prop="name"> - <el-input v-model="form.name" placeholder="璇疯緭鍏�" /> + <el-form ref="queryForm" :model="queryForm" :inline="true"> + <el-form-item prop="uname" :label="$t('userManage.userInfoObj.uname')"> + <el-input v-model="queryForm.uname" /> </el-form-item> - <el-form-item label="鏉冮檺瀛楃" prop="jurisdiction"> - <el-input v-model="form.jurisdiction" placeholder="璇疯緭鍏�" /> + <el-form-item + prop="depid" + :label="$t('userManage.userInfoObj.depName')" + > + <el-cascader + v-model="queryForm.depid" + :options="treeOptions" + filterable + @change="handleChange" + :show-all-levels="false" + :props="{ + label: 'name', + value: 'id', + children: 'children', + checkStrictly: true, + emitPath: false, + }" + > + </el-cascader> </el-form-item> - <el-form-item label="瑙掕壊鐘舵��" prop="region"> - <el-select v-model="form.region" placeholder="璇烽�夋嫨"> - <el-option label="Zone one" value="shanghai" /> - <el-option label="Zone two" value="beijing" /> - </el-select> - </el-form-item> - <el-form-item> - <el-button type="primary" @click="onSubmit">鏌ヨ</el-button> - <el-button @click="resetForm()">閲嶇疆</el-button> + <el-button + size="small" + type="primary" + @click="queryInfo()" + icon="el-icon-search" + style="background: #1890ff" + >{{ $t('operatManage.ELM.search') }} + </el-button> + </el-form-item> + <el-form-item> + <el-button + size="small" + @click="resetInfo('queryForm')" + icon="el-icon-refresh" + > + {{ $t('operatManage.ELM.reset') }} + </el-button> + </el-form-item> + <br /> + <el-form-item> + <el-button + type="success" + size="small" + @click="showAddDialog" + icon="el-icon-plus" + > + {{ $t('common.append') }} + </el-button> + </el-form-item> + <el-form-item> + <el-button + type="danger" + size="small" + @click="deleteUserInfo" + icon="el-icon-delete" + > + {{ $t('common.delete') }} + </el-button> + </el-form-item> + <el-form-item v-show="setbatchFlag"> + <el-button + type="primary" + size="small" + @click="editPwd" + style="background: #1890ff" + icon="el-icon-unlock" + >{{ $t('common.changepassWord') }} + </el-button> </el-form-item> </el-form> - <div class="btn_box"> - <el-button>娣诲姞</el-button> - <el-button>淇敼</el-button> - <el-button>瀵煎嚭</el-button> - <el-button>鍒犻櫎</el-button> - </div> </div> <div class="table_box"> - <el-table :data="tableData" style="width: 100%"> + <el-table + :data="tableData" + border + style="width: 100%" + height="99%" + @selection-change="handleSelectionChange" + > <el-table-column type="selection" width="55" /> - <el-table-column prop="user" label="鐢ㄦ埛鍚�" /> - <el-table-column prop="name" label="濮撳悕" /> - <el-table-column prop="email" label="閭" /> - <el-table-column prop="phone" label="鑱旂郴鏂瑰紡" /> - <el-table-column fixed="right" prop="permission" label="鏉冮檺" /> - <!-- <el-table-column label="鎿嶄綔" width="280"> - <template #default> + <el-table-column + align="center" + type="index" + :label="$t('common.index')" + width="70px" + fixed + /> - <el-button type="primary" size="small">鍒犻櫎</el-button> + <el-table-column + align="center" + prop="uname" + width="150px" + :label="$t('userManage.userInfoObj.uname')" + fixed + /> + <el-table-column + align="center" + prop="uid" + width="150px" + :label="$t('userManage.userInfoObj.uid')" + /> + <el-table-column + align="center" + prop="sex" + width="80px" + :label="$t('userManage.userInfoObj.sex')" + > + <template slot-scope="scope"> + <span v-if="scope.row.sex == 1"> 鐢� </span> + <span v-else-if="scope.row.sex == 0">濂�</span> + <span v-else>鏈煡</span> </template> - </el-table-column> --> + </el-table-column> + <el-table-column + align="center" + prop="natives" + width="100px" + :label="$t('userManage.userInfoObj.natives')" + /> + <el-table-column + align="center" + prop="depName" + width="200px" + :label="$t('userManage.userInfoObj.depName')" + /> + <el-table-column + align="center" + prop="idcard" + width="200px" + :label="$t('userManage.userInfoObj.idcard')" + /><el-table-column + align="center" + prop="job" + width="200px" + :label="$t('userManage.userInfoObj.job')" + /> + <el-table-column + align="center" + prop="edu" + width="200px" + :label="$t('userManage.userInfoObj.edu')" + /> + <el-table-column + align="center" + prop="addr" + width="200px" + :label="$t('userManage.userInfoObj.addr')" + /> + <el-table-column + align="center" + prop="email" + width="200px" + :label="$t('userManage.userInfoObj.email')" + /> + <el-table-column + align="center" + prop="contact" + width="200px" + :label="$t('userManage.userInfoObj.contact')" + /> + + <el-table-column + align="center" + prop="largeModuleName" + :label="$t('userManage.userInfoObj.status')" + > + <template slot-scope="scope"> + <el-tag v-if="scope.row.status == 0" type="success">姝e父</el-tag> + <el-tag v-if="scope.row.status == 1" type="info">绂佺敤</el-tag> + <el-tag v-if="scope.row.status == 2" type="warning">鍒犻櫎</el-tag> + <el-tag v-if="scope.row.status == 3">鐢宠</el-tag> + <el-tag v-if="scope.row.status == 4" type="danger">鎷掓壒</el-tag> + </template> + </el-table-column> + <el-table-column + align="center" + prop="bak" + width="200px" + :label="$t('userManage.userInfoObj.bak')" + /> + <el-table-column + :label="$t('common.operate')" + width="80px" + fixed="right" + v-if="menuStatus.update" + > + <template slot-scope="scope"> + <!-- <el-button type="primary" size="small">淇敼</el-button> --> + <el-button + type="warning" + @click="editInfo(scope.row)" + size="mini" + >{{ $t('common.edit') }}</el-button + > + </template> + </el-table-column> </el-table> - <div style="margin-top: 40px" class="pagination_box"> + <div style="margin-top: 25px" class="pagination_box"> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" - :current-page="currentPage4" - :page-sizes="[10, 20, 30, 40]" - :page-size="10" + :current-page="currentPage" + :page-sizes="[1, 2, 5, 10]" + :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" - :total="5" + :total="count" > </el-pagination> </div> </div> + <el-dialog + width="910px" + top="15vh" + :title="behavior" + :visible.sync="dialogFormVisible" + :before-close="handleClose" + > + <el-form + :model="editForm" + ref="editForm" + :rules="rules" + style="display: flex" + > + <div> + <el-form-item + prop="uid" + :label="$t('userManage.userInfoObj.uid')" + v-if="behavior == '鏂板鐢ㄦ埛'" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.uid" autocomplete="off"></el-input> + <div class="isNewUser" v-if="isNewUser"> + <img src="../../assets/img/success.png" /> + {{ $t('userManage.userInfoObj.uid') }} + </div> + </el-form-item> + <el-form-item + v-if="behavior == '淇敼淇℃伅'" + :label="$t('userManage.userInfoObj.uid')" + :label-width="formLabelWidth" + > + <el-input + v-model="editForm.uid" + autocomplete="off" + disabled + ></el-input> + </el-form-item> + <el-form-item + v-if="behavior == '淇敼淇℃伅'" + prop="oldPwd" + :label="$t('userManage.userInfoObj.origpassword')" + :label-width="formLabelWidth" + > + <el-input + type="password" + v-model="editForm.oldPwd" + autocomplete="off" + show-password + ></el-input> + </el-form-item> + <el-form-item + prop="pwd" + :label="$t('userManage.userInfoObj.pwd')" + :label-width="formLabelWidth" + > + <el-input + type="password" + v-model="editForm.pwd" + autocomplete="off" + show-password + ></el-input> + </el-form-item> + <el-form-item + prop="checkPass" + :label="$t('userManage.userInfoObj.confirmPassword')" + :label-width="formLabelWidth" + > + <el-input + type="password" + show-password + v-model="editForm.checkPass" + autocomplete="off" + ></el-input> + </el-form-item> + <el-form-item + prop="uname" + :label="$t('userManage.userInfoObj.username')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.uname" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="sex" + :label="$t('userManage.userInfoObj.sex')" + :label-width="formLabelWidth" + > + <el-select + v-model="editForm.sex" + clearable + :placeholder="$t('userManage.userInfoObj.pleaseSelect')" + > + <el-option + v-for="item in sexOpt" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item + prop="natives" + :label="$t('userManage.userInfoObj.nativePlace')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.natives" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="depid" + :label-width="formLabelWidth" + :label="$t('userManage.userInfoObj.depName')" + > + <el-cascader + v-model="editForm.depid" + :options="treeOptions" + filterable + clearable + @change="editChange" + :show-all-levels="false" + :props="{ + label: 'name', + value: 'id', + children: 'children', + checkStrictly: true, + emitPath: false, + }" + > + </el-cascader> + </el-form-item> + <el-form-item + prop="idcard" + :label="$t('userManage.userInfoObj.identityCard')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.idcard" autocomplete="off"></el-input> + </el-form-item> + </div> + <div style="width: 45%"> + <el-form-item + prop="job" + :label="$t('userManage.userInfoObj.job')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.job" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="edu" + :label="$t('userManage.userInfoObj.edu')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.edu" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="addr" + :label="$t('userManage.userInfoObj.addr')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.addr" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="email" + :label="$t('userManage.userInfoObj.email')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.email" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="contact" + :label="$t('userManage.userInfoObj.contact')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.contact" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + prop="status" + :label="$t('userManage.userInfoObj.status')" + :label-width="formLabelWidth" + > + <el-select + v-model="editForm.status" + clearable + :placeholder="$t('userManage.userInfoObj.pleaseSelect')" + > + <el-option + v-for="item in statusOpt" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item + prop="bak" + :label="$t('userManage.userInfoObj.remarks')" + :label-width="formLabelWidth" + > + <el-input v-model="editForm.bak" autocomplete="off"></el-input> + </el-form-item> + </div> + </el-form> + <div v-if="behavior == '淇敼淇℃伅'" slot="footer" class="dialog-footer"> + <el-button size="medium" @click="cancelEdit()">{{ + $t('common.reset') + }}</el-button> + <el-button + size="medium" + type="primary" + @click="sendEdit('editForm')" + v-loading.fullscreen.lock="fullscreenLoading" + >{{ $t('common.submit') }}</el-button + > + </div> + <div v-else slot="footer" class="dialog-footer"> + <el-button size="medium" @click="cancelAdd('editForm')">{{ + $t('common.reset') + }}</el-button> + <el-button + size="medium" + type="primary" + @click="sendAdd('editForm')" + v-loading.fullscreen.lock="fullscreenLoading" + >{{ $t('common.submit') }}</el-button + > + </div> + </el-dialog> + <el-dialog + width="520px" + top="30vh" + title="鎵归噺閲嶇疆瀵嗙爜" + :visible.sync="resetPwd" + :before-close="handleClose" + > + <el-form :model="pwdForm" ref="pwdForm" :rules="rules"> + <el-form-item prop="adminPwd" label="绠$悊鍛樺瘑鐮�" label-width="140px"> + <el-input + type="password" + v-model="pwdForm.adminPwd" + autocomplete="off" + show-password + ></el-input> + </el-form-item> + <el-form-item prop="newPwd" label="鏂板瘑鐮�" label-width="140px"> + <el-input + type="password" + v-model="pwdForm.newPwd" + autocomplete="off" + show-password + ></el-input> + </el-form-item> + <el-form-item prop="checkPwd" label="纭瀵嗙爜" label-width="140px"> + <el-input + type="password" + v-model="pwdForm.checkPwd" + autocomplete="off" + show-password + ></el-input> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button size="medium" @click="cancelReset - 'pwdForm'" + >閲嶇疆</el-button + > + <el-button + size="medium" + type="primary" + @click="sendReset('pwdForm')" + v-loading.fullscreen.lock="fullscreenLoading" + >鎻愪氦</el-button + > + </div> + </el-dialog> </div> </template> <script> +var encrypt = new JSEncrypt(); +import { mapActions } from 'vuex'; import MyBread from '../../components/MyBread.vue'; +import { + queryDepTree, + queryPageUser, + insertUser, + deleteUser, + updateUser, + updatePwd, + selectByUserid, + userSelectForIsAdmin, +} from '../../api/api'; export default { //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� components: { MyBread, }, - data() { + let validName = (rule, value, callback) => { + if (value === '' || value === null || value === undefined) { + return callback(new Error('璇疯緭鍏ュ瘑鐮�')); + } else { + callback(); + } + }; + let validatePass = (rule, value, callback) => { + if (value === '' || value === undefined) { + callback(new Error('璇峰啀娆¤緭鍏ュ瘑鐮�')); + } else if (value !== this.editForm.pwd) { + callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!')); + } else { + callback(); + } + }; + let resetPass = (rule, value, callback) => { + if (value === '' || value === undefined) { + callback(new Error('璇峰啀娆¤緭鍏ュ瘑鐮�')); + } else if (value !== this.pwdForm.newPwd) { + callback(new Error('涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�!')); + } else { + callback(); + } + }; return { - currentPage4: 1, - form: { - name: '', - region: '', - jurisdiction: '', + setbatchFlag: false, + menuStatus: { + delete: false, + insert: false, + update: false, }, - tableData: [ + isNewUser: false, + currentPage: 1, + pageSize: 10, + pageIndex: 1, + defaultProps: { + children: 'children', + label: 'name', + }, + queryForm: { + uname: '', + depid: null, + depName: '', + }, + tableData: [], + fullscreenLoading: false, + count: 0, + formLabelWidth: '100px', + dialogFormVisible: false, + initialForm: '', + behavior: '', + multipleSelection: [], + resetPwd: false, + editForm: { + uid: '', + uname: '', + oldPwd: '', + pwd: '', + checkPass: '', + sex: null, + natives: '', + depid: null, + idcard: '', + job: '', + edu: '', + addr: '', + email: '', + contact: '', + status: null, + bak: '', + salt: '', + }, + pwdForm: { + adminPwd: '', + newPwd: '', + checkPwd: '', + ids: [], + }, + treeOptions: [], + statusOpt: [ { - name: '寮犱笁', - user: 'admin', - email: 'admin@daa.com', - phone: '182111199328', - permission: '绠$悊鍛�', + value: 0, + label: '姝e父', }, { - name: '鏉庡洓', - user: 'admin', - email: 'admin@daa.com', - phone: '182111199328', - permission: '绠$悊鍛�', + value: 1, + label: '绂佺敤', }, { - name: '鐜嬩簲', - user: 'admin', - email: 'admin@daa.com', - phone: '182111199328', - permission: '绠$悊鍛�', + value: 2, + label: '鍒犻櫎', }, { - name: '璧垫皬', - user: 'admin', - email: 'admin@daa.com', - phone: '182111199328', - permission: '绠$悊鍛�', + value: 3, + label: '鐢宠', }, - { - name: '寮犱笁', - user: 'admin', - email: 'admin@daa.com', - phone: '182111199328', - permission: '绠$悊鍛�', + value: 4, + label: '鎷掓壒', }, ], + depList: [], + sexOpt: [ + { + value: 0, + label: '濂�', + }, + { + value: 1, + label: '鐢�', + }, + { + value: -1, + label: '鏈煡', + }, + ], + rules: { + uid: [ + { required: true, validator: validName, trigger: 'blur' }, + { + trigger: 'blur', + validator: (rule, value, callback) => { + var reg = new RegExp(/^[a-zA-Z0-9_]{0,15}$/); //瀛楃涓叉鍒欒〃杈惧紡 4鍒�14浣嶏紙瀛楁瘝锛屾暟瀛楋紝涓嬪垝绾匡紝鍑忓彿锛� + if (!reg.test(value)) { + callback( + new Error('璐﹀彿蹇呴』鐢卞瓧姣嶏紝鏁板瓧鎴栦笅鍒掔嚎,闀垮害涓嶅緱瓒呰繃16浣�') + ); + } else { + selectByUserid({ uid: value }).then((res) => { + if (res.result != null) { + this.isNewUser = false; + callback(new Error('璐﹀彿宸插瓨鍦�')); + } else { + this.isNewUser = true; + callback(); + } + }); + } + }, + }, + ], + pwd: [ + { + required: true, + message: '璇疯緭鍏ュ瘑鐮�', + transform: (value) => value, + trigger: 'blur', + }, + { + type: 'string', + message: '璇疯緭鍏ヤ笉鍖呭惈绌烘牸鐨勫瓧绗�', + trigger: 'blur', + transform(value) { + if (value && value.indexOf(' ') === -1) { + return value; + } else { + return false; + } + }, + }, + { + trigger: 'blur', + validator: (rule, value, callback) => { + var regex = new RegExp(''); + var passwordreg = + /^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![a-z0-9]+$)(?![a-z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![0-9\W!@#$%^&*`~()\\-_+=,.?;<>]+$)[a-zA-Z0-9\W!@#$%^&*`~()\\-_+=,.?;<>]{8,20}$/; + if (!passwordreg.test(value)) { + callback( + new Error('瀵嗙爜蹇呴』鐢辨暟瀛椼�佸瓧姣嶃�佺壒娈婂瓧绗︾粍鍚�,璇疯緭鍏�8-20浣�') + ); + } else { + callback(); + } + }, + }, + ], + checkPass: [ + { required: true, validator: validatePass, trigger: 'blur' }, + ], + adminPwd: [{ validator: validName, trigger: 'blur' }], + newPwd: [ + { + message: '璇疯緭鍏ュ瘑鐮�', + transform: (value) => value, + trigger: 'blur', + }, + { + type: 'string', + message: '璇疯緭鍏ヤ笉鍖呭惈绌烘牸鐨勫瓧绗�', + trigger: 'blur', + transform(value) { + if (value && value.indexOf(' ') === -1) { + return value; + } else { + return false; + } + }, + }, + { + trigger: 'blur', + validator: (rule, value, callback) => { + var regex = new RegExp(''); + var passwordreg = + /^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![a-z0-9]+$)(?![a-z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![0-9\W!@#$%^&*`~()\\-_+=,.?;<>]+$)[a-zA-Z0-9\W!@#$%^&*`~()\\-_+=,.?;<>]{8,20}$/; + if (!passwordreg.test(value)) { + callback( + new Error('瀵嗙爜蹇呴』鐢辨暟瀛椼�佸瓧姣嶃�佺壒娈婂瓧绗︾粍鍚�,璇疯緭鍏�8-20浣�') + ); + } else { + callback(); + } + }, + }, + ], + checkPwd: [{ validator: resetPass, trigger: 'blur' }], + }, }; }, methods: { + ...mapActions(['login', 'getpublickey']), + getUserInfo() { + queryDepTree() + .then((res) => { + if (res.code == 200) { + this.depList = this.treeData(res.result); + this.treeOptions = this.treeData(res.result); + } else { + this.$notify.error({ + title: res.code, + message: res.result, + }); + } + }) + .catch((res) => {}); + + queryPageUser({ + pageIndex: 1, + pageSize: 10, + }) + .then((res) => { + if (res.code == 200) { + this.tableData = res.result; + this.count = res.count; + } else { + this.$notify.error({ + title: res.code, + message: res.result, + }); + } + }) + .catch((res) => {}); + }, + treeData(source) { + let cloneData = JSON.parse(JSON.stringify(source)); // 瀵规簮鏁版嵁娣卞害鍏嬮殕 + return cloneData.filter((father) => { + // 寰幆鎵�鏈夐」 + let branchArr = cloneData.filter((child) => father.id == child.pid); // 瀵规瘮ID锛屽垎鍒笂涓嬬骇鑿滃崟锛屽苟杩斿洖鏁版嵁 + branchArr.length > 0 ? (father.children = branchArr) : ''; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� + return father.pid == 0; // 杩斿洖涓�绾ц彍鍗� + }); + }, + //鏌ヨ閫夋嫨鍗曚綅 + handleChange(value) { + this.queryForm.depid = value; + }, + //鎼滅储鎸夐挳 + queryInfo() { + let searchData = { + uname: this.queryForm.uname.trim(), + depid: this.queryForm.depid, + pageIndex: this.pageIndex, + pageSize: this.pageSize, + }; + queryPageUser(searchData).then((res) => { + if (res.code == 200) { + this.tableData = res.result; + this.count = res.count; + } else { + console.log('鏌ヨ鎺ュ彛鎶ラ敊'); + this.$notify.error({ + title: res.code, + message: res.result, + }); + } + }); + }, + //閲嶇疆鎸夐挳 + resetInfo(formName) { + this.$refs[formName].resetFields(); + }, + //鏂板鎸夐挳 + showAddDialog() { + this.behavior = '鏂板鐢ㄦ埛'; + this.editForm = {}; + this.dialogFormVisible = true; + }, + cancelAdd(formName) { + this.editForm = {}; + this.isNewUser = false; + this.$refs[formName].resetFields(); + }, + sendAdd(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + // console.log(this.$store.state.key); + encrypt.setPublicKey(this.$store.state.key); + this.editForm.uid = encrypt.encrypt(this.editForm.uid); + this.editForm.pwd = encrypt.encrypt(this.editForm.pwd); + this.fullscreenLoading = true; + delete this.editForm.checkPass; + delete this.editForm.oldPwd; + insertUser(this.editForm) + .then((res) => { + setTimeout(() => { + this.fullscreenLoading = false; + if (res.code == 200) { + this.getUserInfo(); + this.$message({ + message: '娣诲姞鎴愬姛', + type: 'success', + }); + this.editForm = {}; + this.dialogFormVisible = false; + } + }, 500); + }) + .catch((res) => { + alert('淇敼澶辫触锛岃閲嶈瘯锛�'); + this.fullscreenLoading = false; + }); + } else { + console.log('error submit!!'); + return false; + } + }); + }, + //澶氶�� + handleSelectionChange(val) { + this.multipleSelection = val; + }, + //鍒犻櫎鎸夐挳 + deleteUserInfo() { + this.$confirm('姝ゆ搷浣滃皢鍒犻櫎宸查�変腑鐨勭敤鎴�, 鏄惁缁х画?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning', + }) + .then(() => { + var std = []; + for (var i in this.multipleSelection) { + std.push(this.multipleSelection[i].id); + } + deleteUser({ ids: std.toString() }) + .then((res) => { + if (res.code == 200) { + this.$message({ + type: 'success', + message: '鍒犻櫎鎴愬姛!', + }); + this.multipleSelection = []; + this.getUserInfo(); + } else { + this.$message.error('鍒犻櫎澶辫触'); + } + }) + .catch(() => { + this.$message.error('鍒犻櫎澶辫触'); + this.multipleSelection = []; + }); + }) + .catch(() => { + this.$message('宸插彇娑堝垹闄�'); + }); + }, + //閲嶇疆瀵嗙爜 + editPwd() { + var std = []; + for (var i in this.multipleSelection) { + std.push(this.multipleSelection[i].id); + } + if (std.length == 0) { + alert('璇峰厛閫夋嫨鐢ㄦ埛'); + return; + } + this.pwdForm.ids = std; + this.resetPwd = true; + }, + cancelReset(formName) { + this.$refs[formName].resetFields(); + this.pwdForm.ids = []; + }, + sendReset(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + encrypt.setPublicKey(this.$store.state.key); + var data = { + adminPwd: encrypt.encrypt(this.pwdForm.adminPwd), + newPwd: encrypt.encrypt(this.pwdForm.newPwd), + ids: this.pwdForm.ids, + }; + this.fullscreenLoading = true; + updatePwd(data) + .then((res) => { + setTimeout(() => { + this.fullscreenLoading = false; + if (res.code == 200) { + this.getUserInfo(); + this.$message({ + message: '淇敼鎴愬姛', + type: 'success', + }); + this.pwdForm = { + adminPwd: '', + newPwd: '', + checkPwd: '', + ids: [], + }; + this.multipleSelection = []; + this.resetPwd = false; + } + }, 500); + }) + .catch((res) => { + alert('淇敼澶辫触锛岃閲嶈瘯锛�'); + this.fullscreenLoading = false; + }); + } else { + return false; + } + }); + }, + //缂栬緫鎸夐挳 + editInfo(row) { + delete row.updateTime; + delete row.updateUser; + row.pwd = ''; + this.initialForm = JSON.stringify(row); + this.behavior = '淇敼淇℃伅'; + this.editForm = JSON.parse(JSON.stringify(row)); + this.dialogFormVisible = true; + }, + //缂栬緫閫夋嫨鍗曚綅 + editChange(value) { + this.editForm.depid = value; + }, + //鍏抽棴寮瑰嚭妗� + handleClose(done) { + this.$confirm('纭鍏抽棴锛�') + .then((_) => { + this.editForm = { + uid: '', + uname: '', + oldPwd: '', + pwd: '', + checkPass: '', + sex: null, + natives: '', + depid: null, + idcard: '', + job: '', + edu: '', + addr: '', + email: '', + contact: '', + status: null, + bak: '', + salt: '', + }; + this.pwdForm = { + adminPwd: '', + newPwd: '', + checkPwd: '', + ids: [], + }; + + done(); + }) + .catch((_) => {}); + }, + //鎻愪氦缂栬緫 + sendEdit(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + encrypt.setPublicKey(this.$store.state.key); + this.editForm.uid = encrypt.encrypt(this.editForm.uid); + this.editForm.salt = encrypt.encrypt(this.editForm.pwd); + this.editForm.pwd = encrypt.encrypt(this.editForm.oldPwd); + this.fullscreenLoading = true; + delete this.editForm.checkPass; + delete this.editForm.oldPwd; + updateUser(this.editForm) + .then((res) => { + setTimeout(() => { + this.fullscreenLoading = false; + if (res.code == 200) { + this.getUserInfo(); + this.$message({ + message: '淇敼鎴愬姛', + type: 'success', + }); + this.editForm = {}; + this.dialogFormVisible = false; + } + }, 500); + }) + .catch((res) => { + alert('淇敼澶辫触锛岃閲嶈瘯锛�'); + this.fullscreenLoading = false; + }); + } else { + console.log('error submit!!'); + return false; + } + }); + }, + cancelEdit() { + this.$nextTick(() => { + this.editForm = JSON.parse(this.initialForm); + }); + }, + handleSizeChange(val) { - console.log(`姣忛〉 ${val} 鏉); + // console.log(`姣忛〉 ${val} 鏉); + this.pageSize = val; + this.queryInfo(); }, handleCurrentChange(val) { - console.log(`褰撳墠椤�: ${val}`); + // console.log(`褰撳墠椤�: ${val}`); + this.pageIndex = val; + this.currentPage = val; + this.queryInfo(); }, - onSubmit() { - console.log('submit!'); + showPermsMenu(res) { + switch (res.tag) { + case '/delete': + this.menuStatus.delete = true; + break; + case '/insert': + this.menuStatus.insert = true; + break; + case '/update': + this.menuStatus.update = true; + break; + } }, - resetForm() {}, + async getIsAdmin() { + const data = await userSelectForIsAdmin(); + if (data.code != 200) { + this.setbatchFlag = false; + return; + } + this.setbatchFlag = data.result; + }, }, - created() {}, + + mounted() { + this.getIsAdmin(); + this.getUserInfo(); + this.getpublickey(); + }, + created() { + var val = this.$store.state.currentPerms; + var permsEntity = this.$store.state.permsEntity; + for (var i = 0; i < permsEntity.length; i++) { + if (permsEntity[i].perms == val) { + this.showPermsMenu(permsEntity[i]); + } + } + }, }; </script> +<style> +/deep/ .el-table__fixed-right { + height: 100% !important; +} +</style> <style lang="less" scoped> //@import url(); 寮曞叆鍏叡css绫� -.userManagement_box { +.userInfo_box { + border-radius: 10px; + height: 100%; + + box-sizing: border-box; + .el-input { + width: 300px; + } .inquire { - padding: 10px; + position: relative; + height: 110px; + overflow: auto; + padding: 8px; + margin-top: 20px; + border-radius: 5px; border: 1px solid rgb(202, 201, 204); margin-bottom: 20px; - /deep/ .el-input__inner { - background-color: transparent !important; - border: 1px solid; - color: white; - } - /deep/ .el-button { - background: linear-gradient(180deg, #002992, #080472); - border: 1px solid #000000; - border-radius: 3px; - color: white; - } - /deep/.el-form-item__label { - color: white; + .el-form-item { + margin: 5px; } } .table_box { + height: 470px; padding: 10px; border-radius: 5px; border: 1px solid rgb(202, 201, 204); - /deep/.el-input__inner { - background-color: transparent !important; - border: 1px solid; - color: white; - } - /deep/.el-pagination__total { - color: white; - } - /deep/.el-pagination__jump { - color: white; - } - /deep/.el-pager li.active { - color: #1890ff; - } - /deep/.el-pager li { - color: white; - background: transparent; - } - /deep/.el-pager li { - color: white; - } - /deep/.btn-prev { - background: transparent; - } - /deep/.btn-next { - background: transparent; - } + /*淇敼table 琛ㄤ綋鐨勮儗鏅鑹插拰鏂囧瓧棰滆壊*/ /deep/ .el-table { background-color: transparent; @@ -226,7 +1166,7 @@ .el-table__body-wrapper::-webkit-scrollbar { width: 5px; /*婊氬姩鏉″搴�*/ - height: 10px; + height: 5px; /*婊氬姩鏉¢珮搴�*/ } /*瀹氫箟婊氬姩鏉¤建閬� 鍐呴槾褰�+鍦嗚*/ @@ -244,6 +1184,79 @@ } } } + .el-dialog { + .el-form-item { + margin-bottom: 20px; + // width: 48%; + /deep/.el-form-item__error { + width: 300px; + } + .isNewUser { + display: inline-block; + width: 75px; + margin-left: 5px; + img { + width: 1em; + } + } + .el-cascader, + .el-select { + width: 300px; + } + } + } + /deep/.el-form-item__label { + color: white; + } + /deep/.el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/ .el-dialog { + background: #303030; + } + /deep/.el-range-editor.is-active, + .el-range-editor.is-active:hover, + .el-select .el-input.is-focus .el-input__inner { + border: 1px solid; + } + /deep/.el-dialog__title { + color: white; + } + /deep/ .el-dialog__body { + padding: 10px 0 0 0; + } + .pagination_box { + margin-top: 20px; + /deep/.el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/.el-pagination__total { + color: white; + } + /deep/.el-pagination__jump { + color: white; + } + /deep/.el-pager li.active { + color: #1890ff; + } + /deep/.el-pager li { + color: white; + background: transparent; + } + /deep/.el-pager li { + color: white; + } + /deep/.btn-prev { + background: transparent; + } + /deep/.btn-next { + background: transparent; + } + } } </style> <style> diff --git a/src/views/userManage/authorityManage.vue b/src/views/userManage/authorityManage.vue index 6e8a4b0..aa44fc5 100644 --- a/src/views/userManage/authorityManage.vue +++ b/src/views/userManage/authorityManage.vue @@ -2,7 +2,7 @@ <div class="power_box"> <My-bread :list="[ - `${$t('userManage.userManage')}`, + `${$t('operatManage.operatManage')}`, `${$t('userManage.authorityManage')}`, ]" ></My-bread> @@ -634,6 +634,25 @@ background: #ededed; } } + /deep/ .el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/ .el-dialog { + background: #303030; + } + /deep/.el-range-editor.is-active, + .el-range-editor.is-active:hover, + .el-select .el-input.is-focus .el-input__inner { + border: 1px solid; + } + /deep/.el-dialog__title { + color: white; + } + /deep/.el-form-item__label { + color: white; + } } </style> <style> diff --git a/src/views/userManage/orgManage.vue b/src/views/userManage/orgManage.vue index 6001f9c..3b0e144 100644 --- a/src/views/userManage/orgManage.vue +++ b/src/views/userManage/orgManage.vue @@ -1,6 +1,11 @@ <template> <div class="menuSettings_box"> - <My-bread :list="['绯荤粺绠$悊', '鍗曚綅绠$悊']"></My-bread> + <My-bread + :list="[ + `${$t('operatManage.operatManage')}`, + `${$t('operatManage.organizationManage')}`, + ]" + ></My-bread> <el-divider /> <div class="left_Tree"> <el-card class="el-card-define"> @@ -45,58 +50,93 @@ <div class="right_menu"> <el-card class="el-card-define"> <el-breadcrumb separator="/"> - <el-breadcrumb-item :to="{ path: '/' }">璇︾粏淇℃伅</el-breadcrumb-item> + <el-breadcrumb-item :to="{ path: '/' }">{{ + $t('dataManage.dictionaryManageObj.particulars') + }}</el-breadcrumb-item> </el-breadcrumb> <el-divider /> <div class="form_box"> <el-form :model="itemdetail" ref="itemdetail" :rules="rules"> - <el-form-item label="鍚嶇О" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.name')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.name" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="绠�绉�" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.abbreviation')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.sname" autocomplete="off" ></el-input> </el-form-item> - <el-form-item label="缂栫爜" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.unitCode')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.code" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鏈烘瀯浠g爜" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.organizationCode')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.uncode" autocomplete="off" ></el-input> </el-form-item> - <el-form-item label="鍦板潃" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.cmpanyAddress')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.addr" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鑱旂郴鏂瑰紡" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.continformation')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.contact" autocomplete="off" ></el-input> </el-form-item> - <el-form-item label="浼犵湡" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.fax')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.fax" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鐢靛瓙閭欢" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.EMail')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.email" autocomplete="off" ></el-input> </el-form-item> - <el-form-item label="閭斂缂栫爜" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.postalCode')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.post" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="缃戠珯鍦板潃" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.WebsiteAddress')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.website" autocomplete="off" ></el-input> </el-form-item> - <el-form-item label="澶囨敞" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.remarks')" + :label-width="formLabelWidth" + > <el-input v-model="itemdetail.bak" autocomplete="off"></el-input> </el-form-item> <div class="btnBox" v-if="menuStatus.update"> @@ -104,13 +144,13 @@ class="el-button-sure" type="primary" @click="updDep('itemdetail')" - >淇濆瓨</el-button + >{{ $t('common.submit') }}</el-button > <el-button class="el-button-sure" type="primary" @click="reset('itemdetail')" - >鍙栨秷</el-button + >{{ $t('common.cancel') }}</el-button > </div> </el-form> @@ -120,54 +160,88 @@ <el-dialog width="30%" top="5vh" - title="鏂板瀛愮洰褰�" + :title="$t('common.append')" :visible.sync="dialogFormVisible" > <el-form :model="ruleForm" ref="ruleForm" :rules="rules"> - <el-form-item prop="name" label="鍚嶇О" :label-width="formLabelWidth"> + <el-form-item + prop="name" + :label="$t('userManage.orgManageObj.name')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.name" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="绠�绉�" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.abbreviation')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.sname" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="缂栫爜" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.unitCode')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.code" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鏈烘瀯浠g爜" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.organizationCode')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.uncode" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鍦板潃" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.cmpanyAddress')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.addr" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鑱旂郴鏂瑰紡" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.continformation')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.contact" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="浼犵湡" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.fax')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.fax" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="鐢靛瓙閭欢" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.EMail')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.email" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="閭斂缂栫爜" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.postalCode')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.post" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="缃戠珯鍦板潃" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.WebsiteAddress')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.website" autocomplete="off"></el-input> </el-form-item> - <el-form-item label="澶囨敞" :label-width="formLabelWidth"> + <el-form-item + :label="$t('userManage.orgManageObj.remarks')" + :label-width="formLabelWidth" + > <el-input v-model="ruleForm.bak" autocomplete="off"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> - <el-button class="el-button-sure" @click="resetForm('ruleForm')" - >鍙栨秷</el-button - > + <el-button class="el-button-sure" @click="resetForm('ruleForm')">{{ + $t('common.cancel') + }}</el-button> <el-button class="el-button-remove" type="primary" @click="submitForm('ruleForm')" v-loading.fullscreen.lock="fullscreenLoading" - >鎻愪氦</el-button + >{{ $t('common.submit') }}</el-button > </div> </el-dialog> diff --git a/src/views/userManage/resourceManage.vue b/src/views/userManage/resourceManage.vue index 8a328b3..e0d833b 100644 --- a/src/views/userManage/resourceManage.vue +++ b/src/views/userManage/resourceManage.vue @@ -2,7 +2,7 @@ <div class="power_box"> <My-bread :list="[ - `${$t('userManage.userManage')}`, + `${$t('operatManage.operatManage')}`, `${$t('userManage.resManage')}`, ]" ></My-bread> @@ -982,6 +982,28 @@ background: #ededed; } } + /deep/.el-form-item__label { + color: white; + } + /deep/.el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/ .el-dialog { + background: #303030; + } + /deep/.el-range-editor.is-active, + .el-range-editor.is-active:hover, + .el-select .el-input.is-focus .el-input__inner { + border: 1px solid; + } + /deep/.el-dialog__title { + color: white; + } + /deep/ .el-dialog__body { + padding: 10px 0 0 0; + } } </style> <style > diff --git a/src/views/userManage/roleManage.vue b/src/views/userManage/roleManage.vue index 19718b1..760cc30 100644 --- a/src/views/userManage/roleManage.vue +++ b/src/views/userManage/roleManage.vue @@ -2,7 +2,7 @@ <div class="logLog_box"> <My-bread :list="[ - `${$t('userManage.userManage')}`, + `${$t('operatManage.operatManage')}`, `${$t('userManage.roleManage')}`, ]" ></My-bread> @@ -638,9 +638,9 @@ left: 37%; width: 400px; height: 600px; - background: white; + background: #303030; border: 1px solid #000; - color: white; + color: black; .treeBox { height: 550px; overflow: auto; @@ -823,5 +823,33 @@ background: #ededed; } } + /deep/.el-form-item__label { + color: white; + } + /deep/.el-input__inner { + background-color: transparent !important; + border: 1px solid; + color: white; + } + /deep/ .el-dialog { + background: #303030; + } + /deep/.el-range-editor.is-active, + .el-range-editor.is-active:hover, + .el-select .el-input.is-focus .el-input__inner { + border: 1px solid; + } + /deep/.el-dialog__title { + color: white; + } + /deep/ .el-dialog__body { + padding: 10px 0 0 0; + } + /deep/ .el-radio { + color: white; + } + /deep/.el-radio__input.is-checked + .el-radio__label { + color: #1890ff; + } } </style> -- Gitblit v1.9.3