From 167568c865d5633f93a75b57f59bf3b4f5629cda Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Mon, 04 Nov 2024 15:52:52 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/main'
---
src/views/space/components/box/dataContent.vue | 229 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 220 insertions(+), 9 deletions(-)
diff --git a/src/views/space/components/box/dataContent.vue b/src/views/space/components/box/dataContent.vue
index 7152a88..36a1b0a 100644
--- a/src/views/space/components/box/dataContent.vue
+++ b/src/views/space/components/box/dataContent.vue
@@ -9,17 +9,228 @@
* Copyright (c) 2023 by ${git_name_email}, All Rights Reserved.
-->
<script setup>
-import publicContent from './publicContent.vue'
+import publicContent from "./publicContent.vue";
+import { getList } from "@/api/space/space";
+import { getDictionary } from "@/api/dict/dict";
+import { reactive } from "vue";
+const loading = ref(false);
+
+const tableData = ref([]);
+const opertionData = ref([]);
+const pages = {
+ page: 1,
+ pageSize: 10,
+ total: 0,
+};
+
+function positionColor() {
+ return (row) => {
+ if (
+ (row.X && row.X != 0) ||
+ (row.lng && row.lng != 0) ||
+ (row.longitude && row.longitude != 0) ||
+ (row.x && row.x != 0)
+ ) {
+ return "#1AFA29";
+ } else {
+ return "#ccc";
+ }
+ };
+}
+
+function positionDisabled() {
+ return (row) => {
+ if (
+ (row.X && row.X != 0) ||
+ (row.lng && row.lng != 0) ||
+ (row.longitude && row.longitude != 0) ||
+ (row.x && row.x != 0)
+ ) {
+ return false;
+ } else {
+ return true;
+ }
+ };
+}
+
+onMounted(() => {
+ // 获取下拉字典信息
+ getDictData("emergency_space_type");
+ // 获取列表信息
+ getLists();
+});
+// 表格样式
+const tableCellStyle = ({ row, column }) => {
+ return { background: "#152851", color: "#fff" };
+};
+// 表格表头样式
+const headerCellStyle = ({}) => {
+ return {
+ background: "#152851",
+ color: "#fff",
+ };
+};
+// 搜索条件
+const formInline = reactive({
+ name: "",
+ type: "",
+});
+
+// 提交查询
+const onSubmit = () => {
+ resetPage();
+ console.log("submit!");
+ getLists(formInline);
+};
+
+// 重置分页数据
+const resetPage = () => {
+ pages.page = 1;
+ pages.pageSize = 10;
+ pages.total = 0;
+};
+
+// 分页树改变
+const handleSizeChange = (val) => {
+ pages.pageSize = val;
+ getLists(formInline);
+};
+// 分页改变
+const handleCurrentChange = (val) => {
+ pages.page = val;
+ getLists(formInline);
+};
+// 重置条件
+const clearBtn = () => {
+ formInline.name = "";
+ formInline.type = "";
+ resetPage();
+ getLists(formInline);
+};
+
+// 获取下拉字典
+function getDictData(code) {
+ const param = {
+ code: code,
+ };
+ getDictionary(param).then((res) => {
+ opertionData.value = res.data.data;
+ });
+}
+
+// 查询分页数据
+function getLists(param = {}) {
+ param.current = pages.page;
+ param.size = pages.pageSize;
+ loading.value = true;
+ getList(param)
+ .then((res) => {
+ const data = res.data.data;
+ tableData.value = data.records;
+ pages.total = data.total;
+ loading.value = false;
+ })
+ .catch((err) => {
+ loading.value = false;
+ console.log(err);
+ });
+}
+
+// 行点击
+function rowClick(row) {
+ // 读取定位飞
+}
+
+// 查看详情
+function goDetail(row) {}
</script>
<template>
- <public-content>
- <template #content>
- <div>
-
- </div>
- </template>
- </public-content>
+ <public-content>
+ <template #content>
+ <div>
+ <el-form :inline="true" :model="formInline" class="demo-form-inline">
+ <el-form-item label="名称">
+ <el-input
+ v-model="formInline.name"
+ placeholder="请输入名称"
+ clearable
+ style="width: 350px"
+ />
+ </el-form-item>
+ <el-form-item label="类型">
+ <el-select
+ v-model="formInline.type"
+ placeholder="请选择"
+ clearable
+ style="width: 120px"
+ >
+ <el-option
+ v-for="item in opertionData"
+ :label="item.dictValue"
+ :value="item.dictKey"
+ />
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-button siz="default" type="primary" @click="onSubmit"
+ >查询</el-button
+ >
+ <el-button siz="default" type="" @click="clearBtn">重置</el-button>
+ </el-form-item>
+ </el-form>
+ <el-table
+ :data="tableData"
+ style="width: 100%"
+ :header-cell-style="headerCellStyle"
+ :cell-style="tableCellStyle"
+ v-loading="loading"
+ >
+ <el-table-column fixed prop="name" label="名称" />
+ <el-table-column prop="emergencySpaceType" label="类型" width="70" />
+ <el-table-column prop="mainFuncName" label="作用" width="60" />
+ <el-table-column width="60" label="操作" align="center">
+ <template #default="scope">
+ <el-button link type="primary" size="small" :disabled="scope.row.lng==''"
+ @click="rowClick(scope.row)">
+ 定位
+ </el-button>
+ <!-- <el-button link type="primary" size="small" @click="goDetail">
+ <i class="el-icon-document" style="color: #66b1ff"></i>详情
+ </el-button> -->
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="el-page">
+ <el-pagination
+ background
+ layout="prev, pager, next"
+ :page-size="pages.pageSize"
+ :total="pages.total"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ </div>
+ </template>
+ </public-content>
</template>
-<style lang="scss" scoped></style>
\ No newline at end of file
+<style lang="scss" scoped>
+.el-form-item__label {
+ color: #fff !important;
+}
+
+/* 当表格没有数据时,修改表格的背景颜色 */
+.el-table--empty .el-table__body {
+ background-color: #19284e !important; /* 你想要的背景颜色 */
+}
+
+.el-page {
+ margin-top: 10px;
+ width: 100%;
+ display: flex;
+ align-items: center;
+ // margin-bottom:10px;
+}
+</style>
--
Gitblit v1.9.3