ZZJ
2021-11-10 def6650f036e07d3d6225d4f977cf2eba56ad653
src/pages/syslog/views/eventPushLog.vue
@@ -24,11 +24,18 @@
            size="small"
            class="input-with-select"
          >
            <el-button
            <span
              class="icon iconfont"
              @click="getOperationLog(1)"
              slot="append"
            >
              &#xe714;
            </span>
            <!-- <el-button
              slot="append"
              icon="el-icon-search"
              @click="getOperationLog(1)"
            ></el-button>
            ></el-button> -->
          </el-input>
        </div>
      </div>
@@ -57,18 +64,20 @@
    <div class="table">
      <el-table
        class="tableBox"
        @cell-click="clickFaults"
        ref="multipleTable"
        :cell-style="styleFunc"
        highlight-current-row
        :data="tableData"
        :header-cell-style="{ background: '#f8f8f8', color: '#222222' }"
        style="width: 100%"
        v-if="!showSubTable"
      >
        <el-table-column :align="'center'" label="序号" type="index" width="50">
        </el-table-column>
        <el-table-column
          :align="'center'"
          sortable
          prop="add_time"
          label="状态"
        ></el-table-column>
@@ -101,7 +110,53 @@
          min-width="100px"
          label="失败总量"
        ></el-table-column>
      </el-table>
      <div class="back" v-if="showSubTable" @click="showSubTable = false">
        <span class="icon iconfont">&#xe680;</span>
        <span class="title">事件推送日志</span>
      </div>
      <el-table
        class="tableBox"
        ref="multipleTable"
        :cell-style="styleFunc"
        highlight-current-row
        :data="subTableData"
        :header-cell-style="{ background: '#f8f8f8', color: '#222222' }"
        style="width: 100%"
        v-if="showSubTable"
      >
        <el-table-column :align="'center'" label="序号" type="index" width="50">
        </el-table-column>
        <el-table-column
          :align="'center'"
          sortable
          prop="add_time"
          label="推送时间"
        ></el-table-column>
        <el-table-column
          sortable
          :align="'center'"
          prop="userName"
          label="推送状态"
        ></el-table-column>
        <el-table-column
          :align="'center'"
          sortable
          prop="module"
          label="详细信息"
        ></el-table-column>
        <el-table-column
          :align="'center'"
          prop="procName"
          label="再次推送时间"
        ></el-table-column>
        <el-table-column
          :align="'center'"
          sortable
          prop="result"
          label="再次推送状态"
        ></el-table-column>
      </el-table>
    </div>
@@ -121,15 +176,19 @@
<script>
import { deleteDate } from "@/api/system";
import { pad0 } from "@/api/utils";
import {  } from "@/api/log";
import {} from "@/api/log";
export default {
  data() {
    return {
      loading: false,
      loadingText: "",
      input3: "",
      tableData: [],
      showSubTable: false,
      tableData: [
        { msg: 2, userName: "车辆识别" },
        { userName: "人脸识别", msg: 4 },
      ],
      subTableData: [],
      dateArr: ["今日", "近三天", "近七天", "近一个月", "近六个月"],
      levelOptions: [],
      hostNameOptions: [],
@@ -166,6 +225,12 @@
    this.getOptions();
  },
  methods: {
    styleFunc({ row, column, rowIndex, columnIndex }) {
      if (columnIndex == 6) {
        return { cursor: "pointer" };
      }
      return {};
    },
    handleSizeChange(val) {
      this.pageSize = val;
      // this.getOperationLog();
@@ -187,6 +252,9 @@
      getModules().then((res) => {
        this.levelOptions = res.data;
      });
    },
    clickFaults(row, column, cell, event) {
      this.showSubTable = true;
    },
    choseRange(item, i) {
      switch (item) {
@@ -212,8 +280,8 @@
      this.activeDateChoise = i;
    },
    getOperationLog(typ) {
      if (typ==1) {
        this.page=1
      if (typ == 1) {
        this.page = 1;
      }
      // queryOperationLog({
      //   timeStart: this.timeStart,
@@ -249,21 +317,23 @@
<style lang="scss">
.push-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;
@@ -271,51 +341,106 @@
        .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;
        .input-with-select {
          width: 100%;
          height: 100%;
          input {
            height: 100%;
            border-radius: 18px 0 0 18px;
            border: 2px solid #f2f2f7;
            border-right: none;
            // &: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;
        }
      }
    }
@@ -325,6 +450,20 @@
    border-radius: 5px;
    padding: 12px;
    background-color: white;
    .back {
      display: flex;
      align-items: center;
      .icon {
        cursor: pointer;
        margin: 0 5px;
        font-size: 18px;
      }
      .title {
        cursor: pointer;
        line-height: 30px;
        font-size: 14px;
      }
    }
    .tableBox {
      th {
        padding: 0 !important;