From bd6d4e1c5cefef5355afe5f84e09eeb23da94ffd Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期五, 18 十一月 2022 12:28:31 +0800
Subject: [PATCH] 1

---
 src/views/maintenance/operationLog.vue |  383 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 228 insertions(+), 155 deletions(-)

diff --git a/src/views/maintenance/operationLog.vue b/src/views/maintenance/operationLog.vue
index 9348fb8..c0bb9ec 100644
--- a/src/views/maintenance/operationLog.vue
+++ b/src/views/maintenance/operationLog.vue
@@ -8,64 +8,152 @@
     ></My-bread>
     <el-divider />
     <div class="inquire">
-    <div class="herder_box">
-      {{$t('operatManage.operationLogObj.queryRegion')}}
-    </div>
-      <el-form ref="formData1" :model="form" :inline="true">
-        <el-form-item :label="$t('operatManage.operationLogObj.resourceName')" prop="name">
-          <el-input v-model="form.name" :placeholder="$t('operatManage.operationLogObj.pleaseInput')" />
+      <div class="herder_box">
+        {{ $t("operatManage.operationLogObj.queryRegion") }}
+      </div>
+      <el-form ref="formData3" :model="form" :inline="true">
+        <el-form-item
+          :label="$t('operatManage.operationLogObj.username')"
+          prop="uname"
+        >
+          <el-input
+            v-model="form.uname"
+            :placeholder="$t('operatManage.operationLogObj.pleaseInput')"
+          />
         </el-form-item>
 
-        <el-form-item :label="$t('operatManage.operationLogObj.operationType')" prop="region">
-          <el-select v-model="form.region" :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-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('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">{{$t('operatManage.operationLogObj.empty')}}</el-button>
+          <el-button @click="onSubmit" icon="el-icon-search">{{
+            $t("operatManage.operationLogObj.inquire")
+          }}</el-button>
+          <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')" type="index" width="80"> </el-table-column>
+        <el-table-column
+          :label="$t('operatManage.operationLogObj.num')"
+          type="index"
+          width="80"
+        >
+        </el-table-column>
         <!-- <el-table-column prop="Accessnumber" label="璁块棶缂栧彿" /> -->
-        <el-table-column prop="name" :label="$t('operatManage.operationLogObj.resourceName')" />
-        <el-table-column prop="operatingsystem" :label="$t('operatManage.operationLogObj.operationType')" />
+        <el-table-column
+          prop="modular1"
+          :label="$t('operatManage.operationLogObj.operationModule1')"
+        />
+        <el-table-column
+          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 prop="browser" :label="$t('operatManage.operationLogObj.username')" />
-        <el-table-column prop="operatinginformation" :label="$t('operatManage.operationLogObj.systematicName')" />
-        <el-table-column prop="ip" label="IP" />
+        <el-table-column
+          prop="clazz"
+          :label="$t('operatManage.operationLogObj.className')"
+        />
+        <el-table-column
+          :formatter="formatType"
+          prop="type"
+          :label="$t('operatManage.operationLogObj.operationType')"
+        />
+        <el-table-column
+          prop="uname"
+          :label="$t('operatManage.operationLogObj.username')"
+        />
+        <el-table-column
+          prop="ip"
+          :label="$t('operatManage.operationLogObj.IP')"
+        />
 
-        <el-table-column prop="date" :label="$t('operatManage.operationLogObj.operatingTime')" />
+        <el-table-column
+          prop="optime"
+          :formatter="formatData"
+          :label="$t('operatManage.operationLogObj.operatingTime')"
+        />
+        <el-table-column
+          prop="bak"
+          :label="$t('operatManage.operationLogObj.bak')"
+        />
+
         <!-- <el-table-column fixed="right" label="鎿嶄綔" width="100">
           <template #default>
-         
+
             <el-button type="primary" size="small">鍒犻櫎</el-button>
           </template>
         </el-table-column> -->
@@ -74,11 +162,11 @@
         <el-pagination
           @size-change="handleSizeChange"
           @current-change="handleCurrentChange"
-          :current-page="currentPage4"
+          :current-page="listData.pageIndex"
           :page-sizes="[10, 20, 30, 40]"
-          :page-size="10"
+          :page-size="listData.pageSize"
           layout="total, sizes, prev, pager, next, jumper"
-          :total="9"
+          :total="count"
         >
         </el-pagination>
       </div>
@@ -88,7 +176,7 @@
 
 <script>
 import MyBread from "../../components/MyBread.vue";
-
+import { operateSelectByPageAndCount } from "../../api/api";
 export default {
   //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
   components: {
@@ -98,126 +186,108 @@
   data() {
     return {
       currentPage4: 1,
-      form: {
-        name: "",
-        region: "",
-        jurisdiction: "",
+      form: {},
+      tableData: [],
+      listData: {
+        pageIndex: 1,
+        pageSize: 10,
       },
-      tableData: [
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "chrome",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "IE11",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "chrome",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "chrome",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "chrome",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "IE11",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "chrome",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "chrome",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-        {
-          date: "2022-08-05",
-          name: "admin",
-          Accessnumber: "1",
-          loginaddress: "鍖椾含甯�",
-          browser: "IE11",
-          operatingsystem: "windows10",
-          state: "鎴愬姛",
-          operatinginformation: "鐧诲綍鎴愬姛",
-          ip: "221.182.31.12",
-        },
-      ],
+      count: 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);
+    },
+    //鏍煎紡鍖栫被鍒�
+    formatType(row, column) {
+      let data;
+      switch (row[column.property]) {
+        case 0:
+          data = "鍏跺畠";
+          break;
+        case 1:
+          data = "鏌ョ湅";
+          break;
+        case 2:
+          data = "鏂板";
+          break;
+        case 3:
+          data = "淇敼";
+          break;
+        case 4:
+          data = "鍒犻櫎";
+          break;
+        case 5:
+          data = "涓婁紶";
+          break;
+        case 6:
+          data = "涓嬭浇";
+          break;
+      }
+      return data;
+    },
     handleSizeChange(val) {
-      console.log(`姣忛〉 ${val} 鏉);
+      this.listData.pageSize = val;
+      this.getList();
     },
     handleCurrentChange(val) {
-      console.log(`褰撳墠椤�: ${val}`);
+      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);
+     
+      if (data.code != 200) {
+        return this.$message.error("鍒楄〃璋冪敤澶辫触");
+      }
+      this.tableData = data.result;
+      this.count = data.count;
     },
   },
-  created() {},
+  created() {
+    this.getList();
+  },
 };
 </script>
 <style lang="less" scoped>
@@ -228,6 +298,7 @@
   height: 100%;
   padding: 10px;
   box-sizing: border-box;
+
   .inquire {
     padding: 10px;
     margin-top: 20px;
@@ -235,7 +306,7 @@
     border-radius: 5px;
     border: 1px solid rgb(202, 201, 204);
     margin-bottom: 20px;
-    .herder_box{
+    .herder_box {
       padding: 10px;
       border-bottom: 1px solid #ccc;
       margin-bottom: 20px;
@@ -247,6 +318,8 @@
     background: #fff;
     border-radius: 5px;
     border: 1px solid rgb(202, 201, 204);
+    overflow: auto;
+    height: 70%;
   }
   .text-center {
     text-align: center;

--
Gitblit v1.9.3