Commit f7861211 authored by 罗林杰's avatar 罗林杰

修改页面

parent 8e263211
...@@ -66,3 +66,12 @@ export function exportOpmBlackList(query) { ...@@ -66,3 +66,12 @@ export function exportOpmBlackList(query) {
responseType: 'blob' responseType: 'blob'
}) })
} }
// 查询留言表列表
export function listMessageList(query) {
return request({
url: '/memLeaveMessage/messageList',
method: 'get',
params: query
})
}
...@@ -94,6 +94,7 @@ ...@@ -94,6 +94,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" prop="memCode" label="创建者" min-width="200" show-overflow-tooltip /> <el-table-column align="center" prop="memCode" label="创建者" min-width="200" show-overflow-tooltip />
<el-table-column align="center" prop="memWxCode" label="微信号" min-width="200" show-overflow-tooltip />
<el-table-column align="center" prop="createDate" label="发布时间" min-width="200" show-overflow-tooltip /> <el-table-column align="center" prop="createDate" label="发布时间" min-width="200" show-overflow-tooltip />
<el-table-column align="center" prop="topic" label="话题名称" min-width="200" show-overflow-tooltip /> <el-table-column align="center" prop="topic" label="话题名称" min-width="200" show-overflow-tooltip />
<el-table-column align="center" prop="commentCount" label="评论数" min-width="150" show-overflow-tooltip /> <el-table-column align="center" prop="commentCount" label="评论数" min-width="150" show-overflow-tooltip />
...@@ -157,7 +158,6 @@ ...@@ -157,7 +158,6 @@
<div> <div>
<!-- 当没有图片时 --> <!-- 当没有图片时 -->
<div v-if="!form.url || form.url.length === 0" style="text-align: center; color: #999;"> <div v-if="!form.url || form.url.length === 0" style="text-align: center; color: #999;">
没有图片
</div> </div>
<!-- 当图片数量为1时 --> <!-- 当图片数量为1时 -->
<div v-else-if="form.url.length === 1" style="text-align: center;"> <div v-else-if="form.url.length === 1" style="text-align: center;">
...@@ -209,7 +209,7 @@ ...@@ -209,7 +209,7 @@
<span>{{ comment.content }}</span> <span>{{ comment.content }}</span>
</template> </template>
</div> </div>
<div style="font-size: 10px;color: #8c8c93"> <div style="font-size: 10px;color: #8c8c93;margin-top: 8px">
<span>{{ comment.createDate }}</span> <span>{{ comment.createDate }}</span>
</div> </div>
</div> </div>
...@@ -228,7 +228,7 @@ ...@@ -228,7 +228,7 @@
<span>{{ reply.content }}</span> <span>{{ reply.content }}</span>
</template> </template>
</div> </div>
<div style="font-size: 12px;color: #8c8c93;padding-top: 2px"> <div style="font-size: 10px;color: #8c8c93;margin-top: 8px">
<span>{{ reply.createDate }}</span> <span>{{ reply.createDate }}</span>
</div> </div>
</div> </div>
...@@ -634,10 +634,8 @@ export default { ...@@ -634,10 +634,8 @@ export default {
padding-left: 0; padding-left: 0;
.commentItem { .commentItem {
margin-bottom: 10px;
padding: 10px; padding: 10px;
border: 1px solid #ddd; border: 1px solid #ddd;
border-radius: 5px;
.avatar { .avatar {
width: 32px; width: 32px;
...@@ -652,13 +650,10 @@ export default { ...@@ -652,13 +650,10 @@ export default {
.replies { .replies {
list-style-type: none; list-style-type: none;
padding-left: 20px;
.replyItem { .replyItem {
margin-bottom: 5px;
padding: 5px; padding: 5px;
border: 1px solid #eee; border: 1px solid #eee;
border-radius: 5px;
} }
.avatar { .avatar {
...@@ -699,7 +694,7 @@ export default { ...@@ -699,7 +694,7 @@ export default {
.commentTitle{ .commentTitle{
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
padding:20px 25px; padding-top: 20px;
font-size: 16px; font-size: 16px;
color: rgb(132, 132, 132); color: rgb(132, 132, 132);
.c-title-segment{ .c-title-segment{
......
<template>
<div class="app-container">
<el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true">
<el-form-item label="用户" prop="userId">
<el-input
v-model="queryParams.memNickName"
placeholder="请输入用户"
clearable
:maxlength="50"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="被拉黑人" prop="targetId">
<el-input
v-model="queryParams.targetName"
placeholder="请输入被拉黑人"
clearable
:maxlength="50"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item>
<el-button
:class="commonField.queryClass"
:type="commonField.typePrimary"
:icon="commonField.queryIcon"
:size="commonField.smallSize"
@click="handleQuery"
>查询</el-button>
<el-button
:class="commonField.resetClass"
:icon="commonField.resetIcon"
:size="commonField.smallSize"
@click="resetQuery"
>重置</el-button>
</el-form-item>
</el-form>
<div style="padding:5px 10px">
<div class="mb12 font-small-bold">黑名单表列表</div>
<el-table v-loading="loading" border :data="opmBlackListList">
<el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="用户" prop="userId" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.memNickName || '-' }}
</template>
</el-table-column>
<el-table-column label="被拉黑人" prop="memNickName" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.targetName || '-' }}
</template>
</el-table-column>
<el-table-column label="拉黑时间" prop="createDate" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.createDate || '-' }}
</template>
</el-table-column>
<!-- <el-table-column label="操作" class-name="small-padding fixed-width" width="200px">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- :class="commonField.delClass"-->
<!-- :type="commonField.typeParent"-->
<!-- :size="commonField.size"-->
<!-- @click="handleDelete(scope.row)"-->
<!-- >删除</el-button>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table>
</div>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.rows"
@pagination="getList"
/>
<!-- 添加或修改黑名单表配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="90px">
<el-form-item label="用户id" prop="userId">
<el-input v-model.trim="form.userId" show-word-limit :maxlength="50" placeholder="请输入用户id" />
</el-form-item>
<el-form-item label="目标id" prop="targetId">
<el-input v-model.trim="form.targetId" show-word-limit :maxlength="50" placeholder="请输入目标id" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button class="cancelBtn" @click="cancel">取 消</el-button>
<el-button class="submitBtn" type="primary" @click="submitForm">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listOpmBlackList,
getOpmBlackList,
delOpmBlackList,
addOpmBlackList,
updateOpmBlackList,
exportOpmBlackList } from '@/api/contentManagement/opmBlackList'
import commonField from '@/utils/commonField'
export default {
name: 'OpmBlackList',
data() {
return {
// 遮罩层
loading: true,
// 总条数
total: 0,
// 黑名单表表格数据
opmBlackListList: [],
// 弹出层标题
title: '',
// 是否显示弹出层
open: false,
// 状态菜单
statusOptions: [
{
dictLabel: '启用',
dictValue: '1'
},
{
dictLabel: '停用',
dictValue: '0'
}
],
// 查询参数
queryParams: {
page: 1,
rows: 10,
userId: undefined,
targetId: undefined,
flag: ''
},
// 表单参数
form: {},
// 表单校验
rules: {
}
}
},
computed: {
commonField() {
return commonField
}
},
created() {
this.getList() // 列表查询
},
methods: {
/** 查询黑名单表列表 */
getList() {
this.loading = true
listOpmBlackList(this.queryParams).then(
response => {
this.opmBlackListList = response.data
this.total = response.total
this.loading = false
}
)
},
// 取消按钮
cancel() {
this.open = false
this.reset()
},
// 表单重置
reset() {
this.form = {
businessId: undefined,
userId: undefined,
targetId: undefined,
flag: '1'
}
this.resetForm('form')
},
/** 查询按钮操作 */
handleQuery() {
this.queryParams.page = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.queryParams = {
page: 1,
rows: 10,
userId: undefined,
targetId: undefined,
flag: ''
}
this.handleQuery()
},
/** 新增按钮操作 */
handleAdd() {
this.reset()
this.open = true
this.title = '添加黑名单表'
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset()
const id = row.businessId
getOpmBlackList(id).then(response => {
this.form = response.data
this.open = true
this.title = '修改黑名单表'
})
},
// 改变状态
handleStatusChange(row) {
const text = row.flag === '1' ? '启用' : '停用'
this.$confirm('确认操作?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(function() {
return updateOpmBlackList(row)
}).then(() => {
this.$message({
message: text + '成功',
type: 'success'
})
}).catch(function() {
row.flag = row.flag === '0' ? '1' : '0'
})
},
/** 提交按钮 */
submitForm: function() {
this.$refs['form'].validate(valid => {
if (valid) {
if (this.form.businessId !== undefined) {
updateOpmBlackList(this.form).then(response => {
this.msgSuccess('修改成功')
this.open = false
this.getList()
})
} else {
addOpmBlackList(this.form).then(response => {
this.msgSuccess('新增成功')
this.open = false
this.getList()
})
}
}
})
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.businessId
this.$confirm('是否确认操作?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(function() {
return delOpmBlackList(id)
}).then(() => {
this.getList()
this.$message({
message: '删除成功',
type: 'success'
})
}).catch(function() {
})
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams
this.$confirm('是否确认操作?', '警告', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(function() {
return exportOpmBlackList(queryParams).then(response => {
const blob = new Blob([response])
const downloadElement = document.createElement('a')
const href = window.URL.createObjectURL(blob)// 创建下载的链接
downloadElement.href = href
downloadElement.download = '黑名单表信息' + '.xls' // 下载后文件名
document.body.appendChild(downloadElement)
downloadElement.click()// 点击下载
document.body.removeChild(downloadElement)// 下载完成移除元素
window.URL.revokeObjectURL(href)// 释放掉blob对象
})
})
}
}
}
</script>
<style lang="scss" scoped>
.app-container {
font-size: 18px;
padding: 0;
.placeholder {
height: 1.3vh;
background-color: #F4F4F4;
margin-bottom: 10px
}
}
</style>
...@@ -43,10 +43,10 @@ ...@@ -43,10 +43,10 @@
style="width: 150px" style="width: 150px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="目标id,用户id" prop="targetId"> <el-form-item label="用户" prop="userNickName">
<el-input <el-input
v-model="queryParams.targetId" v-model="queryParams.userNickName"
placeholder="请输入目标id,用户id" placeholder="请输入用户"
clearable clearable
:maxlength="50" :maxlength="50"
size="small" size="small"
...@@ -98,9 +98,9 @@ ...@@ -98,9 +98,9 @@
{{ scope.row.orderId || '-' }} {{ scope.row.orderId || '-' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="目标id,用户id" prop="targetId" :show-overflow-tooltip="true"> <el-table-column label="用户" prop="userNickName" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.targetId || '-' }} {{ scope.row.userNickName || '-' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="备注" prop="remarks" :show-overflow-tooltip="true"> <el-table-column label="备注" prop="remarks" :show-overflow-tooltip="true">
...@@ -113,16 +113,16 @@ ...@@ -113,16 +113,16 @@
<span>{{ scope.row.createDate | transformDateByFormat('YYYY-MM-DD HH:mm') }}</span> <span>{{ scope.row.createDate | transformDateByFormat('YYYY-MM-DD HH:mm') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" class-name="small-padding fixed-width" width="200px"> <!-- <el-table-column label="操作" class-name="small-padding fixed-width" width="200px">-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<el-button <!-- <el-button-->
:class="commonField.delClass" <!-- :class="commonField.delClass"-->
:type="commonField.typeParent" <!-- :type="commonField.typeParent"-->
:size="commonField.size" <!-- :size="commonField.size"-->
@click="handleDelete(scope.row)" <!-- @click="handleDelete(scope.row)"-->
>删除</el-button> <!-- >删除</el-button>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
</el-table> </el-table>
</div> </div>
<pagination <pagination
......
...@@ -260,6 +260,11 @@ ...@@ -260,6 +260,11 @@
<el-tag v-else type="green" size="medium ">未推荐</el-tag> <el-tag v-else type="green" size="medium ">未推荐</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="金币数" prop="goldCoinsCount" :show-overflow-tooltip="true" min-width="80">
<template slot-scope="scope">
{{ scope.row.goldCoinsCount || '0' }}
</template>
</el-table-column>
<el-table-column label="权重" prop="sort" :show-overflow-tooltip="true" min-width="55"> <el-table-column label="权重" prop="sort" :show-overflow-tooltip="true" min-width="55">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.sort || '-' }} {{ scope.row.sort || '-' }}
...@@ -287,7 +292,7 @@ ...@@ -287,7 +292,7 @@
:type="commonField.typeParent" :type="commonField.typeParent"
:size="commonField.size" :size="commonField.size"
@click="removeCourse(scope.row)" @click="removeCourse(scope.row)"
>删除</el-button> >消费记录</el-button>
</template> </template>
</el-table-column> </el-table-column>
......
This diff is collapsed.
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true"> <el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true">
<el-form-item label="发送人" prop="userId"> <el-form-item label="发送人" prop="createName">
<el-input <el-input
v-model="queryParams.userId" v-model="queryParams.createName"
placeholder="请输入发送人" placeholder="请输入发送人"
clearable clearable
:maxlength="50" :maxlength="50"
...@@ -11,9 +11,9 @@ ...@@ -11,9 +11,9 @@
style="width: 150px" style="width: 150px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="接收人" prop="targetId"> <el-form-item label="接收人" prop="memNickName">
<el-input <el-input
v-model="queryParams.targetId" v-model="queryParams.memNickName"
placeholder="请输入接收人" placeholder="请输入接收人"
clearable clearable
:maxlength="50" :maxlength="50"
...@@ -39,36 +39,38 @@ ...@@ -39,36 +39,38 @@
</el-form> </el-form>
<div style="padding:5px 10px"> <div style="padding:5px 10px">
<div class="mb12 font-small-bold">留言列表</div> <div class="mb12 font-small-bold">留言列表</div>
<el-table v-loading="loading" border :data="opmBlackListList"> <el-table v-loading="loading" border :data="messageList">
<el-table-column type="index" label="序号" width="55" align="center" /> <el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="发送人" prop="userId" :show-overflow-tooltip="true"> <el-table-column label="发送人" prop="createName" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.userId || '-' }} {{ scope.row.createName || '-' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="接收人" prop="targetId" :show-overflow-tooltip="true"> <el-table-column label="接收人" prop="memNickName" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.targetId || '-' }} {{ scope.row.memNickName || '-' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="留言内容" prop="targetId" :show-overflow-tooltip="true"> <el-table-column label="留言内容" prop="content" :show-overflow-tooltip="true">
<span>1111111111</span>
</el-table-column>
<el-table-column label="留言时间" prop="createDate" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.createDate || '-' }} {{ scope.row.content || '-' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" class-name="small-padding fixed-width" width="200px"> <el-table-column label="留言时间" prop="createDate" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button {{ scope.row.createDate || '-' }}
:class="commonField.delClass"
:type="commonField.typeParent"
:size="commonField.size"
@click="handleDelete(scope.row)"
>删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column label="操作" class-name="small-padding fixed-width" width="200px">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- :class="commonField.delClass"-->
<!-- :type="commonField.typeParent"-->
<!-- :size="commonField.size"-->
<!-- @click="handleDelete(scope.row)"-->
<!-- >删除</el-button>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table> </el-table>
</div> </div>
<pagination <pagination
...@@ -78,32 +80,11 @@ ...@@ -78,32 +80,11 @@
:limit.sync="queryParams.rows" :limit.sync="queryParams.rows"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改黑名单表配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="90px">
<el-form-item label="用户id" prop="userId">
<el-input v-model.trim="form.userId" show-word-limit :maxlength="50" placeholder="请输入用户id" />
</el-form-item>
<el-form-item label="目标id" prop="targetId">
<el-input v-model.trim="form.targetId" show-word-limit :maxlength="50" placeholder="请输入目标id" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button class="cancelBtn" @click="cancel">取 消</el-button>
<el-button class="submitBtn" type="primary" @click="submitForm">确 定</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { import { listMessageList } from '@/api/contentManagement/opmBlackList'
listOpmBlackList,
getOpmBlackList,
delOpmBlackList,
addOpmBlackList,
updateOpmBlackList,
exportOpmBlackList } from '@/api/contentManagement/opmBlackList'
import commonField from '@/utils/commonField' import commonField from '@/utils/commonField'
export default { export default {
name: 'OpmBlackList', name: 'OpmBlackList',
...@@ -114,7 +95,7 @@ export default { ...@@ -114,7 +95,7 @@ export default {
// 总条数 // 总条数
total: 0, total: 0,
// 黑名单表表格数据 // 黑名单表表格数据
opmBlackListList: [], messageList: [],
// 弹出层标题 // 弹出层标题
title: '', title: '',
// 是否显示弹出层 // 是否显示弹出层
...@@ -157,9 +138,9 @@ export default { ...@@ -157,9 +138,9 @@ export default {
/** 查询黑名单表列表 */ /** 查询黑名单表列表 */
getList() { getList() {
this.loading = true this.loading = true
listOpmBlackList(this.queryParams).then( listMessageList(this.queryParams).then(
response => { response => {
this.opmBlackListList = response.data this.messageList = response.data
this.total = response.total this.total = response.total
this.loading = false this.loading = false
} }
...@@ -195,99 +176,6 @@ export default { ...@@ -195,99 +176,6 @@ export default {
flag: '' flag: ''
} }
this.handleQuery() this.handleQuery()
},
/** 新增按钮操作 */
handleAdd() {
this.reset()
this.open = true
this.title = '添加黑名单表'
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset()
const id = row.businessId
getOpmBlackList(id).then(response => {
this.form = response.data
this.open = true
this.title = '修改黑名单表'
})
},
// 改变状态
handleStatusChange(row) {
const text = row.flag === '1' ? '启用' : '停用'
this.$confirm('确认操作?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(function() {
return updateOpmBlackList(row)
}).then(() => {
this.$message({
message: text + '成功',
type: 'success'
})
}).catch(function() {
row.flag = row.flag === '0' ? '1' : '0'
})
},
/** 提交按钮 */
submitForm: function() {
this.$refs['form'].validate(valid => {
if (valid) {
if (this.form.businessId !== undefined) {
updateOpmBlackList(this.form).then(response => {
this.msgSuccess('修改成功')
this.open = false
this.getList()
})
} else {
addOpmBlackList(this.form).then(response => {
this.msgSuccess('新增成功')
this.open = false
this.getList()
})
}
}
})
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.businessId
this.$confirm('是否确认操作?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(function() {
return delOpmBlackList(id)
}).then(() => {
this.getList()
this.$message({
message: '删除成功',
type: 'success'
})
}).catch(function() {
})
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams
this.$confirm('是否确认操作?', '警告', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(function() {
return exportOpmBlackList(queryParams).then(response => {
const blob = new Blob([response])
const downloadElement = document.createElement('a')
const href = window.URL.createObjectURL(blob)// 创建下载的链接
downloadElement.href = href
downloadElement.download = '黑名单表信息' + '.xls' // 下载后文件名
document.body.appendChild(downloadElement)
downloadElement.click()// 点击下载
document.body.removeChild(downloadElement)// 下载完成移除元素
window.URL.revokeObjectURL(href)// 释放掉blob对象
})
})
} }
} }
} }
......
...@@ -56,16 +56,16 @@ ...@@ -56,16 +56,16 @@
{{ scope.row.createDate || '-' }} {{ scope.row.createDate || '-' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" class-name="small-padding fixed-width" width="200px"> <!-- <el-table-column label="操作" class-name="small-padding fixed-width" width="200px">-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<el-button <!-- <el-button-->
:class="commonField.delClass" <!-- :class="commonField.delClass"-->
:type="commonField.typeParent" <!-- :type="commonField.typeParent"-->
:size="commonField.size" <!-- :size="commonField.size"-->
@click="handleDelete(scope.row)" <!-- @click="handleDelete(scope.row)"-->
>删除</el-button> <!-- >删除</el-button>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
</el-table> </el-table>
</div> </div>
<pagination <pagination
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment