From 1b352f5f7952dd12e3e7173cda515315458a0853 Mon Sep 17 00:00:00 2001 From: lxl <lixuliang_hd@126.com> Date: 星期三, 12 十月 2022 11:02:45 +0800 Subject: [PATCH] 1 --- src/api/api.js | 22 src/views/maintenance/eventlogManage.vue | 141 ++- src/assets/lang/zh.js | 76 +- src/views/maintenance/tokentool.vue | 803 ++++++++++++++++--------- src/views/maintenance/blackwhiteList.vue | 196 ++++-- src/views/maintenance/operationLog.vue | 132 ++- src/assets/lang/en.js | 75 +- src/views/userManage/resourceManage.vue | 299 ++++++++- src/views/maintenance/logLog.vue | 115 ++- 9 files changed, 1,246 insertions(+), 613 deletions(-) diff --git a/src/api/api.js b/src/api/api.js index bf869b5..8506e53 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -143,6 +143,19 @@ export function select_Res_ByPageAndCount(params) { return request.get('/res/selectByPageAndCount', { params: params }); } +//璧勬簮鍒楄〃娣诲姞 +export function insertRes(params) { + return request.post('/res/insertRes', params); +} +//璧勬簮鍒楄〃淇敼 +export function updateRes(params) { + return request.post('/res/updateRes', params); +} +//璧勬簮鍒楄〃鍒犻櫎 +export function deleteRess(params) { + return request.get('/res/deleteRess', { params: params }); +} + //鑾峰彇鍏挜鐢ㄤ簬鍔犲瘑 export function getPublicKey(params) { //璇锋眰鍦板潃 @@ -209,6 +222,11 @@ } // 璇锋眰鐢ㄦ埛绠$悊鏁版嵁 -export function queryPageUser(params) { - return request.get('/user/selectByPageAndCount', { params: params }); +export function queryPageUser(pageIndex, pageSize) { + return request.get( + '/user/selectByPageAndCount?pageIndex=' + + pageIndex + + '&pageSize=' + + pageSize + ); } diff --git a/src/assets/lang/en.js b/src/assets/lang/en.js index 65ef71e..44cbc70 100644 --- a/src/assets/lang/en.js +++ b/src/assets/lang/en.js @@ -202,48 +202,45 @@ requestUser: 'requestUser', tokenInfo: 'tokenInfo', whiteListStatus: 'whiteListStatus', + PageView: 'PageView', + description: 'description', + creator: 'creator', + creationTime: 'creationTime', + update: 'update', + UpdateTime: 'UpdateTime', }, tokentool: 'Token Tool', tokentoolObj: { - first: 'Service List', - second: 'Token management', - serviceid: 'Resource ID', - serviceName: 'Service name', - excelTemplate: 'Excel Template', - uploadExcel: 'Upload Excel', - serviceToken: 'Token generation place', - pleaseInput: 'After applying for a token, you can copy it here', - copy: 'Copy', - tokenName: 'Token Name', - tokenStatus: 'Token Status', - tokenAll: 'All', - tokeNormal: 'Normal', - tokenInvalid: 'Invalid', - tokenRenewal: 'Renewal', - serialnumber: 'Serial Number', - applysystem: 'Apply to use the system', - applicantIP: 'Applicant IP', - applicationtime: 'Application time', - applytime: 'Apply for use time (s)', - tokenstring: 'Token string', - serviceAddress: 'Service address', - porstServiceAddress: 'Post proxy service address', - sourcesystem: 'sourcesystem', - pubicnot: 'Public or not', - suffixID: 'Suffix ID', - goonlinenot: 'Go online or not', - primaryKey: 'Primary key', - applyToken: 'Apply for Token', + tokenId: 'Resource id', + tokenQuery: 'Token', + tokenStatus: 'Token Type', + whole: 'All', + normal: 'Normal', + invalid: 'Invalid', + index: 'Index', + token: 'Token', + duration: 'Usage time', + expire: 'Expiration time', + type: 'Type', + ip: 'IP address', + createUser: 'Creator ID', + createTime: 'Creation Time', + updateUser: 'Updater ID', + updateTime: 'Update Time', operation: 'Operation', - resourcetoken: 'Resource ID of the token', - tokeninformation: 'Token information', - autorenew: 'Auto renew', + renewal: 'Renewal', + addToken: 'New Token Information', + editToken: 'Modify token information', + temporary: 'Temporary', + fixed: 'Fixed', }, operationLogObj: { queryRegion: 'QueryRegion', resourceName: 'resourceName', operationType: 'operationType', - operatingTime: 'operatingTime', + startTime: 'start time', + endTime: 'end time', + operatingTime: 'Operating Time', inquire: 'inquire', empty: 'empty', num: 'num', @@ -255,10 +252,19 @@ optionDate: 'optionDate', selectTime: 'selectTime', operationModule: 'operation ndule', + operationModule1: 'Primary module', + operationModule2: 'Secondary module', url: 'url', className: 'class name', category: 'category', bak: 'bak', + check: 'check', + added: 'added', + modification: 'modification', + delete: 'delete', + uploading: 'uploading', + download: 'download', + otherOne: 'other one', }, }, synthesis: { @@ -330,6 +336,9 @@ username: 'Username', applicationProgram: 'Application Program', describe: 'Describe', + login: 'login', + checkout: 'checkout', + logout: 'log out', }, themaic: { name: 'Themaic Map', diff --git a/src/assets/lang/zh.js b/src/assets/lang/zh.js index daae6e2..b3acd41 100644 --- a/src/assets/lang/zh.js +++ b/src/assets/lang/zh.js @@ -203,48 +203,45 @@ requestUser: '鐢宠浜�', tokenInfo: 'token淇℃伅', whiteListStatus: '鐧藉悕鍗曠姸鎬�', + PageView: '璁块棶娆℃暟', + description: '鎻忚堪', + creator: '鍒涘缓浜�', + creationTime: '鍒涘缓鏃堕棿', + update: '鏇存柊浜�', + UpdateTime: '鏇存柊鏃堕棿', }, tokentool: 'Token宸ュ叿', tokentoolObj: { - first: '鏈嶅姟鍒楄〃', - second: 'Token绠$悊', - serviceid: '璧勬簮ID', - serviceName: '鏈嶅姟鍚嶇О', - excelTemplate: 'Excel妯℃澘', - uploadExcel: '涓婁紶Excel', - serviceToken: 'Token 鐢熸垚澶�', - pleaseInput: '鐢宠Token鍚庢澶勫彲澶嶅埗', - copy: '澶嶅埗', - tokenName: 'Token鏌ヨ', - tokenStatus: 'Token鐘舵��', - tokenAll: '鍏ㄩ儴', - tokeNormal: '姝e父', - tokenInvalid: '澶辨晥', - tokenRenewal: '缁湡', - serialnumber: '搴忓彿', - applysystem: '鐢宠浣跨敤绯荤粺', - applicantIP: '鐢宠鑰匢P', - applicationtime: '鐢宠鏃堕棿', - applytime: '鐢宠浣跨敤鏃堕棿(s)', - tokenstring: 'Token涓�', - serviceAddress: '鏈嶅姟鍦板潃', - porstServiceAddress: '浠g悊鍚庢湇鍔″湴鍧�', - sourcesystem: '鏉ユ簮绯荤粺', - pubicnot: '鏄惁鍏紑', - suffixID: '鍚庣紑ID', - goonlinenot: '鏄惁涓婄嚎', - primaryKey: '涓婚敭', - applyToken: '鐢宠Token', + tokenId: '璧勬簮ID', + tokenQuery: 'Token ', + tokenStatus: 'Token 绫诲瀷', + whole: '鍏ㄩ儴', + normal: '姝e父', + invalid: '澶辨晥', + index: '搴忓彿', + token: '浠ょ墝', + duration: '浣跨敤鏃堕棿', + expire: '澶辨晥鏃堕棿', + type: '绫诲瀷', + ip: 'IP鍦板潃', + createUser: '鍒涘缓浜篒D', + createTime: '鍒涘缓鏃堕棿', + updateUser: '鏇存柊浜篒D', + updateTime: '鏇存柊鏃堕棿', operation: '鎿嶄綔', - resourcetoken: 'Token鎵�灞炶祫婧怚D', - tokeninformation: 'Token淇℃伅', - autorenew: '鑷姩缁害', + renewal: '缁湡', + addToken: '鏂板 Token 淇℃伅', + editToken: '淇敼 Token 淇℃伅', + temporary: '涓存椂', + fixed: '鍥哄畾', }, operationLogObj: { queryRegion: '鏌ヨ鍖�', resourceName: '璧勬簮鍚嶇О', operationType: '鎿嶄綔绫诲瀷', operatingTime: '鎿嶄綔鏃堕棿', + startTime: '寮�濮嬫椂闂�', + endTime: '缁撴潫鏃堕棿', inquire: '鏌ヨ', empty: '娓呯┖', num: '搴忓彿', @@ -253,13 +250,21 @@ IP: ' IP', pleaseInput: '璇疯緭鍏�', pleaseSelect: '璇烽�夋嫨', - optionDate: '閫夋嫨鏃ユ湡', + optionDate: '閫夋嫨鏃ユ湡鍜屾椂闂�', selectTime: '閫夋嫨鏃堕棿', - operationModule: '鎿嶄綔妯″潡', + operationModule1: '涓�绾фā鍧�', + operationModule2: '浜岀骇妯″潡', url: '鎿嶄綔缃戝潃', className: '绫诲悕', category: '绫诲埆', bak: '澶囨敞', + check: '鏌ョ湅', + added: '鏂板', + modification: '淇敼', + delete: '鍒犻櫎', + uploading: '涓婁紶', + download: '涓嬭浇', + otherOne: '鍏跺畠', }, }, synthesis: { @@ -331,6 +336,9 @@ username: '鐢ㄦ埛鍚�', applicationProgram: '搴旂敤绋嬪簭', describe: '鎻忚堪', + login: '鐧诲綍', + checkout: '鏍¢獙', + logout: '鐧诲嚭', }, themaic: { name: '涓撻鍦板浘', diff --git a/src/views/maintenance/blackwhiteList.vue b/src/views/maintenance/blackwhiteList.vue index c646894..05d4183 100644 --- a/src/views/maintenance/blackwhiteList.vue +++ b/src/views/maintenance/blackwhiteList.vue @@ -81,7 +81,7 @@ </el-form> </div> <div class="table_box"> - <el-table :data="tableData" stripe style="width: 100%" height="99%"> + <el-table :data="BTableData" stripe style="width: 100%" height="85%"> <el-table-column align="center" type="index" @@ -89,56 +89,45 @@ width="70px" /> <el-table-column - align="center" - prop="serviceName" - :label="$t('operatManage.BWL.serviceName')" + prop="ip" + :label="$t('operatManage.BWL.whiteListIP')" /> <el-table-column - align="center" - prop="accessSourceSystem" - :label="$t('operatManage.BWL.accessSourceSystem')" + prop="visit" + :label="$t('operatManage.BWL.PageView')" /> <el-table-column - align="center" - prop="IPRequest" - :label="$t('operatManage.BWL.IPRequest')" + prop="descr" + :label="$t('operatManage.BWL.description')" /> <el-table-column - align="center" - prop="servicesRequestUrl" - :label="$t('operatManage.BWL.servicesRequestUrl')" - /> - - <el-table-column - align="center" - prop="resourceIDRequest" - :label="$t('operatManage.BWL.resourceIDRequest')" + prop="createUser" + :label="$t('operatManage.BWL.creator')" /> <el-table-column - align="center" - prop="serviceSystemRequest" - :label="$t('operatManage.BWL.serviceSystemRequest')" + :formatter="formatData" + prop="createTime" + :label="$t('operatManage.BWL.creationTime')" /> <el-table-column - align="center" - prop="blackListStatus" - :label="$t('operatManage.BWL.blackListStatus')" + prop="updateUser" + :label="$t('operatManage.BWL.update')" /> <el-table-column - align="center" - prop="operate" - :label="$t('operatManage.BWL.operate')" + :formatter="formatData" + prop="updateTime" + :label="$t('operatManage.BWL.UpdateTime')" /> </el-table> <div style="margin-top: 40px" class="pagination_box"> <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="currentPage" + @size-change="BhandleSizeChange" + @current-change="BhandleCurrentChange" + :current-page="BListData.pageIndex" :page-sizes="[10, 20, 30, 40]" - :page-size="10" + :page-size="BListData.pageSize" layout="total, sizes, prev, pager, next, jumper" - :total="0" + :total="Bcount" > </el-pagination> </div> @@ -186,7 +175,7 @@ </el-form> </div> <div class="table_box"> - <el-table :data="tableData" stripe style="width: 100%" height="99%"> + <el-table :data="WTableData" stripe style="width: 100%" height="85%"> <el-table-column align="center" type="index" @@ -194,45 +183,45 @@ width="70px" /> <el-table-column - align="center" - prop="whiteListIP" + prop="ip" :label="$t('operatManage.BWL.whiteListIP')" /> <el-table-column - align="center" - prop="effectiveDate" - :label="$t('operatManage.BWL.effectiveDate')" + prop="visit" + :label="$t('operatManage.BWL.PageView')" /> <el-table-column - align="center" - prop="requestUser" - :label="$t('operatManage.BWL.requestUser')" + prop="descr" + :label="$t('operatManage.BWL.description')" /> <el-table-column - align="center" - prop="tokenInfo" - :label="$t('operatManage.BWL.tokenInfo')" + prop="createUser" + :label="$t('operatManage.BWL.creator')" /> <el-table-column - align="center" - prop="whiteListStatus" - :label="$t('operatManage.BWL.whiteListStatus')" + :formatter="formatData" + prop="createTime" + :label="$t('operatManage.BWL.creationTime')" /> <el-table-column - align="center" - prop="operate" - :label="$t('operatManage.BWL.operate')" + prop="updateUser" + :label="$t('operatManage.BWL.update')" + /> + <el-table-column + :formatter="formatData" + prop="updateTime" + :label="$t('operatManage.BWL.UpdateTime')" /> </el-table> <div style="margin-top: 40px" class="pagination_box"> <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="currentPage" + @size-change="WhandleSizeChange" + @current-change="WhandleCurrentChange" + :current-page="WListData.pageIndex" :page-sizes="[10, 20, 30, 40]" - :page-size="10" + :page-size="WListData.pageSize" layout="total, sizes, prev, pager, next, jumper" - :total="0" + :total="Wcount" > </el-pagination> </div></div @@ -243,7 +232,7 @@ <script> import MyBread from "../../components/MyBread.vue"; - +import { blacklistSelectByPageAndCount } from "../../api/api"; export default { //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� components: { @@ -261,18 +250,73 @@ unit: "", interceptionNumber: "", }, - tableData: [], + BTableData: [], + WTableData: [], + BListData: { + pageIndex: 1, + pageSize: 10, + type: 1, + }, + WListData: { + pageIndex: 1, + pageSize: 10, + type: 2, + }, + Wcount: 0, + Bcount: 0, }; }, methods: { + //鏍煎紡鍖栨椂闂� + add0(m) { + return m < 10 ? "0" + m : m; + }, + //鏍煎紡鍖栨椂闂� + format(shijianchuo) { + //shijianchuo鏄暣鏁帮紝鍚﹀垯瑕乸arseInt杞崲 + var time = new Date(shijianchuo); + var y = time.getFullYear(); + var m = time.getMonth() + 1; + var d = time.getDate(); + var h = time.getHours(); + var mm = time.getMinutes(); + var s = time.getSeconds(); + return ( + y + "-" + this.add0(m) + "-" + this.add0(d) + // " " + + // this.add0(h) + + // ":" + + // this.add0(mm) + + // ":" + + // this.add0(s) + ); + }, + //鏍煎紡鍖栧垪琛� + formatData(row, column) { + let data = row[column.property]; + if (data == null) { + return data; + } + return this.format(data); + }, handleClick(tab, event) { console.log(tab, event); }, - handleSizeChange(val) { - console.log(`姣忛〉 ${val} 鏉); + WhandleSizeChange(val) { + this.WListData.pageSize = val; + this.getList(); }, - handleCurrentChange(val) { - console.log(`褰撳墠椤�: ${val}`); + WhandleCurrentChange(val) { + this.WListData.pageIndex = val; + this.getList(); + }, + BhandleSizeChange(val) { + this.BListData.pageSize = val; + this.getList(); + }, + BhandleCurrentChange(val) { + this.BListData.pageIndex = val; + this.getList(); }, onSubmit() { console.log("submit!"); @@ -280,8 +324,29 @@ resetForm(formName) { this.$refs[formName].resetFields(); }, + async WGetList() { + const data = await blacklistSelectByPageAndCount(this.WListData); + + if (data.code != 200) { + return this.$message.error("鍒楄〃璋冪敤澶辫触"); + } + this.WTableData = data.result; + this.Wcount = data.count; + }, + async BGetList() { + const data = await blacklistSelectByPageAndCount(this.BListData); + console.log(data); + if (data.code != 200) { + return this.$message.error("鍒楄〃璋冪敤澶辫触"); + } + this.BTableData = data.result; + this.Bcount = data.count; + }, }, - created() {}, + created() { + this.BGetList(); + this.WGetList(); + }, }; </script> <style lang="less" scoped> @@ -308,10 +373,15 @@ background: #fff; border-radius: 5px; border: 1px solid rgb(202, 201, 204); + overflow: auto; + height: 70%; } .text-center { text-align: center; } + .el-tab-pane { + height: 82vh; + } } </style> \ No newline at end of file diff --git a/src/views/maintenance/eventlogManage.vue b/src/views/maintenance/eventlogManage.vue index aaeca4e..cbb6347 100644 --- a/src/views/maintenance/eventlogManage.vue +++ b/src/views/maintenance/eventlogManage.vue @@ -8,73 +8,93 @@ ></My-bread> <el-divider /> <div class="inquire"> - <el-form ref="ruleForm" :model="form" :inline="true"> - <el-form-item :label="$t('operatManage.ELM.username')" prop="username"> + <el-form ref="formData2" :model="form" :inline="true"> + <el-form-item + :label="$t('operatManage.operationLogObj.username')" + prop="uname" + > <el-input - v-model="form.username" - :placeholder="$t('operatManage.ELM.usernameInfo')" + v-model="form.uname" + :placeholder="$t('operatManage.operationLogObj.pleaseInput')" /> </el-form-item> + <el-form-item - :label="$t('operatManage.ELM.ownedSystem')" - prop="ownedSystem" + :label="$t('operatManage.operationLogObj.operationType')" + prop="type" > <el-select - v-model="form.ownedSystem" - :placeholder="$t('operatManage.ELM.please')" + clearable + v-model="form.type" + :placeholder="$t('operatManage.operationLogObj.pleaseSelect')" > - <el-option :label="$t('operatManage.ELM.all')" value="all" /> - <el-option :label="$t('operatManage.ELM.one')" value="one" /> + <el-option + :label="$t('operatManage.operationLogObj.check')" + value="1" + /> + <el-option + :label="$t('operatManage.operationLogObj.added')" + value="2" + /> + <el-option + :label="$t('operatManage.operationLogObj.modification')" + value="3" + /> + <el-option + :label="$t('operatManage.operationLogObj.delete')" + value="4" + /> + <el-option + :label="$t('operatManage.operationLogObj.uploading')" + value="5" + /> + <el-option + :label="$t('operatManage.operationLogObj.download')" + value="6" + /> + </el-select> </el-form-item> <el-form-item - :label="$t('operatManage.ELM.operationType')" - prop="operationType" + prop="start" + :label="$t('operatManage.operationLogObj.startTime')" > - <el-select - v-model="form.operationType" - :placeholder="$t('operatManage.ELM.please')" - > - <el-option :label="$t('operatManage.ELM.all')" value="all" /> - <el-option :label="$t('operatManage.ELM.add')" value="add" /> - <el-option :label="$t('operatManage.ELM.delete')" value="delete" /> - <el-option :label="$t('operatManage.ELM.edit')" value="edit" /> - <el-option :label="$t('operatManage.ELM.query')" value="query" /> - </el-select> - </el-form-item> - <el-form-item :label="$t('operatManage.ELM.date')" prop="date"> <el-date-picker - v-model="form.date" - type="daterange" - align="right" - unlink-panels - :range-separator="$t('operatManage.ELM.to')" - :start-placeholder="$t('operatManage.ELM.startDate')" - :end-placeholder="$t('operatManage.ELM.endDate')" + format="yyyy-MM-dd HH:mm:ss" + value-format="yyyy-MM-dd HH:mm:ss" + v-model="form.start" + style="width: 100%" + type="datetime" + :placeholder="$t('operatManage.operationLogObj.optionDate')" > </el-date-picker> </el-form-item> - <el-form-item :label="$t('operatManage.ELM.ip')" prop="requestIp"> - <el-input v-model="form.requestIp" placeholder="璇疯緭鍏�" /> + <el-form-item + prop="end" + :label="$t('operatManage.operationLogObj.endTime')" + > + <el-date-picker + format="yyyy-MM-dd HH:mm:ss" + value-format="yyyy-MM-dd HH:mm:ss" + v-model="form.end" + style="width: 100%" + type="datetime" + :placeholder="$t('operatManage.operationLogObj.optionDate')" + > + </el-date-picker> </el-form-item> <el-form-item> - <el-button @click="onSubmit" - ><i class="el-icon-search"></i> {{ - $t("operatManage.ELM.search") - }}</el-button - > - </el-form-item> - <el-form-item> - <el-button @click="resetForm('ruleForm')" - ><i class="el-icon-delete"></i> {{ - $t("operatManage.ELM.reset") - }}</el-button - > + <el-button @click="onSubmit" icon="el-icon-search">{{ + $t("operatManage.operationLogObj.inquire") + }}</el-button> + <el-button @click="onEmpty('formData2')" icon="el-icon-delete">{{ + $t("operatManage.operationLogObj.empty") + }}</el-button> </el-form-item> </el-form> </div> <div class="table_box"> - <el-table :data="tableData" stripe style="width: 100%" height="99%"> + <el-table :data="tableData" stripe style="width: 100%" height="85%"> <el-table-column align="center" type="index" @@ -83,7 +103,7 @@ /> <el-table-column align="center" - prop="userid" + prop="uname" :label="$t('operatManage.ELM.username')" /> <el-table-column @@ -91,7 +111,7 @@ prop="ip" :label="$t('operatManage.ELM.ip')" /> - + <el-table-column align="center" prop="resid" @@ -104,7 +124,7 @@ :label="$t('operatManage.ELM.date')" /> <el-table-column - :formatter="formatType" + :formatter="formatType" align="center" prop="type" :label="$t('operatManage.ELM.operationType')" @@ -138,13 +158,7 @@ data() { return { currentPage: 1, - form: { - username: "", - ownedSystem: "", - requestIp: "", - operationType: "", - date: "", - }, + form: {}, tableData: [], listData: { pageIndex: 1, @@ -154,7 +168,7 @@ }; }, methods: { - //鏍煎紡鍖栨椂闂� + //鏍煎紡鍖栨椂闂� add0(m) { return m < 10 ? "0" + m : m; }, @@ -223,7 +237,15 @@ this.getList(); }, onSubmit() { - console.log("submit!"); + this.listData = { ...this.listData, ...this.form }; + // console.log(this.listData) + this.getList(); + }, + onEmpty(formData1) { + this.$refs[formData1].resetFields(); //閲嶇疆琛ㄥ崟鏁版嵁 + // this.form = {} + this.form.start = null; + this.form.end = null; }, resetForm(formName) { this.$refs[formName].resetFields(); @@ -268,7 +290,8 @@ } } .table_box { - height: 65%; + overflow: auto; + height: 70%; padding: 10px; background: #fff; border-radius: 5px; diff --git a/src/views/maintenance/logLog.vue b/src/views/maintenance/logLog.vue index ca69d92..f19fe1d 100644 --- a/src/views/maintenance/logLog.vue +++ b/src/views/maintenance/logLog.vue @@ -12,59 +12,87 @@ {{ $t("operatManage.operationLogObj.queryRegion") }} </div> <el-form ref="formData1" :model="form" :inline="true"> - <!-- 鐢ㄦ埛鍚� --> - <el-form-item :label="$t('common.username')" prop="name"> + <el-form-item + :label="$t('operatManage.operationLogObj.username')" + prop="uname" + > <el-input - style="width: 300px" - v-model="form.name" - :placeholder="$t('common.pleaseInput')" + v-model="form.uname" + :placeholder="$t('operatManage.operationLogObj.pleaseInput')" /> </el-form-item> - <!-- 鎵�灞炵郴缁� --> - <el-form-item :label="$t('loglog.systematic')" prop="region"> - <el-select v-model="form.region" :placeholder="$t('common.choose')"> - <el-option label="Zone one" value="shanghai" /> - <el-option label="Zone two" value="beijing" /> + + <el-form-item + :label="$t('operatManage.operationLogObj.operationType')" + prop="type" + > + <el-select + clearable + v-model="form.type" + :placeholder="$t('operatManage.operationLogObj.pleaseSelect')" + > + <el-option + :label="$t('loglog.login')" + value="1" + /> + <el-option + :label="$t('loglog.checkout')" + value="2" + /> + <el-option + :label="$t('loglog.logout')" + value="3" + /> + </el-select> </el-form-item> - <!-- 鎿嶄綔鏃堕棿 --> - <el-form-item :label="$t('loglog.operationtime')"> - <el-col :span="11"> - <el-date-picker - type="date" - :placeholder="$t('common.selectdate')" - v-model="form.date1" - style="width: 100%" - ></el-date-picker> - </el-col> - <el-col class="line text-center" :span="2">-</el-col> - <el-col :span="11"> - <el-date-picker - type="date" - :placeholder="$t('common.selectdate')" - v-model="form.date2" - style="width: 100%" - ></el-date-picker> - </el-col> + <el-form-item + prop="start" + :label="$t('operatManage.operationLogObj.startTime')" + > + <el-date-picker + format="yyyy-MM-dd HH:mm:ss" + value-format="yyyy-MM-dd HH:mm:ss" + v-model="form.start" + style="width: 100%" + type="datetime" + :placeholder="$t('operatManage.operationLogObj.optionDate')" + > + </el-date-picker> </el-form-item> - <!-- 鏌ヨ 娓呯┖ --> + <el-form-item + prop="end" + :label="$t('operatManage.operationLogObj.endTime')" + > + <el-date-picker + format="yyyy-MM-dd HH:mm:ss" + value-format="yyyy-MM-dd HH:mm:ss" + v-model="form.end" + style="width: 100%" + type="datetime" + :placeholder="$t('operatManage.operationLogObj.optionDate')" + > + </el-date-picker> + </el-form-item> <el-form-item> - <el-button @click="onSubmit">{{ $t("common.iquery") }}</el-button> - <el-button @click="onEmpty('formData1')">{{ - $t("common.empty") + <el-button @click="onSubmit" icon="el-icon-search">{{ + $t("operatManage.operationLogObj.inquire") + }}</el-button> + <el-button @click="onEmpty('formData1')" icon="el-icon-delete">{{ + $t("operatManage.operationLogObj.empty") }}</el-button> </el-form-item> </el-form> </div> <!-- 琛ㄦ牸鏄剧ず --> <div class="table_box"> - <el-table :data="tableData" stripe style="width: 100%"> + <el-table :data="tableData" stripe style="width: 100%" height="85%"> <el-table-column width="150" type="index" :label="$t('loglog.serialnumber')" /> - <el-table-column prop="userid" :label="$t('loglog.username')" /> + <el-table-column prop="uname" :label="$t('loglog.username')" /> <el-table-column prop="appid" :label="$t('loglog.applicationProgram')" @@ -118,9 +146,7 @@ return { currentPage4: 1, form: { - name: "", - region: "", - jurisdiction: "", + }, tableData: [], listData: { @@ -212,16 +238,21 @@ this.getList(); }, onSubmit() { - console.log("submit!"); + this.listData = { ...this.listData, ...this.form }; + // console.log(this.listData) + this.getList(); }, onEmpty(formData1) { this.$refs[formData1].resetFields(); //閲嶇疆琛ㄥ崟鏁版嵁 + // this.form = {}; + this.form.start =null + this.form.end =null }, async getList() { const data = await loginSelectByPageAndCount(this.listData); - + if (data.code != 200) { - return this.$message.error("鍒楄〃璋冪敤澶辫触"); + return this.$message.error("鍒楄〃璋冪敤澶辫触"); } this.tableData = data.result; this.count = data.count; @@ -259,6 +290,8 @@ background: #fff; border-radius: 5px; border: 1px solid rgb(202, 201, 204); + overflow: auto; + height: 70%; } .text-center { text-align: center; diff --git a/src/views/maintenance/operationLog.vue b/src/views/maintenance/operationLog.vue index fd1a4b1..c0bb9ec 100644 --- a/src/views/maintenance/operationLog.vue +++ b/src/views/maintenance/operationLog.vue @@ -11,62 +11,96 @@ <div class="herder_box"> {{ $t("operatManage.operationLogObj.queryRegion") }} </div> - <el-form ref="formData1" :model="form" :inline="true"> + <el-form ref="formData3" :model="form" :inline="true"> <el-form-item - :label="$t('operatManage.operationLogObj.resourceName')" - prop="name" + :label="$t('operatManage.operationLogObj.username')" + prop="uname" > <el-input - v-model="form.name" + v-model="form.uname" :placeholder="$t('operatManage.operationLogObj.pleaseInput')" /> </el-form-item> <el-form-item :label="$t('operatManage.operationLogObj.operationType')" - prop="region" + prop="type" > <el-select - v-model="form.region" + clearable + v-model="form.type" :placeholder="$t('operatManage.operationLogObj.pleaseSelect')" > - <el-option label="鍏ㄩ儴" value="shanghai" /> - <el-option label="娴忚" value="beijing" /> - <el-option label="涓嬭浇" value="shanghai" /> - <el-option label="璋冪敤" value="beijing" /> - <el-option label="鏀惰棌" value="shanghai" /> + <el-option + :label="$t('operatManage.operationLogObj.check')" + value="1" + /> + <el-option + :label="$t('operatManage.operationLogObj.added')" + value="2" + /> + <el-option + :label="$t('operatManage.operationLogObj.modification')" + value="3" + /> + <el-option + :label="$t('operatManage.operationLogObj.delete')" + value="4" + /> + <el-option + :label="$t('operatManage.operationLogObj.uploading')" + value="5" + /> + <el-option + :label="$t('operatManage.operationLogObj.download')" + value="6" + /> + <el-option + :label="$t('operatManage.operationLogObj.otherOne')" + value="0" + /> </el-select> </el-form-item> - <el-form-item :label="$t('operatManage.operationLogObj.operatingTime')"> - <el-col :span="11"> - <el-date-picker - type="date" - :placeholder="$t('operatManage.operationLogObj.optionDate')" - v-model="form.date1" - style="width: 100%" - ></el-date-picker> - </el-col> - <el-col class="line text-center" :span="2">-</el-col> - <el-col :span="11"> - <el-time-picker - :placeholder="$t('operatManage.operationLogObj.selectTime')" - v-model="form.date2" - style="width: 100%" - ></el-time-picker> - </el-col> + <el-form-item + prop="start" + :label="$t('operatManage.operationLogObj.startTime')" + > + <el-date-picker + format="yyyy-MM-dd HH:mm:ss" + value-format="yyyy-MM-dd HH:mm:ss" + v-model="form.start" + style="width: 100%" + type="datetime" + :placeholder="$t('operatManage.operationLogObj.optionDate')" + > + </el-date-picker> + </el-form-item> + <el-form-item + prop="end" + :label="$t('operatManage.operationLogObj.endTime')" + > + <el-date-picker + format="yyyy-MM-dd HH:mm:ss" + value-format="yyyy-MM-dd HH:mm:ss" + v-model="form.end" + style="width: 100%" + type="datetime" + :placeholder="$t('operatManage.operationLogObj.optionDate')" + > + </el-date-picker> </el-form-item> <el-form-item> <el-button @click="onSubmit" icon="el-icon-search">{{ $t("operatManage.operationLogObj.inquire") }}</el-button> - <el-button icon="el-icon-delete">{{ + <el-button @click="onEmpty('formData3')" icon="el-icon-delete">{{ $t("operatManage.operationLogObj.empty") }}</el-button> </el-form-item> </el-form> </div> <div class="table_box"> - <el-table :data="tableData" stripe style="width: 100%"> + <el-table :data="tableData" stripe style="width: 100%" height="85%"> <!-- <el-table-column type="selection" width="55" /> --> <el-table-column :label="$t('operatManage.operationLogObj.num')" @@ -76,31 +110,30 @@ </el-table-column> <!-- <el-table-column prop="Accessnumber" label="璁块棶缂栧彿" /> --> <el-table-column - align="center" - prop="modular" - :label="$t('operatManage.operationLogObj.operationModule')" + prop="modular1" + :label="$t('operatManage.operationLogObj.operationModule1')" /> <el-table-column - align="center" + prop="modular2" + :label="$t('operatManage.operationLogObj.operationModule2')" + /> + <el-table-column prop="url" :label="$t('operatManage.operationLogObj.url')" /> <!-- <el-table-column prop="loginaddress" label="鐧诲綍鍦扮偣" /> --> <el-table-column - align="center" prop="clazz" :label="$t('operatManage.operationLogObj.className')" /> <el-table-column - align="center" :formatter="formatType" prop="type" :label="$t('operatManage.operationLogObj.operationType')" /> <el-table-column - align="center" - prop="userid" + prop="uname" :label="$t('operatManage.operationLogObj.username')" /> <el-table-column @@ -109,13 +142,11 @@ /> <el-table-column - align="center" prop="optime" :formatter="formatData" :label="$t('operatManage.operationLogObj.operatingTime')" /> <el-table-column - align="center" prop="bak" :label="$t('operatManage.operationLogObj.bak')" /> @@ -155,11 +186,7 @@ data() { return { currentPage4: 1, - form: { - name: "", - region: "", - jurisdiction: "", - }, + form: {}, tableData: [], listData: { pageIndex: 1, @@ -237,12 +264,20 @@ this.listData.pageIndex = val; this.getList(); }, + onEmpty(formData1) { + this.$refs[formData1].resetFields(); //閲嶇疆琛ㄥ崟鏁版嵁 + // this.form = {} + this.form.start =null + this.form.end =null + }, onSubmit() { - console.log("submit!"); + this.listData = { ...this.listData, ...this.form }; + // console.log(this.listData) + this.getList(); }, async getList() { const data = await operateSelectByPageAndCount(this.listData); - console.log(data); + if (data.code != 200) { return this.$message.error("鍒楄〃璋冪敤澶辫触"); } @@ -263,6 +298,7 @@ height: 100%; padding: 10px; box-sizing: border-box; + .inquire { padding: 10px; margin-top: 20px; @@ -282,6 +318,8 @@ background: #fff; border-radius: 5px; border: 1px solid rgb(202, 201, 204); + overflow: auto; + height: 70%; } .text-center { text-align: center; diff --git a/src/views/maintenance/tokentool.vue b/src/views/maintenance/tokentool.vue index 8e8b72e..df6fea4 100644 --- a/src/views/maintenance/tokentool.vue +++ b/src/views/maintenance/tokentool.vue @@ -8,283 +8,296 @@ ></My-bread> <el-divider /> <div class="inquire"> - <el-tabs v-model="activeName" @tab-click="handleClick"> - <el-tab-pane - :label="$t('operatManage.tokentoolObj.first')" - name="first" - > - <div class="herder_box"> - {{ $t("operatManage.operationLogObj.queryRegion") }} - </div> - <el-form ref="formData1" :model="serviceform" :inline="true"> - <el-form-item - :label="$t('operatManage.tokentoolObj.serviceid')" - prop="name" - > - <el-input - style="width: 200px" - v-model="serviceform.serviceId" - :placeholder="$t('common.pleaseInput')" - /> - </el-form-item> - <el-form-item - :label="$t('operatManage.tokentoolObj.serviceName')" - prop="region" - > - <el-input - style="width: 200px" - v-model="serviceform.serviceId" - :placeholder="$t('common.pleaseInput')" - /> - </el-form-item> - <el-form-item> - <el-button size="small" @click="onSubmit">{{ - $t("operatManage.tokentoolObj.excelTemplate") - }}</el-button> - <el-button size="small" @click="onSubmit">{{ - $t("operatManage.tokentoolObj.uploadExcel") - }}</el-button> - </el-form-item> - <br /> - <el-form-item - :label="$t('operatManage.tokentoolObj.serviceToken')" - prop="region" - > - <el-input - style="width: 200px" - v-model="serviceform.serviceToken" - :disabled="true" - :title="$t('operatManage.tokentoolObj.pleaseInput')" - :placeholder="$t('operatManage.tokentoolObj.pleaseInput')" - /> - </el-form-item> - <el-form-item> - <el-button - icon="el-icon-document-copy" - size="small" - @click="oncopy" - >{{ $t("operatManage.tokentoolObj.copy") }}</el-button - > - </el-form-item> - <!-- 鏌ヨ 娓呯┖ --> - <el-form-item> - <el-button icon="el-icon-search" @click="onSubmit">{{ - $t("common.iquery") - }}</el-button> - <el-button icon="el-icon-delete" @click="onEmpty('formData1')">{{ - $t("common.empty") - }}</el-button> - </el-form-item> - </el-form> - <el-table :data="tableData" stripe style="width: 100%"> - <el-table-column - width="120" - type="index" - :label="$t('operatManage.tokentoolObj.serialnumber')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.serviceName')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.serviceAddress')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.porstServiceAddress')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.serviceid')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.sourcesystem')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.pubicnot')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.suffixID')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.goonlinenot')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.primaryKey')" - /> - <el-table-column - fixed="right" - :label="$t('operatManage.tokentoolObj.operation')" - width="300" - > - <template #default> - <!-- <el-button type="primary" size="small">淇敼</el-button> --> - - <el-button type="danger" size="small">{{ - $t("common.delete") - }}</el-button> - <el-button type="warning" size="small">{{ - $t("common.update") - }}</el-button> - <el-button type="primary" size="small">{{ - $t("operatManage.tokentoolObj.applyToken") - }}</el-button> - </template> - </el-table-column> - </el-table> - </el-tab-pane> - <el-tab-pane - :label="$t('operatManage.tokentoolObj.second')" - name="second" - > - <div class="herder_box"> - {{ $t("operatManage.operationLogObj.queryRegion") }} - </div> - - <el-form ref="formData1" :model="tokenform" :inline="true"> - <el-form-item - :label="$t('operatManage.tokentoolObj.serviceid')" - prop="name" - > - <el-input - style="width: 200px" - v-model="tokenform.tokenId" - :placeholder="$t('common.pleaseInput')" - /> - </el-form-item> - <el-form-item - :label="$t('operatManage.tokentoolObj.tokenName')" - prop="region" - > - <el-input - style="width: 200px" - v-model="tokenform.tokenName" - :placeholder="$t('common.pleaseInput')" - /> - </el-form-item> - - <el-form-item - :label="$t('operatManage.tokentoolObj.tokenStatus')" - prop="region" - > - <el-select - v-model="tokenform.region" - :placeholder="$t('common.choose')" - > - <el-option - :label="$t('operatManage.tokentoolObj.tokenAll')" - value="1" - /> - <el-option - :label="$t('operatManage.tokentoolObj.tokeNormal')" - value="2" - /> - <el-option - :label="$t('operatManage.tokentoolObj.tokenInvalid')" - value="3" - /> - </el-select> - </el-form-item> - - <!-- 鏌ヨ 娓呯┖ --> - <el-form-item> - <el-button icon="el-icon-search" @click="onSubmit">{{ - $t("common.iquery") - }}</el-button> - <el-button icon="el-icon-delete" @click="onEmpty('formData1')">{{ - $t("common.empty") - }}</el-button> - </el-form-item> - </el-form> - <el-table :data="tableData1" stripe style="width: 100%"> - <el-table-column - width="120" - type="index" - :label="$t('operatManage.tokentoolObj.serialnumber')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.serviceName')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.applysystem')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.applicantIP')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.applicationtime')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.applytime')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.tokenstring')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.resourcetoken')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.tokeninformation')" - /> - <el-table-column - prop="creationtime" - :label="$t('operatManage.tokentoolObj.tokenStatus')" - /> - <el-table-column - fixed="right" - :label="$t('operatManage.tokentoolObj.autorenew')" - > - </el-table-column> - <el-table-column - fixed="right" - :label="$t('operatManage.tokentoolObj.operation')" - width="200" - > - <template #default> - <el-button type="danger" size="small">{{ - $t("operatManage.tokentoolObj.tokenInvalid") - }}</el-button> - <el-button type="warning" size="small">{{ - $t("operatManage.tokentoolObj.tokenRenewal") - }}</el-button> - </template> - </el-table-column> - </el-table> - </el-tab-pane> - </el-tabs> - <div style="margin-top: 40px" class="pagination_box"> - <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="currentPage4" - :page-sizes="[10, 20, 30, 40]" - :page-size="10" - layout="total, sizes, prev, pager, next, jumper" - :total="9" - > - </el-pagination> + <div class="herder_box"> + {{ $t('operatManage.operationLogObj.queryRegion') }} </div> + <el-form ref="formData" :model="ruleForm" :inline="true"> + <el-form-item + :label="$t('operatManage.tokentoolObj.tokenQuery')" + prop="region" + > + <el-input + style="width: 200px" + v-model="ruleForm.name" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + + <el-form-item :label="$t('operatManage.tokentoolObj.tokenStatus')"> + <el-select + v-model="ruleForm.value" + :placeholder="$t('common.choose')" + > + <el-option + value="0" + :label="$t('operatManage.tokentoolObj.temporary')" + ></el-option> + <el-option + value="1" + :label="$t('operatManage.tokentoolObj.fixed')" + ></el-option> + </el-select> + </el-form-item> + + <!-- 鏌ヨ 娓呯┖ --> + <el-form-item> + <el-button icon="el-icon-search" @click="onSubmit">{{ + $t('common.iquery') + }}</el-button> + <el-button icon="el-icon-delete" @click="onEmpty('formData1')">{{ + $t('common.empty') + }}</el-button> + <el-button @click="InsertFormdialog = true" icon="el-icon-edit">{{ + $t('common.append') + }}</el-button> + <el-button @click="delTokenData" icon="el-icon-delete">{{ + $t('common.delete') + }}</el-button> + </el-form-item> + </el-form> </div> + <div class="table_box"> + <el-table + :data="tableData" + height="99%" + style="width: 100%" + @selection-change="handleSelectionChange" + > + <el-table-column type="selection" width="55" /> + <el-table-column + width="70" + align="center" + type="index" + :label="$t('operatManage.tokentoolObj.index')" + /> + <el-table-column + prop="token" + align="center" + :label="$t('operatManage.tokentoolObj.token')" + /> + <el-table-column + prop="duration" + align="center" + :label="$t('operatManage.tokentoolObj.duration')" + /> + <el-table-column + prop="expire" + align="center" + :label="$t('operatManage.tokentoolObj.expire')" + :formatter="formatTime" + /> + <el-table-column + prop="type" + align="center" + :label="$t('operatManage.tokentoolObj.type')" + > + <template slot-scope="scope"> + <span v-if="scope.row.type === 0">涓存椂</span> + <span v-if="scope.row.type === 1">鍥哄畾</span> + </template> + </el-table-column> + <el-table-column + prop="ip" + align="center" + :label="$t('operatManage.tokentoolObj.ip')" + /> + <el-table-column + prop="createUser" + align="center" + :label="$t('operatManage.tokentoolObj.createUser')" + /> + <el-table-column + prop="createTime" + align="center" + :label="$t('operatManage.tokentoolObj.createTime')" + :formatter="formatTime" + /> + <el-table-column + prop="updateUser" + align="center" + :label="$t('operatManage.tokentoolObj.updateUser')" + /> + <el-table-column + prop="updateTime" + align="center" + :label="$t('operatManage.tokentoolObj.updateTime')" + :formatter="formatTime" + /> + <el-table-column + fixed="right" + :label="$t('operatManage.tokentoolObj.operation')" + width="320" + align="center" + > + <template slot-scope="scope"> + <el-button type="danger" size="small">{{ + $t('operatManage.tokentoolObj.invalid') + }}</el-button> + <el-button type="warning" size="small">{{ + $t('operatManage.tokentoolObj.renewal') + }}</el-button> + <el-button + @click="handleEdit(scope.$index, scope.row)" + type="warning" + plain + size="small" + >{{ $t('common.update') }}</el-button + > + </template> + </el-table-column> + </el-table> + </div> + <div class="pagination_box"> + <el-pagination + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + :current-page="listData.pageIndex" + :page-sizes="[10, 20, 30, 40]" + :page-size="listData.pageSize" + layout="total, sizes, prev, pager, next, jumper" + :total="count" + > + </el-pagination> + </div> + <!-- 鏂板寮圭獥 --> + <el-dialog + :title="$t('operatManage.tokentoolObj.addToken')" + style="overflow: hidden" + :visible.sync="InsertFormdialog" + > + <el-form ref="formData1" :model="insertform"> + <el-form-item + :label="$t('operatManage.tokentoolObj.token')" + :label-width="formLabelWidth" + > + <el-input + v-model="insertform.token" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + <el-form-item + :label="$t('operatManage.tokentoolObj.duration')" + :label-width="formLabelWidth" + > + <el-input + v-model="insertform.duration" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + <el-form-item + :label="$t('operatManage.tokentoolObj.type')" + :label-width="formLabelWidth" + > + <el-select + v-model="insertform.type" + :placeholder="$t('common.choose')" + > + <el-option + value="0" + :label="$t('operatManage.tokentoolObj.temporary')" + ></el-option> + <el-option + value="1" + :label="$t('operatManage.tokentoolObj.fixed')" + ></el-option> + </el-select> + </el-form-item> + <el-form-item + :label="$t('operatManage.tokentoolObj.ip')" + :label-width="formLabelWidth" + > + <el-input + v-model="insertform.ip" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + </el-form> + + <div slot="footer" class="dialog-footer"> + <el-button @click="insertFromDataClose">{{ + $t('common.close') + }}</el-button> + <el-button type="primary" @click="insertFromData">{{ + $t('common.confirm') + }}</el-button> + </div> + </el-dialog> + <!-- 淇敼寮圭獥 --> + <el-dialog + :title="$t('operatManage.tokentoolObj.editToken')" + style="overflow: hidden" + :visible.sync="EditFormdialog" + > + <el-form ref="formData1" :model="insertform"> + <el-form-item + :label="$t('operatManage.tokentoolObj.token')" + :label-width="formLabelWidth" + > + <el-input + v-model="upform.token" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + <el-form-item + :label="$t('operatManage.tokentoolObj.duration')" + :label-width="formLabelWidth" + > + <el-input + v-model="upform.duration" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + <el-form-item + :label="$t('operatManage.tokentoolObj.type')" + :label-width="formLabelWidth" + > + <el-select + v-model="upform.edit" + @change="changeGame" + :placeholder="$t('common.choose')" + > + <el-option + value="0" + :label="$t('operatManage.tokentoolObj.temporary')" + ></el-option> + <el-option + value="1" + :label="$t('operatManage.tokentoolObj.fixed')" + ></el-option> + </el-select> + </el-form-item> + <el-form-item + :label="$t('operatManage.tokentoolObj.ip')" + :label-width="formLabelWidth" + > + <el-input + v-model="upform.ip" + :placeholder="$t('common.pleaseInput')" + /> + </el-form-item> + </el-form> + + <div slot="footer" class="dialog-footer"> + <el-button @click="editFromDataClose">{{ + $t('common.close') + }}</el-button> + <el-button type="primary" @click="editFromData">{{ + $t('common.confirm') + }}</el-button> + </div> + </el-dialog> </div> </template> <script> -import MyBread from "../../components/MyBread.vue"; - +import moment from 'moment'; +import MyBread from '../../components/MyBread.vue'; +import { + select_Token_ByPageAndCount, + insertToken, + updateToken, + deleteTokens, +} from '../../api/api.js'; export default { //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� components: { @@ -293,37 +306,228 @@ data() { return { - currentPage4: 1, - activeName: 'first', - serviceform: { - serviceId: "", - serviceName: "", - serviceToken: "", + formLabelWidth: '130px', + InsertFormdialog: false, + EditFormdialog: false, + upform: {}, + ruleForm: {}, + insertform: {}, + tableData: [], + multipleSelection: [], + count: 0, + listData: { + name: null, + type: null, + pageIndex: 1, + pageSize: 10, }, - tokenform: { - tokenId: "", - tokenName: "", - tokenStatus: "" - }, - tableData: [{}], - tableData1: [{}] }; }, + created() { + this.getRoleTabelData(); + }, methods: { + async delTokenData() { + var std = []; + for (var i in this.multipleSelection) { + std.push(this.multipleSelection[i].id); + } + const data = await deleteTokens({ ids: std.toString() }); + if (data.code == 200) { + this.$message({ + message: '鍒犻櫎鎴愬姛锛�', + type: 'success', + }); + this.getRoleTabelData(); + } else { + this.$message({ + message: '鍒犻櫎澶辫触锛�', + type: 'warning', + }); + } + }, + editFromDataClose() { + this.EditFormdialog = false; + this.upform = {}; + }, + async editFromData() { + this.upform.type = parseInt(this.upform.edit); + if (this.upform.duration != null && this.upform.duration != undefined) { + var date = this.formomentTime(this.upform.createTime); + this.upform.expire = this.getEditTime(this.upform.duration, date); + } + const data = await updateToken(this.upform); + if (data.code == 200) { + this.EditFormdialog = false; + this.upform = {}; + this.$message({ + message: '淇敼鎴愬姛锛�', + type: 'success', + }); + this.getRoleTabelData(); + } else { + this.$message({ + message: '淇敼澶辫触锛�', + type: 'warning', + }); + } + }, + changeGame(id) { + this.$forceUpdate(); //鍦ㄤ笅鎷夋涓婄粦瀹歝hange浜嬩欢 鏇存柊瑙嗗浘 杩欐牱灏变笉浼氭湁瑙嗗浘鏇存柊鐨勯棶棰� + }, + handleEdit(index, row) { + this.EditFormdialog = true; + this.upform = row; + this.upform.edit = JSON.stringify(row.type); + }, + handleSelectionChange(val) { + this.multipleSelection = val; + }, + insertFromDataClose() { + this.InsertFormdialog = false; + this.insertform = {}; + }, + async insertFromData() { + if ( + this.insertform.duration != null && + this.insertform.duration != undefined + ) { + this.insertform.expire = this.getNowDate(this.insertform.duration); + } + const data = await insertToken(this.insertform); + if (data.code == 200) { + this.InsertFormdialog = false; + this.insertform = {}; + this.$message({ + message: '娣诲姞鎴愬姛锛�', + type: 'success', + }); + this.getRoleTabelData(); + } else { + this.$message({ + message: '娣诲姞澶辫触锛�', + type: 'warning', + }); + } + }, + getEditTime(res, time) { + var date = new Date(time); + date.setMinutes(date.getMinutes() + parseInt(res), date.getSeconds(), 0); + var year = date.getFullYear(); + var month = + date.getMonth() + 1 > 9 + ? date.getMonth() + 1 + : '0' + (date.getMonth() + 1); + var day = date.getDate() > 9 ? date.getDate() : '0' + date.getDate(); + // var todayDate = year + '-' + month + '-' + day + var hour = date.getHours() > 9 ? date.getHours() : '0' + date.getHours(); + var min = + date.getMinutes() > 9 ? date.getMinutes() : '0' + date.getMinutes(); + var sec = + date.getSeconds() > 9 ? date.getSeconds() : '0' + date.getSeconds(); + var todayDate = + year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + sec; + return todayDate; + }, + getNowDate(res) { + var date = new Date(); + var min = date.getMinutes(); //2. 鑾峰彇褰撳墠鍒嗛挓 + date.setMinutes(min + parseInt(res)); + var sign2 = ':'; + var year = date.getFullYear(); // 骞� + var month = date.getMonth() + 1; // 鏈� + var day = date.getDate(); // 鏃� + var hour = date.getHours(); // 鏃� + var minutes = date.getMinutes(); // 鍒� + + var seconds = date.getSeconds(); //绉� + var weekArr = [ + '鏄熸湡涓�', + '鏄熸湡浜�', + '鏄熸湡涓�', + '鏄熸湡鍥�', + '鏄熸湡浜�', + '鏄熸湡鍏�', + '鏄熸湡澶�', + ]; + var week = weekArr[date.getDay()]; + // 缁欎竴浣嶆暟鐨勬暟鎹墠闈㈠姞 鈥�0鈥� + if (month >= 1 && month <= 9) { + month = '0' + month; + } + if (day >= 0 && day <= 9) { + day = '0' + day; + } + if (hour >= 0 && hour <= 9) { + hour = '0' + hour; + } + if (minutes >= 0 && minutes <= 9) { + minutes = '0' + minutes; + } + if (seconds >= 0 && seconds <= 9) { + seconds = '0' + seconds; + } + return ( + year + + '-' + + month + + '-' + + day + + ' ' + + hour + + sign2 + + minutes + + sign2 + + seconds + ); + }, + async getRoleTabelData() { + if (this.listData.tab == '') { + delete this.listData.tab; + } + this.listData.name = this.ruleForm.name; + this.listData.type = this.ruleForm.value; + if (this.ruleForm.value != null) { + this.listData.type = parseInt(this.ruleForm.value); + } + debugger; + const data = await select_Token_ByPageAndCount(this.listData); + if (data.code != 200) { + this.$message.error('鍒楄〃璋冪敤澶辫触'); + } + this.tableData = data.result; + this.count = data.count; + }, handleSizeChange(val) { - console.log(`姣忛〉 ${val} 鏉); + this.listData.pageSize = val; + this.getRoleTabelData(); }, handleCurrentChange(val) { - console.log(`褰撳墠椤�: ${val}`); + this.listData.pageIndex = val; + this.getRoleTabelData(); }, onSubmit() { - console.log("submit!"); + this.listData.pageIndex = 1; + this.listData.pageSize = 10; + this.getRoleTabelData(); }, onEmpty(formData1) { - this.$refs[formData1].resetFields()//閲嶇疆琛ㄥ崟鏁版嵁 - } + this.ruleForm = {}; + this.listData.pageIndex = 1; + this.listData.pageSize = 10; + this.getRoleTabelData(); + }, + formatTime(row, column) { + let date = row[column.property]; + return this.formomentTime(date); + }, + formomentTime(date) { + if (date === undefined || date === null) { + return; + } + return moment(parseInt(date)).format('YYYY-MM-DD HH:mm:ss'); + }, }, - created() { }, }; </script> <style scoped> @@ -340,19 +544,36 @@ height: 100%; padding: 10px; box-sizing: border-box; + .el-input { + width: 745px; + } + .el-select { + width: 745px; + } .inquire { padding: 10px; margin-top: 20px; background: #fff; border-radius: 5px; border: 1px solid rgb(202, 201, 204); - margin-bottom: 20px; + margin-bottom: 10px; .herder_box { padding: 10px; border-bottom: 1px solid #ccc; margin-bottom: 20px; font-size: 14px; } + .el-select { + width: 200px; + } + } + .table_box { + padding: 10px; + background: #fff; + height: 68%; + border-radius: 5px; + border: 1px solid rgb(202, 201, 204); + margin-bottom: 10px; } } </style> diff --git a/src/views/userManage/resourceManage.vue b/src/views/userManage/resourceManage.vue index b7a3294..6554c01 100644 --- a/src/views/userManage/resourceManage.vue +++ b/src/views/userManage/resourceManage.vue @@ -73,13 +73,13 @@ > </el-table-column> <el-table-column - prop="depid" + prop="depName" align="center" :label="$t('userManage.resManageObj.depid')" > </el-table-column> <el-table-column - prop="dirid" + prop="dirName" align="center" :label="$t('userManage.resManageObj.dirid')" > @@ -175,39 +175,64 @@ </div> <div class="contentBox"> <p> - <label> {{ $t('userManage.userInfoObj.name') }}:</label> + <label> {{ $t('userManage.resManageObj.name') }}:</label> <label class="boxlabel">{{ itemdetail.name }}</label> </p> <el-divider></el-divider> <p> <p> - <label> {{ $t('userManage.userInfoObj.tag') }}:</label> - <label class="boxlabel">{{ itemdetail.tag }}</label> + <label> {{ $t('userManage.resManageObj.server') }}:</label> + <label class="boxlabel">{{ itemdetail.server }}</label> </p> </p> <el-divider></el-divider> <p> - <label> {{ $t('userManage.userInfoObj.createUser') }}:</label> - <label class="boxlabel">{{ itemdetail.createUser }}</label> + <label> {{ $t('userManage.resManageObj.source') }}:</label> + <label class="boxlabel">{{ itemdetail.source }}</label> </p> <el-divider></el-divider> <p> - <label> {{ $t('userManage.userInfoObj.createTime') }}:</label> + <label> {{ $t('userManage.resManageObj.depid') }}:</label> + <label class="boxlabel">{{ itemdetail.depName }}</label> + </p> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.dirid') }}:</label> + <label class="boxlabel">{{ itemdetail.dirName }}</label> + </p> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.descr') }}:</label> + <label class="boxlabel">{{ itemdetail.descr }}</label> + </p> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.img') }}:</label> + <label class="boxlabel">{{ itemdetail.img }}</label> + </p> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.createUser') }}:</label> + <label class="boxlabel">{{ itemdetail.createUser }}</label> + </p> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.createTime') }}:</label> <label class="boxlabel">{{ itemdetail.createTime }}</label> </p> - <el-divider></el-divider> - <p> - <label> {{ $t('userManage.userInfoObj.updateUser') }}:</label> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.updateUser') }}:</label> <label class="boxlabel">{{ itemdetail.updateUser }}</label> </p> - <el-divider></el-divider> - <p> - <label> {{ $t('userManage.userInfoObj.updateTime') }}:</label> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.updateTime') }}:</label> <label class="boxlabel">{{ itemdetail.updateTime }}</label> </p> - <el-divider></el-divider> - <p> - <label> {{ $t('userManage.userInfoObj.bak') }}:</label> + <el-divider></el-divider> + <p> + <label> {{ $t('userManage.resManageObj.bak') }}:</label> <label class="boxlabel">{{ itemdetail.bak }}</label> </p> <el-divider></el-divider> @@ -263,7 +288,7 @@ :label="$t('userManage.resManageObj.depid')" :label-width="formLabelWidth" > - <el-input v-model="insertform.depid" disabled autocomplete="off"></el-input> + <el-input v-model="insertform.depValue" disabled autocomplete="off"></el-input> <el-link :underline="false" @click="showDepTree(0)" @@ -275,10 +300,10 @@ :label="$t('userManage.resManageObj.dirid')" :label-width="formLabelWidth" > - <el-input v-model="insertform.dirid" disabled autocomplete="off"></el-input> + <el-input v-model="insertform.dirValue" disabled autocomplete="off"></el-input> <el-link :underline="false" - @click="showDepTree(0)" + @click="showDirTree(0)" style="margin-left: 10px" ><i class="el-icon-plus"></i ></el-link> @@ -289,14 +314,22 @@ > <el-input v-model="insertform.descr" autocomplete="off"></el-input> </el-form-item> - <el-form-item + <el-form-item :label="$t('userManage.resManageObj.img')" :label-width="formLabelWidth" - > - <el-input v-model="insertform.img" autocomplete="off"></el-input> + > <el-input v-model="insertform.img" disabled autocomplete="off"></el-input> + <input + name="file1" + :accept="'.jpg,.png'" + type="file" + id="imageFile" + multiple="multiple" + style="display: none" + @change="insertFile" + /> <el-link :underline="false" - + @click="getIsertFile" style="margin-left: 10px" ><i class="el-icon-plus"></i ></el-link> @@ -323,26 +356,83 @@ style="overflow: hidden" :visible.sync="EditFormdialog" :before-close="EditFromDataClose" - width="30%" > - <el-form :model="upform"> + <el-form :model="upform"> <el-form-item - :label="$t('userManage.userInfoObj.name')" + :label="$t('userManage.resManageObj.name')" :label-width="formLabelWidth" > - <el-input v-model="upform.name" ></el-input> + <el-input v-model="upform.name" autocomplete="off"></el-input> </el-form-item> <el-form-item - :label="$t('userManage.userInfoObj.tag')" + :label="$t('userManage.resManageObj.server')" :label-width="formLabelWidth" > - <el-input v-model="upform.tag" ></el-input> + <el-input v-model="upform.server" autocomplete="off"></el-input> </el-form-item> <el-form-item - :label="$t('userManage.userInfoObj.bak')" + :label="$t('userManage.resManageObj.source')" :label-width="formLabelWidth" > - <el-input v-model="upform.bak" ></el-input> + <el-input v-model="upform.source" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + :label="$t('userManage.resManageObj.depid')" + :label-width="formLabelWidth" + > + <el-input v-model="upform.depValue" disabled autocomplete="off"></el-input> + <el-link + :underline="false" + @click="showDepTree(1)" + style="margin-left: 10px" + ><i class="el-icon-plus"></i + ></el-link> + </el-form-item> + <el-form-item + :label="$t('userManage.resManageObj.dirid')" + :label-width="formLabelWidth" + > + <el-input v-model="upform.dirValue" disabled autocomplete="off"></el-input> + <el-link + :underline="false" + @click="showDirTree(1)" + style="margin-left: 10px" + ><i class="el-icon-plus"></i + ></el-link> + </el-form-item> + <el-form-item + :label="$t('userManage.resManageObj.descr')" + :label-width="formLabelWidth" + > + <el-input v-model="upform.descr" autocomplete="off"></el-input> + </el-form-item> + <el-form-item + :label="$t('userManage.resManageObj.img')" + :label-width="formLabelWidth" + > + <el-input v-model="upform.img" disabled autocomplete="off"></el-input> + <input + name="file1" + :accept="'.jpg,.png'" + type="file" + id="editimageFile" + multiple="multiple" + style="display: none" + @change="updateFile" + /> + <el-link + :underline="false" + @click="getupdateFile" + style="margin-left: 10px" + ><i class="el-icon-plus"></i + ></el-link> + </el-form-item> + <el-form-item + :label="$t('userManage.resManageObj.bak')" + :label-width="formLabelWidth" + > + <el-input v-model="upform.bak" autocomplete="off"></el-input> + </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> @@ -354,15 +444,45 @@ }}</el-button> </div> </el-dialog> + <div class="leftTree" v-if="showDirCata"> + <div class="treeBox"> + <style-dir-tree></style-dir-tree> + </div> + <div class="btnBox"> + <el-button type="primary" size="small" @click="selectDirCataName">{{ + $t('common.confirm') + }}</el-button> + <el-button type="primary" size="small" @click="showDirCata = false">{{ + $t('common.close') + }}</el-button> + </div> + </div> + <div class="leftTree" v-if="showDepCata"> + <div class="treeBox"> + <style-dep-tree></style-dep-tree> + </div> + <div class="btnBox"> + <el-button type="primary" size="small" @click="selectDepCataName">{{ + $t('common.confirm') + }}</el-button> + <el-button type="primary" size="small" @click="showDepCata = false">{{ + $t('common.close') + }}</el-button> + </div> + </div> </div> </template> <script> +import $ from 'jquery'; import moment from 'moment'; import MyBread from '../../components/MyBread.vue'; -import { select_Res_ByPageAndCount, insertAuth, updateAuth, deleteAuths } from '../../api/api.js'; +import { select_Res_ByPageAndCount, insertRes, updateRes, deleteRess } + from '../../api/api.js'; +import styleDirTree from '../datamanage/styleDirTree.vue'; +import styleDepTree from '../datamanage/styleDepTree.vue'; export default { - components: { MyBread }, + components: { MyBread, styleDirTree, styleDepTree }, data() { return { formLabelWidth: '130px', @@ -373,10 +493,16 @@ InsertFormdialog: false, showinfoBox: false, EditFormdialog: false, - insertform: {}, + showDirCata: false, + showDepCata: false, + dirFlag: null, + depFlag: null, + insertform: { + img:'' + }, tableData: [], itemdetail: {}, - upform: {}, + upform: { img:''}, multipleSelection: [], count: 0, listData: { @@ -394,12 +520,63 @@ this.getRoleTabelData(); }, methods: { + getIsertFile() { + $('#imageFile').click(); + }, + getupdateFile(){ + $('#editimageFile').click(); + }, + insertFile() { + var val = document.getElementById('imageFile').files; + if (!val || !val.length) return; + this.insertform.img = val[0].name; + }, + updateFile() { + var val = document.getElementById('editimageFile').files; + if (!val || !val.length) return; + this.upform.img = val[0].name; + }, + showDirTree(res) { + this.dirFlag = res; + this.showDirCata = true; + }, + showDepTree(res) { + this.depFlag = res; + this.showDepCata = true; + }, + selectDepCataName() { + this.showDepCata = false; + switch (this.depFlag) { + case 0: + this.insertform.depValue = this.$store.state.styleDepCateNodes.name; + this.insertform.depid = this.$store.state.styleDepCateNodes.id; + break; + case 1: + this.upform.depValue = this.$store.state.styleDepCateNodes.name; + this.upform.depid = this.$store.state.styleDepCateNodes.id; + break; + } + }, + selectDirCataName() { + this.showDirCata = false; + switch (this.dirFlag) { + case 0: + // var data = this.$store.state.styleDirCateNodes; + this.insertform.dirValue = this.$store.state.styleDirCateNodes.name; + this.insertform.dirid = this.$store.state.styleDirCateNodes.id; + break; + case 1: + this.upform.dirValue = this.$store.state.styleDirCateNodes.name; + this.upform.dirid = this.$store.state.styleDirCateNodes.id; + break; + } + }, async DelFromData() { var std = []; for (var i in this.multipleSelection) { std.push(this.multipleSelection[i].id); } - const data = await deleteAuths({ ids: std.toString() }); + const data = await deleteRess({ ids: std.toString() }); if (data.code == 200) { this.$message({ message: '鍒犻櫎鎴愬姛锛�', @@ -429,7 +606,7 @@ this.upform = {}; }, async EditFromData() { - const data = await updateAuth(this.upform); + const data = await updateRes(this.upform); if (data.code == 200) { this.EditFormdialog = false; this.upform = {}; @@ -449,10 +626,15 @@ showDetail(index, row) { this.showinfoBox = true; this.itemdetail = row; + this.itemdetail.createTime = this.formomentTime(this.itemdetail.createTime); + this.itemdetail.updateTime = this.formomentTime(this.itemdetail.updateTime); + }, handleEdit(index, row) { this.EditFormdialog = true; this.upform = row; + this.upform.depValue = row.depName; + this.upform.dirValue = row.dirName; }, closeDetial() { this.showinfoBox = false; @@ -471,7 +653,14 @@ this.insertform = {}; }, async insertFromData() { - const data = await insertAuth(this.insertform); + if (this.insertform.dirid == null || this.insertform.depid == null) { + this.$message({ + message: '璇烽�夋嫨璧勬簮鎵�灞炵殑鐩綍鎴栧崟浣�', + type: 'warning', + }); + return; + } + const data = await insertRes(this.insertform); if (data.code == 200) { this.InsertFormdialog = false; this.insertform = {}; @@ -493,6 +682,7 @@ } this.listData.name = this.ruleForm.name; const data = await select_Res_ByPageAndCount(this.listData); + console.log(data) if (data.code != 200) { this.$message.error('鍒楄〃璋冪敤澶辫触'); } @@ -526,15 +716,15 @@ padding: 10px; box-sizing: border-box; .el-input { - width: 745px; + width: 745px; } .power_quire { - margin: 10px auto; + margin: 10px auto; background: #fff; border-radius: 5px; border: 1px solid rgb(202, 201, 204); margin-bottom: 10px; - .el-form-item { + .el-form-item { margin: 5px; } .el-input { @@ -542,7 +732,7 @@ } } .table_box { - height:76%; + height: 76%; padding: 10px; background: #fff; border-radius: 5px; @@ -551,6 +741,29 @@ .pagination_box { margin-top: 20px; } + .leftTree { + position: absolute; + z-index: 10; + z-index: 9999; + top: 100px; + left: 800px; + width: 400px; + height: 600px; + background: #f0f2f5; + border: 1px solid #000; + .treeBox { + height: 550px; + overflow: auto; + /deep/ .el-tree-node__content:hover { + background-color: rgb(153, 153, 153); + } + } + .btnBox { + width: 160px; + margin: 10px auto 0; + // background-color: red; + } + } .infoBox { width: 500px; border: 1px solid #eee; -- Gitblit v1.9.3