Files
dvcp_v2_wechat_app/src/mods/AppVillager/detail.vue
花有清香月有阴 ba01c46f41 detail
2022-02-17 10:01:02 +08:00

337 lines
7.7 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<div class="Page">
<div class="top">
<div class="tops">未通过原因请勿带情绪进行评论请勿带情绪进行评论请勿带情绪进行评论</div>
</div>
<div class="middle">
<div class="cardTop">
<img src="../../static/workOnline/池夏2.jpg" alt="" />
<div class="rightTop">
<div class="leftStaus">
<span class="names">雷洋</span>
<span class="titless">美丽庭院 | 2020-10-28 12</span>
</div>
<!-- :style="{ class: item.auditStatus == 0 ? 'status0' : item.auditStatus == 1 ? 'status1' : 'status2' }" -->
<div class="status status0">审核中</div>
</div>
</div>
<div class="cardConts">秋穿上漫步森林在阳光下呼吸伸展在安逸的天也许是兰天名字的由来吧</div>
<div class="cardImg">
<img src="../../static/workOnline/池夏2.jpg" alt="" v-for="(items, i) in 4" :key="i" />
</div>
<div class="cardBot">
<div class="icons">
<u-icon name="map-fill"></u-icon>
<span>东湖生态旅游风景区听涛景区</span>
</div>
<div class="icones">
<div class="img1">
<img src="../../static/AppVillager/1.png" alt="" class="img11" />
</div>
<div class="rightFlex">
<img src="../../static/AppVillager/2.png" alt="" class="img2" @click="poupShow = true" />
<img src="../../static/AppVillager/3.png" alt="" class="img3" @click="like" />
</div>
</div>
</div>
<div class="reply">
<div class="replyTop">
<img src="../../static/AppVillager/3.png" alt="" />
<span class="people">张三李四陶白白等12人</span>
</div>
<div class="replyCont">
<span class="nameLeft">张三</span>
<span class="contRight">非常不错</span>
</div>
<div class="replyCont">
<span class="nameLeft">张三</span>
<span class="contRight">为什么不带上我呢为什么不带上我呢为什么不带上我呢</span>
</div>
</div>
</div>
<u-popup v-model="poupShow" height="auto" mode="bottom" @close="close">
<div class="comments-wrapper">
<u-input v-model="content" placeholder="写下你的想法" type="textarea" auto-height :clearable="false" height="180" maxlength="140"> </u-input>
<div class="words">字数{{ content.length }}/140</div>
<div class="bottombtn">
<div class="emptys" @click="content = ''">清空内容</div>
<div class="publishs" @click="send">发送</div>
</div>
</div>
</u-popup>
</div>
</template>
<script>
export default {
name: 'detail',
components: {},
props: {},
data() {
return {
id: '',
data: {},
poupShow: false,
content: '',
flag: false,
pageShow: false,
}
},
computed: {},
watch: {},
onLoad(o) {
this.$dict.load('atWillReportType').then(() => {
this.id = o.id
})
},
onShow() {},
methods: {
send() {
if (this.flag) return
if (!this.content) {
return this.$u.toast('请输入你的想法')
}
this.$http
.post(`/app/appvillagediscussmessage/addOrUpdate`, {
content: this.content,
avatar: this.user.avatar,
createUserId: this.user.id,
createUserName: this.user.name,
discussId: this.id,
})
.then((res) => {
if (res?.code == 0) {
this.$u.toast('留言成功')
this.flag = false
this.content = ''
this.showBottomInput = false
this.getDetail()
}
})
},
like(id) {
this.$http
.post(`/app/appvillagediscussmessage/suport?id=${id}&userId=${this.user.id}`)
.then((res) => {
this.$hideLoading()
if (res.code === 0) {
this.$u.toast('点赞成功')
this.getDetail()
}
})
.catch((err) => {
this.$u.toast(err)
})
},
},
}
</script>
<style scoped lang="scss">
.Page {
background: #fff;
padding: 0 32px;
.top {
padding-top: 32px;
.tops {
padding: 24px;
font-size: 26px;
color: #ff4466;
background: #fff5f7;
border-radius: 16px;
}
}
.middle {
padding-bottom: 48px;
.cardTop {
display: flex;
margin-top: 32px;
img {
width: 96px;
height: 96px;
border-radius: 50%;
}
.rightTop {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
.leftStaus {
display: flex;
flex-direction: column;
margin-left: 16px;
.names {
font-size: 32px;
font-weight: 500;
}
.titless {
font-size: 26px;
color: #6e727a;
margin-top: 6px;
}
}
.status {
font-size: 28px;
}
.status0 {
color: #42d784;
}
.status1 {
color: #ff4466;
}
.status2 {
color: #ff883c;
}
}
}
.cardConts {
margin-top: 24px;
font-size: 32px;
}
.cardImg {
margin-top: 24px;
img {
width: 226px;
height: 226px;
margin-right: 4px;
}
img:nth-child(3n + 0) {
margin-right: 0;
}
}
.cardBot {
margin-top: 24px;
.icons {
padding: 8px 32px 8px 16px;
background: #eff1f3;
border-radius: 28px;
}
.icones {
display: flex;
justify-content: space-between;
margin-top: 24px;
.img1 {
width: 60%;
.img11 {
width: 48px;
height: 48px;
}
}
.rightFlex {
display: flex;
justify-content: space-between;
width: 27%;
.img2,
.img3 {
width: 48px;
height: 48px;
}
}
}
}
.reply {
margin-top: 32px;
padding: 0 24px 24px 24px;
background: #f7f8f9;
border-radius: 16px;
.replyTop {
padding: 20px 0;
margin-bottom: 18px;
img {
width: 40px;
height: 40px;
vertical-align: bottom;
}
.people {
font-size: 28px;
font-weight: 500;
color: #485d87;
margin-left: 8px;
}
}
.replyCont {
margin-top: 8px;
font-size: 28px;
font-weight: 500;
.nameLeft {
color: #485d87;
}
.contRight {
color: #485d87;
}
}
}
}
.comments-wrapper {
padding: 20px 0;
background: #f7f7f7;
.u-input {
background: #fff;
border-radius: 8px 8px 0 0;
padding: 10px !important;
margin: 0 30px 0 30px;
.uni-textarea-placeholder {
padding: 16px 0 0 16px;
}
.uni-textarea-textarea {
padding: 16px 0 0 16px;
}
}
.words {
background: #f7f7f7;
border-radius: 0 0 8px 8px;
margin: 0 30px;
padding: 10px;
text-align: right;
font-size: 26px;
color: #999999;
}
.bottombtn {
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 30px;
padding: 20px 0 0;
.emptys {
font-size: 26px;
color: #666666;
}
.publishs {
width: 144px;
height: 64px;
line-height: 64px;
text-align: center;
background: #1365dd;
border-radius: 32px;
color: #fff;
}
}
}
}
</style>