|
@@ -11,6 +11,11 @@
|
|
|
<div class="tree">
|
|
<div class="tree">
|
|
|
<LayTree :data="data" :tail-node-icon="false" :onlyIconControl="true" v-model:selectedKey="selectedKey"
|
|
<LayTree :data="data" :tail-node-icon="false" :onlyIconControl="true" v-model:selectedKey="selectedKey"
|
|
|
@node-click="handleClick">
|
|
@node-click="handleClick">
|
|
|
|
|
+ <template #title="{ data }">
|
|
|
|
|
+ <div style="display: flex;flex-direction: row;justify-content: space-around;">
|
|
|
|
|
+ <div>{{ data.name }}</div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </template>
|
|
|
</LayTree>
|
|
</LayTree>
|
|
|
</div>
|
|
</div>
|
|
|
</el-card>
|
|
</el-card>
|
|
@@ -62,11 +67,11 @@
|
|
|
<el-button link @click="goUpdate(scope.row)">
|
|
<el-button link @click="goUpdate(scope.row)">
|
|
|
<el-tooltip effect="dark" content="修改">
|
|
<el-tooltip effect="dark" content="修改">
|
|
|
<el-icon>
|
|
<el-icon>
|
|
|
- <Memo />
|
|
|
|
|
|
|
+ <Edit />
|
|
|
</el-icon>
|
|
</el-icon>
|
|
|
</el-tooltip>
|
|
</el-tooltip>
|
|
|
</el-button>
|
|
</el-button>
|
|
|
- <el-popconfirm title="确定删除该标签?">
|
|
|
|
|
|
|
+ <el-popconfirm title="确定删除该编码?" @confirm="godelVideo(scope.row)">
|
|
|
<template #reference>
|
|
<template #reference>
|
|
|
<el-button link><el-tooltip effect="dark" content="删除"><el-icon>
|
|
<el-button link><el-tooltip effect="dark" content="删除"><el-icon>
|
|
|
<Delete />
|
|
<Delete />
|
|
@@ -97,13 +102,21 @@ import { useRoute, useRouter } from "vue-router";
|
|
|
import { LayTree } from "@layui/layui-vue";
|
|
import { LayTree } from "@layui/layui-vue";
|
|
|
import "@layui/layui-vue/lib/index.css";
|
|
import "@layui/layui-vue/lib/index.css";
|
|
|
import { listVideo, getVideo, delVideo, addVideo, updateVideo } from "@/api/data/video";
|
|
import { listVideo, getVideo, delVideo, addVideo, updateVideo } from "@/api/data/video";
|
|
|
|
|
+import { listVideoDetail, getVideoDetail, delVideoDetail, addVideoDetail, updateVideoDetail } from "@/api/data/videoDetail";
|
|
|
|
|
|
|
|
|
|
|
|
|
const route = useRoute();
|
|
const route = useRoute();
|
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
|
|
|
|
|
|
|
+const treeList = ref([])
|
|
|
|
|
+
|
|
|
const handleClick = (node) => {
|
|
const handleClick = (node) => {
|
|
|
- console.log("Click Node:" + JSON.stringify(node));
|
|
|
|
|
|
|
+ if (node.videoId != null) {
|
|
|
|
|
+ searchform.value.id = node.videoId
|
|
|
|
|
+ } else {
|
|
|
|
|
+ searchform.value.id = node.id
|
|
|
|
|
+ }
|
|
|
|
|
+ getVideoList();
|
|
|
};
|
|
};
|
|
|
const selectedKey = ref(1);
|
|
const selectedKey = ref(1);
|
|
|
const data = ref([
|
|
const data = ref([
|
|
@@ -142,6 +155,10 @@ const data = ref([
|
|
|
},
|
|
},
|
|
|
]);
|
|
]);
|
|
|
|
|
|
|
|
|
|
+const handleClickTitle = (data) => {
|
|
|
|
|
+ console.log(data)
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
const pagedata = ref({
|
|
const pagedata = ref({
|
|
|
total: 0,
|
|
total: 0,
|
|
|
size: 10,
|
|
size: 10,
|
|
@@ -153,6 +170,7 @@ const devicetabledata = ref([1]);
|
|
|
|
|
|
|
|
const searchform = ref({
|
|
const searchform = ref({
|
|
|
name: "",
|
|
name: "",
|
|
|
|
|
+ id: null,
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
const onchangepage = (page) => {
|
|
const onchangepage = (page) => {
|
|
@@ -161,27 +179,65 @@ const onchangepage = (page) => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const godetail = () => {
|
|
const godetail = () => {
|
|
|
|
|
+ router.push("/device/camera/detail")
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
|
|
+const godelVideo = (item) => {
|
|
|
|
|
+ console.log(item)
|
|
|
|
|
+ delVideo(item.id).then(res => {
|
|
|
|
|
+ if (res.code == 200) {
|
|
|
|
|
+ getVideoList();
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
- router.push("/device/camera/detail")
|
|
|
|
|
|
|
+async function getVideoDetailList() {
|
|
|
|
|
+ listVideoDetail({ pageSize: 10000 }).then(res => {
|
|
|
|
|
+ console.log(treeList.value);
|
|
|
|
|
+ treeList.value.forEach(video => {
|
|
|
|
|
+ video.children = [];
|
|
|
|
|
+ res.rows.forEach(detail => {
|
|
|
|
|
+ if (video.id == detail.videoId) {
|
|
|
|
|
+ detail.name = detail.cameraName
|
|
|
|
|
+ video.children.push(detail);
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ })
|
|
|
|
|
+ console.log(treeList.value);
|
|
|
|
|
+ data.value = treeList.value
|
|
|
|
|
+ return res
|
|
|
|
|
+ })
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+async function getVideoDeviceList() {
|
|
|
|
|
+ listVideo({ pageSize: 10000 }).then(res => {
|
|
|
|
|
+ treeList.value = res.rows;
|
|
|
|
|
+ })
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
|
|
+async function videoTreeList() {
|
|
|
|
|
+ await getVideoDeviceList()
|
|
|
|
|
+ await getVideoDetailList()
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const getVideoList = () => {
|
|
const getVideoList = () => {
|
|
|
|
|
+ console.log(searchform.value);
|
|
|
listVideo({ ...searchform.value, pageSize: pagedata.value.size, pageNum: pagedata.value.current }).then(res => {
|
|
listVideo({ ...searchform.value, pageSize: pagedata.value.size, pageNum: pagedata.value.current }).then(res => {
|
|
|
devicetabledata.value = res.rows
|
|
devicetabledata.value = res.rows
|
|
|
})
|
|
})
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-const goAdd = () =>{
|
|
|
|
|
|
|
+const goAdd = () => {
|
|
|
router.push("/device/camera/add")
|
|
router.push("/device/camera/add")
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-const goUpdate = (item) =>{
|
|
|
|
|
|
|
+const goUpdate = (item) => {
|
|
|
router.push({ path: '/device/camera/add', query: { id: item.id } })
|
|
router.push({ path: '/device/camera/add', query: { id: item.id } })
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
getVideoList();
|
|
getVideoList();
|
|
|
|
|
+const res = videoTreeList();
|
|
|
|
|
+console.log(res);
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
<style></style>
|
|
<style></style>
|