This commit is contained in:
liuye
2022-02-11 14:26:59 +08:00
parent 97faf29a8f
commit 806bfeaabc
7 changed files with 51 additions and 45 deletions

View File

@@ -32,7 +32,7 @@
<div class="popup"> <div class="popup">
<div class="bg"></div> <div class="bg"></div>
<div class="title">{{ detailInfo.house.createAddress || '' }}</div> <div class="title">{{ detailInfo.house.createAddress || '' }}</div>
<p class="address">{{ detailInfo.community.address || '' }}</p> <p class="address" v-if="detailInfo.community">{{ detailInfo.community.address || '' }}</p>
<div class="info-flex"> <div class="info-flex">
<span class="label">所属社区</span> <span class="label">所属社区</span>
<span class="value">{{ detailInfo.build.areaName }}</span> <span class="value">{{ detailInfo.build.areaName }}</span>
@@ -47,20 +47,21 @@
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">所属网格</span> <span class="label">所属网格</span>
<span class="value">{{ detailInfo.gird.girdName || '' }}</span> <span class="value" v-if="detailInfo.gird && detailInfo.gird.girdName">{{ detailInfo.gird.girdName || '' }}</span>
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">网格管理员</span> <span class="label">网格管理员</span>
<span class="value">{{ detailInfo.gird.girdMemberNames || '' }}</span> <span class="value" v-if="detailInfo.gird && detailInfo.gird.girdMemberNames">{{ detailInfo.gird.girdMemberNames || '' }}</span>
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">楼栋长</span> <span class="label">楼栋长</span>
<span <span
class="value">{{ detailInfo.build.managerName || '' }}&nbsp;&nbsp;{{ class="value">{{ detailInfo.build.managerName || '' }}
<!-- &nbsp;&nbsp;{{
detailInfo.build.managerPhone || '' detailInfo.build.managerPhone || ''
}} }}
<img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(detailInfo.build.managerPhone)" <img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(detailInfo.build.managerPhone)"
class="phone-icon" v-if="detailInfo.build.managerPhone"> class="phone-icon" v-if="detailInfo.build.managerPhone"> -->
</span> </span>
</div> </div>
</div> </div>
@@ -88,14 +89,19 @@
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">网格管理员</span> <span class="label">网格管理员</span>
<span class="value" v-text="building.girdMemberNames||''"/> <span class="value">
<span v-for="(item, index) in building.girdMemberNames" :key="index">
<span v-if="index>0">,</span><AiOpenData v-if="item" type="userName" :openid="item" style="display:inline-block;" />
</span>
</span>
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">楼栋长</span> <span class="label">楼栋长</span>
<span <span
class="value">{{ building.managerName || '' }}&nbsp;&nbsp;{{ building.managerPhone || '' }} class="value">{{ building.managerName || '' }}
<!-- &nbsp;&nbsp;{{ building.managerPhone || '' }}
<img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(detailInfo.build.managerPhone)" <img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(detailInfo.build.managerPhone)"
class="phone-icon" v-if="detailInfo.build.managerPhone"> class="phone-icon" v-if="detailInfo.build.managerPhone"> -->
</span> </span>
</div> </div>
</div> </div>
@@ -167,6 +173,10 @@ export default {
}, },
getMarkerCluster(points, count = 0) { getMarkerCluster(points, count = 0) {
let {lib: TMap, map} = this let {lib: TMap, map} = this
console.log(points)
if(!points.length) {
return
}
if (map) { if (map) {
// map.setCenter(this.config.latlng) // map.setCenter(this.config.latlng)
let MarkerCluster = new TMap.MarkerCluster({ let MarkerCluster = new TMap.MarkerCluster({
@@ -253,6 +263,7 @@ export default {
overlay.on('click', () => { overlay.on('click', () => {
this.buildPopup = true this.buildPopup = true
this.building = item.geometries?.[0]?.properties || {} this.building = item.geometries?.[0]?.properties || {}
this.building.girdMemberNames = this.building.girdMemberNames.split(',')
}) })
markers.push(overlay) markers.push(overlay)
} }
@@ -304,14 +315,19 @@ export default {
if (res.code == 0 && res.data.length) { if (res.code == 0 && res.data.length) {
this.show = true this.show = true
this.buildList = res.data this.buildList = res.data
const points = res.data.map(item => { const points = []
return { res.data.map(item => {
lnglat: [item.lng, item.lat], if(item.lng && item.lat) {
id: item.id, points.push(
corpId: item.corpId, {
areaName: item.areaName, lnglat: [item.lng, item.lat],
buildingNumber: item.name || item.buildingNumber, id: item.id,
communityName: item.name || item.communityName, corpId: item.corpId,
areaName: item.areaName,
buildingNumber: item.name || item.buildingNumber,
communityName: item.name || item.communityName,
}
)
} }
}) })
this.getMarkerCluster(points) this.getMarkerCluster(points)

View File

@@ -4,7 +4,7 @@
<div class="select-gird" v-if="component != 'Map' && isAdmin" flex> <div class="select-gird" v-if="component != 'Map' && isAdmin" flex>
<AiPagePicker type="gird" class="fill" :selected="[params]" @select="handleSelectGird"> <AiPagePicker type="gird" class="fill" :selected="[params]" @select="handleSelectGird">
<img src="./components/img/gird-icon.png" alt="" class="gird-icon"> <img src="./components/img/gird-icon.png" alt="" class="gird-icon">
<div v-text="params.girdName"/> <div class="gird-name" v-text="params.girdName" />
<u-icon name="arrow-down" color="#999" class="down-icon" size="20"/> <u-icon name="arrow-down" color="#999" class="down-icon" size="20"/>
</AiPagePicker> </AiPagePicker>
<span @click="linkTo('./SetGird')" v-if="checkType == 2">网格配置</span> <span @click="linkTo('./SetGird')" v-if="checkType == 2">网格配置</span>
@@ -139,6 +139,15 @@ export default {
border-radius: 16px; border-radius: 16px;
margin: 0 30px 32px; margin: 0 30px 32px;
box-sizing: border-box; box-sizing: border-box;
.gird-name{
display: inline-block;
max-width: calc(100% - 108px);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
vertical-align: middle;
margin: 0 16px;
}
img { img {
width: 32px; width: 32px;
@@ -146,30 +155,6 @@ export default {
vertical-align: middle; vertical-align: middle;
} }
.gird-name-div {
display: inline-block;
padding: 0 20px;
box-sizing: border-box;
font-size: 32px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #333;
line-height: 48px;
img {
margin-left: 8px;
}
.gird-name{
display: inline-block;
max-width: calc(100% - 50px);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
vertical-align: middle;
}
}
span { span {
display: inline-block; display: inline-block;
width: 112px; width: 112px;

View File

@@ -384,6 +384,9 @@ ai-tree-picker {
vertical-align: sub; vertical-align: sub;
margin-left: 16px; margin-left: 16px;
} }
div{
display: inline-block;
}
} }
} }
} }

View File

@@ -8,7 +8,7 @@
<div class="user-list"> <div class="user-list">
<div class="item" v-for="(item, index) in list" :key="index" @click="toOtherSta(item.memberId, item.wxUserId)" > <div class="item" v-for="(item, index) in list" :key="index" @click="toOtherSta(item.memberId, item.wxUserId)" >
<div class="left"> <div class="left">
<img src="./components/img/user-icon.png" alt=""><span><AiOpenData v-if="item.wxUserId" type="userName" :openid="item.wxUserId" /></span> <img src="./components/img/user-icon.png" alt=""><AiOpenData v-if="item.wxUserId" type="userName" :openid="item.wxUserId" style="display:inline-block;" />
</div> </div>
<div class="right"> <div class="right">
<span :class="item.status == 1 ? '' : 'color-F5A319'">{{item.status == 1 ? '今日已上报' : '今日未上报'}}</span><img src="./components/img/right-icon.png" alt=""> <span :class="item.status == 1 ? '' : 'color-F5A319'">{{item.status == 1 ? '今日已上报' : '今日未上报'}}</span><img src="./components/img/right-icon.png" alt="">

View File

@@ -159,6 +159,7 @@ export default {
householdAreaId: '', householdAreaId: '',
householdAreaName: '', householdAreaName: '',
householdAddress: '', householdAddress: '',
type: ''
}, },
showSelect: false, showSelect: false,
formName: '', formName: '',
@@ -172,6 +173,7 @@ export default {
this.getDetail() this.getDetail()
}else { }else {
document.title = '新增居民' document.title = '新增居民'
this.form.type = option.type
} }
this.$dict.load('yesOrNo', 'sex', 'householdRelation', 'nation', 'education', 'maritalStatus', 'politicsStatus', 'militaryStatus', 'faithType') this.$dict.load('yesOrNo', 'sex', 'householdRelation', 'nation', 'education', 'maritalStatus', 'politicsStatus', 'militaryStatus', 'faithType')
}, },

View File

@@ -147,7 +147,7 @@ export default {
this.getList() this.getList()
}, },
edit(id) { edit(id) {
uni.navigateTo({url: `./Add?id=${id}`}) uni.navigateTo({url: `./Add?id=${id}&type=${this.currentTabs}`})
}, },
del(id) { del(id) {
this.$confirm('确定删除该数据?').then(() => { this.$confirm('确定删除该数据?').then(() => {

View File

@@ -7,7 +7,7 @@
<span>走访对象</span> <span>走访对象</span>
<span> <span>
{{ data.name }} {{ data.name }}
<span class="tags" v-if="data.menuLevel3Name">{{ data.menuLevel3Name }}</span> <span class="tags">{{ $dict.getLabel('appSpecialTypeFive', data.applicationId) }}</span>
</span> </span>
</div> </div>
@@ -54,7 +54,7 @@ export default {
computed: {}, computed: {},
onLoad(o) { onLoad(o) {
this.id = o.id this.id = o.id
this.$dict.load('realityStatus').then(() => { this.$dict.load('realityStatus', 'appSpecialTypeFive').then(() => {
this.getDetail() this.getDetail()
}) })
}, },