其余文件

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,111 @@
{layout name="layout2" /}
<link href="__PUBLIC__/static/lib/layui/layeditor/layedit.css" rel="stylesheet"/>
<script src="__PUBLIC__/static/lib/layui/layeditor/index.js"></script>
<script src="__PUBLIC__/static/lib/layui/layeditor/ace/ace.js"></script>
<style>
.layui-form-item .layui-input-inline { width: 340px; }
</style>
<div class="layui-card layui-form" style="box-shadow:none;">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="title" class="layui-form-label"><span style="color:red;">*</span>文章标题:</label>
<div class="layui-input-inline">
<input type="text" name="title" id="title" lay-verType="tips" lay-verify="required" autocomplete="off" class="layui-input">
</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="category" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-form-item">
<label for="intro" class="layui-form-label">文章简介:</label>
<div class="layui-input-inline">
<input type="text" name="intro" id="intro" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">文章排序:</label>
<div class="layui-input-inline">
<input type="text" name="sort" id="sort" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">封面图:</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*150像素</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">商城公告:</label>
<div class="layui-input-inline">
<input type="radio" name="is_notice" value="1" title="是">
<input type="radio" name="is_notice" value="0" title="否" checked>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">文章状态:</label>
<div class="layui-input-inline">
<input type="radio" name="is_show" value="1" title="显示">
<input type="radio" name="is_show" value="0" title="隐藏" checked>
</div>
</div>
<div class="layui-form-item">
<label for="content" class="layui-form-label">文章内容:</label>
<div class="layui-input-block">
<textarea name="content" id="content" lay-verify="content"></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({
base: "/static/lib/"
}).extend({
likeedit: "likeedit/likeedit"
}).use(["layEditor", "form"], function(){
var form = layui.form;
var layEditor = layui.layEditor;
layEditor.set({
uploadImage: {
url: '{:url("file/lists")}?type=10'
},
})
var ieditor = layEditor.build('content')
form.verify({
content: function(value) {
return layEditor.sync(ieditor);
}
});
like.delUpload();
$(document).on("click", ".add-upload-image", function () {
like.imageUpload({
limit: 1,
field: "image",
that: $(this)
});
});
})
</script>

View File

@ -0,0 +1,120 @@
{layout name="layout2" /}
<link href="__PUBLIC__/static/lib/layui/layeditor/layedit.css" rel="stylesheet"/>
<script src="__PUBLIC__/static/lib/layui/layeditor/index.js"></script>
<script src="__PUBLIC__/static/lib/layui/layeditor/ace/ace.js"></script>
<style>
.layui-form-item .layui-input-inline { width: 340px; }
</style>
<div class="layui-card layui-form" style="box-shadow:none;">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="title" class="layui-form-label"><span style="color:red;">*</span>文章标题:</label>
<div class="layui-input-inline">
<input type="text" name="title" id="title" value="{$detail.title}" lay-verType="tips" lay-verify="required" autocomplete="off" class="layui-input">
</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="category" 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 for="intro" class="layui-form-label">文章简介:</label>
<div class="layui-input-inline">
<input type="text" name="intro" id="intro" value="{$detail.intro}" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">文章排序:</label>
<div class="layui-input-inline">
<input type="text" name="sort" id="sort" value="{$detail.sort}" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">封面图:</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*150像素</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">商城公告:</label>
<div class="layui-input-inline">
<input type="radio" name="is_notice" value="1" title="是" {if $detail.is_notice==1}checked{/if}>
<input type="radio" name="is_notice" value="0" title="否" {if $detail.is_notice==0}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">文章状态:</label>
<div class="layui-input-inline">
<input type="radio" name="is_show" value="1" title="显示" {if $detail.is_show==1}checked{/if}>
<input type="radio" name="is_show" value="0" title="隐藏" {if $detail.is_show==0}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label for="content" class="layui-form-label">文章内容:</label>
<div class="layui-input-block">
<textarea name="content" id="content" lay-verify="content">{$detail.content|raw}</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({
base: "/static/lib/"
}).extend({
likeedit: "likeedit/likeedit"
}).use(["layEditor", "form"], function(){
var form = layui.form;
var layEditor = layui.layEditor;
layEditor.set({
uploadImage: {
url: '{:url("file/lists")}?type=10'
},
})
var ieditor = layEditor.build('content')
form.verify({
content: function(value) {
return layEditor.sync(ieditor);
}
});
like.delUpload();
$(document).on("click", ".add-upload-image", function () {
like.imageUpload({
limit: 1,
field: "image",
that: $(this)
});
});
})
</script>

View File

@ -0,0 +1,224 @@
{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>
<p>*设置文章为商城公告后,文章标题会在商城首页的新闻公告轮播显示。</p>
</div>
</div>
</div>
</div>
<!-- 搜索区域 -->
<div class="layui-card-body layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label for="title" class="layui-form-label">文章标题:</label>
<div class="layui-input-inline">
<input type="text" id="title" name="title" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<label for="cid" class="layui-form-label">文章分类:</label>
<div class="layui-input-inline">
<select name="cid" id="cid">
<option value="">全部</option>
{volist name="category" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-inline">
<label for="is_notice" class="layui-form-label">商城公告:</label>
<div class="layui-input-inline">
<select name="is_notice" id="is_notice">
<option value="">全部</option>
<option value="1"></option>
<option value="0"></option>
</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-image">
{{# if(d.image){ }}
<img src="{{d.image}}" alt="图" style="width:28px;height:28px;">
{{# } }}
</script>
<script type="text/html" id="table-operation">
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
{{# if(d.is_show == '显示'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm layui-btn-warm" lay-event="hide">隐藏</a>{{# } }}
{{# if(d.is_show == '隐藏'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="hide">显示</a>{{# } }}
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</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:"id", width:60, title:"ID"}
,{field:"title", width:200, align:"center", title:"文章标题"}
,{field:"image", width:100, align:"center", title:"封面图", templet:"#table-image"}
,{field:"category", width:150, align:"center", title:"文章分类"}
,{field:"is_notice", width:100, align:"center", title:"商城公告"}
,{field:"is_show", width:100, align:"center", title:"文章状态"}
,{field:"visit", width:100, align:"center", title:"浏览量"}
,{field:"likes", width:100, align:"center", title:"点赞量"}
,{field:"sort", width:100, align:"center", title:"排序"}
,{field:"create_time", width:180, align:"center", title:"创建时间"}
,{title:"操作", width:200, align:"center", fixed:"right", toolbar:"#table-operation"}
]);
var active = {
add: function() {
layer.open({
type: 2
,title: "新增文章"
,content: "{:url('content.Article/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('content.Article/add')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
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('content.Article/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('content.Article/edit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
layer.confirm("确定删除文章:"+obj.data.title, function(index) {
like.ajax({
url: "{:url('content.Article/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
},
hide: function(obj) {
var text = obj.data.is_show === '显示' ? '确定隐藏:' : '确定显示:';
layer.confirm(text+obj.data.title, function(index) {
like.ajax({
url: "{:url('content.Article/hide')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
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(){
$("#title").val("");
form.render("select");
table.reload("like-table-lists", {
where: {},
page: {
curr: 1
}
});
});
})
</script>

View File

@ -0,0 +1,23 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="box-shadow:none;">
<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">
<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="启用">
<input type="radio" name="is_show" value="0" title="关闭" checked>
</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,23 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="box-shadow:none;">
<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">
<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 layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>

View File

@ -0,0 +1,153 @@
{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">
<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>
{{# if(d.is_show == '启用'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm layui-btn-warm" lay-event="hide">停用</a>{{# } }}
{{# if(d.is_show == '停用'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="hide">启用</a>{{# } }}
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>
</div>
</div>
</div>
<script>
layui.use(["table"], function(){
var table = layui.table;
like.tableLists("#like-table-lists", "{:url()}", [
{field:"id", width:60, title:"ID"}
,{field:"name", width:160, align:"center", title:"分类名称"}
,{field:"is_show", width:100, align:"center", title:"分类状态"}
,{field:"create_time", width:180, align:"center", title:"创建时间"}
,{title:"操作", width:220, align:"center", fixed:"right", toolbar:"#table-operation"}
]);
var active = {
add: function() {
layer.open({
type: 2
,title: "新增文章分类"
,content: "{:url('content.ArticleCategory/add')}"
,area: ["550px", "400px"]
,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('content.ArticleCategory/add')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
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('content.ArticleCategory/edit')}?id=" + obj.data.id
,area: ["550px", "400px"]
,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('content.ArticleCategory/edit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
layer.confirm("确定删除分类:"+obj.data.name, function(index) {
like.ajax({
url: "{:url('content.ArticleCategory/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
},
hide: function(obj) {
var text = obj.data.is_show === '启用' ? '确定停用:' : '确定启用:';
layer.confirm(text+obj.data.name, function(index) {
like.ajax({
url: "{:url('content.ArticleCategory/hide')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
layer.close(index);
})
}
};
like.eventClick(active);
})
</script>

View File

@ -0,0 +1,103 @@
{layout name="layout2" /}
<link href="__PUBLIC__/static/lib/layui/layeditor/layedit.css" rel="stylesheet"/>
<script src="__PUBLIC__/static/lib/layui/layeditor/index.js"></script>
<script src="__PUBLIC__/static/lib/layui/layeditor/ace/ace.js"></script>
<style>
.layui-form-item .layui-input-inline { width: 340px; }
</style>
<div class="layui-card layui-form" style="box-shadow:none;">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="title" class="layui-form-label"><span style="color:red;">*</span>帮助标题:</label>
<div class="layui-input-inline">
<input type="text" name="title" id="title" lay-verType="tips" lay-verify="required" autocomplete="off" class="layui-input">
</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="category" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-form-item">
<label for="intro" class="layui-form-label">帮助简介:</label>
<div class="layui-input-inline">
<input type="text" name="intro" id="intro" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">帮助排序:</label>
<div class="layui-input-inline">
<input type="text" name="sort" id="sort" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">封面图:</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*150像素</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">帮助状态:</label>
<div class="layui-input-inline">
<input type="radio" name="is_show" value="1" title="显示">
<input type="radio" name="is_show" value="0" title="隐藏" checked>
</div>
</div>
<div class="layui-form-item">
<label for="content" class="layui-form-label">帮助内容:</label>
<div class="layui-input-block">
<textarea name="content" id="content" lay-verify="content"></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({
base: "/static/lib/"
}).extend({
likeedit: "likeedit/likeedit"
}).use(["layEditor", "form"], function(){
var form = layui.form;
var layEditor = layui.layEditor;
layEditor.set({
uploadImage: {
url: '{:url("file/lists")}?type=10'
},
})
var ieditor = layEditor.build('content')
form.verify({
content: function(value) {
return layEditor.sync(ieditor);
}
});
like.delUpload();
$(document).on("click", ".add-upload-image", function () {
like.imageUpload({
limit: 1,
field: "image",
that: $(this)
});
});
})
</script>

View File

@ -0,0 +1,112 @@
{layout name="layout2" /}
<link href="__PUBLIC__/static/lib/layui/layeditor/layedit.css" rel="stylesheet"/>
<script src="__PUBLIC__/static/lib/layui/layeditor/index.js"></script>
<script src="__PUBLIC__/static/lib/layui/layeditor/ace/ace.js"></script>
<style>
.layui-form-item .layui-input-inline { width: 340px; }
</style>
<div class="layui-card layui-form" style="box-shadow:none;">
<div class="layui-card-body">
<div class="layui-form-item">
<label for="title" class="layui-form-label"><span style="color:red;">*</span>帮助标题:</label>
<div class="layui-input-inline">
<input type="text" name="title" id="title" value="{$detail.title}" lay-verType="tips" lay-verify="required" autocomplete="off" class="layui-input">
</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="category" 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 for="intro" class="layui-form-label">帮助简介:</label>
<div class="layui-input-inline">
<input type="text" name="intro" id="intro" value="{$detail.intro ?? ''}" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="sort" class="layui-form-label">帮助排序:</label>
<div class="layui-input-inline">
<input type="text" name="sort" id="sort" value="{$detail.sort}" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">封面图:</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*150像素</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">帮助状态:</label>
<div class="layui-input-inline">
<input type="radio" name="is_show" value="1" title="显示" {if $detail.is_show==1}checked{/if}>
<input type="radio" name="is_show" value="0" title="隐藏" {if $detail.is_show==0}checked{/if}>
</div>
</div>
<div class="layui-form-item">
<label for="content" class="layui-form-label">帮助内容:</label>
<div class="layui-input-block">
<textarea name="content" id="content" lay-verify="content">{$detail.content|raw}</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({
base: "/static/lib/"
}).extend({
likeedit: "likeedit/likeedit"
}).use(["layEditor", "form"], function(){
var form = layui.form;
var layEditor = layui.layEditor;
layEditor.set({
uploadImage: {
url: '{:url("file/lists")}?type=10'
},
})
var ieditor = layEditor.build('content')
form.verify({
content: function(value) {
return layEditor.sync(ieditor);
}
});
like.delUpload();
$(document).on("click", ".add-upload-image", function () {
like.imageUpload({
limit: 1,
field: "image",
that: $(this)
});
});
})
</script>

View File

@ -0,0 +1,213 @@
{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>
<p>*帮助文档排序值越小越前,排序值相同时新增文章在前。</p>
</div>
</div>
</div>
</div>
<!-- 搜索区域 -->
<div class="layui-card-body layui-form">
<div class="layui-form-item">
<div class="layui-inline">
<label for="title" class="layui-form-label">帮助标题:</label>
<div class="layui-input-inline">
<input type="text" id="title" name="title" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<label for="cid" class="layui-form-label">帮助分类:</label>
<div class="layui-input-inline">
<select name="cid" id="cid">
<option value="">全部</option>
{volist name="category" 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-image">
{{# if(d.image){ }}
<img src="{{d.image}}" alt="图" style="width:28px;height:28px;">
{{# } }}
</script>
<script type="text/html" id="table-operation">
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
{{# if(d.is_show == '显示'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm layui-btn-warm" lay-event="hide">隐藏</a>{{# } }}
{{# if(d.is_show == '隐藏'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="hide">显示</a>{{# } }}
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</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:"id", width:60, title:"ID"}
,{field:"title", width:200, align:"center", title:"帮助标题"}
,{field:"image", width:100, align:"center", title:"封面图", templet:"#table-image"}
,{field:"category", width:150, align:"center", title:"帮助分类"}
,{field:"is_show", width:100, align:"center", title:"帮助状态"}
,{field:"visit", width:100, align:"center", title:"浏览量"}
,{field:"likes", width:100, align:"center", title:"点赞量"}
,{field:"sort", width:100, align:"center", title:"排序"}
,{field:"create_time", width:180, align:"center", title:"创建时间"}
,{title:"操作", width:200, align:"center", fixed:"right", toolbar:"#table-operation"}
]);
var active = {
add: function() {
layer.open({
type: 2
,title: "新增帮助"
,content: "{:url('content.Help/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('content.Help/add')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
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('content.Help/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('content.Help/edit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
layer.confirm("确定删除帮助:"+obj.data.title, function(index) {
like.ajax({
url: "{:url('content.Help/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
},
hide: function(obj) {
var text = obj.data.is_show === '显示' ? '确定隐藏:' : '确定显示:';
layer.confirm(text+obj.data.title, function(index) {
like.ajax({
url: "{:url('content.Help/hide')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
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(){
$("#title").val("");
form.render("select");
table.reload("like-table-lists", {
where: {},
page: {
curr: 1
}
});
});
})
</script>

View File

@ -0,0 +1,23 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="box-shadow:none;">
<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">
<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="启用">
<input type="radio" name="is_show" value="0" title="关闭" checked>
</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,23 @@
{layout name="layout2" /}
<div class="layui-card layui-form" style="box-shadow:none;">
<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">
<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 layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
</div>

View File

@ -0,0 +1,153 @@
{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">
<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>
{{# if(d.is_show == '启用'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm layui-btn-warm" lay-event="hide">停用</a>{{# } }}
{{# if(d.is_show == '停用'){ }}<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="hide">启用</a>{{# } }}
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
</script>
</div>
</div>
</div>
<script>
layui.use(["table"], function(){
var table = layui.table;
like.tableLists("#like-table-lists", "{:url()}", [
{field:"id", width:60, title:"ID"}
,{field:"name", width:160, align:"center", title:"帮助分类"}
,{field:"is_show", width:100, align:"center", title:"分类状态"}
,{field:"create_time", width:180, align:"center", title:"创建时间"}
,{title:"操作", width:220, align:"center", fixed:"right", toolbar:"#table-operation"}
]);
var active = {
add: function() {
layer.open({
type: 2
,title: "新增帮助分类"
,content: "{:url('content.HelpCategory/add')}"
,area: ["550px", "400px"]
,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('content.HelpCategory/add')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
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('content.HelpCategory/edit')}?id=" + obj.data.id
,area: ["550px", "400px"]
,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('content.HelpCategory/edit')}",
data: data.field,
type: "POST",
success:function(res) {
if(res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
});
submit.trigger("click");
}
});
},
del: function(obj) {
layer.confirm("确定删除帮助分类:"+obj.data.name, function(index) {
like.ajax({
url: "{:url('content.HelpCategory/del')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
obj.del();
}
}
});
layer.close(index);
})
},
hide: function(obj) {
var text = obj.data.is_show === '启用' ? '确定停用:' : '确定启用:';
layer.confirm(text+obj.data.name, function(index) {
like.ajax({
url: "{:url('content.HelpCategory/hide')}",
data: {id: obj.data.id},
type: "POST",
success: function (res) {
if (res.code === 1) {
layui.layer.msg(res.msg);
layer.close(index);
table.reload("like-table-lists", {
where: {},
page: { cur: 1 }
});
}
}
});
layer.close(index);
})
}
};
like.eventClick(active);
})
</script>