v0.0.4 帖子内容集成
This commit is contained in:
parent
b829eb35ad
commit
89d620dd91
|
|
@ -1,6 +1,8 @@
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using ZR.LiveForum.Model.Liveforum.Dto;
|
|
||||||
using ZR.LiveForum.Model.Liveforum;
|
using ZR.LiveForum.Model.Liveforum;
|
||||||
|
using ZR.LiveForum.Model.Liveforum.Dto;
|
||||||
|
using ZR.Model;
|
||||||
using ZR.Service.Liveforum.ILiveforumService;
|
using ZR.Service.Liveforum.ILiveforumService;
|
||||||
|
|
||||||
//创建时间:2025-11-16
|
//创建时间:2025-11-16
|
||||||
|
|
@ -16,10 +18,14 @@ namespace ZR.Admin.WebApi.Controllers.Liveforum
|
||||||
/// 论坛帖子接口
|
/// 论坛帖子接口
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private readonly IT_PostsService _T_PostsService;
|
private readonly IT_PostsService _T_PostsService;
|
||||||
|
private readonly IT_LikesService _T_LikesService;
|
||||||
|
private readonly IT_CommentsService _T_CommentsService;
|
||||||
|
|
||||||
public T_PostsController(IT_PostsService T_PostsService)
|
public T_PostsController(IT_PostsService T_PostsService, IT_LikesService T_LikesService, IT_CommentsService T_CommentsService)
|
||||||
{
|
{
|
||||||
_T_PostsService = T_PostsService;
|
_T_PostsService = T_PostsService;
|
||||||
|
_T_LikesService = T_LikesService;
|
||||||
|
_T_CommentsService = T_CommentsService;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -124,5 +130,41 @@ namespace ZR.Admin.WebApi.Controllers.Liveforum
|
||||||
return ExportExcel(result.Item2, result.Item1);
|
return ExportExcel(result.Item2, result.Item1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取帖子的点赞列表
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="postId">帖子ID</param>
|
||||||
|
/// <param name="parm">分页参数</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpGet("{postId}/likes")]
|
||||||
|
[ActionPermissionFilter(Permission = "tposts:query")]
|
||||||
|
public IActionResult GetPostLikes([FromRoute] long postId, [FromQuery] PagerInfo parm)
|
||||||
|
{
|
||||||
|
var response = _T_LikesService.GetLikesByPostId(postId, parm);
|
||||||
|
return SUCCESS(response);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取帖子的评论列表
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="postId">帖子ID</param>
|
||||||
|
/// <param name="parm">分页参数</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpGet("{postId}/comments")]
|
||||||
|
[ActionPermissionFilter(Permission = "tposts:query")]
|
||||||
|
public IActionResult GetPostComments([FromRoute] long postId, [FromQuery] PagerInfo parm)
|
||||||
|
{
|
||||||
|
var queryDto = new T_CommentsQueryDto
|
||||||
|
{
|
||||||
|
PostId = postId,
|
||||||
|
PageNum = parm.PageNum,
|
||||||
|
PageSize = parm.PageSize,
|
||||||
|
Sort = parm.Sort,
|
||||||
|
SortType = parm.SortType
|
||||||
|
};
|
||||||
|
var response = _T_CommentsService.GetList(queryDto);
|
||||||
|
return SUCCESS(response);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -12,6 +12,13 @@ namespace ZR.Service.Liveforum.ILiveforumService
|
||||||
|
|
||||||
T_Likes GetInfo(long Id);
|
T_Likes GetInfo(long Id);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 根据帖子ID查询该帖子的所有点赞记录
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="postId">帖子ID</param>
|
||||||
|
/// <param name="parm">分页参数</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
PagedInfo<T_LikesDto> GetLikesByPostId(long postId, PagerInfo parm);
|
||||||
|
|
||||||
T_Likes AddT_Likes(T_Likes parm);
|
T_Likes AddT_Likes(T_Likes parm);
|
||||||
int UpdateT_Likes(T_Likes parm);
|
int UpdateT_Likes(T_Likes parm);
|
||||||
|
|
|
||||||
|
|
@ -98,6 +98,36 @@ namespace ZR.Service.Liveforum
|
||||||
return Update(model, true);
|
return Update(model, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 根据帖子ID查询该帖子的所有点赞记录
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="postId">帖子ID</param>
|
||||||
|
/// <param name="parm">分页参数</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public PagedInfo<T_LikesDto> GetLikesByPostId(long postId, PagerInfo parm)
|
||||||
|
{
|
||||||
|
var query = Queryable()
|
||||||
|
.Where(l => l.TargetType == 1 && l.TargetId == postId)
|
||||||
|
.LeftJoin<T_Users>((l, u) => l.UserId == u.Id);
|
||||||
|
|
||||||
|
// 默认按创建时间倒序
|
||||||
|
query = query.OrderBy((l, u) => l.CreatedAt, OrderByType.Desc);
|
||||||
|
|
||||||
|
var response = query.Select((l, u) => new T_LikesDto()
|
||||||
|
{
|
||||||
|
Id = l.Id,
|
||||||
|
UserId = l.UserId,
|
||||||
|
TargetType = l.TargetType,
|
||||||
|
TargetId = l.TargetId,
|
||||||
|
CreatedAt = l.CreatedAt,
|
||||||
|
UserName = u.NickName,
|
||||||
|
TargetInfo = null, // 帖子点赞时不需要显示目标信息
|
||||||
|
}, true);
|
||||||
|
|
||||||
|
var resp = ToPage(response, parm);
|
||||||
|
return resp;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 查询导出表达式
|
/// 查询导出表达式
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -60,3 +60,29 @@ export function deltposts(pid) {
|
||||||
export async function exporttposts(query) {
|
export async function exporttposts(query) {
|
||||||
await downFile('liveforum/tposts/export', { ...query })
|
await downFile('liveforum/tposts/export', { ...query })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取帖子的点赞列表
|
||||||
|
* @param {帖子ID} postId
|
||||||
|
* @param {查询条件} query
|
||||||
|
*/
|
||||||
|
export function getPostLikes(postId, query) {
|
||||||
|
return request({
|
||||||
|
url: 'liveforum/tposts/' + postId + '/likes',
|
||||||
|
method: 'get',
|
||||||
|
params: query,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取帖子的评论列表
|
||||||
|
* @param {帖子ID} postId
|
||||||
|
* @param {查询条件} query
|
||||||
|
*/
|
||||||
|
export function getPostComments(postId, query) {
|
||||||
|
return request({
|
||||||
|
url: 'liveforum/tposts/' + postId + '/comments',
|
||||||
|
method: 'get',
|
||||||
|
params: query,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -56,7 +56,7 @@
|
||||||
<el-dialog :title="title" :lock-scroll="false" v-model="open" >
|
<el-dialog :title="title" :lock-scroll="false" v-model="open" >
|
||||||
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
|
|
||||||
|
|
||||||
<el-col :lg="12">
|
<el-col :lg="12">
|
||||||
<el-form-item label="协议标题" prop="title">
|
<el-form-item label="协议标题" prop="title">
|
||||||
|
|
@ -69,14 +69,14 @@
|
||||||
<editor v-model="form.content" :min-height="200" />
|
<editor v-model="form.content" :min-height="200" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :lg="12">
|
<el-col :lg="12">
|
||||||
<el-form-item label="协议类型" prop="agreementType">
|
<el-form-item label="协议类型" prop="agreementType">
|
||||||
<el-select v-model="form.agreementType" placeholder="请选择协议类型">
|
<el-select v-model="form.agreementType" placeholder="请选择协议类型">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in options.liveforum_agreements_type"
|
v-for="item in options.liveforum_agreements_type"
|
||||||
:key="item.dictValue"
|
:key="item.dictValue"
|
||||||
:label="item.dictLabel"
|
:label="item.dictLabel"
|
||||||
:value="parseInt(item.dictValue)"></el-option>
|
:value="parseInt(item.dictValue)"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
@ -118,9 +118,9 @@
|
||||||
|
|
||||||
<script setup name="tagreements">
|
<script setup name="tagreements">
|
||||||
import { listtagreements,
|
import { listtagreements,
|
||||||
addtagreements, deltagreements,
|
addtagreements, deltagreements,
|
||||||
updatetagreements,gettagreements,
|
updatetagreements,gettagreements,
|
||||||
}
|
}
|
||||||
from '@/api/liveforum/tagreements.js'
|
from '@/api/liveforum/tagreements.js'
|
||||||
import Editor from '@/components/Editor'
|
import Editor from '@/components/Editor'
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
|
|
@ -331,4 +331,4 @@ function handleDelete(row) {
|
||||||
|
|
||||||
|
|
||||||
handleQuery()
|
handleQuery()
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -92,8 +92,32 @@
|
||||||
<el-table-column prop="content" label="正文内容" align="center" width="250" :show-overflow-tooltip="true" v-if="columns.showColumn('content')"/>
|
<el-table-column prop="content" label="正文内容" align="center" width="250" :show-overflow-tooltip="true" v-if="columns.showColumn('content')"/>
|
||||||
<el-table-column prop="categoryId" label="分类ID" align="center" width="100" v-if="columns.showColumn('categoryId')"/>
|
<el-table-column prop="categoryId" label="分类ID" align="center" width="100" v-if="columns.showColumn('categoryId')"/>
|
||||||
<el-table-column prop="viewCount" label="浏览次数" align="center" width="100" v-if="columns.showColumn('viewCount')"/>
|
<el-table-column prop="viewCount" label="浏览次数" align="center" width="100" v-if="columns.showColumn('viewCount')"/>
|
||||||
<el-table-column prop="likeCount" label="点赞数量" align="center" width="100" v-if="columns.showColumn('likeCount')"/>
|
<el-table-column prop="likeCount" label="点赞数量" align="center" width="100" v-if="columns.showColumn('likeCount')">
|
||||||
<el-table-column prop="commentCount" label="评论数量" align="center" width="100" v-if="columns.showColumn('commentCount')"/>
|
<template #default="scope">
|
||||||
|
<el-link
|
||||||
|
v-if="scope.row.likeCount > 0"
|
||||||
|
type="primary"
|
||||||
|
:underline="false"
|
||||||
|
@click="handleViewLikes(scope.row)"
|
||||||
|
style="cursor: pointer;">
|
||||||
|
{{ scope.row.likeCount }}
|
||||||
|
</el-link>
|
||||||
|
<span v-else style="color: #999;">{{ scope.row.likeCount || 0 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="commentCount" label="评论数量" align="center" width="100" v-if="columns.showColumn('commentCount')">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-link
|
||||||
|
v-if="scope.row.commentCount > 0"
|
||||||
|
type="primary"
|
||||||
|
:underline="false"
|
||||||
|
@click="handleViewComments(scope.row)"
|
||||||
|
style="cursor: pointer;">
|
||||||
|
{{ scope.row.commentCount }}
|
||||||
|
</el-link>
|
||||||
|
<span v-else style="color: #999;">{{ scope.row.commentCount || 0 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column prop="shareCount" label="分享次数" align="center" width="100" v-if="columns.showColumn('shareCount')"/>
|
<el-table-column prop="shareCount" label="分享次数" align="center" width="100" v-if="columns.showColumn('shareCount')"/>
|
||||||
<el-table-column prop="isTop" label="是否置顶" align="center" width="100" v-if="columns.showColumn('isTop')">
|
<el-table-column prop="isTop" label="是否置顶" align="center" width="100" v-if="columns.showColumn('isTop')">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
|
@ -133,7 +157,7 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<pagination :total="total" :page="queryParams.pageNum" :limit="queryParams.pageSize" @pagination="getList" />
|
<pagination :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
|
|
||||||
|
|
||||||
<el-dialog :title="title" :lock-scroll="false" v-model="open" >
|
<el-dialog :title="title" :lock-scroll="false" v-model="open" >
|
||||||
|
|
@ -292,7 +316,7 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<pagination :total="imageTotal" :page="imageQueryParams.pageNum" :limit="imageQueryParams.pageSize" @pagination="getImageList" />
|
<pagination :total="imageTotal" v-model:page="imageQueryParams.pageNum" v-model:limit="imageQueryParams.pageSize" @pagination="getImageList" />
|
||||||
|
|
||||||
<!-- 添加图片表单对话框 -->
|
<!-- 添加图片表单对话框 -->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
|
|
@ -346,6 +370,68 @@
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
|
<!-- 点赞列表弹窗 -->
|
||||||
|
<el-dialog
|
||||||
|
:title="'点赞列表 - ' + currentPostForLikes.title"
|
||||||
|
v-model="likeDialogOpen"
|
||||||
|
width="60%"
|
||||||
|
:lock-scroll="false"
|
||||||
|
@close="closeLikeDialog">
|
||||||
|
<el-table
|
||||||
|
:data="likeList"
|
||||||
|
v-loading="likeLoading"
|
||||||
|
border
|
||||||
|
header-cell-class-name="el-table-header-cell"
|
||||||
|
highlight-current-row>
|
||||||
|
<el-table-column prop="id" label="ID" align="center" width="80"/>
|
||||||
|
<el-table-column prop="userName" label="用户昵称" align="center" width="150" :show-overflow-tooltip="true"/>
|
||||||
|
<el-table-column prop="userId" label="用户ID" align="center" width="100"/>
|
||||||
|
<el-table-column prop="createdAt" label="点赞时间" :show-overflow-tooltip="true" width="180"/>
|
||||||
|
</el-table>
|
||||||
|
<pagination :total="likeTotal" v-model:page="likeQueryParams.pageNum" :limit="likeQueryParams.pageSize" @pagination="getLikeList" />
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
<!-- 评论列表弹窗 -->
|
||||||
|
<el-dialog
|
||||||
|
:title="'评论列表 - ' + currentPostForComments.title"
|
||||||
|
v-model="commentDialogOpen"
|
||||||
|
width="80%"
|
||||||
|
:lock-scroll="false"
|
||||||
|
@close="closeCommentDialog">
|
||||||
|
<el-table
|
||||||
|
:data="commentList"
|
||||||
|
v-loading="commentLoading"
|
||||||
|
border
|
||||||
|
header-cell-class-name="el-table-header-cell"
|
||||||
|
highlight-current-row>
|
||||||
|
<el-table-column prop="id" label="ID" align="center" width="80"/>
|
||||||
|
<el-table-column prop="userName" label="评论者" align="center" width="120" :show-overflow-tooltip="true"/>
|
||||||
|
<el-table-column prop="replyToUserName" label="被回复用户" align="center" width="120" :show-overflow-tooltip="true">
|
||||||
|
<template #default="scope">
|
||||||
|
<span v-if="scope.row.replyToUserName">{{ scope.row.replyToUserName }}</span>
|
||||||
|
<span v-else style="color: #999;">-</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="content" label="评论内容" align="left" width="300" :show-overflow-tooltip="true">
|
||||||
|
<template #default="scope">
|
||||||
|
<div :style="{ paddingLeft: scope.row.parentCommentId ? '30px' : '0', position: 'relative' }">
|
||||||
|
<span v-if="scope.row.parentCommentId" style="color: #409eff; font-weight: bold;">回复:</span>
|
||||||
|
<span>{{ scope.row.content }}</span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="likeCount" label="点赞数" align="center" width="80"/>
|
||||||
|
<el-table-column prop="replyCount" label="回复数" align="center" width="80"/>
|
||||||
|
<el-table-column prop="status" label="状态" align="center" width="100">
|
||||||
|
<template #default="scope">
|
||||||
|
<dict-tag :options="options.liveforum_posts_comments" :value="scope.row.status" />
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="createdAt" label="创建时间" :show-overflow-tooltip="true" width="180"/>
|
||||||
|
</el-table>
|
||||||
|
<pagination :total="commentTotal" v-model:page="commentQueryParams.pageNum" v-model:limit="commentQueryParams.pageSize" @pagination="getCommentList" />
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -353,6 +439,7 @@
|
||||||
import { listtposts,
|
import { listtposts,
|
||||||
addtposts, deltposts,
|
addtposts, deltposts,
|
||||||
updatetposts,gettposts,
|
updatetposts,gettposts,
|
||||||
|
getPostLikes, getPostComments,
|
||||||
}
|
}
|
||||||
from '@/api/liveforum/tposts.js'
|
from '@/api/liveforum/tposts.js'
|
||||||
import { listtpostimages,
|
import { listtpostimages,
|
||||||
|
|
@ -442,6 +529,7 @@ const imageFormRules = {
|
||||||
var dictParams = [
|
var dictParams = [
|
||||||
"liveforum_action_bool",
|
"liveforum_action_bool",
|
||||||
"liveforum_posts_status",
|
"liveforum_posts_status",
|
||||||
|
"liveforum_posts_comments",
|
||||||
]
|
]
|
||||||
|
|
||||||
proxy.getDicts(dictParams).then((response) => {
|
proxy.getDicts(dictParams).then((response) => {
|
||||||
|
|
@ -812,5 +900,95 @@ function closeImageManageDialog() {
|
||||||
imageIds.value = []
|
imageIds.value = []
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*************** 点赞列表相关方法 ***************/
|
||||||
|
// 点赞列表弹窗状态
|
||||||
|
const likeDialogOpen = ref(false)
|
||||||
|
const currentPostForLikes = ref({ id: null, title: '' })
|
||||||
|
const likeList = ref([])
|
||||||
|
const likeTotal = ref(0)
|
||||||
|
const likeLoading = ref(false)
|
||||||
|
const likeQueryParams = reactive({
|
||||||
|
pageNum: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
})
|
||||||
|
|
||||||
|
// 打开点赞列表弹窗
|
||||||
|
function handleViewLikes(row) {
|
||||||
|
currentPostForLikes.value = {
|
||||||
|
id: row.id,
|
||||||
|
title: row.title || '未命名帖子'
|
||||||
|
}
|
||||||
|
likeQueryParams.pageNum = 1
|
||||||
|
likeDialogOpen.value = true
|
||||||
|
getLikeList()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询点赞列表
|
||||||
|
function getLikeList() {
|
||||||
|
likeLoading.value = true
|
||||||
|
getPostLikes(currentPostForLikes.value.id, likeQueryParams).then(res => {
|
||||||
|
const { code, data } = res
|
||||||
|
if (code == 200) {
|
||||||
|
likeList.value = data.result
|
||||||
|
likeTotal.value = data.totalNum
|
||||||
|
likeLoading.value = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 关闭点赞列表弹窗
|
||||||
|
function closeLikeDialog() {
|
||||||
|
likeDialogOpen.value = false
|
||||||
|
currentPostForLikes.value = { id: null, title: '' }
|
||||||
|
likeList.value = []
|
||||||
|
likeTotal.value = 0
|
||||||
|
likeQueryParams.pageNum = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/*************** 评论列表相关方法 ***************/
|
||||||
|
// 评论列表弹窗状态
|
||||||
|
const commentDialogOpen = ref(false)
|
||||||
|
const currentPostForComments = ref({ id: null, title: '' })
|
||||||
|
const commentList = ref([])
|
||||||
|
const commentTotal = ref(0)
|
||||||
|
const commentLoading = ref(false)
|
||||||
|
const commentQueryParams = reactive({
|
||||||
|
pageNum: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
})
|
||||||
|
|
||||||
|
// 打开评论列表弹窗
|
||||||
|
function handleViewComments(row) {
|
||||||
|
currentPostForComments.value = {
|
||||||
|
id: row.id,
|
||||||
|
title: row.title || '未命名帖子'
|
||||||
|
}
|
||||||
|
commentQueryParams.pageNum = 1
|
||||||
|
commentDialogOpen.value = true
|
||||||
|
getCommentList()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询评论列表
|
||||||
|
function getCommentList() {
|
||||||
|
commentLoading.value = true
|
||||||
|
getPostComments(currentPostForComments.value.id, commentQueryParams).then(res => {
|
||||||
|
const { code, data } = res
|
||||||
|
if (code == 200) {
|
||||||
|
commentList.value = data.result
|
||||||
|
commentTotal.value = data.totalNum
|
||||||
|
commentLoading.value = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 关闭评论列表弹窗
|
||||||
|
function closeCommentDialog() {
|
||||||
|
commentDialogOpen.value = false
|
||||||
|
currentPostForComments.value = { id: null, title: '' }
|
||||||
|
commentList.value = []
|
||||||
|
commentTotal.value = 0
|
||||||
|
commentQueryParams.pageNum = 1
|
||||||
|
}
|
||||||
|
|
||||||
handleQuery()
|
handleQuery()
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<pagination :total="total" :page="queryParams.pageNum" :limit="queryParams.pageSize" @pagination="getList" />
|
<pagination :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
|
|
||||||
|
|
||||||
<el-dialog :title="title" :lock-scroll="false" v-model="open">
|
<el-dialog :title="title" :lock-scroll="false" v-model="open">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user