From 2f306b4925e30cb1aa685716a045aca620231c11 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 22 二月 2022 15:14:40 +0800
Subject: [PATCH] 添加域名配置
---
src/pages/settings/components/BasicSetting.vue | 691 ++++++++++++++++++++++++++++++---------------------------
1 files changed, 363 insertions(+), 328 deletions(-)
diff --git a/src/pages/settings/components/BasicSetting.vue b/src/pages/settings/components/BasicSetting.vue
index 437cf00..985f4bc 100644
--- a/src/pages/settings/components/BasicSetting.vue
+++ b/src/pages/settings/components/BasicSetting.vue
@@ -8,13 +8,13 @@
type="border-card"
>
<!-- 鏈満淇℃伅 -->
- <el-tab-pane label="鏈満淇℃伅" name="first">
+ <el-tab-pane label="鏈満淇℃伅" name="sysInfo" v-if="isShow('settings:sysInfo')">
<el-menu
:default-openeds="openeds"
background-color="#fff"
text-color="#303133"
active-text-color="#409EFF"
- style="height: 100%;"
+ style="height: 100%"
class="menu-css"
@open="menuOpen"
@close="menuClose"
@@ -28,8 +28,15 @@
<el-form :model="sysinfo" :rules="rules" ref="sysinfo" label-width="100px">
<el-row>
<el-col :span="12">
- <el-form-item label="鍚嶇О" prop="server_name">
+ <el-form-item label="鏈嶅姟鍣ㄥ悕绉�" prop="server_name">
<el-input v-model="sysinfo.server_name" placeholder="鏈嶅姟鍣ㄥ悕绉�" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鍩熷悕" prop="server_name">
+ <el-input v-model="sysinfo.server_domain" placeholder="WEB鏈嶅姟鍩熷悕" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -71,7 +78,6 @@
</el-menu-item-group>
</el-submenu>
- <!-- 璇︾粏淇℃伅 -->
<el-submenu index="1">
<template slot="title">
<b class="tree-font">璇︾粏淇℃伅</b>
@@ -79,52 +85,48 @@
<el-menu-item-group class="item-group desc-info">
<el-row :gutter="gutter">
<el-col :span="12" class="flex-box">
- <div class="xiangqin-label">ID</div>
- <div class="xiangqing-info">{{sysinfo.server_id}}</div>
+ <div class="xiangqin-label">璁惧ID</div>
+ <div class="xiangqing-info">{{ sysinfo.server_id }}</div>
</el-col>
- <el-col :span="12" class="flex-box">
+ <!-- <el-col :span="12" class="flex-box">
<div class="xiangqin-label">璁惧缂栧彿</div>
<div class="xiangqing-info">{{sysinfo.deviceNum}}</div>
- </el-col>
+ </el-col>-->
<el-col :span="12" class="flex-box">
<div class="xiangqin-label">璁惧鍨嬪彿</div>
- <div class="xiangqing-info">{{sysinfo.deviceType}}</div>
+ <div class="xiangqing-info">{{ sysinfo.deviceModel }}</div>
</el-col>
<el-col :span="12" class="flex-box">
- <div class="xiangqin-label">璁惧搴忓垪鍙�</div>
- <div class="xiangqing-info">{{sysinfo.deviceSerialNum}}</div>
- </el-col>
- <el-col :span="12" class="flex-box">
- <div class="xiangqin-label">涓绘帶鐗堟湰</div>
- <div class="xiangqing-info">{{sysinfo.masterVersion}}</div>
- </el-col>
- <el-col :span="12" class="flex-box">
- <div class="xiangqin-label">web鐗堟湰</div>
- <div class="xiangqing-info">{{sysinfo.webVersion}}</div>
+ <div class="xiangqin-label">璁惧绫诲瀷</div>
+ <div class="xiangqing-info">{{ sysinfo.deviceDesc }}</div>
</el-col>
<el-col :span="12" class="flex-box">
<div class="xiangqin-label">閫氶亾涓暟</div>
- <div class="xiangqing-info">{{sysinfo.channelCount}}</div>
+ <div class="xiangqing-info">{{ sysinfo.channelCount }}</div>
</el-col>
<el-col :span="12" class="flex-box">
- <div class="xiangqin-label">纭洏涓暟</div>
- <div class="xiangqing-info">{{sysinfo.diskCount}}</div>
+ <div class="xiangqin-label">涓绘帶鐗堟湰</div>
+ <div class="xiangqing-info">{{ sysinfo.masterVersion }}</div>
+ </el-col>
+ <el-col :span="12" class="flex-box">
+ <div class="xiangqin-label">web鐗堟湰</div>
+ <div class="xiangqing-info">{{ sysinfo.webVersion }}</div>
</el-col>
<el-col :span="12" class="flex-box">
<div class="xiangqin-label">纭洏淇℃伅</div>
- <div class="xiangqing-info">{{sysinfo.disks}}</div>
+ <div class="xiangqing-info">{{ sysinfo.disks }}</div>
</el-col>
<el-col :span="12" class="flex-box">
<div class="xiangqin-label">CPU</div>
- <div class="xiangqing-info">{{sysinfo.cpuInfo}}</div>
+ <div class="xiangqing-info">{{ sysinfo.cpuInfo }}</div>
</el-col>
<el-col :span="12" class="flex-box">
<div class="xiangqin-label">鍐呭瓨</div>
- <div class="xiangqing-info">{{sysinfo.mem}}</div>
+ <div class="xiangqing-info">{{ sysinfo.mem }}</div>
</el-col>
<el-col :span="12" class="flex-box">
<div class="xiangqin-label">杩愯鏃堕棿</div>
- <div class="xiangqing-info">{{sysinfo.uptime}}</div>
+ <div class="xiangqing-info">{{ sysinfo.uptime }}</div>
</el-col>
</el-row>
</el-menu-item-group>
@@ -135,38 +137,50 @@
<b class="tree-font">浜嬩欢褰曞儚鏃堕暱</b>
</template>
<el-menu-item-group class="item-group">
- <el-form
- label-width="150px"
- class="alarmSetting"
- style="padding-left:5px;padding-right:5px;"
- >
- <el-form-item label="瑙嗛鎴彇鏈�鐭椂闀�" style="width:724px;">
+ <el-form label-width="150px" class="alarmSetting" style="padding-left: 5px; padding-right: 5px">
+ <el-form-item label="瑙嗛鎴彇鏈�鐭椂闀�" style="width: 724px">
<el-slider
id="cut_min_duration"
- v-model="alarmConf.min_video_len"
- :show-tooltip="false"
+ @input="min_len = min_video_len"
+ v-model="fakeObj.min"
+ :min="5 / 1.2"
+ :max="100"
+ :step="5 / 1.2"
+ show-stops
+ :show-tooltip="true"
+ :format-tooltip="formatTooltip"
></el-slider>
<el-input-number
- v-model="alarmConf.min_video_len"
+ v-model="min_len"
+ @change="fakeObj.min = +(min_len / 1.2)"
controls-position="right"
- :min="0"
- :max="100"
+ :min="5"
+ :max="120"
size="small"
- ></el-input-number> s
+ ></el-input-number
+ > s
</el-form-item>
- <el-form-item label="瑙嗛鎴彇鏈�闀挎椂闀�" style="width:724px">
+ <el-form-item label="瑙嗛鎴彇鏈�闀挎椂闀�" style="width: 724px">
<el-slider
id="cut_max_duration"
- v-model="alarmConf.max_video_len"
- :show-tooltip="false"
+ v-model="fakeObj.max"
+ :min="5 / 1.2"
+ @input="max_len = max_video_len"
+ :max="100"
+ :step="5 / 1.2"
+ show-stops
+ :format-tooltip="formatTooltip"
+ :show-tooltip="true"
></el-slider>
<el-input-number
- v-model="alarmConf.max_video_len"
+ v-model="max_len"
+ @change="fakeObj.max = +(max_len / 1.2)"
controls-position="right"
- :min="0"
- :max="100"
+ :min="5"
+ :max="120"
size="small"
- ></el-input-number> s
+ ></el-input-number
+ > s
</el-form-item>
<div class="mt15 mb10 save-btn">
<el-button type="primary" @click="submitAlarm" size="small">淇濆瓨</el-button>
@@ -179,45 +193,23 @@
</el-tab-pane>
<!-- 鏃堕棿閰嶇疆 -->
- <el-tab-pane label="鏃堕棿閰嶇疆" name="second">
+ <el-tab-pane label="鏃堕棿閰嶇疆" name="timeSet" v-if="isShow('settings:timeSet')">
<el-form label-width="100px">
<el-form-item label="璁惧鏃堕棿">
- <!-- <el-input v-model="equipmentTime" placeholder="璇疯緭鍏�" size="small"></el-input> -->
{{ equipmentTime }}
</el-form-item>
-
- <!-- <el-form-item label="鏃跺尯" prop="timezone">
- <el-select
- v-model="timezone"
- placeholder="璇烽�夋嫨"
- style="width: 360px; height: 32px"
- size="small"
- @change="checkTimeZone"
- >
- <el-option
- v-for="item in timeZoneOption"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- ></el-option>
- </el-select>
- </el-form-item>-->
- <div style="text-align: left;padding: 10px 0px">
+ <div style="text-align: left; padding: 10px 0px">
<div class="time-type">NTP鏍℃椂</div>
- <div style="padding: 10px 0px;">
+ <div style="padding: 10px 0px">
<el-radio v-model="syncType" label="1">NTP鏍℃椂</el-radio>
</div>
</div>
<el-form-item label="鏈嶅姟鍣ㄥ湴鍧�">
- <ip-input
- :ip="ntpServer"
- @on-blur="ntpServer= arguments[0]"
- :disabled="syncType === '2'"
- ></ip-input>
+ <ip-input :ip="ntpServer" @on-blur="ntpServer = arguments[0]" :disabled="syncType === '2'"></ip-input>
</el-form-item>
- <el-form-item label="鏍℃椂鏃堕棿闂撮殧" style="width: 41.3%;">
+ <el-form-item label="鏍℃椂鏃堕棿闂撮殧" style="width: 41.3%">
<el-input-number
v-model.number="timeInterval"
:min="1"
@@ -226,19 +218,21 @@
size="small"
:controls="false"
:disabled="syncType === '2'"
- ></el-input-number> 鍒嗛挓
+ ></el-input-number
+ > 鍒嗛挓
<el-button
type="text"
- style="position: absolute; left: 330px;"
+ style="position: absolute; left: 330px"
:disabled="syncType === '2'"
@click="testNTP"
:loading="ntpTestLoading"
- >娴嬭瘯</el-button>
+ >娴嬭瘯</el-button
+ >
</el-form-item>
- <div style="text-align: left;padding: 10px 0px">
+ <div style="text-align: left; padding: 10px 0px">
<div class="time-type">鎵嬪姩鏍℃椂</div>
- <div style="padding: 10px 0px;">
+ <div style="padding: 10px 0px">
<el-radio v-model="syncType" label="2">鎵嬪姩鏍℃椂</el-radio>
</div>
</div>
@@ -254,13 +248,14 @@
></el-date-picker>
<el-checkbox
v-model="settimeRadio"
- style="margin-left: 12px;"
+ style="margin-left: 12px"
@change="syncBrowser"
:disabled="syncType === '1'"
- >鍚屾鏈绠楁満鏃堕棿</el-checkbox>
+ >鍚屾鏈绠楁満鏃堕棿</el-checkbox
+ >
</el-form-item>
- <el-col :span="12" style="padding-right: 40px;">
+ <el-col :span="12" style="padding-right: 40px">
<el-form-item>
<el-button type="primary" @click="submitClock" size="small">淇濆瓨</el-button>
</el-form-item>
@@ -269,7 +264,7 @@
</el-tab-pane>
<!-- 闆嗙兢绠$悊 -->
- <el-tab-pane label="闆嗙兢绠$悊" name="third">
+ <el-tab-pane label="闆嗙兢绠$悊" name="cluster" v-if="isShow('settings:cluster')">
<cluster-management></cluster-management>
</el-tab-pane>
<!-- <el-tab-pane label="澶栭儴璁块棶" name="fourth">
@@ -312,11 +307,11 @@
</el-submenu>
</el-menu>
</el-tab-pane>-->
- <el-tab-pane label="鏉冮檺绠$悊" name="user">
- <authority-management v-if="activeName === 'user'"></authority-management>
+ <el-tab-pane label="鏉冮檺绠$悊" name="permission" v-if="isShow('settings:permission')">
+ <authority-management v-if="activeName === 'permission'"></authority-management>
</el-tab-pane>
- <el-tab-pane label="骞挎挱璁剧疆" name="radio">
- <radio-set v-if="activeName === 'radio'"></radio-set>
+ <el-tab-pane label="骞挎挱璁剧疆" name="broadcast" v-if="isShow('settings:broadcast')">
+ <radio-set v-if="activeName === 'broadcast'"></radio-set>
</el-tab-pane>
</el-tabs>
</div>
@@ -332,16 +327,17 @@
saveClockInfo,
testNTPserver,
getResourceConfig,
- saveResourceConfig,
-} from "@/api/system";
+ saveResourceConfig
+} from "@/api/system"
-import { isPort, isIPv4 } from "@/scripts/validate";
-import ipInput from "@/components/subComponents/IPInput";
+import { isPort, isIPv4 } from "@/scripts/validate"
+import ipInput from "@/components/subComponents/IPInput"
import TimeZones from "@/Pool/TimeZones"
-import ClusterManagement from "./ClusterManagement";
-import AuthorityManagement from "./AuthorityManagement";
-import RadioSet from "./RadioSet";
+import ClusterManagement from "./ClusterManagement"
+import AuthorityManagement from "./AuthorityManagement"
+import RadioSet from "./RadioSet"
+import config from "../../../../package.json"
export default {
name: "BasicSettings",
@@ -352,20 +348,26 @@
RadioSet
},
computed: {
- timeZoneOption() {
- let options = []
- TimeZones.forEach(zone => {
- options = options.concat(zone.utc.map(v => {
- return { value: v, label: v }
- }))
- })
- return options
+ min_video_len() {
+ // return +(this.fakeObj.min * 1.2).toFixed(0);
+ return Math.round(this.fakeObj.min * 1.2)
+ },
+ max_video_len() {
+ return Math.round(this.fakeObj.max * 1.2)
+ // return +(this.fakeObj.max * 1.2).toFixed(0);
+ },
+ isAdmin() {
+ if (sessionStorage.getItem("userInfo") && sessionStorage.getItem("userInfo") !== "") {
+ let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username
+ return loginName === "superadmin" || loginName === "basic"
+ }
+ return false
}
},
directives: {
focus: {
- inserted: function (el) {
- el.querySelector('input').focus()
+ inserted: function(el) {
+ el.querySelector("input").focus()
}
}
},
@@ -374,7 +376,7 @@
loading: true,
loadingText: "",
gutter: 10,
- activeName: "first",
+ activeName: "sysInfo",
timezone: "",
syncType: "1",
ntpServer: "",
@@ -388,6 +390,12 @@
timestamp: 0,
sysinfo: {},
alarmConf: {},
+ min_len: 0,
+ max_len: 0,
+ fakeObj: {
+ min: 0,
+ max: 0
+ },
originNetConfig: {
ip: "",
gw: "",
@@ -443,9 +451,7 @@
},
{ validator: isIPv4, trigger: "change" }
],
- server_name: [
- { required: true, message: "璇疯緭鍏ュ悕绉�", trigger: "change" }
- ],
+ server_name: [{ required: true, message: "璇疯緭鍏ュ悕绉�", trigger: "change" }],
subMask: [
{
required: true,
@@ -460,100 +466,123 @@
diyOrLocalIP: "1",
ip: "",
localhost: "",
- localFilePort: "",
+ localFilePort: ""
},
locationCity: {
- province: '',
- city: '',
- county: '',
+ province: "",
+ city: "",
+ county: "",
provinceOptions: [],
cityOptions: [],
countyOptions: []
},
webPort: 0,
- ntpTestLoading: false
- };
+ ntpTestLoading: false,
+ buttonAuthority: sessionStorage.getItem("buttonAuthoritys") || []
+ }
+ },
+ created() {
+ if (this.isShow("settings:sysInfo")) {
+ this.activeName = "sysInfo"
+ } else if (this.isShow("settings:timeSet")) {
+ this.activeName = "timeSet"
+ } else if (this.isShow("settings:cluster")) {
+ this.activeName = "cluster"
+ } else if (this.isShow("settings:permission")) {
+ this.activeName = "permission"
+ } else if (this.isShow("settings:broadcast")) {
+ this.activeName = "broadcast"
+ }
},
mounted() {
this.$nextTick(() => {
- this.initSysinfo();
+ this.initSysinfo()
// this.initAlarmConf();
- this.initResourceConfig();
- this.initClockConf();
+ this.initResourceConfig()
+ this.initClockConf()
//this.markStartTime();
-
- });
+ })
},
beforeDestroy() {
- clearTimeout(this.clockTimer);
- clearInterval(this.browserTimer);
+ clearTimeout(this.clockTimer)
+ clearInterval(this.browserTimer)
},
methods: {
+ formatTooltip(v) {
+ return Math.round(v * 1.2)
+ },
+ isShow(authority) {
+ return this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
+ },
initSysinfo() {
- this.loadingText = "姝e湪鑾峰彇璁惧淇℃伅...";
- getDevInfo().then(rsp => {
- if (rsp && rsp.success) {
- this.sysinfo = rsp.data;
- this.sysinfo.gateway = this.sysinfo.gateway.trim();
- this.originNetConfig.ip = this.sysinfo.ip;
- this.originNetConfig.mask = this.sysinfo.subMask;
- this.originNetConfig.gw = this.sysinfo.gateway.trim();
- this.originNetConfig.dns = this.sysinfo.dns ? this.sysinfo.dns : "";
- this.alarmConf.min_video_len = rsp.data.min_video_len;
- this.alarmConf.max_video_len = rsp.data.max_video_len;
+ this.loadingText = "姝e湪鑾峰彇璁惧淇℃伅..."
+ getDevInfo()
+ .then((rsp) => {
+ if (rsp && rsp.success) {
+ this.sysinfo = rsp.data
+ this.sysinfo.gateway = this.sysinfo.gateway.trim()
+ this.originNetConfig.ip = this.sysinfo.ip
+ this.originNetConfig.mask = this.sysinfo.subMask
+ this.originNetConfig.gw = this.sysinfo.gateway.trim()
+ this.originNetConfig.dns = this.sysinfo.dns ? this.sysinfo.dns : ""
+ // this.alarmConf.min_video_len = rsp.data.min_video_len;
+ // this.alarmConf.max_video_len = rsp.data.max_video_len;
+ this.fakeObj.min = rsp.data.min_video_len / 1.2
+ this.fakeObj.max = rsp.data.max_video_len / 1.2
+ if (this.sysinfo.deviceInfo) {
+ let devInfo = this.sysinfo.deviceInfo
- if (this.sysinfo.deviceInfo) {
- let devInfo = this.sysinfo.deviceInfo;
+ this.sysinfo.cpuInfo = devInfo.cpu[0].modelName
+ this.sysinfo.disks = "( " + devInfo.disk + ") "
+ this.sysinfo.mem = (devInfo.mem.total / 1024 / 1024 / 1024).toFixed(2) + "GB"
+ // this.sysinfo.arch = devInfo.host.kernelArch;
+ this.sysinfo.uptime = this.secondsFormat(devInfo.host.uptime)
+ }
- this.sysinfo.cpuInfo = devInfo.cpu[0].modelName;
- this.sysinfo.disks = devInfo.disk;
- this.sysinfo.mem = (devInfo.mem.total / 1024 / 1024 / 1024).toFixed(2) + "GB";
- // this.sysinfo.arch = devInfo.host.kernelArch;
- this.sysinfo.uptime = this.secondsFormat(devInfo.host.uptime);
+ if (!this.sysinfo.server_port) {
+ this.sysinfo.server_port = 7003
+ }
+
+ this.webPort = this.sysinfo.server_port
+
+ this.sysinfo.webVersion = "V" + config.version
}
- if (!this.sysinfo.server_port) {
- this.sysinfo.server_port = 7003;
- }
-
- this.webPort = this.sysinfo.server_port;
- }
-
- this.loading = false;
- }).catch(err => {
- this.loading = false;
- });
+ this.loading = false
+ })
+ .catch((err) => {
+ this.loading = false
+ })
},
secondsFormat(s) {
- var day = Math.floor(s / (24 * 3600)); // Math.floor()鍚戜笅鍙栨暣
- var hour = Math.floor((s - day * 24 * 3600) / 3600);
- var minute = Math.floor((s - day * 24 * 3600 - hour * 3600) / 60);
- var second = s - day * 24 * 3600 - hour * 3600 - minute * 60;
- return day + "澶�" + hour + "鏃�" + minute + "鍒�" + second + "绉�";
+ var day = Math.floor(s / (24 * 3600)) // Math.floor()鍚戜笅鍙栨暣
+ var hour = Math.floor((s - day * 24 * 3600) / 3600)
+ var minute = Math.floor((s - day * 24 * 3600 - hour * 3600) / 60)
+ var second = s - day * 24 * 3600 - hour * 3600 - minute * 60
+ return day + "澶�" + hour + "鏃�" + minute + "鍒�" + second + "绉�"
},
initClockConf(ntpTest = false) {
- getClockInfo().then(rsp => {
+ getClockInfo().then((rsp) => {
if (rsp && rsp.success) {
- this.timezone = rsp.data.time_zone;
+ this.timezone = rsp.data.time_zone
if (!ntpTest) {
- this.syncType = rsp.data.ntp ? "1" : "2";
+ this.syncType = rsp.data.ntp ? "1" : "2"
}
if (rsp.data.ntp) {
- this.ntpServer = rsp.data.ntp_server;
- this.timeInterval = rsp.data.interval;
+ this.ntpServer = rsp.data.ntp_server
+ this.timeInterval = rsp.data.interval
}
this.timestamp = rsp.data.local_time
if (this.clockTimer === null) {
- this.runClock();
+ this.runClock()
}
}
})
},
runClock() {
- this.equipmentTime = this.formatTime(++this.timestamp, 'Y-M-D h:m:s');
- // console.log(this.equipmentTime)
+ this.equipmentTime = this.formatTime(++this.timestamp, "Y-M-D h:m:s")
this.clockTimer = setTimeout(() => {
- this.runClock();
+ this.runClock()
}, 1000)
},
initAlarmConf() {
@@ -564,7 +593,7 @@
// });
},
initResourceConfig() {
- getResourceConfig().then(rsp => {
+ getResourceConfig().then((rsp) => {
if (rsp && rsp.success) {
this.ipServer.diyOrLocalIP = rsp.data.ipType
this.ipServer.ip = rsp.data.serviceIp
@@ -578,252 +607,258 @@
clearInterval(this.browserTimer)
} else {
this.browserTimer = setInterval(() => {
- let timestamp = new Date().getTime() / 1000;
- this.settime = this.formatTime(timestamp, 'Y-M-D h:m:s')
+ let timestamp = new Date().getTime() / 1000
+ this.settime = this.formatTime(timestamp, "Y-M-D h:m:s")
}, 1000)
}
},
markStartTime() {
- let timestamp = new Date().getTime() / 1000;
- this.settime = this.formatTime(timestamp, 'Y-M-D h:m:s')
+ let timestamp = new Date().getTime() / 1000
+ this.settime = this.formatTime(timestamp, "Y-M-D h:m:s")
},
submitSysinfo() {
- this.$refs["sysinfo"].validate(valid => {
+ this.$refs["sysinfo"].validate((valid) => {
if (valid) {
- if (this.sysinfo.ip !== this.originNetConfig.ip
- || this.sysinfo.subMask !== this.originNetConfig.mask
- || this.sysinfo.dns !== this.originNetConfig.dns
- || this.sysinfo.gateway !== this.originNetConfig.gw) {
-
+ if (
+ this.sysinfo.ip !== this.originNetConfig.ip ||
+ this.sysinfo.subMask !== this.originNetConfig.mask ||
+ this.sysinfo.dns !== this.originNetConfig.dns ||
+ this.sysinfo.gateway !== this.originNetConfig.gw ||
+ this.sysinfo.server_port !== this.originNetConfig.server_port ||
+ this.sysinfo.server_domain !== this.originNetConfig.server_domain
+ ) {
if (this.sysinfo.ip !== this.originNetConfig.ip) {
- let newUri = location.protocol + "//" + this.sysinfo.ip + ":" + this.sysinfo.server_port;
+ let newUri = location.protocol + "//" + this.sysinfo.ip + ":" + this.sysinfo.server_port
var changeIPTimer = setTimeout(() => {
- this.$alert('<strong>鎮ㄥ凡淇敼浜嗘湇鍔″櫒ip, 璇烽噸鏂扮櫥褰�</strong><a href="' + newUri + '"> ' + newUri + '<a/>', '鎻愮ず', {
- dangerouslyUseHTMLString: true
- });
+ this.$alert(
+ '<strong>鎮ㄥ凡淇敼浜嗘湇鍔″櫒閰嶇疆, 璇烽噸鏂扮櫥褰�</strong><a target="_parent" href="' +
+ newUri +
+ '"> ' +
+ newUri +
+ "<a/>",
+ "鎻愮ず",
+ {
+ dangerouslyUseHTMLString: true
+ }
+ )
}, 10000)
}
- this.$confirm("纭闇�瑕佷慨鏀规湇鍔″櫒缃戠粶閰嶇疆鍚楋紵", {
+ this.$confirm("纭闇�瑕佷慨鏀规湇鍔″櫒閰嶇疆鍚楋紵", {
center: true,
cancelButtonClass: "comfirm-class-cancle",
confirmButtonClass: "comfirm-class-sure"
- }).then(() => {
- this.loading = true;
- this.loadingText = "姝e湪澶勭悊..."
- saveDevInfo(this.sysinfo).then(rsp => {
- if (rsp && rsp.success) {
- this.$notify({
- type: "success",
- message: "鏈満淇℃伅淇濆瓨鎴愬姛"
- });
- }
- this.initSysinfo();
- this.loading = false;
- }).catch(err => {
- this.loading = false;
- clearTimeout(changeIPTimer)
- this.$notify({
- type: "error",
- message: "淇濆瓨澶辫触"
- });
- });
- }).catch(err => {
- });
+ })
+ .then(() => {
+ this.loading = true
+ this.loadingText = "姝e湪澶勭悊..."
+ saveDevInfo(this.sysinfo)
+ .then((rsp) => {
+ if (rsp && rsp.success) {
+ this.$notify({
+ type: "success",
+ message: "鏈嶅姟鍣ㄩ厤缃垚鍔�"
+ })
+ }
+ this.initSysinfo()
+ this.loading = false
+ })
+ .catch((err) => {
+ this.loading = false
+ clearTimeout(changeIPTimer)
+ this.$notify({
+ type: "error",
+ message: "淇濆瓨澶辫触"
+ })
+ })
+ })
+ .catch((err) => {})
} else {
- saveDevInfo(this.sysinfo).then(rsp => {
+ saveDevInfo(this.sysinfo).then((rsp) => {
if (rsp && rsp.success) {
this.$notify({
type: "success",
- message: "鏈満淇℃伅淇濆瓨鎴愬姛"
- });
- this.initSysinfo();
+ message: "鏈満淇℃伅淇敼鎴愬姛"
+ })
+ this.initSysinfo()
+ } else {
+ this.$notify({
+ type: "error",
+ message: "淇濆瓨澶辫触"
+ })
}
- });
-
- if (this.sysinfo.server_port !== this.webPort) {
- let newUri = location.protocol + "//" + this.sysinfo.ip + ":" + this.sysinfo.server_port;
- var changeIPTimer = setTimeout(() => {
- this.$alert('<strong>鎮ㄥ凡淇敼浜嗘湇鍔″櫒绔彛, 璇烽噸鏂扮櫥褰�</strong><a href="' + newUri + '"> ' + newUri + '<a/>', '鎻愮ず', {
- dangerouslyUseHTMLString: true
- });
- }, 5000)
- }
+ })
}
} else {
- console.log("error submit!!");
- return false;
+ console.log("error submit!!")
+ return false
}
- });
+ })
},
- checkTimeZone(val) {
- debugger;
-
- },
+ checkTimeZone(val) {},
submitClock() {
- if (this.syncType === '1') {
+ if (this.syncType === "1") {
if (this.ntpServer === "") {
this.$notify({
type: "error",
message: "NTP 鏈嶅姟鍣ㄥ湴鍧�涓嶈兘涓虹┖"
- });
+ })
return false
} else if (this.timeInterval === "") {
- this.timeInterval = 1;
+ this.timeInterval = 1
}
} else {
if (this.settime === "") {
this.$notify({
type: "error",
message: "璁剧疆鏃堕棿涓嶈兘涓虹┖"
- });
+ })
return false
}
}
let requestBody = {
timeZone: this.timezone,
- ntp: this.syncType === '1',
+ ntp: this.syncType === "1",
ntpServer: this.ntpServer,
interval: this.timeInterval,
newTime: this.settime
}
- saveClockInfo(requestBody).then(rsp => {
+ saveClockInfo(requestBody).then((rsp) => {
if (rsp && rsp.success) {
this.$notify({
type: "success",
message: "璁剧疆鎴愬姛"
- });
+ })
}
-
- this.initClockConf();
+ this.initClockConf()
})
},
testNTP() {
- this.ntpTestLoading = true;
- testNTPserver({ server: this.ntpServer }).then(rsp => {
- if (rsp && rsp.success) {
- this.$notify({
- type: "success",
- message: "鏃堕棿鍚屾鎴愬姛"
- });
- } else {
+ this.ntpTestLoading = true
+ testNTPserver({ server: this.ntpServer })
+ .then((rsp) => {
+ if (rsp && rsp.success) {
+ this.$notify({
+ type: "success",
+ message: "鏃堕棿鍚屾鎴愬姛"
+ })
+ } else {
+ this.$notify({
+ type: "error",
+ message: "鏃堕棿鍚屾澶辫触"
+ })
+ }
+ this.ntpTestLoading = false
+ this.initClockConf(true)
+ })
+ .catch((err) => {
this.$notify({
type: "error",
- message: "鏃堕棿鍚屾澶辫触"
- });
- }
- this.ntpTestLoading = false;
- this.initClockConf(true);
-
- }).catch(err => {
- this.$notify({
- type: "error",
- message: "鏃堕棿鍚屾澶辫触,璇锋鏌ユ湇鍔″櫒ip"
- });
- this.ntpTestLoading = false;
- })
+ message: "鏃堕棿鍚屾澶辫触,璇锋鏌ユ湇鍔″櫒ip"
+ })
+ this.ntpTestLoading = false
+ })
},
submitAlarm() {
- saveAlarmConfig(this.alarmConf).then(rsp => {
+ saveAlarmConfig({
+ min_video_len: this.min_video_len,
+ max_video_len: this.max_video_len
+ }).then((rsp) => {
if (rsp && rsp.success) {
this.$notify({
type: "success",
message: "淇濆瓨鎴愬姛"
- });
- }
- });
- },
- submitResource() {
- let regNum = /^[0-9]*$/;
- if (!this.vaildHost(this.ipServer.localhost)) {
- this.$notify({
- type: "warning",
- message: "璇疯緭鍏ユ纭牸寮忓緱鍩熷悕锛�"
- })
- return false;
- }
- if (!regNum.test(this.ipServer.localFilePort)) {
- this.$notify({
- type: 'warning',
- message: "璇疯緭鍏ユ纭殑绔彛鍙凤紒"
- })
- return false;
- }
- saveResourceConfig({
- domain: this.ipServer.localhost,
- ipType: this.ipServer.diyOrLocalIP,
- serviceIp: this.ipServer.ip,
- filePort: Number(this.ipServer.localFilePort)
- }).then(res => {
- if (res && res.success) {
- this.$notify({
- type: "success",
- message: "淇濆瓨鎴愬姛"
- });
- } else {
- this.$notify({
- type: "error",
- message: "淇濆瓨澶辫触"
- });
+ })
}
})
},
- onIpBlur(e, ip) {
- console.log(e, ip);
- },
+ // submitResource() {
+ // let regNum = /^[0-9]*$/;
+ // if (!this.vaildHost(this.ipServer.localhost)) {
+ // this.$notify({
+ // type: "warning",
+ // message: "璇疯緭鍏ユ纭牸寮忓緱鍩熷悕锛�",
+ // });
+ // return false;
+ // }
+ // if (!regNum.test(this.ipServer.localFilePort)) {
+ // this.$notify({
+ // type: "warning",
+ // message: "璇疯緭鍏ユ纭殑绔彛鍙凤紒",
+ // });
+ // return false;
+ // }
+ // saveResourceConfig({
+ // domain: this.ipServer.localhost,
+ // ipType: this.ipServer.diyOrLocalIP,
+ // serviceIp: this.ipServer.ip,
+ // filePort: Number(this.ipServer.localFilePort),
+ // }).then((res) => {
+ // if (res && res.success) {
+ // this.$notify({
+ // type: "success",
+ // message: "淇濆瓨鎴愬姛",
+ // });
+ // } else {
+ // this.$notify({
+ // type: "error",
+ // message: "淇濆瓨澶辫触",
+ // });
+ // }
+ // });
+ // },
+ // onIpBlur(e, ip) {
+ // console.log(e, ip);
+ // },
formatTime(number, format) {
- var formateArr = ['Y', 'M', 'D', 'h', 'm', 's'];
- var returnArr = [];
+ var formateArr = ["Y", "M", "D", "h", "m", "s"]
+ var returnArr = []
- var date = new Date(number * 1000);
- returnArr.push(date.getFullYear());
- returnArr.push(this.formatNumber(date.getMonth() + 1));
- returnArr.push(this.formatNumber(date.getDate()));
+ var date = new Date(number * 1000)
+ returnArr.push(date.getFullYear())
+ returnArr.push(this.formatNumber(date.getMonth() + 1))
+ returnArr.push(this.formatNumber(date.getDate()))
- returnArr.push(this.formatNumber(date.getHours()));
- returnArr.push(this.formatNumber(date.getMinutes()));
- returnArr.push(this.formatNumber(date.getSeconds()));
+ returnArr.push(this.formatNumber(date.getHours()))
+ returnArr.push(this.formatNumber(date.getMinutes()))
+ returnArr.push(this.formatNumber(date.getSeconds()))
for (var i in returnArr) {
- format = format.replace(formateArr[i], returnArr[i]);
+ format = format.replace(formateArr[i], returnArr[i])
}
- return format;
+ return format
},
- //鏁版嵁杞寲
+ //鏁版嵁杞寲
formatNumber(n) {
n = n.toString()
- return n[1] ? n : '0' + n
+ return n[1] ? n : "0" + n
},
- menuOpen(event) {
-
- },
- menuClose(event) {
-
- },
- handleEdit(row) {
- console.log(row);
- row.edit = true;
- },
- handleCancel(row) {
- row.edit = false;
- console.log(row);
- },
- handleSave(row) {
- console.log(row);
- row.edit = false;
- this.$notify({
- message: "淇濆瓨鎴愬姛",
- type: "success"
- });
- },
+ menuOpen(event) {},
+ menuClose(event) {},
+ // handleEdit(row) {
+ // console.log(row);
+ // row.edit = true;
+ // },
+ // handleCancel(row) {
+ // row.edit = false;
+ // console.log(row);
+ // },
+ // handleSave(row) {
+ // console.log(row);
+ // row.edit = false;
+ // this.$notify({
+ // message: "淇濆瓨鎴愬姛",
+ // type: "success",
+ // });
+ // },
//鏍¢獙鍩熷悕
vaildHost(str) {
let re = /^(?=^.{3,255}$)(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*$/
return re.test(str)
- },
+ }
}
-};
+}
</script>
<style lang="scss">
.s-basic-setting {
--
Gitblit v1.8.0