| | |
| | | v-model="fuzzySearch"
|
| | | size="small"
|
| | | class="input-with-select"
|
| | | @keyup.enter.native="getOperationLog(1)"
|
| | | >
|
| | | <el-button
|
| | | <span
|
| | | class="icon iconfont icon_clear"
|
| | | @click="clearSearch"
|
| | | slot="append"
|
| | | v-if="fuzzySearch"
|
| | | >
|
| | | 
|
| | | </span>
|
| | | <span
|
| | | class="icon iconfont icon_search"
|
| | | @click="getOperationLog(1)"
|
| | | slot="append"
|
| | | v-else
|
| | | >
|
| | | 
|
| | | </span>
|
| | |
|
| | | <!-- <el-button
|
| | | slot="append"
|
| | | icon="el-icon-search"
|
| | | @click="getOperationLog(1)"
|
| | | ></el-button>
|
| | | ></el-button> -->
|
| | | </el-input>
|
| | | </div>
|
| | | </div>
|
| | |
| | | >
|
| | | <el-option label="全部" :value="''"> </el-option>
|
| | | <el-option
|
| | | v-for="item in moduleOptions"
|
| | | :key="item.proc_name"
|
| | | v-for="(item, i) in moduleOptions"
|
| | | :key="i"
|
| | | :label="item.proc_name"
|
| | | :value="item.proc_name"
|
| | | >
|
| | |
| | | >
|
| | | <!-- :disabled="gongnengOptions.length==0" -->
|
| | | <el-option
|
| | | v-for="item in gongnengOptions"
|
| | | :key="item.name"
|
| | | v-for="(item, i) in gongnengOptions"
|
| | | :key="i"
|
| | | :label="item.name"
|
| | | :value="item.name"
|
| | | >
|
| | |
| | | @change="getOperationLog(1)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in resultOptions"
|
| | | :key="item.value"
|
| | | v-for="(item, i) in resultOptions"
|
| | | :key="i"
|
| | | :label="item.label"
|
| | | :value="item.value"
|
| | | >
|
| | |
| | | :data="tableData"
|
| | | :header-cell-style="{ background: '#f8f8f8', color: '#222222' }"
|
| | | style="width: 100%"
|
| | | border
|
| | | >
|
| | | <template slot="empty">
|
| | | <img :src="png" class="empty_img" alt="" />
|
| | | </template>
|
| | | <el-table-column :align="'center'" label="序号" type="index" width="50">
|
| | | </el-table-column>
|
| | | <el-table-column
|
| | |
| | | import { queryOperationLog, getOperations, getModules } from "@/api/log";
|
| | |
|
| | | export default {
|
| | | name: "operationLog",
|
| | | data() {
|
| | | return {
|
| | | png: "",
|
| | | loading: false,
|
| | | loadingText: "",
|
| | | input3: "",
|
| | |
| | | },
|
| | | getOptions() {
|
| | | getModules().then((res) => {
|
| | | const indexArr = [];
|
| | | res.data.forEach((item, index) => {
|
| | | if (item.proc_name == "") {
|
| | | indexArr.push(index);
|
| | | }
|
| | | });
|
| | | if (indexArr.length != 0) {
|
| | | indexArr.forEach((i) => {
|
| | | res.data.splice(i);
|
| | | });
|
| | | }
|
| | | this.moduleOptions = res.data;
|
| | | console.log(this.moduleOptions);
|
| | | });
|
| | | },
|
| | | choseRange(item, i) {
|
| | |
| | | }).then((res) => {
|
| | | this.tableData = res.data.logs;
|
| | | this.total = res.data.total;
|
| | | this.png = require("../../../../public/images/syslog/没数据.png");
|
| | | });
|
| | | },
|
| | | getTimeStr(date) {
|
| | |
| | | : new Date(new Date().setHours(0, 0, 0, 0));
|
| | | this.timeStart = this.getTimeStr(preDay);
|
| | | },
|
| | | clearSearch() {
|
| | | this.fuzzySearch = "";
|
| | | this.getOperationLog(1);
|
| | | },
|
| | | },
|
| | | };
|
| | | </script>
|
| | | <style lang="scss">
|
| | | .op-log {
|
| | | margin: 0 auto;
|
| | | padding: 10px 8px 10px 5px;
|
| | | background-color: rgba(248, 248, 248, 1);
|
| | | padding: 0px 8px 10px 5px;
|
| | | border-top: 1px solid #e1e0e6;
|
| | | background-color: rgba(242, 242, 247, 1);
|
| | | width: 100%;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | overflow: auto;
|
| | | .top {
|
| | | height: 100px;
|
| | | height: 132px;
|
| | | background: #fff;
|
| | | border-radius: 5px;
|
| | | .first {
|
| | | display: flex;
|
| | | justify-content: space-between;
|
| | | align-items: center;
|
| | | height: 45px;
|
| | | padding: 0 20px;
|
| | | padding: 20px 20px 0 20px;
|
| | | .time-option {
|
| | | display: flex;
|
| | | justify-content: space-between;
|
| | |
| | | .title {
|
| | | margin-right: 10px;
|
| | | min-width: fit-content;
|
| | | font-size: 14px;
|
| | | font-weight: bold;
|
| | | font-size: 12px;
|
| | | }
|
| | | .opts {
|
| | | display: flex;
|
| | | justify-content: space-between;
|
| | | .opt {
|
| | | box-sizing: border-box;
|
| | | border: 2px solid #efeff6;
|
| | | min-width: fit-content;
|
| | | width: 50px;
|
| | | height: 32px;
|
| | | width: 100px;
|
| | | height: 36px;
|
| | | padding: 0 15px;
|
| | | border-radius: 4px;
|
| | | cursor: pointer;
|
| | | margin-right: 10px;
|
| | | margin-right: 2px;
|
| | | line-height: 32px;
|
| | | font-size: 14px;
|
| | | font-size: 12px;
|
| | | color: #333;
|
| | | }
|
| | | .opt:hover {
|
| | | background-color: rgba(61, 104, 225, 1);
|
| | | color: #fff;
|
| | | border-color: #4e94ff;
|
| | | }
|
| | | .opt-active {
|
| | | color: #fff;
|
| | | background-color: rgba(61, 104, 225, 1);
|
| | | background-color: #4e94ff;
|
| | | border-color: #4e94ff;
|
| | | }
|
| | | }
|
| | | }
|
| | | .search {
|
| | | width: 280px;
|
| | | height: 36px;
|
| | | display: flex;
|
| | | align-items: center;
|
| | |
|
| | | .icon_clear:hover {
|
| | | color: #4e94ff;
|
| | | }
|
| | |
|
| | | .input-with-select {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | |
|
| | | input {
|
| | | height: 100%;
|
| | | border-radius: 18px 0 0 18px;
|
| | | border: 2px solid #f2f2f7;
|
| | | border-right: none;
|
| | |
|
| | | &:focus,
|
| | | &:focus + .el-input-group__append {
|
| | | border-color: #409eff;
|
| | | }
|
| | | }
|
| | |
|
| | | .el-input-group__append {
|
| | | transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
|
| | | background-color: #fff;
|
| | | border: 2px solid #f2f2f7;
|
| | | border-radius: 0 18px 18px 0;
|
| | | border-left: none;
|
| | | }
|
| | | }
|
| | |
|
| | | span {
|
| | | cursor: pointer;
|
| | | color: rgb(47, 45, 61);
|
| | | font-weight: 700;
|
| | | font-size: 19px;
|
| | | }
|
| | | }
|
| | | }
|
| | | .second {
|
| | | display: flex;
|
| | | margin: 10px 0;
|
| | | margin: 15px 0 20px 0;
|
| | | padding: 0 20px;
|
| | | .bar {
|
| | | display: flex;
|
| | | align-items: baseline;
|
| | | width: fit-content;
|
| | | margin-right: 20px;
|
| | | margin-right: 30px;
|
| | | min-width: 120px;
|
| | |
|
| | | .el-select {
|
| | | width: 200px;
|
| | | height: 36px;
|
| | |
|
| | | .el-input {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | |
|
| | | input {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | border: 2px solid #f2f2f7;
|
| | | border-radius: 20px;
|
| | | }
|
| | | }
|
| | | }
|
| | | .name {
|
| | | margin-right: 5px;
|
| | | margin-right: 15px;
|
| | | min-width: fit-content;
|
| | | font-size: 14px;
|
| | | font-weight: bold;
|
| | | font-size: 12px;
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | border-radius: 5px;
|
| | | padding: 12px;
|
| | | background-color: white;
|
| | | .empty_img {
|
| | | margin: 80px auto;
|
| | | width: 164px;
|
| | | }
|
| | | .tableBox {
|
| | | border: none;
|
| | | &::before,
|
| | | &::after {
|
| | | display: none;
|
| | | }
|
| | | tr {
|
| | | td:first-child {
|
| | | border-radius: 4px 0 0 4px;
|
| | | }
|
| | | td:last-child {
|
| | | border-radius: 0 4px 4px 0;
|
| | | }
|
| | | &.current-row td {
|
| | | background-color: #4e94ff !important;
|
| | | color: #fff;
|
| | | }
|
| | | &:hover td {
|
| | | background-color: rgb(242, 242, 247);
|
| | | }
|
| | | }
|
| | | th {
|
| | | padding: 0 !important;
|
| | | height: 40px;
|
| | | line-height: 40px;
|
| | | border-color: #fff !important;
|
| | | border-right: 2px solid #fff;
|
| | | border-radius: 4px;
|
| | | font-size: 12px;
|
| | | background: #f2f2f7;
|
| | | }
|
| | | td {
|
| | | padding: 0 !important;
|
| | | height: 34px;
|
| | | line-height: 34px;
|
| | | border: none;
|
| | | font-size: 12px;
|
| | | }
|
| | | }
|
| | | }
|