From a997c45ed4675d2eb045090fddb933235f4279cd Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期六, 28 二月 2026 14:21:57 +0800
Subject: [PATCH] 经销商管理

---
 mini-program/pages/article-details/article-details.vue |   58 +++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 47 insertions(+), 11 deletions(-)

diff --git a/mini-program/pages/article-details/article-details.vue b/mini-program/pages/article-details/article-details.vue
index b87b75a..9237ad8 100644
--- a/mini-program/pages/article-details/article-details.vue
+++ b/mini-program/pages/article-details/article-details.vue
@@ -7,11 +7,11 @@
 		</view>
 		<view class="xian"></view>
 		<view class="pl">
-			<view class="pl-title">璇勮 {{info.commentCount || 0}}</view>
+			<view class="pl-title">璇勮 {{total}}</view>
 			<view class="pl-wu" v-if="commentList.length === 0">
 				<image src="/static/images/default_nocomment@2x.png" mode="widthFix"></image>
 			</view>
-			<view class="pl-item" v-for="(item, index) in commentList" :key="item.id" v-else @click="openTwo(item.id, item)">
+			<view class="pl-item" v-for="(item, index) in commentList" :key="item.id" v-else>
 				<view class="pl-item-tx">
 					<image :src="item.memberImgUrl" mode="widthFix"></image>
 				</view>
@@ -28,9 +28,9 @@
 						<view style="width: 132rpx; height: 0;"></view>
 					</view>
 					<view class="pl-item-info-data">
-						<view class="pl-item-info-data-time">{{$u.timeFormat(new Date(item.createDate).getTime())}}</view>
+						<view class="pl-item-info-data-time">{{item.createDate  }}</view>
 						<view class="pl-item-info-data-list">
-							<view class="pl-item-info-data-list-item" @click="sendChild(item.id, index)">
+							<view class="pl-item-info-data-list-item"   @click="openTwo(item.id, item)">
 								<image src="/static/icon/ic_reply2@2x.png" mode="widthFix"></image>
 							</view>
 							<view class="pl-item-info-data-list-item" @click.stop="dianzanpl(item)">
@@ -40,7 +40,7 @@
 							</view>
 						</view>
 					</view>
-					<view class="pl-item" style="border: none;" v-for="(child, a) in item.childern" :key="child.id" @click="openTwo(item.id, child)">
+					<view class="pl-item" style="border: none;" v-for="(child, a) in item.childern" :key="child.id" >
 						<view class="pl-item-tx">
 							<image :src="child.memberImgUrl" mode="widthFix"></image>
 						</view>
@@ -59,7 +59,7 @@
 							<view class="pl-item-info-data">
 								<view class="pl-item-info-data-time">{{child.createDate}}</view>
 								<view class="pl-item-info-data-list">
-									<view class="pl-item-info-data-list-item">
+									<view class="pl-item-info-data-list-item" @click="openTwo(item.id, child)">
 										<image src="/static/icon/ic_reply2@2x.png" mode="widthFix"></image>
 									</view>
 									<view class="pl-item-info-data-list-item" @click.stop="dianzanpl(child)">
@@ -71,7 +71,7 @@
 							</view>
 						</view>
 					</view>
-					<view class="pl-more" v-if="item.childern.length > 0">灞曞紑2鏉″洖澶�</view>
+					<view class="pl-more" v-if="item.childern&&item.childern.length < item.replyCount" @click.stop="moreReply(index)">灞曞紑{{item.replyCount - item.childern.length}}鏉″洖澶�</view>
 				</view>
 			</view>
 		</view>
@@ -142,6 +142,7 @@
 				info: null,
 				content: '',
 				commentList: [],
+				total: 0,
 				page: 1,
 				next: true,
 				value: '',
@@ -248,6 +249,36 @@
 				this.multifileList = []
 				this.show1 = false
 			},
+			// 灞曞紑璇勮
+			moreReply(index) {
+				this.$u.api.findActivityReplyCommentDTOPage({
+					capacity: 10,
+					page: this.commentList[index].page,
+					model: {
+						type: 1,
+						commentId: this.commentList[index].id
+					}
+				}).then(res => {
+					if (res.code === 200) {
+						this.commentList[index].page++
+						this.commentList[index].childern = this.uniqueById([
+							...this.commentList[index].childern,
+							...res.data.records
+						])
+					}
+				})
+			},
+			// 鏁扮粍鍘婚噸
+			uniqueById(arr) {
+				const map = new Map();
+				return arr.filter(item => {
+					if (!map.has(item.id)) {
+						map.set(item.id, true);
+						return true;
+					}
+					return false;
+				});
+			},
 			// 璇勮
 			sendComment() {
 				if (!this.value && this.multifileList.length === 0) return uni.showToast({
@@ -258,7 +289,7 @@
 					activityId: this.info.id,
 					content: this.value,
 					multifileList: this.multifileList,
-					commentId: this.commentId,
+					// commentId: this.commentId,
 					replyId: this.item ? this.item.id : null
 				}).then(res => {
 					if (res.code === 200) {
@@ -268,15 +299,17 @@
 						if (this.commentId) {
 							this.commentList.forEach(item => {
 								if (item.id === this.commentId) {
-									item.commentList.childern.unshift(res.data)
+									item.childern = item.childern||[]
+									item.childern.unshift(res.data)
 								}
 							})
 						} else {
+							this.commentList = this.commentList||[]
 							this.commentList.unshift(res.data)
 						}
 						this.multifileList = []
 						this.value = ''
-						this.show1 = false
+						this.closePush()
 					}
 				})
 			},
@@ -294,8 +327,10 @@
 					}
 				}).then(res => {
 					if (res.code === 200) {
+						this.total = res.data.total
 						res.data.records.forEach(item => {
-							item.createDate = dateConversion(item.createDate)
+							// item.createDate = dateConversion(item.createDate)
+							item.page = 1
 							item.childern = []
 							if (item.activityReplyCommentDTO) {
 								item.activityReplyCommentDTO.createDate = dateConversion(item.activityReplyCommentDTO.createDate)
@@ -591,6 +626,7 @@
 						font-weight: 400;
 						font-size: 28rpx;
 						color: #333333;
+						word-break: break-word;
 						margin-top: 16rpx;
 					}
 					.pl-item-info-list {

--
Gitblit v1.9.3