其余文件

This commit is contained in:
2026-04-14 17:46:22 +08:00
parent 294b68fe37
commit 3691f4db22
1343 changed files with 189847 additions and 0 deletions

View File

@ -0,0 +1,131 @@
{layout name="layout2" /}
<style>
.image {
height:60px;width: 60px;margin-right: 5px;
}
</style>
<div class="layui-card layui-form" style="padding-bottom: 10%">
<div class="layui-card-body">
<input type="hidden" name="id" value="{$detail.id}">
<div class="layui-form-item">
<label class="layui-form-label">图片:</label>
<div class="layui-input-block" style="width: 50%">
{volist name="detail.images" id="vo"}
<img src="{$vo.image}" class="image-show image">
{/volist}
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">文章内容:</label>
<div class="layui-card-body">
<p>{$detail.content}</p>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">分类:</label>
<div class="layui-card-body">
<p>{$detail.topic.cate.name}</p>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">话题:</label>
<div class="layui-card-body">
<p>{$detail.topic.name | default =""}</p>
</div>
</div>
{if !empty($detail.goods_data)}
<div class="layui-form-item">
<label class="layui-form-label">关联商品:</label>
<div class="layui-input-block" style="width: 50%">
<table class="layui-table">
<tbody>
{foreach $detail.goods_data as $k => $goods}
<tr>
<td>
<div style="text-align: left">
<div class="layui-col-md3">
<img src="{$goods.image}" class="image-show image" >
</div>
<div class="layui-col-md9">
<p style="margin-top: 10px">{$goods.name}</p>
</div>
</div>
</td>
</tr>
{/foreach}
</tbody>
</table>
</div>
</div>
{/if}
{if !empty($detail.shop_data)}
<div class="layui-form-item">
<label class="layui-form-label">关联商品:</label>
<div class="layui-input-block" style="width: 50%">
<table class="layui-table">
<tbody>
{foreach $detail.shop_data as $k => $shop}
<tr>
<td>
<div style="text-align: left">
<div class="layui-col-md3">
<img src="{$shop.logo}" class="image-show image" >
</div>
<div class="layui-col-md9">
<p style="margin-top: 10px">{$shop.name}</p>
</div>
</div>
</td>
</tr>
{/foreach}
</tbody>
</table>
</div>
</div>
{/if}
<div class="layui-form-item">
<label class="layui-form-label"><span style="color:red;">*</span>审核状态:</label>
<div class="layui-input-block">
<input type="radio" name="status" value="1" title="通过" {if $detail.status}checked{/if}>
<input type="radio" name="status" value="2" title="拒绝" {if !$detail.status}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span style="color:red;">*</span>审核说明:</label>
<div class="layui-input-block" style="width: 50%">
<textarea class="layui-textarea" name="audit_remark"></textarea>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>
<script>
layui.config({
version: "{$front_version}",
base: '/static/lib/'
}).use(['form'], function () {
var form = layui.form;
//图片放大
$(document).on('click', '.image-show', function () {
var src = $(this).attr('src');
like.showImg(src,400);
});
});
</script>

View File

@ -0,0 +1,155 @@
{layout name="layout2" /}
<style>
.div-flex {
display: flex;
align-items: center;
justify-content: left;
}
.width-160 {
width: 200px;
}
.image {
height: 60px;
width: 60px;
margin-right: 5px;
}
</style>
<div class="layui-card-body">
<!--基本信息-->
<div class="layui-form" lay-filter="layuiadmin-form-order" id="layuiadmin-form-order">
<input type="hidden" id="article_id" name="id" value="{$detail.id}">
<div class="layui-form-item">
<fieldset class="layui-elem-field layui-field-title">
<legend>用户信息</legend>
</fieldset>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">昵称:</label>
<div class="width-160">{$detail.user.nickname}</div>
<label class="layui-form-label ">编号:</label>
<div class="width-160">{$detail.user.sn}</div>
</div>
<div class="layui-form-item">
<fieldset class="layui-elem-field layui-field-title">
<legend>种草内容</legend>
</fieldset>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">分类:</label>
<div class="width-160">{$detail.cate_name}</div>
<label class="layui-form-label ">话题:</label>
<div class="width-160">{$detail.topic.name | default= ''}</div>
<label class="layui-form-label ">发布时间:</label>
<div class="width-160">{$detail.create_time}</div>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">点赞:</label>
<div class="width-160">{$detail.like}</div>
<label class="layui-form-label ">评论:</label>
<div class="width-160">{$detail.comment}</div>
<label class="layui-form-label ">审核状态:</label>
<div class="width-160">{$detail.status_desc}</div>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">发布内容:</label>
<div class="width-160">{$detail.content}</div>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">发布图片:</label>
<div>
{volist name="detail.images" id="vo"}
<img src="{$vo.image}" class="image-show image">
{/volist}
</div>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">审核时间:</label>
<div class="width-160">{$detail.audit_time}</div>
</div>
<div class="layui-form-item div-flex">
<label class="layui-form-label ">审核说明:</label>
<div class="width-160">{$detail.audit_remark}</div>
</div>
<div class="layui-form-item">
<fieldset class="layui-elem-field layui-field-title">
<legend>种草数据</legend>
</fieldset>
</div>
<div class="layui-form-item">
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
<ul class="layui-tab-title">
<li data-type='comment' class="layui-this">评论</li>
<li data-type='like' >点赞</li>
</ul>
<div class="layui-tab-item layui-show">
<div class="layui-card-body">
<table id="like-table-lists" lay-filter="like-table-lists"></table>
<script type="text/html" id="table-userInfo">
<div class="layui-inline" style="text-align:left;">
<p>用户编号{{d.sn}}</p>
<p>用户昵称{{d.nickname}}</p>
</div>
</script>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
layui.config({
version: "{$front_version}",
base: '/static/lib/'
}).use(['form', 'table', 'element'], function () {
var $ = layui.$;
var table = layui.table;
var element = layui.element;
//主图放大
$(document).on('click', '.image-show', function () {
var src = $(this).attr('src');
like.showImg(src, 400);
});
//获取列表
getList('comment');
//切换列表
element.on('tab(tab-all)', function (data) {
var type = $(this).attr('data-type');
getList(type);
});
function getList(type) {
var cols = [
{field: 'user', title: '用户信息', align: 'center', templet: "#table-userInfo"}
, {field: 'create_time', title: '点赞时间', align: 'center'}
];
if (type === 'comment') {
cols = [
{field: 'user', title: '评论用户', align: 'center', templet: "#table-userInfo"}
, {field: 'comment', title: '评论内容', align: 'center'}
, {field: 'create_time', title: '评价时间', align: 'center'}
];
}
var id = $('#article_id').val();
like.tableLists("#like-table-lists", '{:url("community.CommunityArticle/detail")}?type='+ type + '&id=' + id, cols);
}
});
</script>

View File

@ -0,0 +1,217 @@
{layout name="layout1" /}
<style>
</style>
<div class="wrapper">
<div class="layui-card">
<!-- 操作提示 -->
<div class="layui-card-body">
<div class="layui-collapse" style="border:1px dashed #c4c4c4">
<div class="layui-colla-item">
<h2 class="layui-colla-title like-layui-colla-title">操作提示</h2>
<div class="layui-colla-content layui-show">
<p>*平台管理社区帖子,平台可对贴子进行查看,删除等操作</p>
</div>
</div>
</div>
</div>
<!-- 搜索区域 -->
<div class="layui-card-body layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label for="keyword" class="layui-form-label">会员信息:</label>
<div class="layui-input-inline">
<input type="text" id="keyword" name="keyword" autocomplete="off" class="layui-input" placeholder="请输入昵称/编号/手机号">
</div>
</div>
<div class="layui-inline">
<label for="content" class="layui-form-label">内容搜索:</label>
<div class="layui-input-inline">
<input type="text" id="content" name="content" autocomplete="off" class="layui-input" placeholder="请输入种草内容">
</div>
</div>
<div class="layui-inline">
<label for="status" class="layui-form-label">审核状态:</label>
<div class="layui-input-inline">
<select name="status" id="status">
<option value="">全部</option>
{foreach $status as $item => $val}
<option value="{$item}">{$val}</option>
{/foreach}
</select>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">审核时间:</label>
<div class="layui-input-inline">
<input type="text" class="layui-input time" id="start_time" name="start_time" autocomplete="off">
</div>
<div class="layui-input-inline" style="margin-right: 5px;width: 10px;">
<label class="layui-form-mid">-</label>
</div>
<div class="layui-input-inline">
<input type="text" class="layui-input time" id="end_time" name="end_time" autocomplete="off">
</div>
</div>
<div class="layui-inline">
<a class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="search">搜索</a>
<a class="layui-btn layui-btn-sm layui-btn-primary" lay-submit lay-filter="clear-search">重置</a>
</div>
</div>
</div>
<!-- 主体区域 -->
<div class="layui-card-body">
<table id="like-table-lists" lay-filter="like-table-lists"></table>
<script type="text/html" id="table-operation">
{{# if(d.status == 0){ }}
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="audit">审核</a>
{{# } }}
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="detail">详情</a>
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>
<script type="text/html" id="table-image">
{{# layui.each(d.images, function(index, item){ }}
<img src="{{item.image}}" style="height:60px;width: 60px;margin-right: 5px;" class="image-show">
{{# }); }}
</script>
<script type="text/html" id="table-userInfo">
<img src="{{d.avatar}}" alt="图标" style="width:60px;height:60px;margin-right:5px;">
<div class="layui-inline" style="text-align:left;">
<p>编号{{d.sn}}</p>
<p>昵称{{d.nickname}}</p>
</div>
</script>
</div>
</div>
</div>
<script>
layui.use(["table", "form", "laydate"], function(){
var table = layui.table;
var form = layui.form;
var laydate = layui.laydate;
laydate.render({
elem: '#start_time'
, type: 'datetime'
});
laydate.render({
elem: '#end_time'
, type: 'datetime'
});
like.tableLists("#like-table-lists", "{:url()}", [
{field:"user", align:"center",width: 240, title:"会员信息", templet: "#table-userInfo"}
,{field:"content", width: 200,title:"种草内容"}
,{field:"images", width: 250, align:"left", title:"图片", templet: "#table-image"}
,{field:"like", width: 100, align:"center", title:"点赞数"}
,{field:"comment", width: 100, align:"center", title:"评论数"}
,{field:"status_desc",  width: 120, align:"center", title:"状态"}
,{field:"create_time", width: 180, align:"center", title:"发布时间"}
,{title:"操作", align:"left", fixed:"right",width: 220, toolbar:"#table-operation"}
]);
var active = {
audit: function(obj) {
layer.open({
type: 2
,title: "文章审核"
,content: "{:url('community.CommunityArticle/audit')}?id=" + obj.data.id
,area: ["90%", "90%"]
,btn: ["确定", "取消"]
,yes: function(index, layero){
var iframeWindow = window["layui-layer-iframe" + index];
var submit = layero.find("iframe").contents().find("#addSubmit");
iframeWindow.layui.form.on("submit(addSubmit)", function(data){
data.field['id'] = obj.data.id;
like.ajax({
url: "{:url('community.CommunityArticle/audit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
detail: function(obj) {
layer.open({
type: 2
,title: "详情"
,content: "{:url('community.CommunityArticle/detail')}?id=" + obj.data.id
,area: ["90%", "90%"]
,yes: function(index, layero){
}
});
},
del: function(obj) {
var name = "<div style='width:200px;overflow:hidden;text-overflow: ellipsis;white-space:nowrap;'>" +
"<span>确定删除文章:</span>" +
"<span style='color: red;'>"+obj.data.content +"</span></div>";
layer.confirm(name, function(index) {
like.ajax({
url: "{:url('community.CommunityArticle/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
}
};
like.eventClick(active);
//图片放大
$(document).on('click', '.image-show', function () {
var src = $(this).attr('src');
like.showImg(src,400);
});
form.on("submit(search)", function(data){
table.reload("like-table-lists", {
where: data.field,
page: {
curr: 1
}
});
});
form.on("submit(clear-search)", function(){
$("#keyword").val("");
$("#content").val("");
$("#status").val("");
$("#start_time").val("");
$("#end_time").val("");
form.render("select");
table.reload("like-table-lists", {
where: {},
page: {
curr: 1
}
});
});
})
</script>

View File

@ -0,0 +1,32 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="padding-bottom: 10%">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="name" class="layui-form-label"><span style="color:red;">*</span>分类名称:</label>
<div class="layui-input-block" style="width: 50%">
<input type="text" name="name" id="name" lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span style="color:red;">*</span>状态:</label>
<div class="layui-input-block">
<input type="radio" name="is_show" value="1" title="显示" checked>
<input type="radio" name="is_show" value="0" title="隐藏" >
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">排序:</label>
<div class="layui-input-block" style="width: 50%">
<input type="number" name="sort" id="sort" value="255" lay-verType="tips" lay-verify="number" min="0"
autocomplete="off" class="layui-input">
<div class=" layui-form-mid layui-word-aux">排序值必须为整数;数值越小,越靠前</div>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>

View File

@ -0,0 +1,32 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="padding-bottom: 10%">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="name" class="layui-form-label"><span style="color:red;">*</span>分类名称:</label>
<div class="layui-input-block" style="width: 50%">
<input type="text" name="name" id="name" value="{$detail.name}" lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span style="color:red;">*</span>分类状态:</label>
<div class="layui-input-block">
<input type="radio" name="is_show" value="1" title="显示" {if $detail.is_show}checked{/if}>
<input type="radio" name="is_show" value="0" title="隐藏" {if !$detail.is_show}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">排序:</label>
<div class="layui-input-block" style="width: 50%">
<input type="number" name="sort" id="sort" value="{$detail.sort}" lay-verType="tips" lay-verify="number" min="0"
autocomplete="off" class="layui-input">
<div class=" layui-form-mid layui-word-aux">排序值必须为整数;数值越小,越靠前</div>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>

View File

@ -0,0 +1,191 @@
{layout name="layout1" /}
<div class="wrapper">
<div class="layui-card">
<!-- 操作提示 -->
<div class="layui-card-body">
<div class="layui-collapse" style="border:1px dashed #c4c4c4">
<div class="layui-colla-item">
<h2 class="layui-colla-title like-layui-colla-title">操作提示</h2>
<div class="layui-colla-content layui-show">
<p>*可对社区文章分类管理,分类有关联话题则不允许删除。</p>
</div>
</div>
</div>
</div>
<!-- 搜索区域 -->
<div class="layui-card-body layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label for="name" class="layui-form-label">分类名称:</label>
<div class="layui-input-inline">
<input type="text" id="name" name="name" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<a class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="search">搜索</a>
<a class="layui-btn layui-btn-sm layui-btn-primary" lay-submit lay-filter="clear-search">重置</a>
</div>
</div>
</div>
<!-- 主体区域 -->
<div class="layui-card-body">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm layEvent" lay-event="add">新增分类</button>
<table id="like-table-lists" lay-filter="like-table-lists"></table>
<script type="text/html" id="table-operation">
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>
<script type="text/html" id="showTpl">
<input type="checkbox" lay-filter="switch-show" data-id={{d.id}} lay-skin="switch"
lay-text="显示|隐藏" {{# if(d.is_show==1){ }} checked {{# } }}/>
</script>
</div>
</div>
</div>
<script>
layui.use(["table", "form"], function(){
var table = layui.table;
var form = layui.form;
like.tableLists("#like-table-lists", "{:url()}", [
{field:"name", align:"center", title:"分类名称"}
,{field:"is_show", align:"center", title:"状态", templet: "#showTpl"}
,{field:"sort", align:"center", title:"排序"}
,{field:"create_time", align:"center", title:"创建时间"}
,{title:"操作", align:"center", fixed:"right", toolbar:"#table-operation"}
]);
var active = {
add: function() {
layer.open({
type: 2
,title: "新增分类"
,content: "{:url('community.CommunityCategory/add')}"
,area: ["60%", "60%"]
,btn: ["确定", "取消"]
,yes: function(index, layero){
var iframeWindow = window["layui-layer-iframe" + index];
var submit = layero.find("iframe").contents().find("#addSubmit");
iframeWindow.layui.form.on("submit(addSubmit)", function(data){
like.ajax({
url: "{:url('community.CommunityCategory/add')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
edit: function(obj) {
layer.open({
type: 2
,title: "编辑分类"
,content: "{:url('community.CommunityCategory/edit')}?id=" + obj.data.id
,area: ["60%", "60%"]
,btn: ["确定", "取消"]
,yes: function(index, layero){
var iframeWindow = window["layui-layer-iframe" + index];
var submit = layero.find("iframe").contents().find("#addSubmit");
iframeWindow.layui.form.on("submit(addSubmit)", function(data){
data.field['id'] = obj.data.id;
like.ajax({
url: "{:url('community.CommunityCategory/edit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
var cateName = "<span style='color: red'>"+obj.data.name+"</span>";
layer.confirm("确定删除分类:"+cateName, function(index) {
like.ajax({
url: "{:url('community.CommunityCategory/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
}
};
like.eventClick(active);
form.on("submit(search)", function(data){
table.reload("like-table-lists", {
where: data.field,
page: {
curr: 1
}
});
});
form.on("submit(clear-search)", function(){
$("#name").val("");
form.render("select");
table.reload("like-table-lists", {
where: {},
page: {
curr: 1
}
});
});
// 状态切换
form.on('switch(switch-show)', function (obj) {
var id = obj.elem.attributes['data-id'].nodeValue;
var show = 0;
if (obj.elem.checked) {
show = 1;
}
var data = {is_show: show, id: id};
like.ajax({
url: '{:url("community.CommunityCategory/status")}',
data: data,
type: "post",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
}
}
});
});
})
</script>

View File

@ -0,0 +1,46 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="padding-bottom: 10%">
<div class="layui-card-body">
<input type="hidden" name="id" value="{$detail.id}">
<div class="layui-form-item">
<label class="layui-form-label">种草内容:</label>
<div class="layui-input-block" style="width: 50%">
<div class="layui-card-body">
{$detail.article.content}
</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">评价内容:</label>
<div class="layui-input-block" style="width: 50%">
<div class="layui-card-body">
{$detail.comment}
</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">审核:</label>
<div class="layui-input-block">
<input type="radio" name="status" value="1" title="审核通过" {if $detail.status}checked{/if}>
<input type="radio" name="status" value="2" title="审核拒绝" {if !$detail.status}checked{/if}>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>
<script>
layui.config({
version: "{$front_version}",
base: '/static/lib/'
}).use(['form'], function () {
var form = layui.form;
});
</script>

View File

@ -0,0 +1,188 @@
{layout name="layout1" /}
<style>
</style>
<div class="wrapper">
<div class="layui-card">
<!-- 操作提示 -->
<div class="layui-card-body">
<div class="layui-collapse" style="border:1px dashed #c4c4c4">
<div class="layui-colla-item">
<h2 class="layui-colla-title like-layui-colla-title">操作提示</h2>
<div class="layui-colla-content layui-show">
<p>*可对社区文章评论进行管理审核.</p>
</div>
</div>
</div>
</div>
<!-- 搜索区域 -->
<div class="layui-card-body layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label for="keyword" class="layui-form-label">会员信息:</label>
<div class="layui-input-inline">
<input type="text" id="keyword" name="keyword" autocomplete="off" class="layui-input" placeholder="请输入昵称/编号/手机号">
</div>
</div>
<div class="layui-inline">
<label for="comment" class="layui-form-label">内容搜索:</label>
<div class="layui-input-inline">
<input type="text" id="comment" name="comment" autocomplete="off" class="layui-input" placeholder="请输入评论内容">
</div>
</div>
<div class="layui-inline">
<label for="status" class="layui-form-label">审核状态:</label>
<div class="layui-input-inline">
<select name="status" id="status">
<option value="">全部</option>
{foreach $status as $item => $val}
<option value="{$item}">{$val}</option>
{/foreach}
</select>
</div>
</div>
<div class="layui-inline">
<a class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="search">搜索</a>
<a class="layui-btn layui-btn-sm layui-btn-primary" lay-submit lay-filter="clear-search">重置</a>
</div>
</div>
</div>
<!-- 主体区域 -->
<div class="layui-card-body">
<table id="like-table-lists" lay-filter="like-table-lists"></table>
<script type="text/html" id="table-operation">
{{# if(d.status == 0){ }}
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="audit">审核</a>
{{# } }}
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>
<script type="text/html" id="table-userInfo">
<img src="{{d.avatar}}" alt="图标" style="width:60px;height:60px;margin-right:5px;">
<div class="layui-inline" style="text-align:left;">
<p>编号{{d.sn}}</p>
<p>昵称{{d.nickname}}</p>
</div>
</script>
<script type="text/html" id="table-articleContent">
<div>{{d.article.content}}</div>
</script>
</div>
</div>
</div>
<script>
layui.use(["table", "form", "laydate"], function(){
var table = layui.table;
var form = layui.form;
var laydate = layui.laydate;
laydate.render({
elem: '#start_time'
, type: 'datetime'
});
laydate.render({
elem: '#end_time'
, type: 'datetime'
});
like.tableLists("#like-table-lists", "{:url()}", [
{field:"user", align:"center",width: 240, title:"会员信息", templet: "#table-userInfo"}
,{field:"article_content", width: 250,title:"种草内容", templet: "#table-articleContent"}
,{field:"comment", width: 300,title:"评价内容"}
,{field:"topic_name", width: 150, align:"center",title:"话题"}
,{field:"status_desc",  width: 120, align:"center", title:"审核状态"}
,{field:"create_time", width: 180, align:"center", title:"评论时间"}
,{title:"操作", align:"left", fixed:"right",width: 160, toolbar:"#table-operation"}
]);
var active = {
audit: function(obj) {
layer.open({
type: 2
,title: "评论审核"
,content: "{:url('community.CommunityComment/audit')}?id=" + obj.data.id
,area: ["60%", "60%"]
,btn: ["确定", "取消"]
,yes: function(index, layero){
var iframeWindow = window["layui-layer-iframe" + index];
var submit = layero.find("iframe").contents().find("#addSubmit");
iframeWindow.layui.form.on("submit(addSubmit)", function(data){
data.field['id'] = obj.data.id;
like.ajax({
url: "{:url('community.CommunityComment/audit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
var comment = "<div style='width:200px;overflow:hidden;text-overflow: ellipsis;white-space:nowrap;'>" +
"<span>确定删除评论:</span>" +
"<span style='color: red;'>"+obj.data.comment +"</span></div>";
layer.confirm(comment, function(index) {
like.ajax({
url: "{:url('community.CommunityComment/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
}
};
like.eventClick(active);
//图片放大
$(document).on('click', '.image-show', function () {
var src = $(this).attr('src');
like.showImg(src,400);
});
form.on("submit(search)", function(data){
table.reload("like-table-lists", {
where: data.field,
page: {
curr: 1
}
});
});
form.on("submit(clear-search)", function(){
$("#keyword").val("");
$("#comment").val("");
$("#status").val("");
form.render("select");
table.reload("like-table-lists", {
where: {},
page: {
curr: 1
}
});
});
})
</script>

View File

@ -0,0 +1,89 @@
{layout name="layout1" /}
<style>
.layui-form-label {
width: 120px;
}
.layui-input-block {
margin-left: 150px;
}
</style>
<div class="wrapper">
<div class="layui-card">
<div class="layui-card-body">
<!--操作提示-->
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
<div class="layui-colla-item">
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
<div class="layui-colla-content layui-show">
<p>*设置是否启用种草功能,以及文章和评论相关审核设置,默认都开启审核</p>
</div>
</div>
</div>
<!--表单区域-->
<div class="layui-form" style="margin-top: 15px;">
<div class="layui-field-box">
<div class="layui-form-item">
<lable class="layui-form-label">种草功能:</lable>
<div class="layui-input-block" style="width:300px;">
<input type="radio" name="status" value="1" title="开启" {if $config.status == 1} checked {/if}>
<input type="radio" name="status" value="0" title="关闭" {if !$config.status} checked {/if}>
</div>
</div>
<div class="layui-form-item">
<lable class="layui-form-label">文章审核:</lable>
<div class="layui-input-block" style="width:300px;">
<input type="radio" name="audit_article" value="1" title="开启" {if $config.audit_article == 1} checked {/if}>
<input type="radio" name="audit_article" value="0" title="关闭" {if !$config.audit_article} checked {/if}>
</div>
</div>
<div class="layui-form-item">
<lable class="layui-form-label">评论审核:</lable>
<div class="layui-input-block" style="width:300px;">
<input type="radio" name="audit_comment" value="1" title="开启" {if $config.audit_comment == 1} checked {/if}>
<input type="radio" name="audit_comment" value="0" title="关闭" {if !$config.audit_comment} checked {/if}>
</div>
</div>
</div>
<div class="layui-form-item">
<lable class="layui-form-label"></lable>
<div class="layui-input-block">
<button class="layui-btn layui-btn-normal" lay-submit lay-filter="set">确定</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
layui.config({
version:"{$front_version}",
base: '/static/lib/'
}).use(['form','element'], function(){
var $ = layui.$,
form = layui.form,
element = layui.element;
form.on('submit(set)', function(data) {
like.ajax({
url:'{:url("community.CommunitySetting/setting")}',
data: data.field,
type:"post",
success:function(res)
{
if(res.code == 1)
{
layui.layer.msg(res.msg, {
offset: '15px'
, icon: 1
, time: 1000
});
}
}
});
});
});
</script>

View File

@ -0,0 +1,80 @@
{layout name="layout2" /}
<div class="layui-card layui-form" >
<div class="layui-card-body">
<div class="layui-form-item">
<label for="name" class="layui-form-label"><span style="color:red;">*</span>话题名称:</label>
<div class="layui-input-block" style="width: 50%">
<input type="text" name="name" id="name" lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span style="color:red;">*</span>话题图标:</label>
<div class="layui-input-block">
<div class="like-upload-image" switch-tab="0" lay-verType="tips">
<div class="upload-image-elem"><a class="add-upload-image"> + 添加</a></div>
</div>
<div class="layui-form-mid layui-word-aux">建议尺寸:宽200像素*高200像素的jpg,jpeg,png图片</div>
</div>
</div>
<div class="layui-form-item">
<label for="cid" class="layui-form-label"><span style="color:red;">*</span>关联分类:</label>
<div class="layui-input-inline">
<select name="cid" id="cid" lay-verType="tips" lay-verify="required">
<option value="">全部</option>
{volist name="cate" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">推荐:</label>
<div class="layui-input-block">
<input type="radio" name="is_recommend" value="1" title="是" >
<input type="radio" name="is_recommend" value="0" title="否" checked>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态:</label>
<div class="layui-input-block">
<input type="radio" name="is_show" value="1" title="显示" checked>
<input type="radio" name="is_show" value="0" title="隐藏" >
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">排序:</label>
<div class="layui-input-block" style="width: 50%">
<input type="number" name="sort" id="sort" value="255" lay-verType="tips" lay-verify="number" min="0"
autocomplete="off" class="layui-input">
<div class=" layui-form-mid layui-word-aux">排序值必须为整数;数值越小,越靠前</div>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>
<script>
layui.config({
version: "{$front_version}",
base: '/static/lib/'
}).use(['form'], function () {
var form = layui.form;
like.delUpload();
$(document).on("click", ".add-upload-image", function () {
like.imageUpload({
limit: 1,
field: "image",
that: $(this)
});
});
});
</script>

View File

@ -0,0 +1,90 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="padding-bottom: 10%">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="name" class="layui-form-label"><span style="color:red;">*</span>话题名称:</label>
<div class="layui-input-block" style="width: 50%">
<input type="text" name="name" id="name" value="{$detail.name}" lay-verify="required" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span style="color:red;">*</span>话题图标:</label>
<div class="layui-input-block">
<div class="like-upload-image">
{if $detail.image}
<div class="upload-image-div">
<img src="{$detail.image}" alt="img">
<input type="hidden" name="image" value="{$detail.image}">
<div class="del-upload-btn">x</div>
</div>
<div class="upload-image-elem" style="display:none;"><a class="add-upload-image"> + 添加图片</a></div>
{else}
<div class="upload-image-elem"><a class="add-upload-image"> + 添加图片</a></div>
{/if}
</div>
<div class="layui-form-mid layui-word-aux">建议尺寸:宽200像素*高200像素的jpg,jpeg,png图片</div>
</div>
</div>
<div class="layui-form-item">
<label for="cid" class="layui-form-label">关联分类:</label>
<div class="layui-input-inline">
<select name="cid" id="cid" lay-verType="tips" lay-verify="required">
<option value="">全部</option>
{volist name="cate" id="vo"}
<option value="{$vo.id}" {if $detail.cid==$vo.id}selected{/if}>{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">推荐:</label>
<div class="layui-input-block">
<input type="radio" name="is_recommend" value="1" title="显示" {if $detail.is_recommend}checked{/if}>
<input type="radio" name="is_recommend" value="0" title="隐藏" {if !$detail.is_recommend}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态:</label>
<div class="layui-input-block">
<input type="radio" name="is_show" value="1" title="是" {if $detail.is_show}checked{/if}>
<input type="radio" name="is_show" value="0" title="否" {if !$detail.is_show}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">排序:</label>
<div class="layui-input-block" style="width: 50%">
<input type="number" name="sort" id="sort" value="{$detail.sort}" lay-verType="tips" lay-verify="number" min="0"
autocomplete="off" class="layui-input">
<div class=" layui-form-mid layui-word-aux">排序值必须为整数;数值越小,越靠前</div>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>
<script>
layui.config({
version: "{$front_version}",
base: '/static/lib/'
}).use(['form'], function () {
var form = layui.form;
like.delUpload();
$(document).on("click", ".add-upload-image", function () {
like.imageUpload({
limit: 1,
field: "image",
that: $(this)
});
});
});
</script>

View File

@ -0,0 +1,239 @@
{layout name="layout1" /}
<div class="wrapper">
<div class="layui-card">
<!-- 操作提示 -->
<div class="layui-card-body">
<div class="layui-collapse" style="border:1px dashed #c4c4c4">
<div class="layui-colla-item">
<h2 class="layui-colla-title like-layui-colla-title">操作提示</h2>
<div class="layui-colla-content layui-show">
<p>*可对社区话题管理,用户发布文章时需要选择对应的话题.话题下关联文章则不允许删除话题</p>
</div>
</div>
</div>
</div>
<!-- 搜索区域 -->
<div class="layui-card-body layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label for="name" class="layui-form-label">话题名称:</label>
<div class="layui-input-inline">
<input type="text" id="name" name="name" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<label for="cate" class="layui-form-label">话题分类:</label>
<div class="layui-input-inline">
<select name="cid" id="cate">
<option value="">全部</option>
{volist name="cate" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-inline">
<a class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="search">搜索</a>
<a class="layui-btn layui-btn-sm layui-btn-primary" lay-submit lay-filter="clear-search">重置</a>
</div>
</div>
</div>
<!-- 主体区域 -->
<div class="layui-card-body">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm layEvent" lay-event="add">新增话题</button>
<table id="like-table-lists" lay-filter="like-table-lists"></table>
<script type="text/html" id="table-operation">
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>
<script type="text/html" id="showTpl">
<input type="checkbox" lay-filter="switch-show" data-id={{d.id}} lay-skin="switch"
lay-text="显示|隐藏" {{# if(d.is_show==1){ }} checked {{# } }}/>
</script>
<script type="text/html" id="recommendTpl">
<input type="checkbox" lay-filter="switch-recommend" data-id={{d.id}} lay-skin="switch"
lay-text="是|否" {{# if(d.is_recommend==1){ }} checked {{# } }}/>
</script>
<script type="text/html" id="table-image">
{{# if(d.image){ }}
<img src="{{d.image}}" class="image-show" alt="图" style="width:80px;height:80px;">
{{# } }}
</script>
</div>
</div>
</div>
<script>
layui.use(["table", "form"], function(){
var table = layui.table;
var form = layui.form;
like.tableLists("#like-table-lists", "{:url()}", [
{field:"name", align:"center", title:"话题名称"}
,{field:"image", align:"center", title:"话题图标", templet: "#table-image"}
,{field:"cate_name", align:"center", title:"关联分类"}
,{field:"article_num", align:"center", title:"文章数量"}
,{field:"sort", align:"center", title:"排序"}
,{field:"is_recommend", align:"center", title:"是否推荐", templet: "#recommendTpl"}
,{field:"is_show", align:"center", title:"是否显示", templet: "#showTpl"}
,{title:"操作", align:"center", fixed:"right", toolbar:"#table-operation"}
]);
var active = {
add: function() {
layer.open({
type: 2
,title: "新增话题"
,content: "{:url('community.CommunityTopic/add')}"
,area: ["90%", "90%"]
,btn: ["确定", "取消"]
,yes: function(index, layero){
var iframeWindow = window["layui-layer-iframe" + index];
var submit = layero.find("iframe").contents().find("#addSubmit");
iframeWindow.layui.form.on("submit(addSubmit)", function(data){
like.ajax({
url: "{:url('community.CommunityTopic/add')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
edit: function(obj) {
layer.open({
type: 2
,title: "编辑话题"
,content: "{:url('community.CommunityTopic/edit')}?id=" + obj.data.id
,area: ["90%", "90%"]
,btn: ["确定", "取消"]
,yes: function(index, layero){
var iframeWindow = window["layui-layer-iframe" + index];
var submit = layero.find("iframe").contents().find("#addSubmit");
iframeWindow.layui.form.on("submit(addSubmit)", function(data){
data.field['id'] = obj.data.id;
like.ajax({
url: "{:url('community.CommunityTopic/edit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
var cateName = "<span style='color: red'>"+obj.data.name+"</span>";
layer.confirm("确定删除话题:"+cateName, function(index) {
like.ajax({
url: "{:url('community.CommunityTopic/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
}
};
like.eventClick(active);
//图片放大
$(document).on('click', '.image-show', function () {
var src = $(this).attr('src');
like.showImg(src,400);
});
form.on("submit(search)", function(data){
table.reload("like-table-lists", {
where: data.field,
page: {
curr: 1
}
});
});
form.on("submit(clear-search)", function(){
$("#name").val("");
$("#cate").val("");
form.render("select");
table.reload("like-table-lists", {
where: {},
page: {
curr: 1
}
});
});
// 状态切换
form.on('switch(switch-show)', function (obj) {
var id = obj.elem.attributes['data-id'].nodeValue;
var show = 0;
if (obj.elem.checked) {
show = 1;
}
var data = {field: 'is_show', value:show, id: id};
updateField(data);
});
// 状态切换
form.on('switch(switch-recommend)', function (obj) {
var id = obj.elem.attributes['data-id'].nodeValue;
var recommend = 0;
if (obj.elem.checked) {
recommend = 1;
}
var data = {field: 'is_recommend', value:recommend, id: id};
updateField(data);
});
function updateField(data) {
like.ajax({
url: '{:url("community.CommunityTopic/status")}',
data: data,
type: "post",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000});
}
}
});
}
})
</script>