|
@@ -11,20 +11,17 @@
|
|
|
<div class="btn" @click="handleCancel">取消</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div>类型</div>
|
|
|
- <div class="custom-table">
|
|
|
- <div class="th">
|
|
|
- <div class="td">
|
|
|
- <el-checkbox-group v-model="queryParams.type" size="large">
|
|
|
- <el-checkbox v-for="(item, index) in options" :key="index" :label="item.label" :value="item.value" >
|
|
|
- {{ item.label }}
|
|
|
- </el-checkbox>
|
|
|
- </el-checkbox-group>
|
|
|
- <div class="btn" @click="initData">确定</div>
|
|
|
- </div>
|
|
|
+ <div class="title-box">
|
|
|
+ <div class="gradient-text">类型</div>
|
|
|
+ </div>
|
|
|
+ <div class="box">
|
|
|
+ <div v-for="(item, index) in options" :key="index" :class="item.checked ? 'box-item box-item-active' : 'box-item'" @click="handleClick(item)">
|
|
|
+ <div class="text1">{{ item.label }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div>视频类型</div>
|
|
|
+ <div class="title-box">
|
|
|
+ <div class="gradient-text">视频类型</div>
|
|
|
+ </div>
|
|
|
<div class="custom-table">
|
|
|
<div class="th">
|
|
|
<div class="td">
|
|
@@ -72,21 +69,16 @@ const queryParams = reactive({
|
|
|
});
|
|
|
let total = ref(0);
|
|
|
const options = reactive([
|
|
|
- { label: '检测站', value: '检测站' },
|
|
|
- { label: '收费站', value: '收费站' },
|
|
|
- { label: '高速公路', value: '高速公路' },
|
|
|
- { label: '国道', value: '国道' },
|
|
|
- { label: '省市县际道路', value: '省市县际道路' },
|
|
|
- { label: '高速服务区', value: '高速服务区' }
|
|
|
+ { label: '检测站', value: '检测站', checked: true },
|
|
|
+ { label: '收费站', value: '收费站', checked: true },
|
|
|
+ { label: '高速公路', value: '高速公路', checked: true },
|
|
|
+ { label: '国道', value: '国道', checked: true },
|
|
|
+ { label: '省市县际道路', value: '省市县际道路', checked: true },
|
|
|
+ { label: '高速服务区', value: '高速服务区', checked: true }
|
|
|
]);
|
|
|
const listData = ref([]);
|
|
|
|
|
|
let showDialog = ref(false);
|
|
|
-// 请求参数
|
|
|
-const queryParams2 = reactive({
|
|
|
- current: 1,
|
|
|
- size: 1
|
|
|
-});
|
|
|
let videoMonitorData = ref({});
|
|
|
const handleShowDialog = (row) => {
|
|
|
showDialog.value = false;
|
|
@@ -108,6 +100,21 @@ const initData = () => {
|
|
|
total.value = res.total;
|
|
|
});
|
|
|
};
|
|
|
+const handleCancel = () => {
|
|
|
+ queryParams.keyword = '';
|
|
|
+ initData();
|
|
|
+};
|
|
|
+const handleClick = (item) => {
|
|
|
+ item.checked = !item.checked;
|
|
|
+ let type = [];
|
|
|
+ options.forEach((item) => {
|
|
|
+ if (!!item.checked) {
|
|
|
+ type.push(item.value);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ queryParams.type = type.toString();
|
|
|
+ initData();
|
|
|
+};
|
|
|
initData();
|
|
|
</script>
|
|
|
|
|
@@ -141,7 +148,6 @@ initData();
|
|
|
display: flex;
|
|
|
}
|
|
|
.tr {
|
|
|
-
|
|
|
height: 139px;
|
|
|
background: url('@/assets/images/map/rightMenu/td.png') no-repeat;
|
|
|
//margin-left: -23px;
|
|
@@ -195,4 +201,60 @@ initData();
|
|
|
margin-left: 20px;
|
|
|
}
|
|
|
}
|
|
|
+.box {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ font-size: 38px;
|
|
|
+ .box-item {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ padding: 35px 200px 0 105px;
|
|
|
+ cursor: pointer;
|
|
|
+ width: 527px;
|
|
|
+ height: 120px;
|
|
|
+ background: url('@/assets/images/map/rightMenu/tag.png') no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
+ margin-left: -180px;
|
|
|
+ &:nth-child(1),
|
|
|
+ &:nth-child(5) {
|
|
|
+ margin-left: -30px;
|
|
|
+ }
|
|
|
+ &:hover {
|
|
|
+ background: url('@/assets/images/map/rightMenu/tagActive.png') no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
+ }
|
|
|
+ .text1 {
|
|
|
+ flex: 1;
|
|
|
+ font-size: 36px;
|
|
|
+ color: #ffffff;
|
|
|
+ overflow: hidden;
|
|
|
+ white-space: nowrap;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ }
|
|
|
+ .text2 {
|
|
|
+ font-family: 'BEBAS-1';
|
|
|
+ margin-left: 25px;
|
|
|
+ font-size: 38px;
|
|
|
+ color: #00e8ff;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .box-item-active {
|
|
|
+ background: url('@/assets/images/map/rightMenu/tagActive.png') no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
+ }
|
|
|
+}
|
|
|
+.title-box {
|
|
|
+ width: 370px;
|
|
|
+ height: 35px;
|
|
|
+ background-image: url('@/assets/images/map/rightMenu/rainMonitor/titleBox.png');
|
|
|
+ background-repeat: no-repeat;
|
|
|
+ background-position: bottom left;
|
|
|
+ padding-left: 50px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ margin-bottom: 30px;
|
|
|
+ .gradient-text {
|
|
|
+ font-size: 44px;
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|