居民需求
This commit is contained in:
@@ -48,7 +48,15 @@
|
|||||||
<div class="type-content">
|
<div class="type-content">
|
||||||
<div class="flex" v-if="form.contentType == 'image'">
|
<div class="flex" v-if="form.contentType == 'image'">
|
||||||
<p class="label" style="width:40px;">图片</p>
|
<p class="label" style="width:40px;">图片</p>
|
||||||
<AiUploader :def.sync="formData.imgList" :limit="1" action="/admin/file/add2"></AiUploader>
|
<AiUploader :def.sync="formData.fileList" :limit="1" @data="(v) => fileData = v"></AiUploader>
|
||||||
|
</div>
|
||||||
|
<div class="flex" v-if="form.contentType == 'video'">
|
||||||
|
<p class="label" style="width:40px;">视频</p>
|
||||||
|
<AiUploader type="video" :limit="1" placeholder="上传视频" :def.sync="formData.fileList" @data="(v) => fileData = v"></AiUploader>
|
||||||
|
</div>
|
||||||
|
<div class="flex" v-if="form.contentType == 'file'">
|
||||||
|
<p class="label" style="width:40px;">附件</p>
|
||||||
|
<AiUploader type="file" :limit="1" placeholder="上传附件" :def.sync="formData.fileList" @data="(v) => fileData = v"></AiUploader>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="form.contentType == 'link'">
|
<div v-if="form.contentType == 'link'">
|
||||||
<div class="flex border-b">
|
<div class="flex border-b">
|
||||||
@@ -68,14 +76,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex" v-if="form.contentType == 'video'">
|
|
||||||
<p class="label" style="width:40px;">视频</p>
|
|
||||||
<AiUploader type="video" :limit="1" placeholder="上传视频" :def.sync="formData.fileList" action="/admin/file/add2"></AiUploader>
|
|
||||||
</div>
|
|
||||||
<div class="flex" v-if="form.contentType == 'file'">
|
|
||||||
<p class="label" style="width:40px;">附件</p>
|
|
||||||
<AiUploader type="file" :limit="1" placeholder="上传附件" :def.sync="formData.fileList" action="/admin/file/add2"></AiUploader>
|
|
||||||
</div>
|
|
||||||
<div v-if="form.contentType == 'miniapp'" class="flex-label">
|
<div v-if="form.contentType == 'miniapp'" class="flex-label">
|
||||||
<div class="flex border-b">
|
<div class="flex border-b">
|
||||||
<p class="label">小程序标题</p>
|
<p class="label">小程序标题</p>
|
||||||
@@ -150,7 +150,8 @@ export default {
|
|||||||
accessTitle: '',
|
accessTitle: '',
|
||||||
accessUrl: '',
|
accessUrl: '',
|
||||||
accessAppid: '',
|
accessAppid: '',
|
||||||
file: {}
|
file: {},
|
||||||
|
mediaId: ''
|
||||||
},
|
},
|
||||||
areaIdList: [],
|
areaIdList: [],
|
||||||
tagIdList: [],
|
tagIdList: [],
|
||||||
@@ -162,7 +163,8 @@ export default {
|
|||||||
hour: true,
|
hour: true,
|
||||||
minute: true,
|
minute: true,
|
||||||
second: true
|
second: true
|
||||||
}
|
},
|
||||||
|
fileData: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {...mapState(['user'])},
|
computed: {...mapState(['user'])},
|
||||||
@@ -196,7 +198,7 @@ export default {
|
|||||||
if(!this.form.content) {
|
if(!this.form.content) {
|
||||||
return this.$u.toast('请输入文本内容')
|
return this.$u.toast('请输入文本内容')
|
||||||
}
|
}
|
||||||
if(this.form.contentType == 'image' && !this.formData.imgList.length) {
|
if(this.form.contentType == 'image' && !this.formData.fileList.length) {
|
||||||
return this.$u.toast('请上传图片')
|
return this.$u.toast('请上传图片')
|
||||||
}
|
}
|
||||||
if(this.form.contentType == 'video' && !this.formData.fileList.length) {
|
if(this.form.contentType == 'video' && !this.formData.fileList.length) {
|
||||||
@@ -208,9 +210,7 @@ export default {
|
|||||||
if(this.formData.fileList.length) {
|
if(this.formData.fileList.length) {
|
||||||
this.formData.file = this.formData.fileList[0]
|
this.formData.file = this.formData.fileList[0]
|
||||||
this.formData.accessUrl = this.formData.fileList[0].url
|
this.formData.accessUrl = this.formData.fileList[0].url
|
||||||
}
|
this.formData.mediaId = this.fileData.media.mediaId
|
||||||
if(this.formData.imgList.length) {
|
|
||||||
this.formData.accessUrl = this.formData.imgList[0].url
|
|
||||||
}
|
}
|
||||||
var params = {
|
var params = {
|
||||||
...this.form,
|
...this.form,
|
||||||
|
|||||||
@@ -7,7 +7,10 @@
|
|||||||
|
|
||||||
<div class="areaHint">
|
<div class="areaHint">
|
||||||
<u-icon name="map-fill" color="#73ABFF"></u-icon>
|
<u-icon name="map-fill" color="#73ABFF"></u-icon>
|
||||||
<span>{{resident.currentAreaName}}{{resident.currentAddress || ''}}</span>
|
<span style="margin-left: 4px;">{{resident.currentAreaName}}
|
||||||
|
<span v-if="resident.currentAddressGroup">{{resident.currentAddressGroup}}组</span>
|
||||||
|
<span v-if="resident.currentAddressNo">{{resident.currentAddressNo}}户</span>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -121,9 +124,6 @@ export default {
|
|||||||
}
|
}
|
||||||
.areaHint {
|
.areaHint {
|
||||||
margin-top: 38px;
|
margin-top: 38px;
|
||||||
span {
|
|
||||||
margin-left: 14px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -108,7 +108,7 @@
|
|||||||
|
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<span class="label">现住详细地址</span>
|
<span class="label">现住详细地址</span>
|
||||||
<span class="value" v-if="data.resident && data.resident.currentAddress">{{ data.resident.currentAddress }}</span>
|
<span class="value" v-if="data.resident && data.resident.currentAddressGroup">{{ data.resident.currentAddressGroup }}组{{ data.resident.currentAddressNo }}户</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="item">
|
<div class="item">
|
||||||
|
|||||||
@@ -76,88 +76,11 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
uni-page-body {
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
.AppResidentFile {
|
.AppResidentFile {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|
||||||
.currentTabBar0 {
|
|
||||||
padding-bottom: 98px;
|
|
||||||
.peopleGroup,
|
|
||||||
.people {
|
|
||||||
.topcard {
|
|
||||||
position: relative;
|
|
||||||
background: url(http://respub.sinoecare.net/20211221/4-20211221095551.png) no-repeat;
|
|
||||||
background-size: 100% 100%;
|
|
||||||
height: 320px;
|
|
||||||
.cards {
|
|
||||||
box-sizing: border-box;
|
|
||||||
position: absolute;
|
|
||||||
bottom: -35px;
|
|
||||||
width: 92%;
|
|
||||||
box-sizing: border-box;
|
|
||||||
margin: 0 32px;
|
|
||||||
height: 232px;
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
z-index: 999;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-around;
|
|
||||||
align-items: center;
|
|
||||||
.items {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
span {
|
|
||||||
font-size: 30px;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
.items1 {
|
|
||||||
font-size: 40px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #354fc7;
|
|
||||||
}
|
|
||||||
.items2 {
|
|
||||||
font-size: 40px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #868686;
|
|
||||||
}
|
|
||||||
.items3 {
|
|
||||||
font-size: 40px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #5fba95;
|
|
||||||
}
|
|
||||||
.items4 {
|
|
||||||
font-size: 40px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #f09535;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.echartes {
|
|
||||||
margin-top: 64px;
|
|
||||||
padding-bottom: 20px;
|
|
||||||
height: 616px;
|
|
||||||
background: #fff;
|
|
||||||
box-sizing: border-box;
|
|
||||||
|
|
||||||
.echartss {
|
|
||||||
margin: 0 32px;
|
|
||||||
height: 100%;
|
|
||||||
padding-top: 16px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.currentTabBar1 {
|
.currentTabBar1 {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding-bottom: 98px;
|
|
||||||
background: #fff;
|
background: #fff;
|
||||||
::v-deep .AiTopFixed {
|
::v-deep .AiTopFixed {
|
||||||
b.title {
|
b.title {
|
||||||
@@ -174,7 +97,7 @@ uni-page-body {
|
|||||||
|
|
||||||
::v-deep .mainPane {
|
::v-deep .mainPane {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
padding: 0 32px 88px;
|
padding: 0 32px 0;
|
||||||
|
|
||||||
.AiCell {
|
.AiCell {
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
@@ -232,110 +155,6 @@ uni-page-body {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.currentTabBar2 {
|
|
||||||
padding-bottom: 98px;
|
|
||||||
::v-deep .AiTopFixed {
|
|
||||||
b.title {
|
|
||||||
color: #333;
|
|
||||||
font-size: 32px;
|
|
||||||
|
|
||||||
& > i {
|
|
||||||
color: #267fce;
|
|
||||||
font-style: normal;
|
|
||||||
margin: 0 4px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
::v-deep .mainPane {
|
|
||||||
background: #fff;
|
|
||||||
padding: 0 32px;
|
|
||||||
|
|
||||||
.AiCell {
|
|
||||||
align-items: center;
|
|
||||||
height: 230px;
|
|
||||||
justify-content: flex-start;
|
|
||||||
|
|
||||||
.content {
|
|
||||||
flex: 1;
|
|
||||||
min-width: 0;
|
|
||||||
height: 100%;
|
|
||||||
max-width: unset;
|
|
||||||
border-bottom: 1px solid rgba(221, 221, 221, 1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.card {
|
|
||||||
height: 100%;
|
|
||||||
justify-content: center;
|
|
||||||
|
|
||||||
b {
|
|
||||||
font-size: 36px;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tag {
|
|
||||||
justify-content: center;
|
|
||||||
background: #f3f4f7;
|
|
||||||
border-radius: 4px;
|
|
||||||
padding: 0 16px;
|
|
||||||
font-size: 28px;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #333;
|
|
||||||
margin-left: 16px;
|
|
||||||
height: 56px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.groupName {
|
|
||||||
width: 100%;
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.owner,
|
|
||||||
.trends {
|
|
||||||
margin-top: 8px;
|
|
||||||
font-size: 28px;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.personCount {
|
|
||||||
flex-shrink: 0;
|
|
||||||
font-size: 30px;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #666;
|
|
||||||
}
|
|
||||||
|
|
||||||
.trends {
|
|
||||||
* + * {
|
|
||||||
margin-left: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
em {
|
|
||||||
font-style: normal;
|
|
||||||
color: #5fba95;
|
|
||||||
}
|
|
||||||
|
|
||||||
p {
|
|
||||||
color: #f09535;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.AiImage {
|
|
||||||
margin-right: 24px;
|
|
||||||
|
|
||||||
image {
|
|
||||||
width: 112px;
|
|
||||||
height: 112px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.tabs {
|
.tabs {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 98px;
|
height: 98px;
|
||||||
|
|||||||
@@ -25,7 +25,10 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<AiCell title label="联络信息" />
|
<AiCell title label="联络信息" />
|
||||||
<AiCell label="联系方式">{{ resident.phone }}</AiCell>
|
<AiCell label="联系方式">{{ resident.phone }}</AiCell>
|
||||||
<AiCell label="现住址">{{ resident.currentAreaName + resident.currentAddress }}</AiCell>
|
<AiCell label="现住址">{{ resident.currentAreaName }}
|
||||||
|
<span v-if="resident.currentAddressGroup">{{resident.currentAddressGroup}}组</span>
|
||||||
|
<span v-if="resident.currentAddressNo">{{resident.currentAddressNo}}户</span>
|
||||||
|
</AiCell>
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<AiCell title label="家庭信息" />
|
<AiCell title label="家庭信息" />
|
||||||
@@ -73,7 +76,7 @@ export default {
|
|||||||
return obj
|
return obj
|
||||||
},
|
},
|
||||||
family() {
|
family() {
|
||||||
return this.top.detail?.residentInfo?.family?.map((e) => ({ ...e, householdRelation: e.householdRelation || '户主' }))
|
return this.top.detail?.residentInfo?.family?.map((e) => ({ ...e, householdRelation: e.householdRelation || '户主', idNumber : e.idNumber?.replace(/(\d{10}).+/g, '$1******')}))
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
|
|||||||
@@ -15,8 +15,6 @@
|
|||||||
<AiCell class="half" top-label label="添加时间">{{ top.detail.createTime }}</AiCell>
|
<AiCell class="half" top-label label="添加时间">{{ top.detail.createTime }}</AiCell>
|
||||||
<AiCell class="half" top-label label="真实姓名">{{ top.detail.realName }}</AiCell>
|
<AiCell class="half" top-label label="真实姓名">{{ top.detail.realName }}</AiCell>
|
||||||
<AiCell class="half" top-label label="手机号码">{{ resident.phone || '-' }}</AiCell>
|
<AiCell class="half" top-label label="手机号码">{{ resident.phone || '-' }}</AiCell>
|
||||||
<AiCell class="half" top-label label="家庭积分">{{ resident.familyIntegral }}</AiCell>
|
|
||||||
<AiCell class="half" top-label label="个人积分">{{ resident.personalIntegral }}</AiCell>
|
|
||||||
</u-row>
|
</u-row>
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
|
|||||||
Reference in New Issue
Block a user