You've already forked guangan
办事指南
This commit is contained in:
87
plugs/think-plugs-cms/src/controller/Tutorial.php
Normal file
87
plugs/think-plugs-cms/src/controller/Tutorial.php
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace plugin\cms\controller;
|
||||||
|
|
||||||
|
use plugin\cms\model\CmsTutorial;
|
||||||
|
use think\admin\Controller;
|
||||||
|
use think\admin\helper\QueryHelper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 办事指南管理
|
||||||
|
*/
|
||||||
|
class Tutorial extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 办事指南列表
|
||||||
|
* @return void
|
||||||
|
* @throws \think\db\exception\DataNotFoundException
|
||||||
|
* @throws \think\db\exception\DbException
|
||||||
|
* @throws \think\db\exception\ModelNotFoundException
|
||||||
|
*/
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
$this->title = '办事指南';
|
||||||
|
CmsTutorial::mQuery()->layTable(function () {
|
||||||
|
}, static function (QueryHelper $query) {
|
||||||
|
$query->equal('status')->like('title');
|
||||||
|
$query->timeBetween('create_at');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加办事指南
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function add()
|
||||||
|
{
|
||||||
|
$this->title = '添加办事指南';
|
||||||
|
CmsTutorial::mForm('form');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编辑办事指南
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function edit()
|
||||||
|
{
|
||||||
|
$this->title = '编辑办事指南';
|
||||||
|
$this->id = $this->request->param('id');
|
||||||
|
CmsTutorial::mForm('form');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除办事指南
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function remove()
|
||||||
|
{
|
||||||
|
CmsTutorial::mDelete();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改办事指南状态
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function status()
|
||||||
|
{
|
||||||
|
CmsTutorial::mSave($this->_vali([
|
||||||
|
'id.require' => '指南ID不能为空',
|
||||||
|
'status.in:0,1' => '状态值范围异常!',
|
||||||
|
'status.require' => '状态值不能为空!',
|
||||||
|
]), 'id');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改办事指南排序
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function sort()
|
||||||
|
{
|
||||||
|
CmsTutorial::mSave($this->_vali([
|
||||||
|
'id.require' => '指南ID不能为空',
|
||||||
|
'sort.require' => '排序值不能为空!',
|
||||||
|
'sort.number' => '排序必须为数字!',
|
||||||
|
'sort.between:0,9999' => '排序值必须为0~9999之间!',
|
||||||
|
]), 'id');
|
||||||
|
}
|
||||||
|
}
|
25
plugs/think-plugs-cms/src/controller/api/Tutorial.php
Normal file
25
plugs/think-plugs-cms/src/controller/api/Tutorial.php
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace plugin\cms\controller\api;
|
||||||
|
|
||||||
|
use plugin\cms\model\CmsTutorial;
|
||||||
|
use think\admin\Controller;
|
||||||
|
|
||||||
|
class Tutorial extends Controller
|
||||||
|
{
|
||||||
|
public function index() {
|
||||||
|
$query = CmsTutorial::mk()->where('status', 1);
|
||||||
|
$articles = $query->order('sort asc,id desc')->paginate();
|
||||||
|
$this->success('获取文章列表', $articles);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function info() {
|
||||||
|
$id = $this->request->get('id');
|
||||||
|
CmsTutorial::mk()->where('id', $id)->inc('view_count');
|
||||||
|
$article = CmsTutorial::mk()->where('id', $id)->find();
|
||||||
|
if (empty($article)) {
|
||||||
|
$this->error('文章不存在');
|
||||||
|
}
|
||||||
|
$this->success('获取文章详情', $article);
|
||||||
|
}
|
||||||
|
}
|
10
plugs/think-plugs-cms/src/model/CmsTutorial.php
Normal file
10
plugs/think-plugs-cms/src/model/CmsTutorial.php
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace plugin\cms\model;
|
||||||
|
|
||||||
|
use think\admin\Model;
|
||||||
|
|
||||||
|
class CmsTutorial extends Model
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
@ -23,9 +23,9 @@
|
|||||||
<!--{/if}-->
|
<!--{/if}-->
|
||||||
<!--{if auth("status")}-->
|
<!--{if auth("status")}-->
|
||||||
{{# if(d.status == 0){ }}
|
{{# if(d.status == 0){ }}
|
||||||
<a class="layui-btn layui-btn-xs layui-btn-normal" data-title="启用该轮播图" data-modal='{:url("status")}?id={{ d.id }}&status=1'>启 用</a>
|
<a class="layui-btn layui-btn-xs layui-btn-normal" data-title="启用该文章" data-modal='{:url("status")}?id={{ d.id }}&status=1'>启 用</a>
|
||||||
{{# } else { }}
|
{{# } else { }}
|
||||||
<a class="layui-btn layui-btn-xs layui-btn-primary" data-title="隐藏该轮播图" data-modal='{:url("status")}?id={{ d.id }}&status=0'>隐 藏</a>
|
<a class="layui-btn layui-btn-xs layui-btn-primary" data-title="隐藏该文章" data-modal='{:url("status")}?id={{ d.id }}&status=0'>隐 藏</a>
|
||||||
{{# } }}
|
{{# } }}
|
||||||
<!--{/if}-->
|
<!--{/if}-->
|
||||||
<!--{if auth("remove")}-->
|
<!--{if auth("remove")}-->
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<legend>条件搜索</legend>
|
<legend>条件搜索</legend>
|
||||||
<form class="layui-form layui-form-pane form-search" action="{:request()->url()}" onsubmit="return false" method="get" autocomplete="off">
|
<form class="layui-form layui-form-pane form-search" action="{:request()->url()}" onsubmit="return false" method="get" autocomplete="off">
|
||||||
<div class="layui-form-item layui-inline">
|
<div class="layui-form-item layui-inline">
|
||||||
<label class="layui-form-label">文章标题</label>
|
<label class="layui-form-label">标题</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input name="title" value="{:input('get.title')}" placeholder="请输入文章标题" class="layui-input">
|
<input name="title" value="{:input('get.title')}" placeholder="请输入文章标题" class="layui-input">
|
||||||
</div>
|
</div>
|
||||||
|
33
plugs/think-plugs-cms/src/view/tutorial/form.html
Normal file
33
plugs/think-plugs-cms/src/view/tutorial/form.html
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<form class="layui-form layui-card" action="{:sysuri()}" data-auto="true" method="post" autocomplete="off" data-table-id="articleTable">
|
||||||
|
<div class="layui-row">
|
||||||
|
<div class="layui-form-item">
|
||||||
|
<label class="layui-form-label">办事指南标题</label>
|
||||||
|
<div class="layui-input-block">
|
||||||
|
<input type="text" name="title" value='{$vo.title|default=""}' required placeholder="请输入文章标题" class="layui-input">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="layui-form-item">
|
||||||
|
<label class="layui-form-label">指南内容</label>
|
||||||
|
<div class="layui-input-block">
|
||||||
|
<textarea data-textarea class="layui-hide" name='content'>{$vo.content|default=""}</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="layui-form-item">
|
||||||
|
<label class="layui-form-label">材料内容</label>
|
||||||
|
<div class="layui-input-block">
|
||||||
|
<textarea data-textarea class="layui-hide" name='material'>{$vo.material|default=""}</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="layui-form-item">
|
||||||
|
<label class="layui-form-label">办事方法</label>
|
||||||
|
<div class="layui-input-block">
|
||||||
|
<textarea data-textarea class="layui-hide" name='method'>{$vo.method|default=""}</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{notempty name='id'}<input class="layui-input layui-hide" type='hidden' value='{$id}' name='id'>{/notempty}
|
||||||
|
<div class="layui-form-item text-center">
|
||||||
|
<button class="layui-btn layui-btn-normal" type='submit'>保存数据</button>
|
||||||
|
<button class="layui-btn layui-btn-danger" type='button' data-confirm="确定要取消编辑吗?" data-close>取消编辑</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
98
plugs/think-plugs-cms/src/view/tutorial/index.html
Normal file
98
plugs/think-plugs-cms/src/view/tutorial/index.html
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
{extend name="table"}
|
||||||
|
|
||||||
|
{block name="button"}
|
||||||
|
<!--{if auth("add")}-->
|
||||||
|
<button type="button" class="layui-btn layui-btn-sm layui-btn-primary" data-modal='{:url("add")}' data-title="添加办事指南">添加</button>
|
||||||
|
<!--{/if}-->
|
||||||
|
{/block}
|
||||||
|
|
||||||
|
{block name="content"}
|
||||||
|
<div class="layui-tab">
|
||||||
|
<div class="layui-row">
|
||||||
|
<div class="layui-col">
|
||||||
|
<div class="article_list think-bg-white">
|
||||||
|
{include file='tutorial/index_search'}
|
||||||
|
<table class="layui-hide" data-url="{$request->url()}" data-target-search="form.form-search" id="articleTable" lay-filter="articleTable"></table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/html" id="toolbar">
|
||||||
|
<!--{if auth("edit")}-->
|
||||||
|
<a data-modal="{:url('edit')}?id={{ d.id }}" data-height="80%" data-width="80%" class="layui-btn layui-btn-xs layui-btn-normal" title="修改">修改</a>
|
||||||
|
<!--{/if}-->
|
||||||
|
<!--{if auth("status")}-->
|
||||||
|
{{# if(d.status == 0){ }}
|
||||||
|
<a class="layui-btn layui-btn-xs layui-btn-normal" data-title="启用该办事指南" data-modal='{:url("status")}?id={{ d.id }}&status=1'>启 用</a>
|
||||||
|
{{# } else { }}
|
||||||
|
<a class="layui-btn layui-btn-xs layui-btn-primary" data-title="隐藏该办事指南" data-modal='{:url("status")}?id={{ d.id }}&status=0'>隐 藏</a>
|
||||||
|
{{# } }}
|
||||||
|
<!--{/if}-->
|
||||||
|
<!--{if auth("remove")}-->
|
||||||
|
<a data-confirm="确定要永久删除此办事指南吗?" data-action="{:url('remove')}" data-value="id#{{ d.id }}" data-csrf="{:systoken('remove')}" class="layui-btn layui-btn-xs layui-btn-danger" title="删除">删除</a>
|
||||||
|
<!--{/if}-->
|
||||||
|
</script>
|
||||||
|
{/block}
|
||||||
|
|
||||||
|
{block name='style'}
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
|
{/block}
|
||||||
|
|
||||||
|
{block name='script'}
|
||||||
|
<script>
|
||||||
|
$(function () {
|
||||||
|
$('#articleTable').layTable({
|
||||||
|
height: 'full-250',
|
||||||
|
toolbar: true,
|
||||||
|
sort: {field: 'sort', type: 'asc'},
|
||||||
|
title: '办事指南列表',
|
||||||
|
cols: [[
|
||||||
|
{type: 'numbers'},
|
||||||
|
{field:'title', title:'标题'},
|
||||||
|
{field:'status', title:'状态', width:80, templet:function(item){
|
||||||
|
if(item.status == 0){
|
||||||
|
return '<span style="color:red;">隐藏</span>';
|
||||||
|
}else if(item.status == 1){
|
||||||
|
return '<span style="color:green;">显示</span>';
|
||||||
|
}
|
||||||
|
}},
|
||||||
|
{field:'view_count', title:'浏览数', width:100, sort: true},
|
||||||
|
{field: 'sort', title: '排序', width: 80, sort: true, edit: 'text'},
|
||||||
|
{fixed: 'right', title:'操作', toolbar: '#toolbar', width:180}
|
||||||
|
]],
|
||||||
|
page: true
|
||||||
|
})
|
||||||
|
layui.use(['table'], function(){
|
||||||
|
var table = layui.table,
|
||||||
|
layer = layui.layer;
|
||||||
|
table.on('edit(articleTable)', function(obj) {
|
||||||
|
if (obj.field == 'sort') {
|
||||||
|
if (obj.value == '') {
|
||||||
|
obj.value = obj.oldValue
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
$.form.load("{:url('sort')}", {sort: obj.value, id: obj.data.id}, 'post', function (ret) {
|
||||||
|
$('#tree-table').trigger('reload');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
})
|
||||||
|
layui.use(['table'], function(){
|
||||||
|
var table = layui.table,
|
||||||
|
layer = layui.layer;
|
||||||
|
|
||||||
|
//监听工具条
|
||||||
|
table.on('tool(articleTable)', function(obj){
|
||||||
|
if(obj.event === 'del'){
|
||||||
|
layer.confirm('真的删除么', function(index){
|
||||||
|
obj.del();
|
||||||
|
layer.close(index);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
{/block}
|
23
plugs/think-plugs-cms/src/view/tutorial/index_search.html
Normal file
23
plugs/think-plugs-cms/src/view/tutorial/index_search.html
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<fieldset>
|
||||||
|
<legend>条件搜索</legend>
|
||||||
|
<form class="layui-form layui-form-pane form-search" action="{:request()->url()}" onsubmit="return false" method="get" autocomplete="off">
|
||||||
|
<div class="layui-form-item layui-inline">
|
||||||
|
<label class="layui-form-label">文章标题</label>
|
||||||
|
<div class="layui-input-inline">
|
||||||
|
<input name="title" value="{:input('get.title')}" placeholder="请输入文章标题" class="layui-input">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="layui-form-item layui-inline">
|
||||||
|
<label class="layui-form-label">创建时间</label>
|
||||||
|
<div class="layui-input-inline">
|
||||||
|
<input data-date-range name="create_at" value="{:input('get.create_at')}" placeholder="请选择创建时间" class="layui-input">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="layui-form-item layui-inline">
|
||||||
|
<button class="layui-btn layui-btn-primary" lay-submit lay-filter="searchData"><i class="layui-icon"></i> 搜 索</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</fieldset>
|
Reference in New Issue
Block a user