迁移居民列表

This commit is contained in:
花有清香月有阴
2021-12-23 15:32:46 +08:00
parent 6cd28ae85f
commit 52ade08a1f
4 changed files with 851 additions and 105 deletions

View File

@@ -62,7 +62,27 @@
</div>
<div class="currentTabBar1" v-if="currentTabBar == 1">
<AiAreaPicker v-model="areaId" all :areaId="areaId" @select="areaSelect"></AiAreaPicker>
<AiTopFixed>
<u-search placeholder="请输入昵称、姓名" :show-action="false" search-icon-color="#ccc" v-model="search.name" @search=";(page.current = 1), getList()" />
<AiCell>
<b slot="label" class="title"><i v-html="page.total || 0" />个居民</b>
</AiCell>
</AiTopFixed>
<div class="mainPane">
<AiCell v-for="item in data" :key="item.id" @click.native="showResident(item)">
<template #label>
<AiImage :src="item.avatar" preview />
</template>
<div class="card wrap start" flex>
<b>{{ item.name }}</b>
<div flex class="tag" v-for="(tag, j) in item.tags" :key="j">{{ tag.tagName }}</div>
<div class="realName" shrink v-html="`真实姓名:${item.realName || '-'}`" />
</div>
</AiCell>
</div>
<!-- <AiAreaPicker v-model="areaId" all :areaId="areaId" @select="areaSelect"></AiAreaPicker>
<div class="line"></div>
@@ -88,31 +108,17 @@
<div class="rightBottom">
<span>
<span>{{ item.name }}</span>
<!-- {{ item.idNumber.replace(/^(\w{6})\w{8}(.*)$/, '$1****$2') }} -->
{{ item.idNumber.replace(/^(\w{6})\w{8}(.*)$/, '$1****$2') }}
</span>
<!-- <span>{{ item.phone }}</span> -->
</div>
</div>
<!-- <div class="left">
<img :src="item.photo" alt="" v-if="item.photo" />
<img src="./components/img/4.png" alt="" v-else />
</div>
<div class="right">
<div class="rightTop">{{ item.name }}</div>
<div class="rightBottom">
<span>{{ item.idNumber.replace(/^(\w{6})\w{8}(.*)$/, '$1****$2') }}</span>
<span>{{ item.phone }}</span>
</div>
</div> -->
</div>
</div>
</div>
<AiEmpty v-else></AiEmpty>
</div>
</div> -->
</div>
<div class="currentTabBar2" v-if="currentTabBar == 2">
@@ -192,14 +198,14 @@ export default {
Echarts2: null,
areaId: '',
currentPeople: 0,
tabPeopleList: [
{
name: '本地居民',
},
{
name: '流动人员',
},
],
// tabPeopleList: [
// {
// name: '本地居民',
// },
// {
// name: '流动人员',
// },
// ],
current: 1,
keyword: '',
data: [],
@@ -212,6 +218,10 @@ export default {
todayList2: [],
counts1: '',
counts2: '',
page2: { current: 1, size: 10, total: 0 },
search2: { name: '' },
page1: { current: 1, size: 10, total: 0 },
search1: { name: '' },
}
},
computed: {
@@ -226,10 +236,37 @@ export default {
this.Echarts1 = echarts.init(document.getElementById('echarts1'))
},
methods: {
getList() {
this.$http
.post('/app/wxcp/wxcustomer/list', null, {
params: { ...this.page1, ...this.search, type: 1 },
})
.then((res) => {
if (res?.data) {
if (this.page.current > 1) {
this.data = [...this.data, ...res.data.records]
} else this.data = res.data.records
this.page.total = res.data.total
}
})
},
reachBottom() {
if (this.page.total > this.list.length) {
this.page.current++
this.getList()
}
},
showResident({ id }) {
id &&
uni.navigateTo({
url: './resident?id=' + id,
})
},
getList2() {
this.$http
.post('/app/wxcp/wxgroup/list', null, {
params: { ...this.page, ...this.search },
params: { ...this.page2, ...this.search },
})
.then((res) => {
if (res?.data) {
@@ -247,7 +284,7 @@ export default {
reachBottom() {
if (this.page.total > this.list.length) {
this.page.current++
this.page.current = this.page.current + 1
this.getList2()
}
},
@@ -258,26 +295,28 @@ export default {
})
},
getList() {
this.$http
.post('/app/wxcp/wxcustomer/list', null, {
params: {
size: 10,
current: this.current,
areaId: this.areaId,
name: this.keyword,
residentType: this.currentPeople == 0 ? '0' : '1',
},
})
.then((res) => {
if (res.code == 0) {
this.data = this.current > 1 ? [...this.data, ...res.data.records] : res.data.records
this.pages = res.data.pages
}
})
},
// getList() {
// this.$http
// .post('/app/wxcp/wxcustomer/list', null, {
// params: {
// size: 10,
// current: this.current,
// areaId: this.areaId,
// name: this.keyword,
// residentType: this.currentPeople == 0 ? '0' : '1',
// },
// })
// .then((res) => {
// if (res.code == 0) {
// this.data = this.current > 1 ? [...this.data, ...res.data.records] : res.data.records
// this.pages = res.data.pages
// }
// })
// },
//
// 居民群统计
getEchart1() {
this.$http.post(`/app/wxcp/wxgroup/groupStatistic`).then((res) => {
if (res.code === 0) {
@@ -501,26 +540,26 @@ export default {
}
},
toDetailCard(item) {
uni.navigateTo({ url: `./DetailCard?id=${item.id}` })
},
// toDetailCard(item) {
// uni.navigateTo({ url: `./DetailCard?id=${item.id}` })
// },
areaSelect(e) {
this.areaId = e.id
this.getList()
},
// areaSelect(e) {
// this.areaId = e.id
// this.getList()
// },
handerSearch(e) {
this.keyword = e
this.current = 1
this.getList()
},
// handerSearch(e) {
// this.keyword = e
// this.current = 1
// this.getList()
// },
handerClear() {
this.keyword = ''
this.current = 1
this.getList()
},
// handerClear() {
// this.keyword = ''
// this.current = 1
// this.getList()
// },
changeTab(e) {
this.currentTabBar = e
@@ -651,52 +690,124 @@ uni-page-body {
.currentTabBar1 {
height: 100%;
background: #fff;
.AiAreaPicker {
padding: 16px 0 14px 12px;
}
::v-deep .AiTopFixed {
b.title {
color: #333;
font-size: 32px;
.line {
height: 16px;
background: #f5f5f5;
}
.peopleCard {
background: #fff;
.seachObj {
border-bottom: 2px solid #f5f5f5;
border-top: 2px solid #f5f5f5;
padding: 20px 32px;
}
.datas {
.datass {
display: flex;
padding: 24px 32px;
.left {
img {
width: 80px;
height: 80px;
border-radius: 50%;
}
}
.right {
display: flex;
flex-direction: column;
margin-left: 32px;
width: 100%;
.rightTop {
font-size: 32px;
font-weight: 500;
color: #333333;
}
.rightBottom {
display: flex;
justify-content: space-between;
margin-top: 8px;
}
}
& > i {
color: #267fce;
font-style: normal;
margin: 0 4px;
}
}
}
::v-deep .mainPane {
background: #fff;
padding: 0 32px;
.AiCell {
flex-shrink: 0;
justify-content: flex-start;
.content {
flex: 1;
min-width: 0;
max-width: unset;
border-bottom: 1px solid rgba(221, 221, 221, 1);
min-height: 160px;
}
}
.card {
text-align: left;
b {
max-width: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-size: 36px;
}
.tag {
justify-content: center;
background: #f3f4f7;
border-radius: 4px;
padding: 0 16px;
font-size: 28px;
font-weight: 400;
color: #333;
margin-left: 16px;
margin-bottom: 16px;
height: 56px;
}
.realName {
width: 100%;
margin-top: 8px;
font-size: 28px;
font-weight: 400;
color: #999;
}
}
.AiImage {
margin-right: 24px;
image {
width: 112px;
height: 112px;
}
}
}
// .AiAreaPicker {
// padding: 16px 0 14px 12px;
// }
// .line {
// height: 16px;
// background: #f5f5f5;
// }
// .peopleCard {
// background: #fff;
// .seachObj {
// border-bottom: 2px solid #f5f5f5;
// border-top: 2px solid #f5f5f5;
// padding: 20px 32px;
// }
// .datas {
// .datass {
// display: flex;
// padding: 24px 32px;
// .left {
// img {
// width: 80px;
// height: 80px;
// border-radius: 50%;
// }
// }
// .right {
// display: flex;
// flex-direction: column;
// margin-left: 32px;
// width: 100%;
// .rightTop {
// font-size: 32px;
// font-weight: 500;
// color: #333333;
// }
// .rightBottom {
// display: flex;
// justify-content: space-between;
// margin-top: 8px;
// }
// }
// }
// }
// }
}
.currentTabBar2 {