底部"筛选结果"列表

master
许宏杰 3 weeks ago
parent 4fc0b3c970
commit 4c935f78ab

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

@ -71,70 +71,6 @@
}
}
.result-list {
margin-top: 15px;
.list-header {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 16px;
.header-left-total {
color: #ffa11b;
font-weight: 500;
font-family: "Alibaba-PuHuiTi-Medium.otf";
}
.header-rigth-total {
color: #aacfff;
font-weight: 400;
font-family: "Alibaba-PuHuiTi-Regular.otf";
}
}
.list-table {
margin-top: 10px;
.table-header {
padding: 5px 0;
font-size: 16px;
color: #eff8ff;
background: linear-gradient(90deg, #007b9f, #0066d8);
font-family: "Alibaba-PuHuiTi-Regular.otf";
}
.table-body {
height: 350px;
.body-rows {
padding: 7px 0;
font-size: 14px;
color: #ffffff;
font-family: "Alibaba-PuHuiTi-Medium.otf";
}
& > .body-rows:nth-child(even) {
background: #033159;
}
}
.table-header,
.body-rows {
display: flex;
align-items: center;
& > div {
text-align: center;
}
.table-cell0 {
width: 50px;
}
.table-cell1 {
flex: 1;
}
.table-cell2 {
flex: 2;
}
.cell-flex {
display: flex;
align-items: center;
justify-content: center;
}
}
}
}
.el-button {
font-size: 14px;
color: #cdfbff;
@ -163,3 +99,67 @@
::v-deep .el-loading-mask {
background: rgba(0, 0, 0, 0.8);
}
.result-list {
margin-top: 15px;
.list-header {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 16px;
.header-left-total {
color: #ffa11b;
font-weight: 500;
font-family: "Alibaba-PuHuiTi-Medium.otf";
}
.header-rigth-total {
color: #aacfff;
font-weight: 400;
font-family: "Alibaba-PuHuiTi-Regular.otf";
}
}
.list-table {
margin-top: 10px;
.table-header {
padding: 5px 0;
font-size: 16px;
color: #eff8ff;
background: linear-gradient(90deg, #007b9f, #0066d8);
font-family: "Alibaba-PuHuiTi-Regular.otf";
}
.table-body {
height: 350px;
.body-rows {
padding: 8px 0;
font-size: 14px;
color: #ffffff;
font-family: "Alibaba-PuHuiTi-Medium.otf";
}
& > .body-rows:nth-child(even) {
background: #033159;
}
}
.table-header,
.body-rows {
display: flex;
align-items: center;
& > div {
text-align: center;
}
.table-cell0 {
width: 50px;
}
.table-cell1 {
flex: 1;
}
.table-cell2 {
flex: 2;
}
.cell-flex {
display: flex;
align-items: center;
justify-content: center;
}
}
}
}

@ -1,7 +1,7 @@
<template>
<div class="foldPane-bottom">
<div class="panel-container">
<!-- <div class="fold-btn" @click="togglePanel()">
<div class="fold-btn" @click="togglePanel()">
<img
:src="
isCollapsed
@ -10,8 +10,10 @@
"
alt=""
/>
</div> -->
<div :class="['panel-main', { collapsed: isCollapsed }]"></div>
</div>
<div :class="['panel-main', { collapsed: isCollapsed }]">
<slot></slot>
</div>
</div>
</div>
</template>
@ -20,7 +22,7 @@
export default {
data() {
return {
isCollapsed: true,
isCollapsed: false,
};
},
methods: {

@ -10,3 +10,4 @@ export { default as networkInfo } from "./xiaoqu/leftData/networkInfo";
export { default as buildingStatistics } from "./xiaoqu/leftData/buildingStatistics";
export { default as mapSearchBox } from "./xiaoqu/mapSearchBox.vue";
export { default as bottomList } from "./xiaoqu/bottomList.vue";

@ -0,0 +1,221 @@
<template>
<div class="bottom-list">
<div class="list-title">
<introduceTitle title="筛选结果" subTitle="SCREENING RESULTS" />
<div class="total">
<span>{{ total }}</span> 条数据
</div>
</div>
<div class="result-list">
<div class="list-table" v-loading="loading">
<div class="table-header">
<div class="table-cell0">序号</div>
<div class="table-cell1">所属网格</div>
<div class="table-cell1">所属楼栋</div>
<div class="table-cell1">房屋名称</div>
<div class="table-cell1">姓名</div>
<div class="table-cell1">标签</div>
<div class="table-cell1">类型</div>
<div class="table-cell1">分色</div>
<div class="table-cell1">数据更新时间</div>
</div>
<div
class="table-body"
style="overflow: auto"
v-infinite-scroll="load"
:infinite-scroll-distance="10"
:infinite-scroll-delay="500"
:infinite-scroll-disabled="disabled"
>
<div
class="body-rows"
v-for="(item, index) in list"
:key="'rows' + index"
>
<div class="table-cell0">{{ index + 1 }}</div>
<div class="table-cell1">{{ item.parentname }}</div>
<div class="table-cell1">
{{ item.deptname }}{{ item.buildingname }}
</div>
<div class="table-cell1">{{ item.housename }}</div>
<div class="table-cell1">{{ item.name }}</div>
<div class="table-cell1">
<el-tooltip effect="dark" content="党员" placement="top">
<img
src="@/assets/images/ui/isd.png"
alt=""
class="typeis"
v-show="item.isD"
/></el-tooltip>
<el-tooltip effect="dark" content="退伍军人" placement="top">
<img
src="@/assets/images/ui/isj.png"
class="typeis"
v-show="item.isJ"
/>
</el-tooltip>
<el-tooltip effect="dark" content="帮扶对象" placement="top">
<img
src="@/assets/images/ui/isk.png"
alt=""
class="typeis"
v-show="item.isK"
/></el-tooltip>
<el-tooltip effect="dark" content="重点人群" placement="top">
<img
src="@/assets/images/ui/isx.png"
alt=""
class="typeis"
v-show="item.isX"
/></el-tooltip>
</div>
<div class="table-cell1">
{{ item.type == 1 ? "户籍" : "流动" }}
</div>
<div class="table-cell1">
<ColorCell :item="item" />
</div>
<div class="table-cell1">{{ item.updateTime }}</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import introduceTitle from "@/views/components/introduceTitle";
import { inputSearch } from "@/api/home/index.js";
import ColorCell from "@/components/ColorCell";
export default {
data() {
return {
disabled: true,
loading: false,
list: [],
total: 0,
queryParams: {
pageNum: 1,
pageSize: 10,
},
};
},
computed: {
...mapGetters(["queryParamsXiaoqu", "leftColor", "rightTopColor"]),
},
components: { introduceTitle, ColorCell },
watch: {
queryParamsXiaoqu: {
handler(newValue, oldValue) {
console.log(newValue);
this.reset();
this.queryParams = { ...this.queryParams, ...newValue };
this.disabled = false;
this.load();
},
deep: true, // Deeply watch all nested properties
immediate: true,
},
},
methods: {
reset() {
(this.disabled = true), (this.total = 0);
this.list = [];
this.queryParams = {
pageNum: 1,
pageSize: 10,
};
},
load() {
if (this.list.length > 0 && this.list.length >= this.total) return;
this.getList();
},
async getList() {
this.loading = true;
let res = await inputSearch(this.queryParams);
let handleColor = this.handleColor(res.data.xinxilist.rows);
this.list = [...this.list, ...handleColor];
this.total = res.data.xinxilist.total;
this.queryParams.pageNum++;
this.loading = false;
},
/**
* 处理颜色
*/
handleColor(list) {
list.map((item) => {
if (!item.color) {
item.leftColor = "#7b75ff";
item.rightTopColor = "#7b75ff";
return;
}
for (let key in this.leftColor) {
if (item.color == key) {
item.leftColor = this.leftColor[key];
item.rightTopColor = this.rightTopColor[key];
}
}
});
return list;
},
},
};
</script>
<style lang="scss" scoped>
@import "~@/assets/styles/isTable.scss";
.bottom-list {
height: 100%;
background: linear-gradient(
0deg,
rgba(0, 48, 92, 0.35) 95%,
rgba(2, 35, 69, 0) 100%
);
}
.list-title {
width: 100%;
height: 40px;
display: flex;
align-items: center;
justify-content: space-between;
.total {
padding-right: 10px;
font-size: 15px;
color: #aacfff;
font-weight: 400;
span {
color: #ff961b;
font-family: "din-bold-2.ttf";
}
}
}
.result-list,
.list-table {
margin-top: 0 !important;
}
.result-list {
height: calc(100% - 40px) !important;
.list-table {
height: 100%;
display: flex;
flex-direction: column;
.table-body {
flex: 1;
}
}
}
.result-list
.list-table
.table-body
> .body-rows[data-v-a33623d4]:nth-child(even) {
background: rgba(0, 169, 255, 0.15);
}
.typeis {
height: 20px;
width: 20px;
margin-right: 3px;
}
</style>

@ -172,7 +172,7 @@ export default {
flex: 1;
padding-left: 15px;
.lable-value {
margin-bottom: 20px;
margin-bottom: 15px;
}
.data-item > div:last-child {
margin: 0;

@ -50,6 +50,7 @@ export default {
],
},
configUrl: basePathUrl,
geoJsonLayerDTH: null,
};
},
components: {
@ -60,7 +61,8 @@ export default {
handler(newValue, oldValue) {
this.add3DXiaoqu(newValue.sd);
this.addNetworkLayer(newValue.networkName);
if (this.map.getLayerById("dth")) this.map.getLayerById("dth").clear(); //
if (this.geoJsonLayerDTH && this.geoJsonLayerDTH.length > 0)
this.map.getLayerById("dth").clear(); //
},
deep: true, // Deeply watch all nested properties
},
@ -81,7 +83,9 @@ export default {
});
map.on(mars3d.EventType.click, function (e) {
if (!e.id) {
map.getLayerById("dth").clear(); //
if (_this.geoJsonLayerDTH && _this.geoJsonLayerDTH.length > 0)
map.getLayerById("dth").clear(); //
_this.$store.commit("CHANGE_QUERY", {
buildingid: undefined,
deptId: undefined,
@ -489,7 +493,7 @@ export default {
},
//
addDTH() {
let geoJsonLayerDTH = new mars3d.layer.GeoJsonLayer({
this.geoJsonLayerDTH = new mars3d.layer.GeoJsonLayer({
id: "dth",
show: true,
name: "太仓-楼栋",
@ -508,7 +512,7 @@ export default {
},
},
});
this.map.addLayer(geoJsonLayerDTH);
this.map.addLayer(this.geoJsonLayerDTH);
},
// id

@ -24,10 +24,9 @@
<buildingStatistics v-if="queryParamsXiaoqu.buildingid" />
</foldpanelLeft>
<foldpanelRight></foldpanelRight>
<foldPaneBottom></foldPaneBottom>
<div class="buttom-group">
<button @click="handle3D()"></button>
</div>
<foldPaneBottom>
<bottomList />
</foldPaneBottom>
</div>
</template>
@ -43,6 +42,7 @@ import {
networkInfo,
buildingStatistics,
mapSearchBox,
bottomList,
} from "@/views/components/index.js";
export default {
data() {
@ -58,6 +58,7 @@ export default {
networkInfo,
buildingStatistics,
mapSearchBox,
bottomList,
},
computed: {
...mapGetters(["xiaoquIntroduce", "queryParamsXiaoqu"]),

Loading…
Cancel
Save