194 lines
4.6 KiB
Vue
194 lines
4.6 KiB
Vue
<template>
|
||
<div class="DetailCard">
|
||
<div class="top"></div>
|
||
|
||
<div class="middle">
|
||
<div class="hint">家庭地址</div>
|
||
|
||
<div class="areaHint">
|
||
<u-icon name="map-fill" color="#73ABFF"></u-icon>
|
||
<span>{{ currentAreaName }}</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="bottom">
|
||
<div class="hints">家庭成员</div>
|
||
|
||
<div v-if="data.family && data.family.length > 0">
|
||
<div class="card" v-for="(item, i) in data.family" :key="i" @click="toDetailPeople(item)">
|
||
<div class="photos">
|
||
<img :src="item.photo" alt="" v-if="item.photo" />
|
||
<img src="./components/img/2.png" alt="" v-else />
|
||
</div>
|
||
|
||
<div class="right">
|
||
<div class="rightTop">
|
||
<div class="rightTop-lefts">
|
||
<span class="names">{{ item.name }}</span>
|
||
<span class="householdNames" v-if="item.householdName == 1">户主</span>
|
||
<span class="householdNames" v-else>
|
||
{{ $dict.getLabel('householdRelation', item.householdName) }}
|
||
</span>
|
||
</div>
|
||
|
||
<div class="rightTop-rights">
|
||
<u-section :show-line="false" sub-title="详情"></u-section>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="rightBottom">
|
||
<span>身份证号:</span>
|
||
<span>{{ item.idNumber.replace(/^(\w{6})\w{8}(.*)$/, '$1****$2') }}</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<AiEmpty v-else></AiEmpty>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
export default {
|
||
name: 'DetailCard',
|
||
components: {},
|
||
props: {},
|
||
data() {
|
||
return {
|
||
id: '',
|
||
data: [],
|
||
currentAreaName: '',
|
||
}
|
||
},
|
||
computed: {},
|
||
watch: {},
|
||
onLoad(o) {
|
||
this.id = o.id
|
||
this.$dict.load('householdRelation').then(() => {
|
||
this.getDetail()
|
||
})
|
||
},
|
||
onShow() {},
|
||
methods: {
|
||
getDetail() {
|
||
this.$http.post(`/app/appresident/detail?id=${this.id}`).then((res) => {
|
||
if (res.code == 0) {
|
||
this.data = res.data
|
||
this.$nextTick(() => {
|
||
this.currentAreaName = res.data.resident.currentAreaName
|
||
})
|
||
}
|
||
})
|
||
},
|
||
|
||
toDetailPeople(item) {
|
||
uni.navigateTo({ url: `./DetailPeople?id=${item.id}` })
|
||
},
|
||
},
|
||
}
|
||
</script>
|
||
|
||
<style scoped lang="scss">
|
||
.DetailCard {
|
||
height: 100%;
|
||
.top {
|
||
height: 112px;
|
||
background: #3975c6;
|
||
}
|
||
|
||
.middle {
|
||
margin: -80px 32px 0 32px;
|
||
padding: 38px 30px 78px 28px;
|
||
background: #ffffff;
|
||
box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.02);
|
||
border-radius: 16px;
|
||
z-index: 999;
|
||
.hint {
|
||
font-size: 32px;
|
||
font-weight: 500;
|
||
color: #333333;
|
||
}
|
||
.areaHint {
|
||
margin-top: 38px;
|
||
span {
|
||
margin-left: 14px;
|
||
}
|
||
}
|
||
}
|
||
|
||
.bottom {
|
||
margin: 32px 30px 48px 30px;
|
||
background: #fff;
|
||
padding: 38px 30px 30px 30px;
|
||
.hints {
|
||
margin-bottom: 38px;
|
||
}
|
||
.card {
|
||
display: flex;
|
||
box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.08);
|
||
border-radius: 16px;
|
||
padding: 48px 32px;
|
||
margin-bottom: 32px;
|
||
.photos {
|
||
img {
|
||
width: 96px;
|
||
height: 96px;
|
||
border-radius: 50%;
|
||
}
|
||
}
|
||
|
||
.right {
|
||
display: flex;
|
||
flex-direction: column;
|
||
margin-left: 40px;
|
||
width: 100%;
|
||
.rightTop {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
.rightTop-lefts {
|
||
.names {
|
||
font-size: 32px;
|
||
font-weight: 600;
|
||
}
|
||
.householdNames {
|
||
margin-left: 30px;
|
||
font-size: 26px;
|
||
font-weight: 500;
|
||
color: #5aad6a;
|
||
}
|
||
}
|
||
.rightTop-rights {
|
||
::v-deep .u-section {
|
||
.u-section__right-info {
|
||
color: #3975c6 !important;
|
||
.u-section__right-info__icon-arrow {
|
||
.u-icon {
|
||
.u-icon__icon {
|
||
color: #3975c6 !important;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
.rightBottom {
|
||
margin-top: 20px;
|
||
}
|
||
}
|
||
}
|
||
.card:nth-child(2n-1) {
|
||
// background: royalblue;
|
||
background: url(http://respub.sinoecare.net/20211222/装饰-20211222162743.png) no-repeat;
|
||
background-size: 100% 100%;
|
||
}
|
||
.card:nth-child(2n) {
|
||
// background: pink;
|
||
background: url(http://respub.sinoecare.net/20211222/装饰2-20211222162934.png) no-repeat;
|
||
background-size: 100% 100%;
|
||
}
|
||
}
|
||
}
|
||
</style>
|