From 51f8540633fe9eaa9c2c9b5ff439f2bf9bf9094e Mon Sep 17 00:00:00 2001
From: hanbaoshan <hanbaoshan@aiotlink.com>
Date: 星期二, 04 八月 2020 17:31:09 +0800
Subject: [PATCH] iframe ui调整,GB28181 radio操作修复,应用打开方式调整
---
src/pages/gb28181/index/App.vue | 24 +-
public/index.html | 77 ++++---
public/images/desktop/header-icon/min.png | 0
src/pages/desktop/index/components/ToolsEntry.vue | 14
src/pages/cameraVideo/index/App.vue | 3
src/pages/desktop/index/components/DFrame.vue | 53 +++-
src/components/LeftNav.vue | 4
src/pages/cameraVideo/index/Video.vue | 5
src/pages/desktop/index/mock/userData.json | 4
src/pages/cameraAccess/components/SceneRule.vue | 69 ------
public/images/desktop/header-icon/mini.png | 0
src/pages/cameraAccess/index/App.vue | 5
src/pages/library/index/App.vue | 4
public/images/desktop/header-icon/close-hover.png | 0
public/images/desktop/header-icon/close.png | 0
public/images/desktop/header-icon/max.png | 0
src/Pool/TaskMange.ts | 1
src/pages/cameraAccess/index/VideoManage.vue | 7
src/pages/desktop/index/components/Tools.vue | 8
src/pages/desktop/index/components/NoticeTip.vue | 2
src/pages/cameraAccess/components/SeparateRules.vue | 283 +++++++++++----------------
21 files changed, 241 insertions(+), 322 deletions(-)
diff --git a/public/images/desktop/header-icon/close-hover.png b/public/images/desktop/header-icon/close-hover.png
new file mode 100644
index 0000000..01f76b6
--- /dev/null
+++ b/public/images/desktop/header-icon/close-hover.png
Binary files differ
diff --git a/public/images/desktop/header-icon/close.png b/public/images/desktop/header-icon/close.png
new file mode 100644
index 0000000..e386c4d
--- /dev/null
+++ b/public/images/desktop/header-icon/close.png
Binary files differ
diff --git a/public/images/desktop/header-icon/max.png b/public/images/desktop/header-icon/max.png
new file mode 100644
index 0000000..ff7b5c8
--- /dev/null
+++ b/public/images/desktop/header-icon/max.png
Binary files differ
diff --git a/public/images/desktop/header-icon/min.png b/public/images/desktop/header-icon/min.png
new file mode 100644
index 0000000..fda6edf
--- /dev/null
+++ b/public/images/desktop/header-icon/min.png
Binary files differ
diff --git a/public/images/desktop/header-icon/mini.png b/public/images/desktop/header-icon/mini.png
new file mode 100644
index 0000000..9bf0dd7
--- /dev/null
+++ b/public/images/desktop/header-icon/mini.png
Binary files differ
diff --git a/public/index.html b/public/index.html
index 88d03e7..a862cfd 100644
--- a/public/index.html
+++ b/public/index.html
@@ -1,33 +1,50 @@
<!DOCTYPE html>
<html lang="en">
+ <head>
+ <meta charset="utf-8" />
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+ <meta name="viewport" content="width=device-width,initial-scale=1.0" />
+ <link
+ rel="icon"
+ type="image/png"
+ href="<%= BASE_URL %>favicon.png"
+ sizes="32x32"
+ />
+ <link rel="stylesheet" href="/fonts/alibaba/iconfont.css">
+ <title><%= htmlWebpackPlugin.options.title %></title>
+ <style>
+ html,
+ body,
+ h2,
+ p,
+ ul,
+ li {
+ margin: 0;
+ padding: 0;
+ }
-<head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width,initial-scale=1.0">
- <link rel="icon" type="image/png" href="<%= BASE_URL %>favicon.png" sizes="32x32">
- <link rel="stylesheet" href="/fonts/alibaba/iconfont.css">
- <title><%= htmlWebpackPlugin.options.title %></title>
- <style>
- html,
- body,
- h2,
- p,
- ul,
- li {
- margin: 0;
- padding: 0;
- }
- </style>
-</head>
-
-<body>
- <noscript>
- <strong>We're sorry but multiple-pages doesn't work properly without JavaScript enabled. Please enable it to
- continue.</strong>
- </noscript>
- <div id="app"></div>
- <!-- built files will be auto injected -->
-</body>
-
-</html>
\ No newline at end of file
+ .clearfix::after{
+ content: '';
+ display: block;
+ height: 0;
+ clear: both;
+ }
+ .ml10{
+ margin-left: 10px;
+ }
+ .mr10{
+ margin-right: 10px;
+ }
+ </style>
+ </head>
+ <body>
+ <noscript>
+ <strong
+ >We're sorry but multiple-pages doesn't work properly without JavaScript
+ enabled. Please enable it to continue.</strong
+ >
+ </noscript>
+ <div id="app"></div>
+ <!-- built files will be auto injected -->
+ </body>
+</html>
diff --git a/src/Pool/TaskMange.ts b/src/Pool/TaskMange.ts
index 3efa54f..76575b9 100644
--- a/src/Pool/TaskMange.ts
+++ b/src/Pool/TaskMange.ts
@@ -63,7 +63,6 @@
async findAllSdk(params) {
let res:any = await findAllSdk(params)
if (res && res.success) {
- debugger
this.list1 = res.data
}
}
diff --git a/src/components/LeftNav.vue b/src/components/LeftNav.vue
index 6fe6546..1ad2f58 100644
--- a/src/components/LeftNav.vue
+++ b/src/components/LeftNav.vue
@@ -180,13 +180,13 @@
></i>
</el-input>
<!-- 闅愯棌鏍戞寜閽� -->
- <div class="dev-tree-close">
+ <!-- <div class="dev-tree-close">
<i
class="el-icon-s-fold"
style="color: #3D68E1;line-height: 22px;font-size: 27px;"
@click="closeTree"
></i>
- </div>
+ </div> -->
</div>
<!-- 鏈湴瑙嗛婧愬垪琛� -->
diff --git a/src/pages/cameraAccess/components/SceneRule.vue b/src/pages/cameraAccess/components/SceneRule.vue
index 43098ea..a24fec5 100644
--- a/src/pages/cameraAccess/components/SceneRule.vue
+++ b/src/pages/cameraAccess/components/SceneRule.vue
@@ -48,74 +48,7 @@
</el-form-item>
</div>
</div>
- <!-- <el-row>
- <el-col :span="8">-->
- <!-- <el-form-item label="鍦烘櫙妯℃澘">
- <el-select
- v-model="sceneForm.template_id"
- placeholder="璇烽�夋嫨"
- @change="selectTemplate"
- size="mini"
- style="width:200px"
- >
- <el-option
- v-for="item in sceneTemplates"
- :key="item.id"
- :label="item.name"
- :value="item.id"
- ></el-option>
- </el-select>
- </el-form-item>-->
- <!-- </el-col>
- <el-col :span="8">
- <el-form-item label="鏃堕棿娈�">
- <el-select
- v-model="sceneForm.time_rule_id"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width:200px"
- >
- <el-option
- v-for="item in VideoManageData.TimeRules"
- :key="item.id"
- :label="item.name"
- :value="item.id"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>-->
- <!-- <el-row>
- <el-col :span="8">
- <el-form-item label="鍦烘櫙鍚嶇О">
- <el-input v-model="sceneForm.scene_name" size="mini" style="width:200px"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="鍦烘櫙鎻忚堪">
- <el-input v-model="sceneForm.desc" type="textarea" size="mini" style="width:200px;height:180px;"></el-input>
- </el-form-item>
- </el-col>
- </el-row>-->
- <!-- <el-row>
- <el-col :span="8">
- <el-form-item label="浜嬩欢绛夌骇">
- <el-select
- v-model="sceneForm.alarm_level"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width:200px"
- >
- <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-select>
- </el-form-item>
- </el-col>
- </el-row>-->
-
+
<scene-editor
ref="sceneEditor"
:isLinkRule="linkRule"
diff --git a/src/pages/cameraAccess/components/SeparateRules.vue b/src/pages/cameraAccess/components/SeparateRules.vue
index c6aa3f2..807cc3b 100644
--- a/src/pages/cameraAccess/components/SeparateRules.vue
+++ b/src/pages/cameraAccess/components/SeparateRules.vue
@@ -2,114 +2,104 @@
<div class="s-separate-rules">
<div class="ai">
<div class="check-area">
- <el-row class="mt5">
- <el-col :span="24">
- <div class="ai-select">
- <div style="float:left;" v-show="cameraType === 'camera'">
- <span>
- <span class="label">瑙嗛鍒嗘瀽澶勭悊</span>
- <el-switch
- style="margin-left: 10px;"
- v-model="Camera.analytics"
- @change="pollEnable"
- :disabled="!Camera.cameraId"
- ></el-switch>
- </span>
- </div>
+ <div class="ai-select">
+ <div v-show="cameraType === 'camera'">
+ <span>
+ <span class="label">瑙嗛鍒嗘瀽澶勭悊</span>
+ <el-switch
+ style="margin-left: 10px;"
+ v-model="Camera.analytics"
+ @change="pollEnable"
+ :disabled="!Camera.cameraId"
+ ></el-switch>
+ </span>
+ </div>
- <div
- v-if="Camera.analytics"
- style="float:left;margin-left: 5%;"
- class="flex-box"
- v-show="cameraType === 'camera'"
+ <div
+ v-if="Camera.analytics"
+ class="flex-box"
+ v-show="cameraType === 'camera'"
+ >
+ <span class="label" >澶勭悊鏂瑰紡</span>
+ <toggle-button
+ :value="Camera.dealWay"
+ :width="60"
+ :labels="{checked: '瀹炴椂', unchecked: '杞'}"
+ :color="{checked: '#3D68E1', unchecked: '#FF7733', disabled: '#CCCCCC'}"
+ :sync="true"
+ @change="changePoll"
+ />
+ </div>
+
+ <div
+ v-if="Camera.analytics"
+ class="flex-box"
+ v-show="cameraType === 'camera'"
+ >
+ <span class="label" >鍒嗚鲸鐜�</span>
+ <el-select
+ v-model="Camera.selectResolution"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 134px;
+ margin-left:10px;"
+ >
+ <el-option
+ v-for="item in Camera.resolutionOption"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ ></el-option>
+ </el-select>
+ </div>
+
+ <div v-if="Camera.analytics" class="flex-box">
+ <span class="label" >鏅鸿兘璁$畻鑺傜偣: {{ Camera.runServerName}}</span>
+ </div>
+
+ <div
+ v-if="Camera.analytics"
+ class="flex-box"
+ >
+ <span >绠楁硶蹇�熼�氶亾</span>
+ <div class="channel flex-box" >
+ <el-tooltip
+ effect="dark"
+ content="澶嶅埗姝ゆ憚鍍忔満绠楁硶瑙勫垯"
+ placement="bottom"
+ popper-class="atooltip"
>
- <span class="label" style="margin-right:10px;line-height: 22px;">澶勭悊鏂瑰紡</span>
- <toggle-button
- :value="Camera.dealWay"
- :width="60"
- :labels="{checked: '瀹炴椂', unchecked: '杞'}"
- :color="{checked: '#3D68E1', unchecked: '#FF7733', disabled: '#CCCCCC'}"
- :sync="true"
- @change="changePoll"
- />
- </div>
-
- <div
- v-if="Camera.analytics"
- style="float:left;margin-left:5%;"
- class="flex-box"
- v-show="cameraType === 'camera'"
+ <span
+ style="color:#3D68E1;cursor: pointer;font-size:23px;"
+ @click="ctrlC"
+ class="iconfont iconfuzhiguize"
+ ></span>
+ </el-tooltip>
+ <el-tooltip
+ effect="dark"
+ :content="!TreeDataPool.ctrlCameraId?'绮樿创绠楁硶瑙勫垯':`绮樿创绠楁硶瑙勫垯锛屾潵婧愶細${TreeDataPool.ctrlCameraName}`"
+ placement="bottom"
+ popper-class="atooltip"
>
- <span class="label" style="line-height:25px">鍒嗚鲸鐜�</span>
- <el-select
- v-model="Camera.selectResolution"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 134px;height: 30px;
- margin-left:10px;position: relative;bottom: 3px;"
- >
- <el-option
- v-for="item in Camera.resolutionOption"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- ></el-option>
- </el-select>
- </div>
-
- <div v-if="Camera.analytics" style="float:left;margin-left:5%;" class="flex-box">
- <span class="label" style="line-height:22px">鏅鸿兘璁$畻鑺傜偣: {{ Camera.runServerName}}</span>
- </div>
-
- <div
- v-if="Camera.analytics"
- style="float:left;margin-left: 5%;line-height: 22px;"
- class="flex-box"
- >
- <span style="float:left;">绠楁硶蹇�熼�氶亾</span>
- <div class="flex-box" style="float: left;
- margin-left: 5px;">
- <el-tooltip
- effect="dark"
- content="澶嶅埗姝ゆ憚鍍忔満绠楁硶瑙勫垯"
- placement="bottom"
- popper-class="atooltip"
- >
- <span
- style="color:#3D68E1;cursor: pointer;font-size:23px;"
- @click="ctrlC"
- class="iconfont iconfuzhiguize"
- ></span>
- </el-tooltip>
- <el-tooltip
- effect="dark"
- :content="!TreeDataPool.ctrlCameraId?'绮樿创绠楁硶瑙勫垯':`绮樿创绠楁硶瑙勫垯锛屾潵婧愶細${TreeDataPool.ctrlCameraName}`"
- placement="bottom"
- popper-class="atooltip"
- >
- <span
- :style="!TreeDataPool.ctrlCameraId?'cursor: not-allowed;font-size:23px;':'color:#3D68E1;font-size:23px;cursor: pointer;'"
- @click="ctrlV"
- class="iconfont iconniantie ml5"
- ></span>
- </el-tooltip>
- </div>
- </div>
+ <span
+ :style="!TreeDataPool.ctrlCameraId?'cursor: not-allowed;font-size:23px;':'color:#3D68E1;font-size:23px;cursor: pointer;'"
+ @click="ctrlV"
+ class="iconfont iconniantie ml5"
+ ></span>
+ </el-tooltip>
</div>
- </el-col>
- </el-row>
+ </div>
+ </div>
</div>
</div>
- <div
- style="width: calc(100% + 76px);position: absolute;left: -38px;top:38px;height: 10px;background-color: #E9EBF2;"
- ></div>
+ <div class="devide"></div>
<div class="top" style="top:60px;">
<p class="task-css">
<b style="font-size: 14px; line-height: 18px;">鍦烘櫙</b>
</p>
- <div>
+ <div class="clearfix">
<slide-scene :sceneData="Camera.rules"></slide-scene>
<div class="top-right">
<sysinfo
@@ -120,55 +110,10 @@
/>
</div>
</div>
-
- <!-- <swiper :options="swiperOption" class="swiper-box-container">
-
- <swiper-slide v-for="(item, index) in 10" :key="index">
- <div class="item-card">
- <p style="color: #0066EB;padding-top: 20px;">
- <b>{{ item }}</b>
- </p>
- </div>
- </swiper-slide>
- </swiper>
- <div class="swiper-pre-border" >
- <div class="icon-btn" slot="button-prev">
- <i class="iconfont iconzuo"></i>
- </div>
- </div>
- <div class="swiper-next-border" >
- <div class="icon-btn" slot="button-next">
- <i class="iconfont iconyou1"></i>
- </div>
- </div>-->
- <!-- <swiper :options="swiperOption" class="swiper-box-container">
- <span class="task-tip" v-show="Camera.rules.length == 0 ">鏆傛棤鍦烘櫙,璇峰紑濮嬪垱寤�</span>
- <swiper-slide v-for="(item, index) in Camera.rules" :key="index">
- <div class="item-card">
- <p style="color: #0066EB;padding-top: 20px;">
- <b>{{ item.scene_name }}</b>
- </p>
- </div>
- </swiper-slide>
- </swiper>
- <div class="swiper-pre-border" v-show="Camera.rules.length > 4 ">
- <div class="icon-btn" slot="button-prev">
- <i class="iconfont iconzuo"></i>
- </div>
- </div>
- <div class="swiper-next-border" v-show="Camera.rules.length > 4 ">
- <div class="icon-btn" slot="button-next">
- <i class="iconfont iconyou1"></i>
- </div>
- </div>-->
-
- <!-- 绯荤粺淇℃伅 -->
</div>
- <div class="bottom" style="top:254px;">
- <div
- style="width: calc(100% + 100px);height: 10px;background-color: #E9EBF2;position:relative;left:-40px"
- ></div>
+ <div class="bottom" >
+ <div class="devide"></div>
<div class="bottom-right">
<div class="draw-and-time-box">
<div class="draw-box">
@@ -252,8 +197,8 @@
import TimeSlider from "./TimeSlider";
import polygonCanvas from "@/components/canvas";
-import Sysinfo from "./SystemInfo";
-
+//import Sysinfo from "./SystemInfo";
+import Sysinfo from "@/components/subComponents/SystemInfo";
import SceneRule from "./SceneRule";
import SlideScene from "./scene/SlideScene";
@@ -525,28 +470,42 @@
<style lang="scss">
.s-separate-rules {
width: 100%;
- height: 100%;
- position: relative;
+
.ai {
- width: calc(100% + 76px);
- height: 38px;
- position: absolute;
- left: -38px;
+ //width: calc(100% + 76px);
+ // height: 38px;
+ // position: absolute;
+ // left: -38px;
+ height:40px;
.check-area {
width: 100%;
height: 100%;
- float: left;
- overflow: auto;
- padding: 0 38px;
+ padding: 0 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
+ .ai-select{
+ line-height: 30px;
+ height: 30px;
+ }
+ .ai-select>div{
+ display: inline-block;
+ vertical-align: middle;
+ margin-right: 30px;
+
+ .channel{
+ display: inline-block;
+ }
+ }
}
+ }
+ .devide{
+ height: 10px;
+ background: #E9EBF2;
}
.top {
width: 100%;
- height: 174px;
- position: relative;
- top: 60px;
+ padding: 10px 20px;
+ box-sizing: border-box;
.swiper-box {
height: 100%;
float: left;
@@ -653,9 +612,7 @@
}
.bottom {
width: 100%;
- height: calc(100% - 234px);
- position: absolute;
- top: 234px;
+
.bottom-side {
height: 100%;
width: 250px;
@@ -681,11 +638,7 @@
}
}
.bottom-right {
- width: calc(100% + 30px);
- height: 100%;
- float: left;
- overflow: auto;
- padding: 10px 0px;
+ padding: 10px 20px;
box-sizing: border-box;
.draw-and-time-box {
height: 400px;
diff --git a/src/pages/cameraAccess/index/App.vue b/src/pages/cameraAccess/index/App.vue
index 07c77bb..ed18d33 100644
--- a/src/pages/cameraAccess/index/App.vue
+++ b/src/pages/cameraAccess/index/App.vue
@@ -63,10 +63,9 @@
}
.column-right {
height: 100%;
- padding: 16px;
- background-color: #eee;
+ background-color: #fff;
box-sizing: border-box;
- overflow: hidden;
+ overflow: auto;
}
.resize-save {
position: absolute;
diff --git a/src/pages/cameraAccess/index/VideoManage.vue b/src/pages/cameraAccess/index/VideoManage.vue
index 09eb5c2..b06836b 100644
--- a/src/pages/cameraAccess/index/VideoManage.vue
+++ b/src/pages/cameraAccess/index/VideoManage.vue
@@ -250,6 +250,8 @@
height: 100%;
width: 100%;
.el-tabs__header {
+ position: fixed;
+ top: 16px;
.is-active {
color: #3d68e1 !important;
}
@@ -278,9 +280,10 @@
}
.el-tabs__content {
width: 100%;
- height: calc(100% - 52px);
+ margin-top: 52px;
+ //height: calc(100% - 52px);
box-sizing: border-box;
- padding: 13px 38px;
+ padding: 13px 0;
}
.el-tab-pane {
width: 100%;
diff --git a/src/pages/cameraVideo/index/App.vue b/src/pages/cameraVideo/index/App.vue
index 8b784d2..998da23 100644
--- a/src/pages/cameraVideo/index/App.vue
+++ b/src/pages/cameraVideo/index/App.vue
@@ -52,8 +52,7 @@
}
.column-right {
height: 100%;
- padding: 16px;
- background-color: #eee;
+ background-color: #fff;
box-sizing: border-box;
overflow: hidden;
}
diff --git a/src/pages/cameraVideo/index/Video.vue b/src/pages/cameraVideo/index/Video.vue
index 278fa15..32cd6ca 100644
--- a/src/pages/cameraVideo/index/Video.vue
+++ b/src/pages/cameraVideo/index/Video.vue
@@ -147,7 +147,6 @@
},
created() {
console.log("befor created")
- debugger
// this.TreeDataPool.clean();
// this.TreeDataPool.fetchTreeData();
// this.guid = sessionStorage.guid ? Number(sessionStorage.guid) : this.guid;
@@ -559,7 +558,7 @@
float: right;
box-sizing: border-box;
padding: 10px;
- background-color: #e9ebf2;
+ background-color: #fff;
.monitoring-video {
width: 70.5%;
//min-width: 800px;
@@ -567,9 +566,7 @@
max-width: 1208px;
height: 75%;
float: left;
- padding: 0px, 10px 10px 10px;
box-sizing: border-box;
- border: 1px solid #e4e7ed;
// box-shadow: #e4e7ed 0px 0px 9px inset;
border-radius: 5px;
.activeItem {
diff --git a/src/pages/desktop/index/components/DFrame.vue b/src/pages/desktop/index/components/DFrame.vue
index 5589cdc..c19e0fc 100644
--- a/src/pages/desktop/index/components/DFrame.vue
+++ b/src/pages/desktop/index/components/DFrame.vue
@@ -7,9 +7,16 @@
>
<div class="d-frame-title" v-drag @click="frameClick()">
<div class="d-frame-title-operation">
- <i class="el-icon-error d-frame-operation-close" @click="closeFrame()"></i>
- <i class="el-icon-remove d-frame-operation-minus" @click="minFrame(data)"></i>
- <i class="el-icon-circle-plus d-frame-operation-full" @click="changeFullScreen()"></i>
+ <i class="icon-minus d-frame-operation-minus" @click="minFrame(data,$event)">
+ <img :src="`${publicPath}images/desktop/header-icon/min.png`" alt="">
+ </i>
+ <i class="icon-screen-toggle d-frame-operation-full" @click="changeFullScreen($event)">
+ <img :src="fullScreen?`${publicPath}images/desktop/header-icon/mini.png`:`${publicPath}images/desktop/header-icon/max.png`" alt="">
+ </i>
+ <i class="icon-close d-frame-operation-close" @click="closeFrame($event)">
+
+ </i>
+
</div>
<slot name="d-frame-title-content">
<div class="d-frame-title-content">
@@ -42,6 +49,7 @@
},
data() {
return {
+ publicPath: process.env.BASE_URL,
fullScreen: false,
width: this.data.width || 1024,
height: this.data.height || 512,
@@ -64,7 +72,6 @@
methods: {
//resize
mousedown(e) {
- debugger
this.resizeObj.mouX = e.clientX;
this.resizeObj.mouY = e.clientY;
this.resizeObj.startW = this.width;
@@ -97,7 +104,8 @@
frameClick: function () {
this.$store.commit('desktop/refreshFrame', this.data);
},
- minFrame: function (data) {
+ minFrame (data,e) {
+ //e.stopPropagation()
//鎵惧埌褰撳墠鐨刬frame
let curIframe = Array.from(document.querySelectorAll('iframe')).find(iframe => iframe.src.indexOf(data.url) >= 0);
//淇濆瓨褰撳墠搴旂敤蹇収
@@ -154,8 +162,8 @@
toLeft = document.body.getBoundingClientRect().width-40;
}
el.parentElement.style.left = toLeft + 'px';
- if(toTop <= 0 ){
- toTop = 0
+ if(toTop <= 40 ){
+ toTop = 40
}else if(toTop >= document.body.getBoundingClientRect().height-40){
toTop = document.body.getBoundingClientRect().height-40;
}
@@ -218,21 +226,33 @@
border-top: 1px solid #d0d0d0;
border-left: 1px solid #d0d0d0;
border-right: 1px solid #d0d0d0;
-}
+}
+.d-frame-title .icon-close{
+ border-radius: 0 4px 0 0;
+ background:url('/images/desktop/header-icon/close.png') no-repeat 50%;
+}
.d-frame-title-operation {
position: absolute;
- line-height: 30px;
- left: 5px;
+ top: 0;
+ right: 0;
+ height: 30px;
}
.d-frame-title-operation i {
- margin: 0 3px;
font-size: 18px;
+ display: inline-block;
+ height: 100%;
+ width: 46px;
+ text-align: center;
+ vertical-align: middle;
}
-
-.d-frame-operation-close {
- color: red;
+.d-frame-title-operation i:hover{
+ background-color: #c7cacf;
+}
+.d-frame-title-operation .icon-close:hover{
+ background-color: red;
+ background-image: url('/images/desktop/header-icon/close-hover.png')
}
/* .d-frame-title-operation:hover .d-frame-operation-close::before {
@@ -258,19 +278,22 @@
.d-frame-title-content {
line-height: 30px;
text-align: center;
+ background: #dee1e6;
}
.d-frame-title-content img {
width: auto;
height: 18px;
position: relative;
- top: 3px;
+ top: 2px;
margin-right: 6px;
}
.d-frame-title-content span {
position: relative;
top: -1px;
+ font-size: 15px;
+ color: #777;
/* font-family: '榛戜綋'; */
}
diff --git a/src/pages/desktop/index/components/NoticeTip.vue b/src/pages/desktop/index/components/NoticeTip.vue
index f6620bd..c000f28 100644
--- a/src/pages/desktop/index/components/NoticeTip.vue
+++ b/src/pages/desktop/index/components/NoticeTip.vue
@@ -47,7 +47,7 @@
.notice-tip {
position: absolute;
right: 10px;
- top: 40px;
+ top: 50px;
height: 60px;
width: 250px;
background-color: rgba(200, 200, 200, 0.7);
diff --git a/src/pages/desktop/index/components/Tools.vue b/src/pages/desktop/index/components/Tools.vue
index b02a46b..d2e1367 100644
--- a/src/pages/desktop/index/components/Tools.vue
+++ b/src/pages/desktop/index/components/Tools.vue
@@ -7,7 +7,7 @@
>
<img class="system" :src="`${publicPath}images/desktop/header-icon/system.png`" />
</div>
- <div class="tools-icon">
+ <div class="tools-icon no-hover-style">
<img class="smart-ai" :src="`${publicPath}images/desktop/header-icon/SmartAI.png`" alt />
</div>
</div>
@@ -90,6 +90,7 @@
})
},
dockClick(dock) {
+ debugger
if (dock.type === "1") {
window.open(dock.url);
} else if (dock.type === "2") {
@@ -157,7 +158,6 @@
color: white;
background-color: #98aabe;
border-color: #40c3ff;
- cursor: pointer;
}
.dock-item-wrap a {
height: 100%;
@@ -187,8 +187,8 @@
padding: 0 15px;
}
-.tools .tools-icon:hover,
-.tools .tools-icon.clicked {
+.tools .tools-icon:not(.no-hover-style):hover,
+.tools .tools-icon:not(.no-hover-style).clicked {
color: white;
background-color: #98aabe;
cursor: pointer;
diff --git a/src/pages/desktop/index/components/ToolsEntry.vue b/src/pages/desktop/index/components/ToolsEntry.vue
index 164f9c4..1006a0f 100644
--- a/src/pages/desktop/index/components/ToolsEntry.vue
+++ b/src/pages/desktop/index/components/ToolsEntry.vue
@@ -30,22 +30,18 @@
},
methods: {
dockClick(dock) {
+ debugger
if (dock.type === '1') {
window.open(dock.url);
- } else if (dock.type === '2') {
- let ids = this.$store.getters["desktop/frames"].map(item => item.id);
- if (ids.indexOf(dock.id) > -1) {
- this.$store.commit('desktop/resetMinFrame', dock.id);
- this.resetDockItem();
- return;
- }
-
- let ret = this.$store.dispatch('desktop/addFrame', {
+ } else if (dock.type === '2' && !dock.isOpen) {
+ this.$store.dispatch('desktop/addFrame', {
id: dock.id,
icon: dock.src,
title: dock.name,
url: dock.url
});
+ } else if (dock.type === '2' && dock.isOpen) {
+ this.$store.commit('desktop/resetMinFrame', dock.id);
}
},
resetDockItem() {
diff --git a/src/pages/desktop/index/mock/userData.json b/src/pages/desktop/index/mock/userData.json
index 528e319..e2ad73a 100644
--- a/src/pages/desktop/index/mock/userData.json
+++ b/src/pages/desktop/index/mock/userData.json
@@ -9,7 +9,9 @@
"alt": "GB28181閰嶇疆",
"type": "2",
"url": "/view/gb28181",
- "name": "GB28181閰嶇疆"
+ "name": "GB28181閰嶇疆",
+ "width": 600,
+ "height": 900
},
{
"id": "12",
diff --git a/src/pages/gb28181/index/App.vue b/src/pages/gb28181/index/App.vue
index 1c8fb77..d5db26f 100644
--- a/src/pages/gb28181/index/App.vue
+++ b/src/pages/gb28181/index/App.vue
@@ -1,7 +1,7 @@
<template>
<div class="s-basic-setting">
<!-- GB28181璁剧疆 -->
- <el-form :model="gb28181" :rules="rules" label-width="140px" class="alarmSetting" ref="gb28181">
+ <el-form :model="gb28181" :rules="rules" label-width="130px" class="alarmSetting" ref="gb28181">
<!-- <el-form-item label="鍥介檯鏈嶅姟鍣↖P" prop="ServerIp">
<ip-input :ip="gb28181.ServerIp" @on-blur="gb28181.ServerIp = arguments[0]"></ip-input>
</el-form-item>-->
@@ -84,11 +84,9 @@
<el-input v-model="gb28181.Password" placeholder="璇疯緭鍏�" size="small"></el-input>
</el-form-item>
- <el-col :span="12">
- <el-form-item>
- <el-button type="primary" @click="submitGB28281" size="small">淇濆瓨</el-button>
- </el-form-item>
- </el-col>
+ <el-form-item>
+ <el-button type="primary" @click="submitGB28281" size="small">淇濆瓨</el-button>
+ </el-form-item>
</el-form>
</div>
</template>
@@ -114,8 +112,10 @@
},
data() {
return {
- gb28181: {},
-
+ gb28181: {
+
+ },
+ idType: 1,
rules: {
ip: [
{
@@ -161,16 +161,17 @@
};
},
mounted() {
- this.$nextTick(() => {
+ //this.$nextTick(()=>{
this.initGB28181Conf();
- });
+ //})
},
methods: {
initGB28181Conf() {
getGB28181Config().then(rsp => {
if (rsp && rsp.success) {
this.gb28181 = rsp.data;
- this.gb28181.idType = 0;
+ //this.gb28181.idType = 0;
+ this.$set(this.gb28181,'idType',0);
}
});
getGb28181AreaList().then(rsp => {
@@ -231,7 +232,6 @@
height: 100%;
padding: 0 30px;
.el-form {
- width: 1000px;
margin-top: 30px;
// margin-left: -80px;
.el-form-item {
diff --git a/src/pages/library/index/App.vue b/src/pages/library/index/App.vue
index e7f7ab2..5623643 100644
--- a/src/pages/library/index/App.vue
+++ b/src/pages/library/index/App.vue
@@ -1,6 +1,6 @@
<template>
<div class="s-base-manage">
- <div class="flex-box base-overflow" style="margin-top: 10px;height: calc(100% - 20px);">
+ <div class="flex-box base-overflow" >
<div class="pl20 data-left-box">
<base-list
ref="baseSync"
@@ -123,9 +123,7 @@
</script>
<style lang="scss" scoped>
.s-base-manage {
- width: 100% !important;
box-sizing: border-box;
- padding: 5px;
background-color: #e9ebf2;
}
.base-overflow {
--
Gitblit v1.8.0