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/views/maintenance/tokentool.vue | 803 ++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 512 insertions(+), 291 deletions(-) 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> -- Gitblit v1.9.3