From 5044b402981f42542eece201e1308b5c2816737a Mon Sep 17 00:00:00 2001
From: heyujie <516346543@qq.com>
Date: 星期四, 01 七月 2021 20:51:32 +0800
Subject: [PATCH] 轮询日志和朔黄按机车hao号搜索
---
src/pages/gb28181/index/App.vue | 1
src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue | 9
src/pages/cameraAccess/components/CameraInfo.vue | 1
src/pages/logCenter/views/operationLog.vue | 275 +++++++++++++---
src/pages/logCenter/views/pollingLog.vue | 618 +++++++++++++++++--------------------
src/pages/shuohuangMonitorAnalyze/components/memberManage.vue | 3
src/api/log.ts | 35 ++
7 files changed, 546 insertions(+), 396 deletions(-)
diff --git a/src/api/log.ts b/src/api/log.ts
new file mode 100644
index 0000000..603edc8
--- /dev/null
+++ b/src/api/log.ts
@@ -0,0 +1,35 @@
+import request from "@/scripts/httpRequest";
+
+
+// /data/api-v//
+
+
+export const queryOperationLog = (data: any) => {
+ return request({
+ url: "/data/api-v/log/queryOperationLog",
+ method: "post",
+ data
+ })
+}
+
+export const getOperations = (query: any) => {
+ return request({
+ url: "/data/api-v/log/operations",
+ method: "get",
+ params: query
+ })
+}
+export const getModules = (query: any) => {
+ return request({
+ url: "/data/api-v/log/modules",
+ method: "get",
+ params: query
+ })
+}
+export const queryScheduleLog = (data: any) => {
+ return request({
+ url: "/data/api-v/log/queryScheduleLog",
+ method: "post",
+ data
+ })
+}
diff --git a/src/pages/cameraAccess/components/CameraInfo.vue b/src/pages/cameraAccess/components/CameraInfo.vue
index 66c4a0d..6b829ac 100644
--- a/src/pages/cameraAccess/components/CameraInfo.vue
+++ b/src/pages/cameraAccess/components/CameraInfo.vue
@@ -174,7 +174,6 @@
</template>
<script>
import {
- checkCameraConnet,
createCamera,
updateCameraInfo,
getCameraInfo,
diff --git a/src/pages/gb28181/index/App.vue b/src/pages/gb28181/index/App.vue
index 3215255..e89e2fb 100644
--- a/src/pages/gb28181/index/App.vue
+++ b/src/pages/gb28181/index/App.vue
@@ -190,7 +190,6 @@
saveGB28181Config,
getGb28181AreaList,
newGb28181ID,
- getLocalCameraTree,
getAllSubServer,
saveGb28181CamTree
} from './api'
diff --git a/src/pages/logCenter/views/operationLog.vue b/src/pages/logCenter/views/operationLog.vue
index eebc5e2..568aa5a 100644
--- a/src/pages/logCenter/views/operationLog.vue
+++ b/src/pages/logCenter/views/operationLog.vue
@@ -6,21 +6,25 @@
<div class="title">鍛ㄦ湡锛�</div>
<div class="opts">
- <div class="opt" tabindex="1">浠婃棩</div>
- <div class="opt" tabindex="2">杩戜笁澶�</div>
- <div class="opt" tabindex="3">杩戜竷澶�</div>
- <div class="opt" tabindex="4">杩戜竴涓湀</div>
- <div class="opt" tabindex="5">杩戝叚涓湀</div>
+ <div
+ :class="activeDateChoise == i ? 'opt-active' : ''"
+ class="opt"
+ v-for="(item, i) in dateArr"
+ :key="i"
+ @click="choseRange(item, i)"
+ >
+ {{ item }}
+ </div>
</div>
</div>
<div class="search">
<el-input
placeholder="鎼滅储"
- v-model="input3"
+ v-model="fuzzySearch"
size="small"
class="input-with-select"
>
- <el-button slot="append" icon="el-icon-search"></el-button>
+ <el-button slot="append" icon="el-icon-search" @click="getOperationLog"></el-button>
</el-input>
</div>
</div>
@@ -28,42 +32,55 @@
<div class="bar">
<div class="name">鎿嶄綔妯″潡锛�</div>
- <el-select v-model="value" placeholder="璇烽�夋嫨"
-
+ <el-select
+ v-model="curModule"
+ placeholder="璇烽�夋嫨"
size="small"
+ @change="moduleChange"
>
+ <el-option
+ label="鍏ㄩ儴"
+ :value="''"
+ >
+ </el-option>
<el-option
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
+ v-for="item in moduleOptions"
+ :key="item.proc_name"
+ :label="item.proc_name"
+ :value="item.proc_name"
>
</el-option>
</el-select>
</div>
- <div class="bar">
- <div class="name">鎿嶄綔妯″潡锛�</div>
-
- <el-select v-model="value" placeholder="璇烽�夋嫨"
+ <div class="bar">
+ <div class="name">鎿嶄綔鍔熻兘锛�</div>
+ <el-select
+ v-model="gongneng"
+ placeholder="璇烽�夋嫨"
size="small"
+ @change="getOperationLog"
>
+ <!-- :disabled="gongnengOptions.length==0" -->
<el-option
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
+ v-for="item in gongnengOptions"
+ :key="item.name"
+ :label="item.name"
+ :value="item.name"
>
</el-option>
</el-select>
</div>
- <div class="bar">
- <div class="name">鎿嶄綔妯″潡锛�</div>
+ <div class="bar">
+ <div class="name">鎿嶄綔缁撴灉锛�</div>
- <el-select v-model="value" placeholder="璇烽�夋嫨"
+ <el-select
+ v-model="result"
+ placeholder="璇烽�夋嫨"
size="small"
+ @change="getOperationLog"
>
<el-option
- v-for="item in options"
+ v-for="item in resultOptions"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -73,51 +90,186 @@
</div>
</div>
</div>
- <div class="table">faefws</div>
+ <div class="table">
+ <el-table
+ class="tableBox"
+ ref="multipleTable"
+ highlight-current-row
+ :data="tableData"
+ style="width: 100%"
+ :header-cell-style="{ background: '#f8f8f8', color: '#222222' }"
+ @selection-change="handleSelectionChange"
+ >
+ <el-table-column :align="'center'" label="搴忓彿" type="index" width="50">
+ </el-table-column>
+ <el-table-column
+ :align="'center'"
+ sortable
+ min-width="98px"
+ 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-column
+ :align="'center'"
+ prop="msg"
+ min-width="100px"
+ label="璇︾粏淇℃伅"
+ ></el-table-column>
+ <el-table-column
+ :align="'center'"
+ sortable
+ prop="ip"
+ label="IP"
+ ></el-table-column>
+ </el-table>
+ </div>
</div>
</template>
<script>
import { deleteDate } from "@/api/system";
+import { queryOperationLog, getOperations, getModules } from "@/api/log";
+
+function pad0(i) {
+ if (i >= 0 && i <= 9) {
+ return "0" + i;
+ } else {
+ return i;
+ }
+}
export default {
data() {
return {
loading: false,
loadingText: "",
input3: "",
- options: [
+ tableData: [],
+ dateArr: ["浠婃棩", "杩戜笁澶�", "杩戜竷澶�", "杩戜竴涓湀", "杩戝叚涓湀"],
+ moduleOptions: [],
+ gongnengOptions: [],
+ resultOptions: [
{
- value: "閫夐」1",
- label: "榛勯噾绯�",
+ value: "",
+ label: "鍏ㄩ儴",
},
{
- value: "閫夐」2",
- label: "鍙岀毊濂�",
+ value: "鎴愬姛",
+ label: "鎴愬姛",
},
{
- value: "閫夐」3",
- label: "铓典粩鐓�",
- },
- {
- value: "閫夐」4",
- label: "榫欓』闈�",
- },
- {
- value: "閫夐」5",
- label: "鍖椾含鐑ら腑",
+ value: "澶辫触",
+ label: "澶辫触",
},
],
value: "",
+ page: 1,
+ pageSize: 15,
+ activeDateChoise: 0,
+ gongneng: "",
+ result: "",
+ curModule: "",
+ timeStart: "",
+ timeEnd: "",
+ fuzzySearch: "",
+ total:0,
};
},
- mounted() {},
-
+ mounted() {
+ this.getTimeRange(24 * 60 * 60 * 1000);
+ this.getOperationLog();
+ this.getOptions();
+ },
methods: {
- format(array) {
- return [
- this.$moment(array[0]).format("YYYY-MM-DD"),
- this.$moment(array[1]).format("YYYY-MM-DD"),
- ];
+ gongnengChange(val) {},
+ moduleChange(val) {
+ this.getOperationLog()
+ this.gongneng=""
+ getOperations({
+ module: this.curModule,
+ }).then((res) => {
+ this.gongnengOptions = res.data;
+ });
+ },
+ getOptions() {
+ getModules().then((res) => {
+ this.moduleOptions = res.data;
+ });
+ },
+ choseRange(item, i) {
+ switch (item) {
+ case "浠婃棩":
+ this.getTimeRange(24 * 60 * 60 * 1000);
+ break;
+ case "杩戜笁澶�":
+ this.getTimeRange(24 * 60 * 60 * 1000 * 3);
+ break;
+ case "杩戜竷澶�":
+ this.getTimeRange(24 * 60 * 60 * 1000 * 7);
+ break;
+ case "杩戜竴涓湀":
+ this.getTimeRange(24 * 60 * 60 * 1000 * 30);
+ break;
+ case "杩戝叚涓湀":
+ this.getTimeRange(24 * 60 * 60 * 1000 * 30 * 6);
+ break;
+ default:
+ break;
+ }
+ this.getOperationLog();
+ this.activeDateChoise = i;
+ },
+ getOperationLog(timeStart, timeEnd) {
+ const data= {
+ timeStart: this.timeStart,
+ timeEnd: this.timeEnd,
+ page: this.page,
+ pageSize: this.pageSize,
+ module: this.curModule,
+ function: this.gongneng,
+ result: this.result,
+ fuzzySearch: this.fuzzySearch,
+ }
+ queryOperationLog(data).then((res) => {
+ this.tableData = res.data.logs;
+ this.total = res.data.total
+ });
+ },
+ getTimeStr(date) {
+ var month = pad0(date.getMonth() + 1); //鏈�
+ var day = pad0(date.getDate()); //鏃�
+ var hour = pad0(date.getHours()); //鏃�
+ var minute = pad0(date.getMinutes()); //鍒�
+ var second = pad0(date.getSeconds()); //绉�
+ return `${date.getFullYear()}-${month}-${day} ${hour}:${minute}:${second}`;
+ },
+ getTimeRange(gap) {
+ var date = new Date(); //褰撳墠鏃堕棿
+ var preDay = new Date(new Date().getTime() - gap);
+ this.timeStart = this.getTimeStr(preDay)
+ this.timeEnd = this.getTimeStr(date)
},
},
};
@@ -166,7 +318,7 @@
background-color: rgba(61, 104, 225, 1);
color: #fff;
}
- .opt:focus {
+ .opt-active {
color: #fff;
background-color: rgba(61, 104, 225, 1);
}
@@ -178,25 +330,36 @@
}
}
.second {
- display: flex;
-
+ display: flex;
+ margin: 10px 0;
.bar {
display: flex;
align-items: baseline;
- background: aliceblue;
width: fit-content;
padding-left: 20px;
- .name{
+ .name {
margin-right: 5px;
}
}
}
}
.table {
- margin-top: 10px;
- background: #fff;
- height: 100%;
+ margin-top: 16px;
border-radius: 5px;
+ padding: 12px;
+ background-color: white;
+ .tableBox {
+ th {
+ padding: 0 !important;
+ height: 40px;
+ line-height: 40px;
+ }
+ td {
+ padding: 0 !important;
+ height: 34px;
+ line-height: 34px;
+ }
+ }
}
}
</style>
diff --git a/src/pages/logCenter/views/pollingLog.vue b/src/pages/logCenter/views/pollingLog.vue
index 4b0ee47..50708cb 100644
--- a/src/pages/logCenter/views/pollingLog.vue
+++ b/src/pages/logCenter/views/pollingLog.vue
@@ -1,384 +1,332 @@
<template>
- <div class="restart">
- <div class="restart-set">
- <div class="t">閲嶅惎璁剧疆</div>
+ <div class="op-log" v-loading="loading" :element-loading-text="loadingText">
+ <div class="top">
+ <div class="first">
+ <div class="time-option">
+ <div class="title">鎽勫儚鏈猴細</div>
- <div class="bar">
- <div class="name">閲嶅惎鑺傜偣</div>
- <el-button
- class="reset-btn"
- type="primary"
- size="small"
- @click="restart"
- >閲嶅惎</el-button
- >
- </div>
- </div>
-
- <div class="restart-set">
- <div class="t">瀹氭椂閲嶅惎</div>
- <div class="bar">
- <div class="name">閲嶅惎鍛ㄦ湡</div>
- <el-select
- v-model="every"
- placeholder="鍏抽棴"
- size="small"
- @change="changeEvery"
- >
- <el-option
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
+ <div class="opts">
+ <div
+ class="opt opt-active"
+ @click="openDialog"
+ >
+ 閫夋嫨鎽勫儚鏈�
+ </div>
+ </div>
+ </div>
+ <div class="search">
+ <el-input
+ placeholder="鎼滅储"
+ v-model="procName"
+ size="small"
+ class="input-with-select"
>
- </el-option>
- </el-select>
+ <el-button slot="append" icon="el-icon-search" @click="getScheduleLog"></el-button>
+ </el-input>
+ </div>
</div>
-
- <div class="bar" v-if="every == 'monthly'">
- <div class="name">閲嶅惎鏃ユ湡</div>
- <el-select
- v-model="cronValueObj.day"
- placeholder="璇烽�夋嫨"
- size="small"
- @change="updateExpression"
- >
- <el-option
- v-for="item in days"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- ></el-option>
- </el-select>
- </div>
-
- <div class="bar" v-if="every == 'weekly'">
- <div class="name">閲嶅惎鏃ユ湡</div>
- <el-select
- v-model="cronValueObj.week"
- placeholder="璇烽�夋嫨"
- size="small"
- @change="updateExpression"
- >
- <el-option label="鏄熸湡涓�" value="1"></el-option>
- <el-option label="鏄熸湡浜�" value="2"></el-option>
- <el-option label="鏄熸湡涓�" value="3"></el-option>
- <el-option label="鏄熸湡鍥�" value="4"></el-option>
- <el-option label="鏄熸湡浜�" value="5"></el-option>
- <el-option label="鏄熸湡鍏�" value="6"></el-option>
- <el-option label="鏄熸湡鏃�" value="7"></el-option>
- </el-select>
- </div>
-
- <div class="bar" v-if="every != 'close'">
- <div class="name">閲嶅惎鏃堕棿</div>
- <el-time-picker
- v-model="time"
- :picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
- value-format="HH:mm"
- format="HH:mm"
- placeholder="浠绘剰鏃堕棿鐐�"
- size="small"
- @change="updateExpression"
- ></el-time-picker>
+ <div class="second">
+ <span>鏃ユ湡鏃堕棿锛�</span>
+ <el-date-picker
+ v-model="dateRange" size="small"
+ type="datetimerange"
+ range-separator="鍒�"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ start-placeholder="寮�濮嬫棩鏈�"
+ @change="dateChange"
+ end-placeholder="缁撴潫鏃ユ湡">
+ </el-date-picker>
</div>
</div>
+ <div class="table">
+ <el-table
+ class="tableBox"
+ ref="multipleTable"
+ highlight-current-row
+ :data="tableData"
+ style="width: 100%"
+ :header-cell-style="{ background: '#f8f8f8', color: '#222222' }"
+ @selection-change="handleSelectionChange"
+ >
+ <el-table-column :align="'center'" label="搴忓彿" type="index" width="50">
+ </el-table-column>
+ <el-table-column
+ :align="'center'"
+ sortable
+ min-width="100px"
+ prop="add_time"
+ label="杞寮�濮嬫椂闂�"
+ ></el-table-column>
+ <el-table-column
+ :align="'center'"
+ sortable
+ min-width="100px"
+ prop="add_time"
+ 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>
+ </div>
- <el-button class="save-btn" type="primary" @click="save">淇濆瓨</el-button>
+ <el-dialog
+ title="閫夋嫨鎽勫儚鏈�"
+ :visible.sync="dialogVisible"
+ width="50%"
+ :before-close="handleClose">
+
+ <el-tree
+ ref="cameraTree"
+ :data="cameraTree"
+ :props="props"
+ node-key="id"
+ show-checkbox
+ check-on-click-node
+ default-expand-all
+ ></el-tree>
+
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="dialogVisible = false">鍏ㄩ儴鍙栨秷</el-button>
+ <el-button @click="dialogVisible = false">鍏ㄩ��</el-button>
+ <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="confirmCamera">纭� 瀹�</el-button>
+ </span>
+</el-dialog>
+
</div>
</template>
<script>
-import {
- rebootServer,
- getDevInfo,
- getRebootTask,
- setRebootTask,
- fileUpload,
- doUpgrade,
- deleteDate,
-} from "@/api/system";
+import { deleteDate } from "@/api/system";
+import { getLocalCameraTree } from "@/api/area";
+
+
+import { queryOperationLog, getOperations, getModules,queryScheduleLog } from "@/api/log";
+
+function pad0(i) {
+ if (i >= 0 && i <= 9) {
+ return "0" + i;
+ } else {
+ return i;
+ }
+}
export default {
data() {
return {
- time: "",
- saveBtn: false,
- timer: null,
- probeSum: 0,
- cronText: "",
- cronValueObj: {
- min: "*",
- hour: "*",
- day: "*",
- month: "*",
- week: "*",
- },
- options: [
+ loading: false,
+ loadingText: "",
+ input3: "",
+ tableData: [],
+ moduleOptions: [],
+ gongnengOptions: [],
+ dateRange: [],
+ cameraTree:[],
+ resultOptions: [
{
- value: "close",
- label: "鍏抽棴",
+ value: "",
+ label: "鍏ㄩ儴",
},
{
- value: "daily",
- label: "姣忔棩",
+ value: "鎴愬姛",
+ label: "鎴愬姛",
},
{
- value: "weekly",
- label: "姣忓懆",
- },
- {
- value: "monthly",
- label: "姣忔湀",
+ value: "澶辫触",
+ label: "澶辫触",
},
],
- every: "close",
- rebootCron: "",
+ props: {
+ label: 'name'
+ },
+ value: "",
+ page: 1,
+ pageSize: 15,
+ activeDateChoise: 0,
+ gongneng: "",
+ result: "",
+ curModule: "",
+ timeStart: "",
+ timeEnd: "",
+ fuzzySearch: "",
+ total:0,dialogVisible: false,
+ procID: "",
+ procName: "",
};
},
- computed: {
- days: () => {
- let arr = [];
- for (let i = 1; i < 32; i++) {
- arr.push({
- label: i + "鏃�",
- value: i + "",
- });
- }
- return arr;
- },
- },
- components: {},
mounted() {
- this.getRebootCron();
+ this.getTimeRange(24 * 60 * 60 * 1000);
+ this.getScheduleLog();
+ this.getOptions();
},
- beforeDestroy() {},
methods: {
- resolveExp() {
- // "鍑嗗鍙嶈В鏋�", this.expression;
- if (this.rebootCron.length) {
- let arr = this.rebootCron.split(" ");
- if (arr.length >= 5) {
- //6 浣嶄互涓婃槸鍚堟硶琛ㄨ揪寮�
- this.cronValueObj.min = arr[0];
- this.cronValueObj.hour = arr[1];
- this.cronValueObj.day = arr[2];
- this.cronValueObj.month = "*";
- this.cronValueObj.week = arr[4];
- }
-
- if (this.cronValueObj.week != "*") {
- this.every = "weekly";
- } else if (this.cronValueObj.day != "*") {
- this.every = "monthly";
- } else {
- this.every = "daily";
- }
- this.time = this.cronValueObj.hour + ":" + this.cronValueObj.min;
- } else {
- //娌℃湁浼犲叆鐨勮〃杈惧紡 鍒欒繕鍘�
- this.clearCron();
- }
+ confirmCamera(){
+ const selectedIDs= this.$refs.cameraTree.getCheckedKeys()
+ this.procID= selectedIDs.join(",")
+ this.getScheduleLog()
+ this.dialogVisible=false
},
- clearCron() {
- this.cronValueObj.min = "*";
- this.cronValueObj.hour = "*";
- this.cronValueObj.day = "*";
- this.cronValueObj.month = "*";
- this.cronValueObj.week = "*";
+ openDialog(){
+ this.dialogVisible= true
+ getLocalCameraTree({
+ cameraName:"",
+ searchType:0
+ }).then((res) => {
+ this.cameraTree =res.data
+ })
},
- getRebootCron() {
- getRebootTask().then((rsp) => {
- this.rebootCron = rsp.data;
+ gongnengChange(val) {},
+ moduleChange(val) {
+ this.getScheduleLog()
+ this.gongneng=""
+ getOperations({
+ module: this.curModule,
+ }).then((res) => {
+ this.gongnengOptions = res.data;
});
},
- reLogin() {
- this.$router.push("/");
- },
- restart() {
- this.$confirm("纭畾瑕侀噸鍚鑺傜偣鍚�?", {
- center: true,
- cancelButtonClass: "comfirm-class-cancle",
- confirmButtonClass: "comfirm-class-sure",
- }).then(() => {
- // this.loading = true;
- // this.loadingText = "鏅鸿兘璁$畻鑺傜偣姝e湪閲嶅惎锛岃鑰愬績绛夊緟..."
- rebootServer()
- .then((rsp) => {
- this.probeServer(this.reLogin);
- })
- .catch((err) => {
- if (err.status == 400) {
- // this.loading = false;
- this.$notify({
- type: "error",
- message: "閲嶅惎璁$畻鑺傜偣澶辫触",
- });
- } else {
- this.probeServer(this.reLogin);
- }
- });
+ getOptions() {
+ getModules().then((res) => {
+ this.moduleOptions = res.data;
});
},
- probeServer(cb) {
- this.probeSum++;
- let _this = this;
- if (this.probeSum > 60) {
- this.$confirm("杩炴帴鏈嶅姟鍣ㄥけ璐�, 璇峰埛鏂伴〉闈㈡垨鑱旂郴绠$悊鍛�", "澶辫触", {
- type: "error",
- cancelButtonClass: "comfirm-class-cancle",
- confirmButtonClass: "comfirm-class-sure",
- }).then(() => {
- cb();
- });
- return;
- }
- this.timer = setTimeout(() => {
- getDevInfo()
- .then(() => {
- cb();
- })
- .catch((err) => {
- _this.probeServer(cb);
- });
- }, 10000);
+ choseRange() {
+
+ this.getScheduleLog();
+ this.activeDateChoise = i;
},
- save() {
- this.rebootCron = this.cronText;
- setRebootTask({ task: this.cronText })
- .then((rsp) => {
- if (rsp && rsp.success) {
- this.$notify({
- type: "success",
- message: "閰嶇疆鎴愬姛",
- });
- }
- })
- .catch((err) => {
- this.$notify({
- type: "error",
- message: "閰嶇疆澶辫触",
- });
- });
+ getScheduleLog() {
+ const data= {
+ timeStart: this.timeStart,
+ timeEnd: this.timeEnd,
+ page: this.page,
+ pageSize: this.pageSize,
+ procID: this.procID,
+ procName: this.procName,
+ }
+ queryScheduleLog(data).then((res) => {
+ this.tableData = res.data.logs;
+ this.total = res.data.total
+ });
},
- changeEvery() {
- this.saveBtn = true;
- if (this.every === "close") {
- this.cronText = "";
- return;
- }
- if (this.every === "monthly") {
- this.cronValueObj.week = "*";
- this.cronValueObj.day = "1";
- if (!this.time.length) {
- this.time = "00:00";
- }
- }
- if (this.every === "weekly") {
- this.cronValueObj.day = "*";
- this.cronValueObj.week = "1";
- if (!this.time.length) {
- this.time = "00:00";
- }
- }
- if (this.every === "daily") {
- this.cronValueObj.day = "*";
- this.cronValueObj.week = "*";
- }
- this.updateExpression();
+ dateChange(val){
+ [this.timeStart,this.timeEnd]= val;
+ this.getScheduleLog()
},
- updateExpression() {
- this.saveBtn = true;
- if (this.time.length) {
- let arr = this.time.split(":");
- this.cronValueObj.hour = arr[0];
- this.cronValueObj.min = arr[1];
- }
- this.crontabValueString();
+ getTimeStr(date) {
+ var month = pad0(date.getMonth() + 1); //鏈�
+ var day = pad0(date.getDate()); //鏃�
+ var hour = pad0(date.getHours()); //鏃�
+ var minute = pad0(date.getMinutes()); //鍒�
+ var second = pad0(date.getSeconds()); //绉�
+ return `${date.getFullYear()}-${month}-${day} ${hour}:${minute}:${second}`;
},
- crontabValueString() {
- let obj = this.cronValueObj;
- this.cronText =
- obj.min +
- " " +
- obj.hour +
- " " +
- obj.day +
- " " +
- obj.month +
- " " +
- obj.week;
- },
- },
- watch: {
- rebootCron() {
- this.resolveExp();
+ getTimeRange(gap) {
+ var date = new Date(); //褰撳墠鏃堕棿
+ var preDay = new Date(new Date().getTime() - gap);
+ this.timeStart = this.getTimeStr(preDay)
+ this.timeEnd = this.getTimeStr(date)
+ this.dateRange=[this.timeStart,this.timeEnd]
},
},
};
</script>
<style lang="scss">
-.all {
- width: 100%;
-}
-.restart {
+.op-log {
margin: 0 auto;
- padding: 20px;
- .t {
- box-sizing: border-box;
- text-align: left;
- width: 70%;
- margin: 0 auto;
- padding: 10px;
- font-size: 16px;
- }
- .bar {
- height: 50px;
+ padding: 10px 8px 10px 5px;
- width: 70%;
- background: rgba(248, 248, 248, 1);
- margin: 0 auto;
- min-width: 300px;
- display: flex;
- justify-content: space-between;
- box-sizing: border-box;
- padding: 0 20px;
- align-items: center;
- border-radius: 10px;
- margin-bottom: 10px;
- .reset-btn {
- width: 70px;
- height: 32px;
- border-radius: 5px;
+ background-color: rgba(248, 248, 248, 1);
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ .top {
+ height: 100px;
+ background: #fff;
+ border-radius: 5px;
+ .first {
+ display: flex;
+ justify-content: space-between;
+ height: 45px;
+ padding: 0 20px;
+ .time-option {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ // padding-left: 20px;
+ .title {
+ margin-right: 20px;
+ }
+ .opts {
+ display: flex;
+ justify-content: space-between;
+ .opt {
+ width: fit-content;
+ height: 32px;
+ padding: 0 15px;
+ // background: aquamarine;
+ border-radius: 4px;
+ cursor: pointer;
+ margin-right: 20px;
+ line-height: 32px;
+ font-size: 14px;
+ }
+ .opt:hover {
+ background-color: rgba(61, 104, 225, 1);
+ color: #fff;
+ }
+ .opt-active {
+ color: #fff;
+ background-color: rgba(61, 104, 225, 1);
+ }
+ }
+ }
+ .search {
+ display: flex;
+ align-items: center;
+ }
}
- .el-select {
- width: 100%;
- }
- .name {
- min-width: 150px;
- text-align: left;
- font-size: 14px;
- }
- .el-input__inner::placeholder {
- color: rgba(107, 107, 107, 1);
- }
- .el-input--small .el-input__inner {
- height: 32px;
- line-height: 32px;
- border: none;
- background: rgba(240, 240, 240, 1);
- }
- .el-select .el-input .el-select__caret {
- color: rgba(138, 138, 138, 1);
- font-size: 15px;
- }
- .el-date-editor.el-input,
- .el-date-editor.el-input__inner {
- width: 100%;
+ .second {
+ display: flex;
+ margin: 10px 0; padding: 0 20px;
+align-items: center;
+ font-size: 14px;
+ .bar {
+ display: flex;
+ align-items: baseline;
+ width: fit-content;
+ padding-left: 20px;
+ .name {
+ margin-right: 5px;
+ }
+ }
}
}
- .save-btn {
- width: 260px;
- margin-top: 50px;
+ .table {
+ margin-top: 16px;
+ border-radius: 5px;
+ padding: 12px;
+ background-color: white;
+ .tableBox {
+ th {
+ padding: 0 !important;
+ height: 40px;
+ line-height: 40px;
+ }
+ td {
+ padding: 0 !important;
+ height: 34px;
+ line-height: 34px;
+ }
+ }
}
}
</style>
diff --git a/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue b/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue
index 72e613a..378ab96 100644
--- a/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue
+++ b/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue
@@ -347,6 +347,7 @@
memberSave() {
this.$refs['memberForm'].validate((valid) => {
if (valid) {
+ debugger;
let params = Object.assign({ DeptID: this.curLeftTreeNode.id }, this.memberEditForm);
if (this.memberEditForm.ID) {
updateMemberInfo(params).then(res => {
@@ -358,6 +359,7 @@
this.memberEditDialogVisible = false;
this.renderMemberTable();
this.searchLeftTreeData();
+ this.memberEditForm={}
}
})
} else {
@@ -370,6 +372,7 @@
this.renderMemberTable();
this.memberEditDialogVisible = false;
this.searchLeftTreeData();
+ this.memberEditForm={}
}
})
}
diff --git a/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue b/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue
index 31630b9..80053ba 100644
--- a/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue
+++ b/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue
@@ -167,8 +167,8 @@
@change="filterSearchData"
>
<el-option value label="鍏ㄩ儴"></el-option>
- <el-option :value="false" label="鏈叧娉�"></el-option>
- <el-option :value="true" label="宸插叧娉�"></el-option>
+ <el-option :value="'1'" label="鏈叧娉�"></el-option>
+ <el-option :value="'0'" label="宸插叧娉�"></el-option>
</el-select>
</div>
<div>
@@ -560,7 +560,7 @@
PageSize:
this.showType == "list" ? this.tablePageSize : this.tabPageSize,
IsDetail: this.showType == "list",
- IsFollow: this.IsFollow ? "0" : "1",
+ IsFollow: this.IsFollow ,
IsOperate: this.IsOperate,
};
let filterQuerys = [];
@@ -575,6 +575,7 @@
}
});
Object.assign(query, ...filterQuerys);
+ debugger;
getlst(query).then((res) => {
if (_this.showType == "list") {
@@ -615,6 +616,7 @@
IsFollow: this.IsFollow,
IsOperate: this.IsOperate,
};
+ debugger;
let filterQuerys = [];
this.checkedConfigs.forEach((config) => {
let checkedOpts = config.data.filter((option) => option.isChecked);
@@ -697,6 +699,7 @@
},
toggleFollow(data) {
data.IsFollow == "0" ? (data.IsFollow = "1") : (data.IsFollow = "0");
+ debugger
updateFollow({
id: data.id,
IsFollow: data.IsFollow,
--
Gitblit v1.8.0