|
|
@@ -94,8 +94,22 @@
|
|
|
<div class="detail_line"></div>
|
|
|
|
|
|
<!-- 简介区域 -->
|
|
|
- <div class="detail_desc">
|
|
|
+ <!-- <div class="detail_desc">
|
|
|
{{ scenicInfo?.scenicSpotDesc || "暂无数据" }}
|
|
|
+ </div> -->
|
|
|
+
|
|
|
+ <div class="detail_desc">
|
|
|
+ <el-table
|
|
|
+ :data="tableData"
|
|
|
+ style="width: 100%"
|
|
|
+ v-loading="loading"
|
|
|
+ element-loading-text="加载中..."
|
|
|
+ element-loading-background="rgba(1,18,38, 0.8)"
|
|
|
+ >
|
|
|
+ <el-table-column prop="sm_name" label="姓名" align="center" />
|
|
|
+ <el-table-column prop="sm_phone" label="电话" align="center" />
|
|
|
+ <el-table-column prop="sm_time" label="时间" align="center" />
|
|
|
+ </el-table>
|
|
|
</div>
|
|
|
|
|
|
<!-- 关闭按钮区域 -->
|
|
|
@@ -108,7 +122,11 @@
|
|
|
import { ref, onMounted, onUnmounted } from "vue";
|
|
|
import { countUpNum } from "@/utils/countUpNum.ts";
|
|
|
// 引入景点相关的接口
|
|
|
-import { reqGetScenicInfo, reqGetScenicInfoByNum } from "@/api/scenic/index";
|
|
|
+import {
|
|
|
+ reqGetScenicInfo,
|
|
|
+ reqGetScenicInfoByNum,
|
|
|
+ reqGetScenicDetail,
|
|
|
+} from "@/api/scenic/index";
|
|
|
// 引入监控相关的数据接口
|
|
|
import { getVedio } from "@/api/video/index";
|
|
|
// @ts-ignore
|
|
|
@@ -145,8 +163,14 @@ const isShow = ref(false);
|
|
|
// 延时器实例
|
|
|
const videoTimer = ref();
|
|
|
|
|
|
+// loading加载效果控制
|
|
|
+const loading = ref(true);
|
|
|
+
|
|
|
+// 表格数据
|
|
|
+const tableData = ref([]);
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
- console.log(props.detailObj);
|
|
|
+ // console.log(props.detailObj);
|
|
|
|
|
|
// 获取监控视频地址
|
|
|
getVideosData();
|
|
|
@@ -154,10 +178,13 @@ onMounted(() => {
|
|
|
getScenicInfo();
|
|
|
// 获取单个景点人数相关信息
|
|
|
getScenicInfoByNum(true);
|
|
|
+ // 获取表格数据
|
|
|
+ getTableData();
|
|
|
|
|
|
// 每5秒刷新数据
|
|
|
timer.value = setInterval(() => {
|
|
|
getScenicInfoByNum(false);
|
|
|
+ getTableData();
|
|
|
}, 5000);
|
|
|
});
|
|
|
|
|
|
@@ -204,7 +231,7 @@ const getScenicInfoByNum = async (flag: boolean) => {
|
|
|
const res = await reqGetScenicInfoByNum({
|
|
|
place_name: props.detailObj.place,
|
|
|
});
|
|
|
- console.log(res);
|
|
|
+ // console.log(res);
|
|
|
dayValue.value = res.dayNum;
|
|
|
addValue.value = res.LjNum * 1;
|
|
|
moreValue.value = res.maxNum;
|
|
|
@@ -214,6 +241,18 @@ const getScenicInfoByNum = async (flag: boolean) => {
|
|
|
}
|
|
|
};
|
|
|
|
|
|
+// 获取表格数据
|
|
|
+const getTableData = async () => {
|
|
|
+ const res: any = await reqGetScenicDetail({
|
|
|
+ sm_place: props.detailObj.place,
|
|
|
+ page: 1,
|
|
|
+ rows: 20,
|
|
|
+ });
|
|
|
+ //console.log(res);
|
|
|
+ tableData.value = res.rows || [];
|
|
|
+ loading.value = false;
|
|
|
+};
|
|
|
+
|
|
|
// 让数字跳动
|
|
|
const getCountUpNum = () => {
|
|
|
countUpNum(dayDom.value, dayValue.value);
|
|
|
@@ -418,4 +457,36 @@ const handleCloseDetail = () => {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+/*最外层透明*/
|
|
|
+.detail_desc ::v-deep(.el-table),
|
|
|
+.detail_desc ::v-deep(.el-table__expanded-cell) {
|
|
|
+ background-color: transparent;
|
|
|
+ color: white;
|
|
|
+ border: none;
|
|
|
+}
|
|
|
+/* 表格内背景颜色 */
|
|
|
+.detail_desc ::v-deep(.el-table th),
|
|
|
+.detail_desc ::v-deep(.el-table tr),
|
|
|
+.detail_desc ::v-deep(.el-table td) {
|
|
|
+ background-color: transparent !important;
|
|
|
+ color: white;
|
|
|
+ font-size: 16px;
|
|
|
+ border-color: rgba(255, 255, 255, 0.1);
|
|
|
+}
|
|
|
+
|
|
|
+// 表格底部白线清除
|
|
|
+::v-deep(.el-table__inner-wrapper::before) {
|
|
|
+ height: 0;
|
|
|
+}
|
|
|
+
|
|
|
+// 修改表头背景颜色
|
|
|
+::v-deep(.el-table__header) {
|
|
|
+ background-color: rgba(58, 126, 199, 0.5);
|
|
|
+}
|
|
|
+// 清除表格默认padding
|
|
|
+::v-deep(.el-table .el-table__body-wrapper .el-table__cell) {
|
|
|
+ padding: 0;
|
|
|
+ height: 55px;
|
|
|
+}
|
|
|
</style>
|