From 5698bfb69520de4180a60ae23259ad54540df11b Mon Sep 17 00:00:00 2001 From: yanran200730 Date: Fri, 17 Mar 2023 17:01:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/project/fengdu/AppCircle/Detail.vue | 210 +++++++++++++++++++++--- 1 file changed, 190 insertions(+), 20 deletions(-) diff --git a/src/project/fengdu/AppCircle/Detail.vue b/src/project/fengdu/AppCircle/Detail.vue index 221c2dc..bcdddfd 100644 --- a/src/project/fengdu/AppCircle/Detail.vue +++ b/src/project/fengdu/AppCircle/Detail.vue @@ -22,7 +22,7 @@ {{ info.sharedCount }}
- + {{ info.appreciateCount }}
@@ -34,22 +34,39 @@

评论

-
- +
+
-

清风

-

联系方式呢

+

{{ item.createUserName }}

+

{{ item.content }}

- 2020-12-11 10:10 -
回复
+ {{ item.createTime }} +
回复
+
+
+
+ +
+
+
+

{{ replay.createUserName }}

+ 回复 +

{{ item.createUserName }}

+
+

{{ replay.createTime }}

+
+

{{ replay.content }}

+
+
+
@@ -66,17 +83,26 @@ info: {}, name: '', themeId: '', - isFrom: '' + isFrom: '', + list: [], + isMore: false, + current: 1, + content: '', + focus: false, + commentId: '', + replyName: '' } }, onLoad (query) { this.isFrom = query.isFrom this.id = query.id - this.$loading() - this.getInfo(query.id) this.themeId = query.themeId this.name = query.name || '' + + this.$loading() + this.getInfo(query.id) + this.getCommontList(query.id) }, methods: { @@ -92,6 +118,48 @@ }) }, + reciate () { + this.$loading() + this.$instance.post(`/app/appneighborhoodassistance/appreciate?id=${this.id}`).then(res => { + if (res.code === 0) { + this.$toast(this.info.appreciateStatus ? '取消点赞' : '点赞成功') + + this.getInfo(this.id) + } + uni.hideLoading() + }) + }, + + send () { + if (!this.content) { + return this.$toast('内容不能为空') + } + + this.$loading() + this.$instance.post(!this.commentId ? `/app/appneighborhoodassistance/addComment` : `/app/appneighborhoodassistance/addReply`, { + content: this.content, + naId: this.id, + type: this.commentId ? 1 : 0, + commentId: this.commentId || '' + }).then(res => { + uni.hideLoading() + if (res.code === 0) { + this.$toast('提交成功') + this.content = '' + this.replyName = '' + this.commentId = '' + this.focus = false + + this.isMore = false + this.current = 1 + + this.$nextTick(() => { + this.getCommontList(this.id) + }) + } + }) + }, + toTopic (url) { if (this.isFrom === 'topic') { uni.navigateBack({ @@ -100,7 +168,46 @@ } else { this.$linkTo(url) } + }, + + getCommontList (id) { + if (this.isMore) return + + this.$loading() + this.$instance.post(`/app/appneighborhoodassistance/commontList`, null, { + params: { + withoutToken: this.token ? false : true, + id, + current: this.current, + size: 10 + } + }).then(res => { + if (res.code === 0) { + this.$hideLoading() + if (this.current > 1) { + this.list = [...this.list, ...res.data.records] + } else { + this.list = res.data.records + } + + if (res.data.records.length < 10) { + this.isMore = true + + return false + } + + this.current = this.current + 1 + } else { + this.isMore = true + } + }).catch(() => { + this.$hideLoading() + }) } + }, + + onReachBottom () { + this.getCommontList() } } @@ -151,7 +258,7 @@ .comment { margin-top: 24px; - padding: 32px 32px 0; + padding: 32px 32px 26px; background: #fff; .comment-wrapper { @@ -163,6 +270,10 @@ padding-top: 0; } + &:last-child { + padding-bottom: 0; + } + & > image { width: 72px; height: 72px; @@ -170,19 +281,77 @@ border-radius: 50%; } - .right { + .replay-list { + margin-top: 32px; + + .replay-item { + display: flex; + margin-bottom: 32px; + + &:last-child { + margin-bottom: 0; + } + + image { + width: 48px; + height: 48px; + margin-right: 16px; + border-radius: 50%; + } + + .replay-item__right { + flex: 1; + + .top { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 6px; + + .replay-left { + display: flex; + align-items: center; + } + + h3 { + color: #666666; + font-size: 24px; + } + + span { + margin: 0 8px; + font-size: 24px; + color: #687DA6; + } + + p { + color: #999999; + font-size: 24px; + } + } + + & > p { + line-height: 1.3; + color: #333333; + font-size: 24px; + } + } + } + } + + & > .right { flex: 1; padding-bottom: 32px; border-bottom: 1px solid #EEEEEE; - h3 { + & > h3 { line-height: 40px; margin-bottom: 8px; color: #666666; font-size: 28px; } - p { + & > p { line-height: 42px; margin-bottom: 24px; color: #333; @@ -210,6 +379,7 @@ padding-bottom: 0; .right { + padding-bottom: 0; border-bottom: none; } } @@ -224,8 +394,8 @@ } } - .top { - padding: 24px 24px 0; + & > .top { + padding: 32px 32px 0; background: #ffffff; .item-top { @@ -300,9 +470,9 @@ } .item-content { - margin: 16px; + margin: 16px 0; line-height: 1.3; - // text-align: justify; + text-align: justify; span { font-size: 28px;