完成村民活动
This commit is contained in:
266
packages/3.0.0/AppVillageActivity/components/Dynamic.vue
vendored
Normal file
266
packages/3.0.0/AppVillageActivity/components/Dynamic.vue
vendored
Normal file
@@ -0,0 +1,266 @@
|
||||
<template>
|
||||
<div class="bbs">
|
||||
<div v-if="list.length">
|
||||
<div class="bbs-title">
|
||||
<span>共</span>
|
||||
<i>{{ list.length }}</i>
|
||||
<span>条动态</span>
|
||||
</div>
|
||||
<div class="bbs-item" v-for="(item, index) in list" :key="index">
|
||||
<div class="bbs-item__info">
|
||||
<div class="bbs-item__info--top">
|
||||
<div class="left">
|
||||
<img :src="item.avatar" />
|
||||
<h2>{{ item.name }}</h2>
|
||||
</div>
|
||||
<i>{{ item.createTime }}</i>
|
||||
</div>
|
||||
<div class="bbs-item__info--content">
|
||||
<p>{{ item.content }}</p>
|
||||
<ai-uploader v-if="item.images && item.images.length" :instance="instance" :value="item.images" :limit="9" disabled></ai-uploader>
|
||||
<div class="text-button" @click="remove(item.id)">删除动态</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bbs-replay">
|
||||
<div class="bbs-replay__item" v-for="(replay, index) in item.replyList" :key="index">
|
||||
<div class="bbs-replay__item--top">
|
||||
<img :src="replay.headPortrait" />
|
||||
<div class="right">
|
||||
<div class="right-user">
|
||||
<h2>{{ replay.createUserName }}</h2>
|
||||
<i>回复</i>
|
||||
<h2>{{ replay.lastReplyName }}</h2>
|
||||
</div>
|
||||
<span>{{ replay.createTime }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<p>{{ replay.content }}</p>
|
||||
<div class="text-button" @click="removeReplay(replay.id)">删除评论</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ai-empty class="empty" v-else></ai-empty>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'Add',
|
||||
|
||||
props: {
|
||||
id: String,
|
||||
instance: Function
|
||||
},
|
||||
|
||||
data () {
|
||||
return {
|
||||
list: []
|
||||
}
|
||||
},
|
||||
|
||||
created () {
|
||||
this.getInfo(this.id)
|
||||
},
|
||||
|
||||
methods: {
|
||||
getInfo (id) {
|
||||
this.instance.post(`/app/apppostinfo/listWitReply?activityId=${id}`).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.list = res.data.map(v => {
|
||||
return {
|
||||
...v,
|
||||
images: v.images ? JSON.parse(v.images) : []
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
removeReplay(id) {
|
||||
this.$confirm('确定删除该数据?').then(() => {
|
||||
this.instance.post(`/app/apppostreply/delete?id=${id}`).then((res) => {
|
||||
if (res.code == 0) {
|
||||
this.getInfo(this.id)
|
||||
this.$message.success('删除成功!')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
remove(id) {
|
||||
this.$confirm('确定删除该数据?').then(() => {
|
||||
this.instance.post(`/app/apppostinfo/delete?id=${id}`).then((res) => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('删除成功!')
|
||||
this.getList()
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.bbs {
|
||||
padding-top: 16px;
|
||||
|
||||
::v-deep .ai-detail__content {
|
||||
background: #F3F6F9;
|
||||
}
|
||||
|
||||
::v-deep .ai-empty__bg {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.text-button {
|
||||
cursor: pointer;
|
||||
color: #5088FF;
|
||||
font-size: 14px;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
|
||||
.bbs-replay {
|
||||
margin-top: 16px;
|
||||
padding: 0 16px;
|
||||
background: #F5F6F7;
|
||||
|
||||
.bbs-replay__item {
|
||||
padding: 16px 0;
|
||||
border-bottom: 1px solid #DDDDDD;
|
||||
|
||||
.text-button {
|
||||
margin-left: 48px;
|
||||
}
|
||||
|
||||
& > p {
|
||||
line-height: 19px;
|
||||
margin: 8px 0 8px 48px;
|
||||
font-size: 14px;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.bbs-replay__item--top {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
img {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-right: 8px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
flex: 1;
|
||||
|
||||
.right-user {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
color: #333333;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
i {
|
||||
padding: 0 4px;
|
||||
font-style: normal;
|
||||
font-size: 14px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
span {
|
||||
color: #999999;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.bbs-item__info {
|
||||
.bbs-item__info--content {
|
||||
padding-left: 64px;
|
||||
|
||||
p {
|
||||
font-size: 14px;
|
||||
color: #333333;
|
||||
margin-bottom: 10px;
|
||||
line-height: 19px;
|
||||
}
|
||||
}
|
||||
|
||||
.bbs-item__info--top {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 6px;
|
||||
padding-left: 16px;
|
||||
|
||||
.left {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
img {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-right: 8px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
h2 {
|
||||
color: #333333;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
i {
|
||||
color: #999999;
|
||||
font-size: 14px;
|
||||
font-style: normal;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.bbs-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 56px;
|
||||
line-height: 1;
|
||||
margin: 0 0 16px;
|
||||
padding: 0px 16px;
|
||||
background: #FFFFFF;
|
||||
color: #333333;
|
||||
font-size: 16px;
|
||||
border-radius: 4px;
|
||||
border: 1px solid #D8E0E8;
|
||||
|
||||
i {
|
||||
padding: 0 4px;
|
||||
color: #5088FF;
|
||||
font-style: normal;
|
||||
}
|
||||
}
|
||||
|
||||
.bbs-item {
|
||||
margin-bottom: 16px;
|
||||
padding: 16px;
|
||||
background: #FFFFFF;
|
||||
border-radius: 4px;
|
||||
border: 1px solid #D8E0E8;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user