From 88078aa63c669cffc2d91e1269d460436427d09d Mon Sep 17 00:00:00 2001
From: ZZJ <10913410+zzj2100@user.noreply.gitee.com>
Date: 星期四, 28 七月 2022 10:21:01 +0800
Subject: [PATCH] gb18186
---
src/components/canvas/index.vue | 78 ++++++++++++++++++++++++++------------
1 files changed, 53 insertions(+), 25 deletions(-)
diff --git a/src/components/canvas/index.vue b/src/components/canvas/index.vue
index b7266ef..2467ad5 100644
--- a/src/components/canvas/index.vue
+++ b/src/components/canvas/index.vue
@@ -42,7 +42,7 @@
</template>
<script>
import canvasDialog from "./Dialog";
-import { updateSnapshot } from "@/api/camera";
+import { updateSnapshot, updategb28181 } from "@/api/camera";
export default {
name: "myCanvas",
components: {
@@ -79,9 +79,8 @@
},
type: Object,
},
- currentCameraId: {
- type: String,
- default: "",
+ currentCamera: {
+ type: Object,
},
snapshot_url: {
type: String,
@@ -116,10 +115,15 @@
return this.snapshot_url.replace("/opt/vasystem", "");
}
+ if (this.snapshot_url.indexOf("data:image/png;base64,") != -1) {
+ return `${this.snapshot_url}`;
+ }
+
if (this.sourceType == 2) {
return `${this.snapshot_url}`;
} else {
- return `/httpImage/${this.snapshot_url}`;
+ console.log(this.snapshot_url);
+ return `http://${this.snapshot_url}`;
}
} else {
return this.blackImg;
@@ -148,7 +152,6 @@
watch: {
loading: {
handler(newVal, oldVal) {
- // console.log(newVal,'loading')
if (newVal) {
this.baseImg = "";
this.refresh();
@@ -182,30 +185,54 @@
async getCanvasPic() {
// this.$emit('changeBaseImg',this.currentCameraId)
this.$emit("changeLoading", true);
- if (this.currentCameraId) {
+ if (this.currentCamera.cameraId) {
let _this = this;
- await updateSnapshot(this.currentCameraId)
- .then((res) => {
- if (res.data.cameraId === _this.currentCameraId) {
- this.baseImg = res.data.snapshotUrl;
- this.$emit(
+
+ if (_this.currentCamera.type === 1) {
+ await updategb28181({
+ id: _this.currentCamera.cameraId,
+ }).then((res) => {
+ if (res.data.cameraId === _this.currentCamera.cameraId) {
+ _this.baseImg = "data:image/png;base64," + res.data.base64;
+ _this.$emit(
"refresh",
- res.data.snapshotUrl,
- _this.currentCameraId
+ _this.baseImg,
+ _this.currentCamera.cameraName
);
- this.$forceUpdate();
- this.$notify({
+ _this.$forceUpdate();
+ _this.$notify({
type: "success",
message: "搴曞浘宸插埛鏂�",
});
}
- })
- .catch((err) => {
- this.$notify({
- type: "error",
- message: "搴曞浘鍒锋柊澶辫触",
- });
});
+
+ this.$emit("changeLoading", false);
+
+ return;
+ }
+
+ await updateSnapshot({
+ id: _this.currentCamera.cameraId,
+ name: _this.currentCamera.cameraName,
+ type: _this.currentCamera.type,
+ rtsp: _this.currentCamera.rtsp,
+ }).then((res) => {
+ if (res.data.cameraId === _this.currentCamera.cameraId) {
+ _this.baseImg = "data:image/png;base64," + res.data.base64;
+ _this.$emit(
+ "refresh",
+ _this.baseImg,
+ _this.currentCamera.cameraName
+ );
+ _this.$forceUpdate();
+ _this.$notify({
+ type: "success",
+ message: "搴曞浘宸插埛鏂�",
+ });
+ }
+ });
+
this.$emit("changeLoading", false);
}
},
@@ -523,8 +550,9 @@
ctx.restore();
},
async refresh() {
- // console.log(this.loading,'鍒锋柊搴曞浘',this.snapshot_url)
- if (!this.currentCameraId) {
+ console.log("鍒锋柊搴曞浘");
+ if (!this.currentCamera.cameraId) {
+ console.log("娌″埛鏂�");
return false;
}
// await this.$emit('changeLoading', true)
@@ -631,7 +659,7 @@
.dialog-footer {
display: flex;
- justify-content: end;
+ justify-content: flex-end;
text-align: center;
line-height: 32px;
font-size: 14px;
--
Gitblit v1.8.0