勾股OA3.0发布

This commit is contained in:
hdm 2022-06-08 15:13:48 +08:00
parent 3a4f6498ac
commit fcd2bf98b1
951 changed files with 99212 additions and 141114 deletions

View File

@ -17,80 +17,104 @@ use think\facade\Session;
class Index extends BaseController
{
//上传文件
public function upload()
{
$param = get_params();
if (request()->file('file')) {
$file = request()->file('file');
} else {
return to_assign(1, '没有选择上传文件');
}
// dump($file);die;
// 获取上传文件的hash散列值
$sha1 = $file->hash('sha1');
$md5 = $file->hash('md5');
$rule = [
'image' => 'jpg,png,jpeg,gif',
'doc' => 'doc,docx,ppt,pptx,xls,xlsx,pdf',
'file' => 'zip,gz,7z,rar,tar',
];
$fileExt = $rule['image'] . ',' . $rule['doc'] . ',' . $rule['file'];
//1M=1024*1024=1048576字节
$fileSize = 2 * 1024 * 1024;
if (isset($param['type']) && $param['type']) {
$fileExt = $rule[$param['type']];
}
if (isset($param['size']) && $param['size']) {
$fileSize = $param['size'];
}
$validate = \think\facade\Validate::rule([
'image' => 'require|fileSize:' . $fileSize . '|fileExt:' . $fileExt,
]);
$file_check['image'] = $file;
if (!$validate->check($file_check)) {
return to_assign(1, $validate->getError());
}
// 日期前綴
$dataPath = date('Ym');
$use = 'thumb';
$filename = \think\facade\Filesystem::disk('public')->putFile($dataPath, $file, function () use ($md5) {
return $md5;
});
if ($filename) {
//写入到附件表
$data = [];
$path = get_config('filesystem.disks.public.url');
$data['filepath'] = $path . '/' . $filename;
$data['name'] = $file->getOriginalName();
$data['mimetype'] = $file->getOriginalMime();
$data['fileext'] = $file->extension();
$data['filesize'] = $file->getSize();
$data['filename'] = $filename;
$data['sha1'] = $sha1;
$data['md5'] = $md5;
$data['module'] = \think\facade\App::initialize()->http->getName();
$data['action'] = app('request')->action();
$data['uploadip'] = app('request')->ip();
$data['create_time'] = time();
$data['user_id'] = $this->uid;
if ($data['module'] = 'admin') {
//通过后台上传的文件直接审核通过
$data['status'] = 1;
$data['admin_id'] = $data['user_id'];
$data['audit_time'] = time();
}
$data['use'] = request()->has('use') ? request()->param('use') : $use; //附件用处
$res['id'] = Db::name('file')->insertGetId($data);
$res['filepath'] = $data['filepath'];
$res['name'] = $data['name'];
$res['filename'] = $data['filename'];
$res['filesize'] = $data['filesize'];
add_log('upload', $data['user_id'], $data);
return to_assign(0, '上传成功', $res);
} else {
return to_assign(1, '上传失败,请重试');
}
}
public function upload()
{
$param = get_params();
//var_dump($param);exit;
$sourse = 'file';
if(isset($param['sourse'])){
$sourse = $param['sourse'];
}
if($sourse == 'file' || $sourse == 'tinymce'){
if(request()->file('file')){
$file = request()->file('file');
}
else{
return to_assign(1, '没有选择上传文件');
}
}
else{
if (request()->file('editormd-image-file')) {
$file = request()->file('editormd-image-file');
} else {
return to_assign(1, '没有选择上传文件');
}
}
// 获取上传文件的hash散列值
$sha1 = $file->hash('sha1');
$md5 = $file->hash('md5');
$rule = [
'image' => 'jpg,png,jpeg,gif',
'doc' => 'doc,docx,ppt,pptx,xls,xlsx,pdf',
'file' => 'zip,gz,7z,rar,tar',
];
$fileExt = $rule['image'] . ',' . $rule['doc'] . ',' . $rule['file'];
//1M=1024*1024=1048576字节
$fileSize = 2 * 1024 * 1024;
if (isset($param['type']) && $param['type']) {
$fileExt = $rule[$param['type']];
}
if (isset($param['size']) && $param['size']) {
$fileSize = $param['size'];
}
$validate = \think\facade\Validate::rule([
'image' => 'require|fileSize:' . $fileSize . '|fileExt:' . $fileExt,
]);
$file_check['image'] = $file;
if (!$validate->check($file_check)) {
return to_assign(1, $validate->getError());
}
// 日期前綴
$dataPath = date('Ym');
$use = 'thumb';
$filename = \think\facade\Filesystem::disk('public')->putFile($dataPath, $file, function () use ($md5) {
return $md5;
});
if ($filename) {
//写入到附件表
$data = [];
$path = get_config('filesystem.disks.public.url');
$data['filepath'] = $path . '/' . $filename;
$data['name'] = $file->getOriginalName();
$data['mimetype'] = $file->getOriginalMime();
$data['fileext'] = $file->extension();
$data['filesize'] = $file->getSize();
$data['filename'] = $filename;
$data['sha1'] = $sha1;
$data['md5'] = $md5;
$data['module'] = \think\facade\App::initialize()->http->getName();
$data['action'] = app('request')->action();
$data['uploadip'] = app('request')->ip();
$data['create_time'] = time();
$data['user_id'] = get_login_admin('id') ? get_login_admin('id') : 0;
if ($data['module'] = 'admin') {
//通过后台上传的文件直接审核通过
$data['status'] = 1;
$data['admin_id'] = $data['user_id'];
$data['audit_time'] = time();
}
$data['use'] = request()->has('use') ? request()->param('use') : $use; //附件用处
$res['id'] = Db::name('file')->insertGetId($data);
$res['filepath'] = $data['filepath'];
$res['name'] = $data['name'];
$res['filename'] = $data['filename'];
add_log('upload', $data['user_id'], $data);
if($sourse == 'editormd'){
//editormd编辑器上传返回
return json(['success'=>1,'message'=>'上传成功','url'=>$data['filepath']]);
}
else if($sourse == 'tinymce'){
//tinymce编辑器上传返回
return json(['success'=>1,'message'=>'上传成功','location'=>$data['filepath']]);
}
else{
//普通上传返回
return to_assign(0, '上传成功', $res);
}
} else {
return to_assign(1, '上传失败,请重试');
}
}
//清空缓存
public function cache_clear()

View File

@ -168,6 +168,7 @@ class Index extends BaseController
{
$id = get_params("id");
$detail = (new ArticleList())->detail($id);
$detail['cate_title'] = Db::name('ArticleCate')->where(['id' => $detail['article_cate_id']])->value('title');
// read 字段加 1
Db::name('article')->where('id', $id)->inc('read')->update();
View::assign('detail', $detail);

View File

@ -1,14 +1,14 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">新增知识文章</h3>
<form class="layui-form p-4">
<h3 class="pb-3">新增知识文章</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray">文章标题 <span style="color: red">*</span></td>
<td colspan="3"><input type="text" name="title" lay-verify="required" lay-reqText="请输入文章标题" autocomplete="off" placeholder="请输入文章标题"
class="layui-input"></td>
<td class="layui-td-gray">文章分类<span style="color: red">*</span></td>
<td class="layui-td-gray">文章分类<span style="color: red">*</span></td>
<td>
<select name="article_cate_id" lay-verify="required" lay-reqText="请选择分类">
<option value="">请选择分类</option>
@ -70,12 +70,11 @@
<tr>
<td class="layui-td-gray" style="vertical-align:top;">文章内容<span style="color: red">*</span></td>
<td colspan="5">
<textarea name="content" placeholder="请输入内容" class="layui-textarea" id="container" lay-verify="required" lay-reqText="请完善文章内容"
style="border:0;padding:0"></textarea>
<textarea name="content" placeholder="请输入内容" class="layui-textarea" id="container" style="border:0;padding:0"></textarea>
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
@ -86,19 +85,23 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
, layer = layui.layer
, tagspicker = layui.tagpicker
, upload = layui.upload;
const moduleInit = ['tool','tagpicker','tinymce'];
function gouguInit() {
var form = layui.form,tool=layui.tool, tagspicker = layui.tagpicker, upload = layui.upload;
//编辑器初始化
var editor = layui.tinymce;
var edit = editor.render({
selector: "#container",
images_upload_url: '/api/index/upload/sourse/tinymce',//图片上传接口
height: 500
});
var tags = new tagspicker({
'url': "/api/index/get_keyword_cate",
'target': 'keyword_name',
'tag_ids': 'keyword_id',
'tag_tags': 'keyword_name',
'height': 500,
'isDiy': 1
'url': "/api/index/get_keyword_cate",
'target': 'keyword_name',
'tag_ids': 'keyword_id',
'tag_tags': 'keyword_name',
'height': 500,
'isDiy': 1
});
//封面上传
@ -118,27 +121,26 @@ function init(layui) {
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/article/index/add",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
data.field.content = tinyMCE.editors['container'].getContent();
if (data.field.content == '') {
layer.msg('请先完善公告内容');
return false;
}
})
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.tool.close();
},1000);
}
}
tool.post("/article/index/add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="['tagpicker']" callback="init" /}
{include file="../../base/view/common/ueditor" id="container" name="content" width="750" height="360" toolbar="[]" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">编辑知识文章</h3>
<form class="layui-form p-4">
<h3 class="pb-3">编辑知识文章</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray">文章标题 <span style="color: red">*</span></td>
@ -75,7 +75,7 @@
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$article.id}">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -87,11 +87,16 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
, layer = layui.layer
, tagspicker = layui.tagpicker
, upload = layui.upload;
const moduleInit = ['tool','tagpicker','tinymce'];
function gouguInit() {
var form = layui.form,tool=layui.tool, tagspicker = layui.tagpicker, upload = layui.upload;
//编辑器初始化
var editor = layui.tinymce;
var edit = editor.render({
selector: "#container",
images_upload_url: '/api/index/upload/sourse/tinymce',//图片上传接口
height: 500
});
var tags = new tagspicker({
'url': "/api/index/get_keyword_cate",
@ -119,27 +124,26 @@
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/article/index/add",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
data.field.content = tinyMCE.editors['container'].getContent();
if (data.field.content == '') {
layer.msg('请先完善公告内容');
return false;
}
})
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.tool.close();
},1000);
}
}
tool.post("/article/index/add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['tagpicker']" callback="init" /}
{include file="../../base/view/common/ueditor" id="container" name="content" width="750" height="360" toolbar="[]" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div class="layui-input-inline">
<select name="article_cate_id">
<option value="">请选择知识文章分类</option>
@ -28,13 +28,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var TAB = parent.layui.tab,
table = layui.table,
rightpage = layui.rightpage,
form = layui.form;
var tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form;
layui.pageTable = table.render({
elem: '#test',
title: '文章列表',
toolbar: '#toolbarDemo',
@ -91,14 +88,14 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if(obj.event === 'view'){
rightpage.open('/article/index/view?id='+data.id,'900px');
tool.side('/article/index/view?id='+data.id);
return;
}
});
//监听搜索提交
form.on('submit(webform)', function(data) {
tableIns.reload({
layui.pageTable.reload({
where: {
keywords: data.field.keywords,
article_cate_id: data.field.article_cate_id
@ -111,6 +108,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div class="layui-input-inline">
<select name="article_cate_id">
<option value="">请选择知识文章分类</option>
@ -39,14 +39,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui) {
var TAB = parent.layui.tab,
table = layui.table,
rightpage = layui.rightpage,
form = layui.form;
tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form;
layui.pageTable = table.render({
elem: '#test',
title: '文章列表',
toolbar: '#toolbarDemo',
@ -104,7 +100,7 @@
//表头工具栏事件
table.on('toolbar(test)', function(obj){
if (obj.event === 'add') {
rightpage.open("/article/index/add");
tool.side("/article/index/add");
return;
}
});
@ -112,11 +108,11 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if(obj.event === 'view'){
rightpage.open('/article/index/view?id='+data.id,'900px');
tool.side('/article/index/view?id='+data.id);
return;
}
if(obj.event === 'edit'){
rightpage.open('/article/index/add?id='+data.id);
tool.side('/article/index/add?id='+data.id);
return;
}
if (obj.event === 'del') {
@ -124,18 +120,13 @@
icon: 3,
title: '提示'
}, function(index) {
$.ajax({
url: "/article/index/delete",
data: {
id: data.id
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
let callback = function (e) {
layer.msg(res.msg);
if (res.code == 1) {
obj.del();
}
})
}
tool.delete("/article/index/delete", {id: data.id}, callback);
layer.close(index);
});
}
@ -143,7 +134,7 @@
//监听搜索提交
form.on('submit(webform)', function(data) {
tableIns.reload({
layui.pageTable.reload({
where: {
keywords: data.field.keywords,
article_cate_id: data.field.article_cate_id
@ -156,6 +147,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,84 +1,54 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__STATIC__}/ueditor/third-party/SyntaxHighlighter/prism.css?v=1"/>
<script src="{__STATIC__}/ueditor/third-party/SyntaxHighlighter/prism.js?v=1"></script>
<link rel="stylesheet" href="{__GOUGU__}/third_party/prism/prism.css"/>
<style>
.detial-content{padding:6px 16px; color:#333; font-size: 16px!important; line-height: 1.68!important; max-width:1000px;}
.detial-content p{padding: 6px 0;}
.detial-content img{max-width:98%!important; border: 1px solid #e6e6e6; -webkit-box-shadow: 0 2px 6px rgba(26,26,26,.08); box-shadow: 0 2px 6px rgba(26,26,26,.08); border-radius: 3px;}
.detial-content .gougu-video{width: 640px!important; height: 410px!important; margin:10px auto!important; border: 12px solid #F7F7F7; border-radius: 6px;}
.text-detial-ops{line-height: 30px; color:#999; font-size: 12px; padding: 12px 0;}
.text-detial-ops span{margin-right: 20px;}
.text-detial-ops a{margin-right:10px;}
.text-detial-content{padding: 8px 0; color:#333; word-break: break-all; border-top:1px solid #e8e8e8;font-size: 16px!important; line-height: 1.72!important;}
.text-detial-content p{padding: 8px 0;}
.text-detial-content img{max-width:98%!important; margin:0 auto; display:block; border: 1px solid #e6e6e6; -webkit-box-shadow: 0 2px 6px rgba(26,26,26,.08); box-shadow: 0 2px 6px rgba(26,26,26,.08); border-radius: 4px;}
.text-detial-content h1,.text-detial-content h2,.text-detial-content h3,.text-detial-content h4,.text-detial-content h5{margin-top:10px;}
.text-detial-content a{color:#186AF2; font-style:italic;}
.text-detial-content a:hover{text-decoration:underline;}
.text-detial-content p code,.blog-detial-content pre{margin:0 3px;font-size: 14px; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; background: #f6f6f6; padding: 10px; border-radius: 2px;}
.text-detial-content p code{border: 1px solid #eee;padding: 2px 4px;}
.text-detial-content table {border-collapse: collapse; border-spacing: 0; display: block; width: 100%; overflow: auto; word-break: normal;word-break: keep-all; margin-top: 0;margin-bottom: 16px;}
.text-detial-content table tr {background-color: #fff;border-top: 1px solid #ccc;}
.text-detial-content table tr:nth-child(2n) {background-color: #f8f8f8;}
.text-detial-content table td, .blog-detial-content table th { padding: 6px 12px;border: 1px solid #ddd; font-size:14px; }
.text-detial-content table th {font-weight: 800;}
.text-detial-content li {list-style: initial;margin-left: 20px;}
:not(pre)>code[class*=language-], pre[class*=language-]{background:#fff!important;border:1px solid #e8e8e8!important; border-radius:3px;}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<div class="body-content">
<h3 class="h3-title">知识文章详情</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">文章标题</td>
<td colspan="3">{$detail.title}</td>
<td class="layui-td-gray">文章分类</td>
<td>
{volist name=":set_recursion(article_cate())" id="v"}
{eq name="$detail.article_cate_id" value="$v.id" }{$v.title}{/eq}
{/volist}
</td>
</tr>
<tr>
<td class="layui-td-gray">关键字</td>
<td colspan="3">{$detail.keyword_names}</td>
<td class="layui-td-gray">阅读量</td>
<td>{$detail.read}</td>
</tr>
<tr>
<td class="layui-td-gray">发布时间</td>
<td>{$detail.create_time | date='Y-m-d H:i:s'}</td>
<td class="layui-td-gray">发布人</td>
<td>{$detail.user}</td>
<td class="layui-td-gray">部门</td>
<td>{$detail.department}</td>
</tr>
<div class="p-4">
<h1>{$detail.title}</h1>
<div class="text-detial-ops">
<span>发表于:{$detail.create_time | date='Y-m-d m:i:s'}</span>
<span>发布人:{$detail.user}</span>
<span>部门:{$detail.department}</span>
<span>阅读量:{$detail.read}</span>
<span>文章分类:{$detail.cate_title}</span>
<span>关键字:{$detail.keyword_names}</span>
{notempty name="$detail.origin_url"}
<tr>
<td class="layui-td-gray">来源链接</td>
<td colspan="5">{$detail.origin_url}</td>
</tr>
<p>
<span>来源链接:{$detail.origin_url}</span>
</p>
{/notempty}
<tr>
<td class="layui-td-gray" style="vertical-align:top;">文章内容</td>
<td colspan="5"><div class="detial-content">{$detail.content|raw}</div></td>
</tr>
</table>
</div>
<div class="text-detial-content">
{$detail.content|raw}
</div>
</div>
{/block}
<!-- /主体 -->
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var $codepre = $("pre[class]");
if($codepre.length>0){
for(var i = 0;i<$codepre.length;i++){
var item = $codepre.eq(i);
var language = "";
item.attr("class").replace(/brush:([^;]+)/,function(a,b){
language = b;
});
if(language){
var codehtml = item.html();
var code = $("<code>");
code.attr("class","language-"+language+" line-numbers");
//codehtml= unhtml(codehtml);
code.html(codehtml);
item.html(code);
Prism.highlightElement(code[0]);
}
}
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
<script src="{__GOUGU__}/third_party/prism/prism.js"></script>
{/block}
<!-- /脚本 -->

View File

@ -16,11 +16,9 @@
<meta name="description" content="{:get_system_config('web','desc')}"/>
{/block}
{block name="css"}
<link rel="stylesheet" href="{__LAYUI__}/css/layui.css?v={:get_system_config('web','version')}" media="all">
<link rel="stylesheet" href="{__CSS__}/common.css?v={:get_system_config('web','version')}" media="all">
<link rel="stylesheet" href="{__GOUGU__}/gougu/css/gougu.css?v={:get_system_config('web','version')}" media="all">
{/block}
{block name="style"}{/block}
<script src="{__STATIC__}/jquery.min.js"></script>
<script>
const login_user={$login_user};
</script>
@ -38,7 +36,8 @@
<!-- 脚本 -->
{block name="script"}{/block}
<!-- /脚本 -->
<script src="{__GOUGU__}/layui/layui.js"></script>
<script src="{__GOUGU__}/gougu/gouguInit.js"></script>
<!-- 统计代码 -->
{block name="code"}{/block}
<!-- /统计代码 -->

View File

@ -1,23 +0,0 @@
<script src="{__LAYUI__}/layui.js?v={:get_system_config('web','version')}"></script>
<script>
var base="{__LAYUI__}/plugin/";
{if condition=" '[base]'!=='base' "}
base=[base];
{/if}
var extendArray=[extend];
var callback=[callback];
var extend={};
if(extendArray){
if(extendArray.length>0){
for(var i=0;i<extendArray.length;i++){
extend[extendArray[i]]=extendArray[i];
}
}
}
layui.config({
base: base,
version:"{:get_system_config('web','version')}"
}).extend(extend).use(extendArray, function(){
callback(layui);
});
</script>

View File

@ -1,33 +0,0 @@
<script id="[id]" name="[name]" type="text/plain"></script>
{if condition=" '[ueditor]'!=='more' "}
<script type="text/javascript" src="{__STATIC__}/ueditor/ueditor.config.min.js"></script>
<script type="text/javascript" src="{__STATIC__}/ueditor/ueditor.all.min.js"></script>
{/if}
<script type="text/javascript">
var id='[id]';
var width='[width]';
var height='[height]';
var readonly='[readonly]';
var toolbarArray=[toolbar];
var read=false;
if(readonly=='true'){
read=true;
}
var toolbar=['fullscreen', 'source', 'undo', 'redo','|','fontsize','bold', 'italic', 'underline','forecolor', 'strikethrough', 'superscript', 'subscript','|', 'removeformat', 'formatmatch', 'insertcode', 'pasteplain','link','unlink','|','justifyleft','justifycenter','justifyright','justifyjustify','|', 'insertorderedlist', 'insertunorderedlist','simpleupload', 'insertimage', 'inserttable', 'selectall', 'cleardoc'];
if(toolbarArray && toolbarArray.length>0){
toolbar=toolbarArray;
}
if(toolbarArray && toolbarArray.length>0){
toolbar=toolbarArray;
}
var ue = UE.getEditor(id,{
//初始化高度
toolbars: [
toolbar
],
pasteplain:true,
readonly:read,
initialFrameWidth:width,
initialFrameHeight:height
});
</script>

View File

@ -29,7 +29,7 @@ fieldset.layui-field-title {
{/block}
<!-- 主体 -->
{block name="body"}
<div class="p-3">
<div class="layui-row layui-col-space15">
<div class="layui-col-xs6 layui-col-md3">
<div class="layui-card">
@ -118,16 +118,18 @@ fieldset.layui-field-title {
</div>
</div>
</div>
</div>
{/block}
<!-- /主体 -->
<!-- 脚本 -->
{block name="script"}
<script src="https://cdn.staticfile.org/echarts/5.3.0/echarts.min.js"></script>
<script src="{__STATIC__}/chart/china.js"></script>
<script src="{__GOUGU__}/third_party/echart/china.js"></script>
<script>
function init(layui) {
var layer = layui.layer, table = layui.table;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool;
}
// 访问量
@ -425,6 +427,5 @@ fieldset.layui-field-title {
};
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,5 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}
@ -15,26 +13,26 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">报销信息</h3>
<form class="layui-form p-4">
<h3 class="pb-3">报销信息</h3>
{if condition="($id == 0)"}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">报销人</td>
<td class="layui-td-gray">报销人</td>
<td>
{$user.name}
</td>
<td class="layui-td-gray2">报销部门</td>
<td class="layui-td-gray">报销部门</td>
<td colspan="3">
{$user.department}
</td>
</tr>
<tr>
<td class="layui-td-gray2">报销凭证编号<span style="color: red">*</span></td>
<td class="layui-td-gray-2">报销凭证编号<span style="color: red">*</span></td>
<td>
<input type="text" name="code" autocomplete="off" lay-verify="required" placeholder="报销凭证编号" lay-reqText="请填写报销凭证编号" class="layui-input" value="">
</td>
<td class="layui-td-gray2">原始单据日期<span style="color: red">*</span></td>
<td class="layui-td-gray-2">原始单据日期<span style="color: red">*</span></td>
<td>
<input type="text" class="layui-input" id="expense_time" name="expense_time" lay-verify="required" placeholder="请选择原始单据日期" lay-reqText="请选择原始单据日期" readonly value="">
</td>
@ -44,7 +42,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">报销选项<span style="color: red">*</span></td>
<td class="layui-td-gray">报销选项<span style="color: red">*</span></td>
<td colspan="5">
<div>
<table id="interfix" class="layui-table layui-table-min">
@ -93,17 +91,17 @@
{else/}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">报销人</td>
<td class="layui-td-gray">报销人</td>
<td>{$expense.create_user}</td>
<td class="layui-td-gray2">报销部门</td>
<td class="layui-td-gray">报销部门</td>
<td colspan="3">{$expense.department}</td>
</tr>
<tr>
<td class="layui-td-gray2">报销凭证编号<span style="color: red">*</span></td>
<td class="layui-td-gray-2">报销凭证编号<span style="color: red">*</span></td>
<td>
<input type="text" name="code" autocomplete="off" lay-verify="required" placeholder="报销凭证编号" lay-reqText="请填写报销凭证编号" class="layui-input" value="{$expense.code}">
</td>
<td class="layui-td-gray2">原始单据日期<span style="color: red">*</span></td>
<td class="layui-td-gray-2">原始单据日期<span style="color: red">*</span></td>
<td>
<input type="text" class="layui-input" id="expense_time" name="expense_time" lay-verify="required" placeholder="请选择原始单据日期" lay-reqText="请选择原始单据日期" readonly value="{$expense.expense_time}">
</td>
@ -113,7 +111,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">报销选项<span style="color: red">*</span></td>
<td class="layui-td-gray">报销选项<span style="color: red">*</span></td>
<td colspan="5">
<div>
<table id="interfix" class="layui-table layui-table-min">
@ -163,7 +161,7 @@
</table>
{/if}
<div class="layui-form-item" style="padding-top:10px;">
<div class="py-3">
<input name="id" id="id" type="hidden" value="{$id}">
<button class="layui-btn" lay-submit="" lay-filter="webform">保存并提交审核</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -183,13 +181,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer
,table = layui.table
,employeepicker = layui.employeepicker
,laydate = layui.laydate;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
laydate.render({
elem: '#income_month',
type:'month',
@ -260,7 +254,7 @@
else{
$.ajax({
url: "/api/index/get_flow_users",
type:'post',
type:'get',
data:{id:data.value},
success: function (e) {
if (e.code == 0) {
@ -333,9 +327,8 @@
}, function(index) {
$.ajax({
url: "/api/index/del_expense_interfix",
data: {
id: _id
},
type:'post',
data: {id: _id},
success: function(res) {
layer.msg(res.msg);
if (res.code == 0) {
@ -350,10 +343,7 @@
that.parents(".more_interfix").remove();
}
});
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div id="barDate" class="layui-input-inline">
<div class="layui-input-inline" style="width:110px;">
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
@ -34,12 +34,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form,
laydate = layui.laydate;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#barDate',
@ -49,11 +46,11 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '报销管理列表',
toolbar: '#toolbarDemo',
@ -160,7 +157,7 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/finance/expense/view?id="+data.id,"900px");
tool.side("/finance/expense/view?id="+data.id);
return;
}
if(obj.event === 'open'){
@ -170,12 +167,11 @@
}, function(index) {
$.ajax({
url: "/finance/expense/topay",
data: {
id: data.id
},
type:'post',
data: {id: data.id},
success: function(res) {
layer.msg(res.msg);
tableIns.reload();
layui.pageTable.reload();
}
})
layer.close(index);
@ -184,6 +180,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div id="barDate" class="layui-input-inline">
<div class="layui-input-inline" style="width:110px;">
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
@ -37,12 +37,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form,
laydate = layui.laydate;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#barDate',
@ -52,11 +49,11 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '报销管理列表',
toolbar: '#toolbarDemo',
@ -165,7 +162,7 @@
//表头工具栏事件
table.on('toolbar(test)', function(obj){
if (obj.event === 'add') {
rightpage.open("/finance/expense/add","900px");
tool.side("/finance/expense/add");
return;
}
});
@ -173,11 +170,11 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/finance/expense/view?id="+data.id,"900px");
tool.side("/finance/expense/view?id="+data.id);
return;
}
if (obj.event === 'edit') {
rightpage.open("/finance/expense/add?id="+data.id,"900px");
tool.side("/finance/expense/add?id="+data.id);
return;
}
if (obj.event === 'del') {
@ -187,6 +184,7 @@
}, function(index) {
$.ajax({
url: "/finance/expense/delete",
type:'post',
data: {
id: data.id
},
@ -203,6 +201,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<div class="layui-card">
<div class="layui-tab layui-tab-brief" lay-filter="tab">
<ul class="layui-tab-title">
<li class="layui-this">全部</li>
@ -11,6 +12,7 @@
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
</div>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<h3 class="h3-title" style="height:32px;">报销列表</h3>
@ -22,19 +24,16 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
element=layui.element,
form = layui.form;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, element = layui.element;
element.on('tab(tab)', function(data){
tableIns.reload({where:{status:data.index},page:{curr:1}});
layui.pageTable.reload({where:{status:data.index},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '报销管理列表',
toolbar: '#toolbarDemo',
@ -136,12 +135,11 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/finance/expense/view?id="+data.id,"900px");
tool.side("/finance/expense/view?id="+data.id);
return;
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,5 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}
@ -53,19 +51,19 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="page-content">
<h3 class="h3-title">报销详情</h3>
<form class="layui-form p-4">
<h3 class="pb-3">报销详情</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray2">报销凭证编号</td>
<td class="layui-td-gray-2">报销凭证编号</td>
<td>{$detail.code}</td>
<td class="layui-td-gray">入账月份</td>
<td>{$detail.income_month}</td>
<td class="layui-td-gray2">原始单据日期</td>
<td class="layui-td-gray-2">原始单据日期</td>
<td>{$detail.expense_time}</td>
</tr>
<tr>
<td class="layui-td-gray2">报销人</td>
<td class="layui-td-gray">报销人</td>
<td>{$detail.create_user}</td>
<td class="layui-td-gray">报销部门</td>
<td>{$detail.department}</td>
@ -74,14 +72,14 @@
</tr>
{if condition="$detail.pay_admin_id > 0"}
<tr>
<td class="layui-td-gray2">打款人</td>
<td class="layui-td-gray">打款人</td>
<td>{$detail.pay_admin}</td>
<td class="layui-td-gray">打款时间</td>
<td colspan="3">{$detail.pay_time}</td>
</tr>
{/if}
<tr>
<td class="layui-td-gray2">费用金额</td>
<td class="layui-td-gray">费用金额</td>
<td colspan="5">
<div>
<table class="layui-table layui-table-min">
@ -111,7 +109,7 @@
{eq name="$detail.check_status" value="5"}<span style="color:#34a853">已通过</span>{/eq}
<span id="showRecord" class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal" style="margin-left:10px;">查看审批记录</span>
</td>
<td class="layui-td-gray">当前审核人</td>
<td class="layui-td-gray-2">当前审核人</td>
<td colspan="3">{$detail.check_user}</td>
</tr>
<tr>
@ -184,17 +182,14 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
,dropdown = layui.dropdown
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, dropdown = layui.dropdown, employeepicker = layui.employeepicker;
//获取审核信息
$.ajax({
url: "/api/index/get_flow_nodes",
type:'post',
type:'get',
data:{id:$('[name="id"]').val(),type:2},
success: function (e) {
if (e.code == 0) {
@ -400,7 +395,7 @@ function init(layui) {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
location.reload();
}
}
@ -425,7 +420,7 @@ function init(layui) {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
location.reload();
}
}
@ -437,6 +432,5 @@ function init(layui) {
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -45,8 +45,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="page-content">
<h3 class="h3-title">发票信息</h3>
<form class="layui-form p-4">
<h3 class="pb-3">发票信息</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray">发票金额</td>
@ -77,7 +77,7 @@
<td>{$detail.invoice_phone}</td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">纳税人识别号</td>
<td class="layui-td-gray-2">纳税人识别号</td>
<td>{$detail.invoice_tax}</td>
<td class="layui-td-gray">开户行</td>
<td>{$detail.invoice_bank}</td>
@ -85,7 +85,7 @@
<td>{$detail.invoice_account}</td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">银行营业网点</td>
<td class="layui-td-gray-2">银行营业网点</td>
<td>{$detail.invoice_banking}</td>
<td class="layui-td-gray">地址</td>
<td colspan="3">{$detail.invoice_address}</td>
@ -119,17 +119,17 @@
</tr>
{if condition="$detail.open_admin_id > 0"}
<tr>
<td class="layui-td-gray2">开票人</td>
<td class="layui-td-gray">开票人</td>
<td>{$detail.open_admin}</td>
<td class="layui-td-gray2">开票时间</td>
<td class="layui-td-gray">开票时间</td>
<td>{$detail.open_time}</td>
<td class="layui-td-gray2">发票号码</td>
<td class="layui-td-gray">发票号码</td>
<td>{$detail.code}</td>
</tr>
{/if}
</table>
<h3 class="h3-title2">到账信息</h3>
<h3 class="py-3">到账信息</h3>
<form class="layui-form">
<table class="layui-table">
<tr>
@ -143,9 +143,9 @@
<span style="color:#009688">全部到账</span>
{/if}
</td>
<td class="layui-td-gray2">未到账金额(元)</td>
<td class="layui-td-gray-2">未到账金额(元)</td>
<td style="color:#FF5722">{$detail.not_income}</td>
<td class="layui-td-gray2">已到账金额(元)</td>
<td class="layui-td-gray-2">已到账金额(元)</td>
<td style="color:#1E9FFF">{$detail.enter_amount}</td>
</tr>
<tr>
@ -179,7 +179,7 @@
</td>
</tr>
</table>
<div class="layui-form-item" style="padding-top:10px; text-align:center">
<div class="py-3">
<input name="inid" id="inid" type="hidden" value="{$id}">
<input name="enter_type" id="enter_type" type="hidden" value="1">
{if condition="($detail.is_cash lt 2)"}
@ -205,17 +205,14 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
,layer = layui.layer
,laydate = layui.laydate
,dropdown = layui.dropdown
,table = layui.table;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool, dropdown = layui.dropdown;
//获取审核信息
$.ajax({
url: "/api/index/get_flow_nodes",
type:'post',
type:'get',
data:{id:$('[name="id"]').val(),type:3},
success: function (e) {
if (e.code == 0) {
@ -399,11 +396,12 @@ function init(layui) {
layer.confirm('确定要删除该到账记录?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/finance/income/delete",
type:'post',
data:{id:id,inid:inid},
success:function(res){
layer.msg(res.msg);
if(res.code==0){
parent.tableIns.reload();
parent.layui.pageTable.reload();
window.setTimeout(function(){
location.reload();
},1200)
@ -427,7 +425,7 @@ function init(layui) {
success:function(res){
layer.msg(res.msg);
if(res.code==0){
parent.tableIns.reload();
parent.layui.pageTable.reload();
window.setTimeout(function(){
location.reload();
},1200)
@ -442,11 +440,12 @@ function init(layui) {
layer.confirm('确定要全部反到账?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/finance/income/add",
type:'post',
data:{inid:inid,enter_type:3},
success:function(res){
layer.msg(res.msg);
if(res.code==0){
parent.tableIns.reload();
parent.layui.pageTable.reload();
window.setTimeout(function(){
location.reload();
},1200)
@ -477,11 +476,12 @@ function init(layui) {
}
$.ajax({
url: "/finance/income/add",
data:{inid:inid,enter_type:2,enter_time:enter_time},
type:'post',
data:{inid:inid,enter_type:2,enter_time:enter_time},
success:function(res){
layer.msg(res.msg);
if(res.code==0){
parent.tableIns.reload();
parent.layui.pageTable.reload();
window.setTimeout(function(){
location.reload();
},1200)
@ -494,6 +494,5 @@ function init(layui) {
})
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div id="barDate" class="layui-input-inline">
<div class="layui-input-inline" style="width:110px;">
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
@ -30,12 +30,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form,
laydate = layui.laydate;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#barDate',
@ -45,11 +42,11 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{is_cash:f.is_cash,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{is_cash:f.is_cash,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '到账列表',
toolbar: '#toolbarDemo',
@ -166,16 +163,15 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'add') {
rightpage.open("/finance/income/add?id="+data.id);
tool.side("/finance/income/add?id="+data.id);
return;
}
if (obj.event === 'view') {
rightpage.open("/finance/income/view?id="+data.id);
tool.side("/finance/income/view?id="+data.id);
return;
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -44,8 +44,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="page-content">
<h3 class="h3-title">发票信息</h3>
<form class="layui-form p-4">
<h3 class="pb-3">发票信息</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray">发票金额(元)</td>
@ -76,7 +76,7 @@
<td>{$detail.invoice_phone}</td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">纳税人识别号</td>
<td class="layui-td-gray-2">纳税人识别号</td>
<td>{$detail.invoice_tax}</td>
<td class="layui-td-gray">开户行</td>
<td>{$detail.invoice_bank}</td>
@ -84,7 +84,7 @@
<td>{$detail.invoice_account}</td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">银行营业网点</td>
<td class="layui-td-gray-2">银行营业网点</td>
<td>{$detail.invoice_banking}</td>
<td class="layui-td-gray">地址</td>
<td colspan="3">{$detail.invoice_address}</td>
@ -118,17 +118,17 @@
</tr>
{if condition="$detail.open_admin_id > 0"}
<tr>
<td class="layui-td-gray2">开票人</td>
<td class="layui-td-gray">开票人</td>
<td>{$detail.open_admin}</td>
<td class="layui-td-gray2">开票时间</td>
<td class="layui-td-gray">开票时间</td>
<td>{$detail.open_time}</td>
<td class="layui-td-gray2">发票号码</td>
<td class="layui-td-gray">发票号码</td>
<td>{$detail.code}</td>
</tr>
{/if}
</table>
<h3 class="h3-title2">到账信息</h3>
<h3 class="py-3">到账信息</h3>
<form class="layui-form">
<table class="layui-table">
<tr>
@ -142,7 +142,7 @@
<span style="color:#009688">全部到账</span>
{/if}
</td>
<td class="layui-td-gray2">未到账金额(元)</td>
<td class="layui-td-gray-2">未到账金额(元)</td>
<td style="color:#FF5722">{$detail.not_income}</td>
<td class="layui-td-gray2">已到账金额(元)</td>
<td style="color:#1E9FFF">{$detail.enter_amount}</td>
@ -186,8 +186,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var dropdown = layui.dropdown;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool, dropdown = layui.dropdown;
//获取审核信息
$.ajax({
url: "/api/index/get_flow_nodes",
@ -339,6 +340,5 @@ function init(layui) {
})
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,5 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-table-min th{font-size:13px; text-align:center; background-color:#f8f8f8;}
.layui-table-min td{font-size:13px; padding:6px;text-align:center;}
@ -11,8 +9,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">申请开票</h3>
<form class="layui-form p-4">
<h3 class="pb-3">申请开票</h3>
{if condition="($id == 0)"}
<table class="layui-table">
<tr>
@ -50,7 +48,7 @@
<td><input type="text" name="invoice_phone" class="layui-input" value="" lay-verify="required" lay-reqText="请输入电话号码"></td>
</tr>
<tr class="invoice-type">
<td class="layui-td-gray2">纳税人识别号<span style="color: red">*</span></td>
<td class="layui-td-gray-2">纳税人识别号<span style="color: red">*</span></td>
<td><input type="text" name="invoice_tax" class="layui-input" value=""></td>
<td class="layui-td-gray">开户行<span style="color: red">*</span></td>
<td><input type="text" name="invoice_bank" class="layui-input" value=""></td>
@ -58,7 +56,7 @@
<td><input type="text" name="invoice_account" class="layui-input" value=""></td>
</tr>
<tr class="invoice-type">
<td class="layui-td-gray2">银行营业网点<span style="color: red">*</span></td>
<td class="layui-td-gray-2">银行营业网点<span style="color: red">*</span></td>
<td><input type="text" name="invoice_banking" class="layui-input" value=""></td>
<td class="layui-td-gray">地址<span style="color: red">*</span></td>
<td colspan="3"><input type="text" name="invoice_address" class="layui-input" value=""></td>
@ -122,7 +120,7 @@
<td><input type="text" name="invoice_phone" class="layui-input" value="{$detail.invoice_phone}"></td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">纳税人识别号<span style="color: red">*</span></td>
<td class="layui-td-gray-2">纳税人识别号<span style="color: red">*</span></td>
<td><input type="text" name="invoice_tax" class="layui-input" value="{$detail.invoice_tax}"></td>
<td class="layui-td-gray">开户行<span style="color: red">*</span></td>
<td><input type="text" name="invoice_bank" class="layui-input" value="{$detail.invoice_bank}"></td>
@ -130,7 +128,7 @@
<td><input type="text" name="invoice_account" class="layui-input" value="{$detail.invoice_account}"></td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">银行营业网点<span style="color: red">*</span></td>
<td class="layui-td-gray-2">银行营业网点<span style="color: red">*</span></td>
<td><input type="text" name="invoice_banking" class="layui-input" value="{$detail.invoice_banking}"></td>
<td class="layui-td-gray">地址<span style="color: red">*</span></td>
<td colspan="3"><input type="text" name="invoice_address" class="layui-input" value="{$detail.invoice_address}"></td>
@ -159,7 +157,7 @@
</table>
{/if}
<div class="layui-form-item" style="padding-top:10px;">
<div class="py-3">
<input name="id" id="id" type="hidden" value="{$id}">
<button class="layui-btn" lay-submit="" lay-filter="webform">保存并提交审核</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -170,12 +168,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer
,employeepicker = layui.employeepicker
,laydate = layui.laydate;
<script>
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, table = layui.table, employeepicker = layui.employeepicker,laydate = layui.laydate;
//选择收件人类型
form.on('radio(type)', function (data) {
@ -187,7 +183,7 @@
}
});
//选择人员
//选择人员
$('.layui-form').on('click','[name="check_admin_name"]',function(){
if($('[name="flow_id"]').val()==''){
layer.msg('请先选择审批流程');
@ -259,7 +255,6 @@
}
})
}
});
@ -272,18 +267,16 @@
success:function(e){
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
})
return false;
});
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div id="barDate" class="layui-input-inline">
<div class="layui-input-inline" style="width:110px;">
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
@ -35,12 +35,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form,
laydate = layui.laydate;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#barDate',
@ -50,11 +47,11 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '发票列表',
toolbar: '#toolbarDemo',
@ -191,7 +188,7 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/finance/invoice/view?id="+data.id,"900px");
tool.side("/finance/invoice/view?id="+data.id);
return;
}
if(obj.event === 'open'){
@ -245,7 +242,7 @@
layer.msg(e.msg);
if (e.code == 0) {
layer.close(index);
tableIns.reload();
layui.pageTable.reload();
}
}
})
@ -262,6 +259,7 @@
}, function(index) {
$.ajax({
url: "/finance/invoice/tovoid",
type:'post',
data: {
id: data.id,
check_status:10
@ -269,7 +267,7 @@
success: function(res) {
layer.msg(res.msg);
if (res.code == 0) {
location.reload();
layui.pageTable.reload();
}
}
})
@ -279,6 +277,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-x border-t">
<div id="barDate" class="layui-input-inline">
<div class="layui-input-inline" style="width:110px;">
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
@ -38,12 +38,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form,
laydate = layui.laydate;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#barDate',
@ -53,11 +50,11 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{check_status:f.check_status,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '发票列表',
toolbar: '#toolbarDemo',
@ -194,7 +191,7 @@
//表头工具栏事件
table.on('toolbar(test)', function(obj){
if (obj.event === 'add') {
rightpage.open("/finance/invoice/add","900px");
tool.side("/finance/invoice/add");
return;
}
});
@ -202,11 +199,11 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/finance/invoice/view?id="+data.id,"900px");
tool.side("/finance/invoice/view?id="+data.id);
return;
}
if (obj.event === 'edit') {
rightpage.open("/finance/invoice/add?id="+data.id,"900px");
tool.side("/finance/invoice/add?id="+data.id);
return;
}
if (obj.event === 'del') {
@ -216,9 +213,8 @@
}, function(index) {
$.ajax({
url: "/finance/invoice/delete",
data: {
id: data.id
},
type:'post',
data: {id: data.id},
success: function(res) {
layer.msg(res.msg);
if (res.code == 0) {
@ -232,6 +228,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<div class="layui-card">
<div class="layui-tab layui-tab-brief" lay-filter="tab">
<ul class="layui-tab-title">
<li class="layui-this">全部</li>
@ -11,6 +12,7 @@
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
</div>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<h3 class="h3-title" style="height:32px;">发票列表</h3>
@ -22,18 +24,15 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns=null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
element=layui.element,
form = layui.form;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,table = layui.table,tool=layui.tool, element = layui.element;
element.on('tab(tab)', function(data){
tableIns.reload({where:{status:data.index},page:{curr:1}});
layui.pageTable.reload({where:{status:data.index},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
title: '发票列表',
toolbar: '#toolbarDemo',
@ -163,12 +162,11 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/finance/invoice/view?id="+data.id,"900px");
tool.side("/finance/invoice/view?id="+data.id);
return;
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,5 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}
@ -53,8 +51,9 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="page-content">
<h3 class="h3-title">发票详情</h3>
{block name="body"}
<form class="layui-form p-4">
<h3 class="pb-3">发票详情</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray">开票金额(元)</td>
@ -85,7 +84,7 @@
<td>{$detail.invoice_phone}</td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">纳税人识别号</td>
<td class="layui-td-gray-2">纳税人识别号</td>
<td>{$detail.invoice_tax}</td>
<td class="layui-td-gray">开户行</td>
<td>{$detail.invoice_bank}</td>
@ -93,7 +92,7 @@
<td>{$detail.invoice_account}</td>
</tr>
<tr class="invoice-type" {eq name="$detail.type" value="2"}style="display:none"{/eq}>
<td class="layui-td-gray2">银行营业网点</td>
<td class="layui-td-gray-2">银行营业网点</td>
<td>{$detail.invoice_banking}</td>
<td class="layui-td-gray">地址</td>
<td colspan="3">{$detail.invoice_address}</td>
@ -124,7 +123,7 @@
{/if}
<span id="showRecord" class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal" style="margin-left:10px;">查看审批记录</span>
</td>
<td class="layui-td-gray">当前审核人</td>
<td class="layui-td-gray-2">当前审核人</td>
<td colspan="3">{$detail.check_user}</td>
</tr>
<tr>
@ -172,7 +171,7 @@
<td colspan="3">{$detail.open_time}</td>
</tr>
<tr>
<td class="layui-td-gray2">快递单号</td>
<td class="layui-td-gray">快递单号</td>
<td colspan="5">{$detail.delivery}</td>
</tr>
{/if}
@ -202,11 +201,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
,dropdown = layui.dropdown
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, dropdown = layui.dropdown, employeepicker = layui.employeepicker;
//获取审核信息
$.ajax({
url: "/api/index/get_flow_nodes",
@ -414,7 +411,7 @@ function init(layui) {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
location.reload();
}
}
@ -439,7 +436,7 @@ function init(layui) {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
location.reload();
}
}
@ -451,6 +448,5 @@ function init(layui) {
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table" style="margin-bottom:0">
<div class="layui-form-bar">
<div class="p-3">
<div class="gg-form-bar border-t border-x">
<button class="layui-btn layui-btn-normal layui-btn-sm add-menu">+ 添加分类</button>
</div>
<div>
@ -17,12 +17,11 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var treeGrid = layui.treeGrid,
layer = layui.layer,
rightpage = layui.rightpage,
ptable = treeGrid.render({
<script>
const moduleInit = ['tool', 'treeGrid'];
function gouguInit() {
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
layui.pageTable = treeGrid.render({
id:'treeTable'
,elem: '#treeTable'
,idField:'id'
@ -49,39 +48,34 @@
//表头工具栏事件
$('.add-menu').on('click', function(){
rightpage.open("/home/cate/article_cate_add",'900px');
tool.side("/home/cate/article_cate_add");
return;
});
//操作按钮
treeGrid.on('tool(treeTable)', function (obj) {
if (obj.event === 'add') {
rightpage.open('/home/cate/article_cate_add?pid='+obj.data.id,'900px');
tool.side('/home/cate/article_cate_add?pid='+obj.data.id);
return;
}
if (obj.event === 'edit') {
rightpage.open('/home/cate/article_cate_add?id='+obj.data.id,'900px');
tool.side('/home/cate/article_cate_add?id='+obj.data.id);
return;
}
if (obj.event === 'del') {
layer.confirm('确定要删除吗?', { icon: 3, title: '提示' }, function (index) {
$.ajax({
url: "/home/cate/article_cate_delete",
type: 'post',
data: { id: obj.data.id },
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
})
}
tool.delete("/home/cate/article_cate_delete", { id: obj.data.id }, callback);
layer.close(index);
});
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['treeGrid','rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,12 +1,12 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">知识分类</h3>
<form class="layui-form p-4">
<h3 class="pb-3">知识分类</h3>
{eq name="$id" value="0"}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">父级分类<font>*</font></td>
<td class="layui-td-gray">父级分类<font>*</font></td>
<td>
<select name="pid" lay-verify="required" lay-reqText="请选择父级分类">
<option value="0">作为顶级分类</option>
@ -15,24 +15,24 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">分类名称<font>*</font></td>
<td class="layui-td-gray">分类名称<font>*</font></td>
<td>
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入分类名称" lay-reqText="请输入分类名称" class="layui-input">
</td>
<td class="layui-td-gray2">排序</td>
<td class="layui-td-gray">排序</td>
<td>
<input type="text" name="sort" placeholder="请输入排序,数字" value="0" autocomplete="off" class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray2">描述</td>
<td class="layui-td-gray">描述</td>
<td colspan="5"><textarea name="desc" placeholder="请输入描述,可空" class="layui-textarea"></textarea></td>
</tr>
</table>
{else/}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">父级分类<font>*</font></td>
<td class="layui-td-gray">父级分类<font>*</font></td>
<td>
<select name="pid" lay-verify="required" lay-reqText="请选择父级分类">
<option value="0">作为顶级分类</option>
@ -41,22 +41,22 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">分类名称<font>*</font></td>
<td class="layui-td-gray">分类名称<font>*</font></td>
<td>
<input type="text" name="title" value="{$detail.title}" lay-verify="required" autocomplete="off" placeholder="请输入分类名称" lay-reqText="请输入分类名称" class="layui-input">
</td>
<td class="layui-td-gray2">排序</td>
<td class="layui-td-gray">排序</td>
<td>
<input type="text" name="sort" value="{$detail.sort}" placeholder="请输入排序,数字" value="0" autocomplete="off" class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray2">描述</td>
<td class="layui-td-gray">描述</td>
<td colspan="5"><textarea name="desc" placeholder="请输入描述,可空" class="layui-textarea">{$detail.desc}</textarea></td>
</tr>
</table>
{/eq}
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$id}">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -68,29 +68,23 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool;
//监听提交
form.on('submit(webform)', function(data){
$.ajax({
url: "/home/cate/article_cate_add",
type:'post',
data:data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function(){
parent.location.reload();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.location.reload();
}, 1000);
}
})
}
tool.post("/home/cate/article_cate_add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -15,11 +15,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var table=layui.table,
layer=layui.layer;
var tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'车辆类型列表'
@ -63,39 +62,25 @@
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该车辆吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/car_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 0
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/car_cate_check", { id: obj.data.id,status: 0}, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该车辆吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/car_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 1
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/car_cate_check", { id: obj.data.id,status: 1}, callback);
layer.close(index);
});
}
@ -137,22 +122,18 @@
let id = $('#LAY_module').find('[name="id"]').val();
let title = $('#LAY_module').find('[name="title"]').val();
let name = $('#LAY_module').find('[name="name"]').val();
$.ajax({
url: "/home/cate/car_cate_add",
type: 'post',
data: {
id: id,
title: title,
name: name
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
layer.close(index);
tableIns.reload();
}
}
})
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
layer.close(index);
}
}
tool.post("/home/cate/car_cate_add", {
id: id,
title: title,
name: name
}, callback);
}
,btn2: function(){
layer.closeAll();
@ -161,6 +142,5 @@
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -14,14 +14,11 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table=layui.table,
form = layui.form,
layer=layui.layer;
tableIns = table.render({
<script>
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'费用类型列表'
@ -64,47 +61,31 @@
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该类别吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/cost_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 0,
title: obj.data.title,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/cost_cate_check", { id: obj.data.id,status: 0,title: obj.data.title}, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该类别吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/cost_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 1,
title: obj.data.title,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/cost_cate_check", { id: obj.data.id,status: 1,title: obj.data.title}, callback);
layer.close(index);
});
}
});
$('.body-table').on('click','.addNew',function(){
$('body').on('click','.addNew',function(){
addExpense(0,'');
});
@ -120,23 +101,14 @@
// 获取文本框输入的值
var value = layero.find(".layui-layer-input").val();
if (value) {
$.ajax({
url: "/home/cate/cost_cate_add",
type: 'post',
data: {
id: id,
title: value,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
setTimeout(function(){
layer.closeAll();
}, 1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/cost_cate_add", {id: id,title: value}, callback);
layer.close(index);
} else {
layer.msg('请填写类别标题');
}
@ -145,6 +117,5 @@
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -15,12 +15,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var table=layui.table,
form = layui.form,
layer=layui.layer;
var tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'报销类别列表'
@ -63,47 +61,31 @@
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该类别吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/expense_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 0,
title: obj.data.title,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/expense_cate_check", { id: obj.data.id,status: 0,title: obj.data.title}, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该类别吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/expense_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 1,
title: obj.data.title,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/expense_cate_check", { id: obj.data.id,status: 1,title: obj.data.title}, callback);
layer.close(index);
});
}
});
$('.body-table').on('click','.addNew',function(){
$('body').on('click','.addNew',function(){
addExpense(0,'');
});
@ -119,21 +101,14 @@
// 获取文本框输入的值
var value = layero.find(".layui-layer-input").val();
if (value) {
$.ajax({
url: "/home/cate/expense_cate_add",
type: 'post',
data: {
id: id,
title: value,
},
success: function(e) {
layer.msg(e.msg);
tableIns.reload();
setTimeout(function(){
layer.closeAll();
}, 1000);
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/expense_cate_add", {id: id,title: value}, callback);
layer.close(index);
} else {
layer.msg('请填写类别标题');
}
@ -142,6 +117,5 @@
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -15,13 +15,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table=layui.table,
rightpage = layui.rightpage,
layer=layui.layer;
tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'审批模块列表'
@ -82,54 +79,39 @@
table.on('tool(test)',function (obj) {
if(obj.event === 'edit'){
rightpage.open("/home/cate/flow_type_add?id="+obj.data.id,'900px');
tool.side("/home/cate/flow_type_add?id="+obj.data.id);
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该模块吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/flow_type_check",
type: 'post',
data: {
id: obj.data.id,
status: 0
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/flow_type_check", { id: obj.data.id,status: 0}, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该模块吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/flow_type_check",
type: 'post',
data: {
id: obj.data.id,
status: 1
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/flow_type_check", { id: obj.data.id,status: 1}, callback);
layer.close(index);
});
}
});
$('.body-table').on('click','.addNew',function(){
rightpage.open("/home/cate/flow_type_add",'900px');
return;
$('body').on('click','.addNew',function(){
tool.side("/home/cate/flow_type_add");
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">审批类型</h3>
<form class="layui-form p-4">
<h3 class="pb-3">审批类型</h3>
{eq name="$id" value="0"}
<table class="layui-table">
<tr>
@ -32,7 +32,7 @@
<td class="layui-td-gray">图标<font>*</font></td>
<td>
<input style="width:150px; display:inline" class="layui-input" type="text" name="icon" value="" placeholder="请输入审批类型图标" lay-verify="required" lay-reqText="请输入审批类型图标" >
icon-jichuguanli<a href="/static/layui/font/extend/demo_index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
icon-jichupeizhi<a href="{__GOUGU__}/icon/index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
</td>
</tr>
</table>
@ -65,12 +65,12 @@
<td class="layui-td-gray">图标<font>*</font></td>
<td>
<input style="width:150px; display:inline" class="layui-input" type="text" name="icon" value="{$detail.icon}" placeholder="请输入审批类型图标" lay-verify="required" lay-reqText="请输入审批类型图标" >
icon-jichuguanli<a href="/static/layui/font/extend/demo_index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
<i class="iconfont {$detail.icon}"></i><a href="{__GOUGU__}/icon/index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
</td>
</tr>
</table>
{/eq}
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$id}">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -82,30 +82,24 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool;
//监听提交
form.on('submit(webform)', function(data){
$.ajax({
url: "/home/cate/flow_type_add",
type:'post',
data:data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.layui.pageTable.reload();
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
})
}
tool.post("/home/cate/flow_type_add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table" style="margin-bottom:0">
<div class="layui-form-bar">
<div class="p-3">
<div class="gg-form-bar border-t border-x">
<button class="layui-btn layui-btn-normal layui-btn-sm add-menu">+ 添加分类</button>
</div>
<div>
@ -18,11 +18,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var treeGrid = layui.treeGrid,
layer = layui.layer,
rightpage = layui.rightpage,
ptable = treeGrid.render({
const moduleInit = ['tool', 'treeGrid'];
function gouguInit() {
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
layui.pageTable = treeGrid.render({
id:'treeTable'
,elem: '#treeTable'
,idField:'id'
@ -50,39 +49,34 @@
//表头工具栏事件
$('.add-menu').on('click', function(){
rightpage.open("/home/cate/note_cate_add",'900px');
tool.side("/home/cate/note_cate_add");
return;
});
//操作按钮
treeGrid.on('tool(treeTable)', function (obj) {
if (obj.event === 'add') {
rightpage.open('/home/cate/note_cate_add?pid='+obj.data.id,'900px');
tool.side('/home/cate/note_cate_add?pid='+obj.data.id);
return;
}
if (obj.event === 'edit') {
rightpage.open('/home/cate/note_cate_add?id='+obj.data.id,'900px');
tool.side('/home/cate/note_cate_add?id='+obj.data.id);
return;
}
if (obj.event === 'del') {
layer.confirm('确定要删除吗?', { icon: 3, title: '提示' }, function (index) {
$.ajax({
url: "/home/cate/note_cate_delete",
type: 'post',
data: { id: obj.data.id },
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
layer.confirm('确定要删除吗?', {icon: 3, title:'提示'}, function(index){
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
})
}
tool.delete("/home/cate/note_cate_delete", { id: obj.data.id }, callback);
layer.close(index);
});
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['treeGrid','rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,12 +1,12 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">公告分类</h3>
<form class="layui-form p-4">
<h3 class="pb-3">公告分类</h3>
{eq name="$id" value="0"}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">父级分类<font>*</font></td>
<td class="layui-td-gray">父级分类<font>*</font></td>
<td>
<select name="pid" lay-verify="required" lay-reqText="请选择父级分类">
<option value="0">作为顶级分类</option>
@ -15,11 +15,11 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">分类名称<font>*</font></td>
<td class="layui-td-gray">分类名称<font>*</font></td>
<td>
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入分类名称" lay-reqText="请输入分类名称" class="layui-input">
</td>
<td class="layui-td-gray2">排序</td>
<td class="layui-td-gray">排序</td>
<td>
<input type="text" name="sort" placeholder="请输入排序,数字" value="0" autocomplete="off" class="layui-input">
</td>
@ -28,7 +28,7 @@
{else/}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">父级分类<font>*</font></td>
<td class="layui-td-gray">父级分类<font>*</font></td>
<td>
<select name="pid" lay-verify="required" lay-reqText="请选择父级分类">
<option value="0">作为顶级分类</option>
@ -37,18 +37,18 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">分类名称<font>*</font></td>
<td class="layui-td-gray">分类名称<font>*</font></td>
<td>
<input type="text" name="title" value="{$detail.title}" lay-verify="required" autocomplete="off" placeholder="请输入分类名称" lay-reqText="请输入分类名称" class="layui-input">
</td>
<td class="layui-td-gray2">排序</td>
<td class="layui-td-gray">排序</td>
<td>
<input type="text" name="sort" value="{$detail.sort}" placeholder="请输入排序,数字" autocomplete="off" class="layui-input">
</td>
</tr>
</table>
{/eq}
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$id}">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -60,29 +60,23 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool;
//监听提交
form.on('submit(webform)', function(data){
$.ajax({
url: "/home/cate/note_cate_add",
type:'post',
data:data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function(){
parent.location.reload();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.location.reload();
}, 1000);
}
})
}
tool.post("/home/cate/note_cate_add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -14,14 +14,11 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table=layui.table,
form = layui.form,
layer=layui.layer;
tableIns = table.render({
<script>
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'印章类型列表'
@ -64,41 +61,25 @@
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该类别吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/seal_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 0,
title: obj.data.title,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/seal_cate_check", { id: obj.data.id,status: 0,title: obj.data.title}, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该类别吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/seal_cate_check",
type: 'post',
data: {
id: obj.data.id,
status: 1,
title: obj.data.title,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/seal_cate_check", { id: obj.data.id,status: 1,title: obj.data.title}, callback);
layer.close(index);
});
}
@ -120,23 +101,14 @@
// 获取文本框输入的值
var value = layero.find(".layui-layer-input").val();
if (value) {
$.ajax({
url: "/home/cate/seal_cate_add",
type: 'post',
data: {
id: id,
title: value,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
setTimeout(function(){
layer.closeAll();
}, 1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/seal_cate_add", {id: id,title: value}, callback);
layer.close(index);
} else {
layer.msg('请填写类别标题');
}
@ -145,6 +117,5 @@
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -15,12 +15,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var table=layui.table,
form = layui.form,
layer=layui.layer;
var tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'报销类别列表'
@ -63,46 +61,32 @@
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该发票主体吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/subject_check",
type: 'post',
data: {
id: obj.data.id,
status: 0
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/subject_check", { id: obj.data.id,status: 0}, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该发票主体吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/cate/subject_check",
type: 'post',
data: {
id: obj.data.id,
status: 1
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/subject_check", { id: obj.data.id,status: 1}, callback);
layer.close(index);
});
}
});
$('.body-table').on('click','.addNew',function(){
addExpense(0,'');
$('body').on('click','.addNew',function(){
addExpense(0,'');
});
function addExpense(id,val){
@ -117,23 +101,14 @@
// 获取文本框输入的值
var value = layero.find(".layui-layer-input").val();
if (value) {
$.ajax({
url: "/home/cate/subject_add",
type: 'post',
data: {
id: id,
title: value,
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
setTimeout(function(){
layer.closeAll();
}, 1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
}
tool.post("/home/cate/subject_add", {id: id,title: value}, callback);
layer.close(index);
} else {
layer.msg('请填写发票主体名称');
}
@ -142,6 +117,5 @@
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,17 +1,20 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">配置项</h3>
<table class="layui-table">
<form class="layui-form p-4">
<h3 class="pb-3">配置项</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">配置名称<font>*</font>
</td>
<td>
<input type="hidden" name="id" value="{$id}" />
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入配置名称" lay-reqText="请输入配置名称" class="layui-input" {notempty name="$config.title"} value="{$config.title}" {/notempty}>
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入配置名称"
lay-reqText="请输入配置名称" class="layui-input" {notempty name="$config.title" } value="{$config.title}"
{/notempty}>
</td>
<td class="layui-td-gray">状态<font>*</font>
</td>
<td class="layui-td-gray">状态<font>*</font></td>
<td>{if condition="$id eq 0"}
<input type="radio" name="status" value="1" title="正常" checked>
<input type="radio" name="status" value="0" title="禁用">
@ -24,23 +27,23 @@
</td>
</tr>
<tr>
<td class="layui-td-gray" style="vertical-align: top;">
<td class="layui-td-gray">
配置标识<font>*</font>
</td>
<td colspan="3">
<input type="text" name="name" lay-verify="required" placeholder="请输入配置标识" lay-reqText="请输入配置标识" autocomplete="off" class="layui-input" {notempty name="$config.name"} value="{$config.name}" {/notempty}>
<input type="text" name="name" lay-verify="required" placeholder="请输入配置标识" lay-reqText="请输入配置标识"
autocomplete="off" class="layui-input" {notempty name="$config.name" } value="{$config.name}"
{/notempty}>
</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align: top;">
注意
</td>
<td colspan="3">
<span style ="color: red; font-size: 12px;">(注意:新增配置项以后,需要对应新增模板文件,模板文件名称需与标识名称一致,建议复制现有的配置模板文件,然后根据需求修改对应的表单即可)</span>
<td colspan="4">
<span
style="color: red; font-size: 12px;">注意:新增配置项以后,需要对应新增模板文件,模板文件名称需与标识名称一致,建议复制现有的配置模板文件,然后根据需求修改对应的表单即可。</span>
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
@ -51,30 +54,24 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
, layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form, tool = layui.tool;
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/home/conf/add",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.layui.pageTable.reload();
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
})
}
tool.post("/home/conf/add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,69 +1,80 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">邮箱配置</h3>
<table class="layui-table">
<form class="layui-form p-4">
<h3 class="pb-3">邮箱配置</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">SMTP地址<font>*</font>
<td class="layui-td-gray-2">SMTP地址<font>*</font>
</td>
<td>
<input type="hidden" name="id" value="{$id}">
<input type="text" name="smtp" lay-verify="required" autocomplete="off" placeholder="请输入SMTP服务器地址" lay-reqText="请输入SMTP服务器地址" class="layui-input" {notempty name="$config.smtp"} value="{$config.smtp}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">QQ邮箱的SMTP服务器地址是smtp.qq.com163邮箱的SMTP服务器地址是smtp.163.com</span>
<input type="text" name="smtp" lay-verify="required" autocomplete="off" placeholder="请输入SMTP服务器地址"
lay-reqText="请输入SMTP服务器地址" class="layui-input" {notempty name="$config.smtp" }
value="{$config.smtp}" {/notempty} style="width:240px;display: inline-block;">
<span
style="color:#999; font-size:12px;">如QQ邮箱的SMTP服务器地址是smtp.qq.com163邮箱的SMTP服务器地址是smtp.163.com</span>
</td>
</tr>
<tr>
<td class="layui-td-gray2">协议端口号<font>*</font>
<td class="layui-td-gray-2">协议端口号<font>*</font>
</td>
<td>
<input type="text" name="smtp_port" lay-verify="required" autocomplete="off" placeholder="请输入端口" lay-reqText="请输入端口" class="layui-input" {notempty name="$config.smtp_port"} value="{$config.smtp_port}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">QQ邮箱的ssl协议方式端口号是465/587163邮箱的ssl协议方式端口号是465/994</span>
<input type="text" name="smtp_port" lay-verify="required" autocomplete="off" placeholder="请输入端口"
lay-reqText="请输入端口" class="layui-input" {notempty name="$config.smtp_port" }
value="{$config.smtp_port}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">QQ邮箱的ssl协议方式端口号是465/587163邮箱的ssl协议方式端口号是465/994</span>
</td>
</tr>
<tr>
<td class="layui-td-gray2">邮箱账户<font>*</font>
<td class="layui-td-gray">邮箱账户<font>*</font>
</td>
<td>
<input type="text" name="smtp_user" autocomplete="off" lay-verify="required" placeholder="请输入邮箱用户名" lay-reqText="请输入邮箱用户名" class="layui-input" {notempty name="$config.smtp_user"} value="{$config.smtp_user}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">gougucms@qq.com</span>
<input type="text" name="smtp_user" autocomplete="off" lay-verify="required" placeholder="请输入邮箱用户名"
lay-reqText="请输入邮箱用户名" class="layui-input" {notempty name="$config.smtp_user" }
value="{$config.smtp_user}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">gougucms@qq.com</span>
</td>
</tr>
<tr>
<td class="layui-td-gray2">邮箱密码<font>*</font>
<td class="layui-td-gray">邮箱密码<font>*</font>
</td>
<td>
<input type="password" name="smtp_pwd" lay-verify="required" autocomplete="off" placeholder="请输入邮箱密码"
class="layui-input" {notempty name="$config.smtp_pwd"} value="{$config.smtp_pwd}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">
class="layui-input" {notempty name="$config.smtp_pwd" } value="{$config.smtp_pwd}" {/notempty}
style="width:240px;display: inline-block;">
<span style="color:#999; font-size:12px;">
不一定是登录密码如QQ邮箱的是第三方授权登录码要自己去开启在邮箱的设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务</span>
</td>
</tr>
<tr>
<td class="layui-td-gray2">发送人<font>*</font>
<td class="layui-td-gray">发送人<font>*</font>
</td>
<td>
<input type="text" name="from" autocomplete="off" lay-verify="required" placeholder="请输入要显示的发送者" lay-reqText="请输入要显示的发送者"
class="layui-input" {notempty name="$config.from"} value="{$config.from}" {/notempty} style="width:240px; display: inline-block;">
<input type="text" name="from" autocomplete="off" lay-verify="required" placeholder="请输入要显示的发送者"
lay-reqText="请输入要显示的发送者" class="layui-input" {notempty name="$config.from" } value="{$config.from}"
{/notempty} style="width:240px; display: inline-block;">
<span style="color:#999; font-size:12px;">用于展示给发送方勾股CMS系统管理员</span>
</td>
</tr>
<tr>
<td class="layui-td-gray2">显示的邮箱<font>*</font>
<td class="layui-td-gray">显示的邮箱<font>*</font>
</td>
<td>
<input type="text" name="email" lay-verify="required" autocomplete="off" placeholder="请输入要显示的发送者邮箱" lay-reqText="请输入要显示的发送者邮箱"
class="layui-input" {notempty name="$config.email"} value="{$config.email}" {/notempty} style="width:240px;display: inline-block;">
<input type="text" name="email" lay-verify="required" autocomplete="off" placeholder="请输入要显示的发送者邮箱"
lay-reqText="请输入要显示的发送者邮箱" class="layui-input" {notempty name="$config.email" }
value="{$config.email}" {/notempty} style="width:240px;display: inline-block;">
<span style="color:#999;font-size:12px;">可以不同于上面的账户用于展示给发送方的邮箱admin@gougucms.com</span>
</td>
</tr>
<tr>
<td class="layui-td-gray2">邮件模板</td>
<td><textarea name="template" placeholder="" class="layui-textarea" id="container" style="border:0;padding:0">{notempty name="$config.template"}{$config.template}{/notempty}</textarea></td>
<td class="layui-td-gray">邮件模板</td>
<td><textarea name="template" placeholder="" class="layui-textarea" id="container">{notempty name="$config.template"}{$config.template}{/notempty}</textarea>
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button lay-event="email" class="layui-btn">发送测试</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -75,29 +86,30 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
, layer = layui.layer;
const moduleInit = ['tool','tinymce'];
function gouguInit() {
var form = layui.form, tool = layui.tool, tinymce = layui.tinymce;
var edit = tinymce.render({
selector: "#container",
height: 300
});
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/home/conf/edit",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
data.field.template = tinyMCE.editors['container'].getContent();
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
})
}
tool.post("/home/conf/edit", data.field, callback);
return false;
});
$('.body-content').on('click', '[lay-event="email"]', function () {
$('body').on('click', '[lay-event="email"]', function () {
layer.prompt({
formType: 0,
value: '',
@ -127,15 +139,7 @@
});
return false;
})
//监听返回
$('.body-content').on('click', '[lay-event="back"]', function () {
history.back(-1);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{include file="../../base/view/common/ueditor" id="container" name="content" width="100%" height="100%" toolbar="[]" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<table class="layui-hide" id="test" lay-filter="test"></table>
<div class="p-3">
<table class="layui-hide" id="conf" lay-filter="conf"></table>
</div>
<script type="text/html" id="status">
@ -19,14 +19,11 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form;
tableIns = table.render({
elem: '#test',
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#conf',
title: '配置列表',
toolbar: '#toolbarDemo',
url: "/home/conf/index",
@ -38,14 +35,14 @@
width: 80,
title: 'ID编号',
align: 'center'
},{
}, {
field: 'title',
width: 200,
title: '配置名称'
}, {
field: 'name',
title: '配置标识(新增的模板文件名称需与标识名称一致)'
},{
}, {
field: 'status',
width: 80,
title: '状态',
@ -62,16 +59,24 @@
}]
]
});
//监听行工具事件
table.on('tool(test)', function(obj){
var data = obj.data;
if(obj.event === 'add'){
rightpage.open('/home/conf/add?id='+data.id);
//表头工具栏事件
table.on('toolbar(conf)', function (obj) {
if (obj.event === 'add') {
tool.side("/home/conf/add");
return;
}
if(obj.event === 'edit'){
rightpage.open('/home/conf/edit?id='+data.id);
});
//监听行工具事件
table.on('tool(conf)', function (obj) {
var data = obj.data;
if (obj.event === 'add') {
tool.side('/home/conf/add?id=' + data.id);
return;
}
if (obj.event === 'edit') {
tool.side('/home/conf/edit?id=' + data.id);
return;
}
if (obj.event === 'del') {
@ -79,42 +84,23 @@
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/conf/delete",
type: 'post',
data: {
id: obj.data.id
},
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
obj.del();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
layer.close(index);
}
})
layer.close(index);
}
tool.delete("/home/conf/delete", { id: obj.data.id }, callback);
});
}
});
//表头工具栏事件
table.on('toolbar(test)', function(obj){
if (obj.event === 'add') {
rightpage.open("/home/conf/add",'900px');
return;
}
});
//监听搜索提交
form.on('submit(webform)', function (data) {
if (data.field.keywords) {
tableIns.reload({
where: {
keywords: data.field.keywords
},
page: {
curr: 1
}
where: { keywords: data.field.keywords }, page: { curr: 1 }
});
} else {
location.reload();
@ -123,6 +109,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,24 +1,45 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">其他配置</h3>
<table class="layui-table">
<form class="layui-form p-4">
<h3 class="pb-3">其他配置</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">开发者</td>
<td class="layui-td-gray">开发者</td>
<td>
<input type="hidden" value="{$id}" name="id">
<input type="text" name="author" autocomplete="off" placeholder="请输入开发者" lay-reqText="请输入开发者" class="layui-input"{notempty name="$config.author"} value="{$config.author}" {/notempty}>
<input type="text" name="author" autocomplete="off" placeholder="请输入开发者" lay-reqText="请输入开发者"
class="layui-input" {notempty name="$config.author" } value="{$config.author}" {/notempty}>
</td>
<td class="layui-td-gray2">开发版本号
<td class="layui-td-gray-2">开发版本号
</td>
<td>
<input type="text" name="version" autocomplete="off" placeholder="请输入版本号" lay-reqText="请输入版本号" class="layui-input" {notempty name="$config.version"} value="{$config.version}" {/notempty}>
<input type="text" name="version" autocomplete="off" placeholder="请输入版本号" lay-reqText="请输入版本号"
class="layui-input" {notempty name="$config.version" } value="{$config.version}" {/notempty}>
</td>
</tr>
<tr>
<td class="layui-td-gray-3">系统文本编辑器</td>
<td colspan="3">
{empty name="$config.editor"}
<input type="radio" name="editor" value="1" title="富文本编辑器(TinyMCE)" checked>
<input type="radio" name="editor" value="2" title="Markdown编辑器(Editor.md)">
{else/}
<input type="radio" name="editor" value="1" title="富文本编辑器(TinyMCE)" {eq name="$config.editor" value="1"
}checked{/eq}>
<input type="radio" name="editor" value="2" title="Markdown编辑器(Editor.md)" {eq name="$config.editor"
value="2" }checked{/eq}>
{/empty}
</td>
</tr>
<tr>
<td colspan="4">
<span style="margin-left:20px; color: red">注意:切换编辑器后,文章内容对应的文本内容可能需要重新编辑。</span>
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
@ -29,34 +50,23 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form,
layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form, tool = layui.tool;
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/home/conf/edit",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
})
}
tool.post("/admin/conf/edit", data.field, callback);
return false;
});
//监听返回
$('.body-content').on('click', '[lay-event="back"]', function () {
history.back(-1);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,43 +1,47 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">Token配置</h3>
<table class="layui-table">
<form class="layui-form p-4">
<h3 class="pb-3">TOKEN配置</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">Token签发组织</td>
<td class="layui-td-gray-2">Token签发组织</td>
<td>
<input type="hidden" value="{$id}" name="id">
<input type="text" name="iss" autocomplete="off" placeholder="请输入签发组织" lay-reqText="请输入签发组织" class="layui-input"{notempty name="$config.iss"} value="{$config.iss}" {/notempty}>
<input type="text" name="iss" autocomplete="off" placeholder="请输入签发组织" lay-reqText="请输入签发组织"
class="layui-input" {notempty name="$config.iss" } value="{$config.iss}" {/notempty}>
</td>
<td class="layui-td-gray2">Token签发作者
<td class="layui-td-gray-2">Token签发作者
</td>
<td>
<input type="text" name="aud" autocomplete="off" placeholder="请输入签发作者" lay-reqText="请输入签发作者" class="layui-input" {notempty name="$config.aud"} value="{$config.aud}" {/notempty}>
<input type="text" name="aud" autocomplete="off" placeholder="请输入签发作者" lay-reqText="请输入签发作者"
class="layui-input" {notempty name="$config.aud" } value="{$config.aud}" {/notempty}>
</td>
</tr>
<tr>
<td class="layui-td-gray2">Token Secrect</td>
<td class="layui-td-gray">Token Secrect</td>
<td>
<input type="text" name="secrect" autocomplete="off" placeholder="请输入secrect" lay-reqText="请输入secrect" class="layui-input"{notempty name="$config.secrect"} value="{$config.secrect}" {/notempty}>
<input type="text" name="secrect" autocomplete="off" placeholder="请输入secrect" lay-reqText="请输入secrect"
class="layui-input" {notempty name="$config.secrect" } value="{$config.secrect}" {/notempty}>
</td>
<td class="layui-td-gray2">Token过期时间
<td class="layui-td-gray">Token过期时间
</td>
<td>
<input type="text" name="exptime" autocomplete="off" placeholder="请输入过期时间" lay-reqText="请输入过期时间" class="layui-input" {notempty name="$config.exptime"} value="{$config.exptime}" {/notempty}>
<input type="text" name="exptime" autocomplete="off" placeholder="请输入过期时间" lay-reqText="请输入过期时间"
class="layui-input" {notempty name="$config.exptime" } value="{$config.exptime}" {/notempty}>
</td>
</tr>
</table>
<div style="padding:20px 0;">
<span class="layui-btn layui-btn-sm" onclick="testReg();">Api测试注册</span>
<span class="layui-btn layui-btn-sm" onclick="testLogin();">Api测试登录</span>
<span class="layui-btn layui-btn-sm" onclick="testToken();">Token测试</span>
<span class="layui-btn layui-btn-sm" onclick="testReg();">Api测试注册</span>
<span class="layui-btn layui-btn-sm" onclick="testLogin();">Api测试登录</span>
<span class="layui-btn layui-btn-sm" onclick="testToken();">Token测试</span>
</div>
<div style="padding:20px; background-color:#f2f2f2;word-wrap:break-word">
<div style="padding:12px 0;word-wrap:break-word">
测试结果:
<div id="res"></div>
</div>
<div style="padding: 20px 0">
<div class="p-y3">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
@ -48,36 +52,26 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form,
layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form, tool = layui.tool;
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/home/conf/edit",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
})
}
tool.post("/home/conf/edit", data.field, callback);
return false;
});
//监听返回
$('.body-content').on('click', '[lay-event="back"]', function () {
history.back(-1);
return false;
});
}
var token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhcGkuZ291Z3VjbXMuY29tIiwiYXVkIjoiZ291Z3VjbXMiLCJpYXQiOjE2MjczMTY1MTgsImV4cCI6MTYyNzMyMDExOCwidWlkIjoxfQ.3soLDbwrEqn4EZtpD4h05FmvmMtJEh1LtE1vZ_ANcnI';
function testToken(){
function testToken() {
$.ajax({
headers: {
Token: token
@ -86,15 +80,15 @@
type: "get",
success: function (res) {
$('#res').html(JSON.stringify(res));
if(res.code == 111){
if (res.code == 111) {
layer.msg(res.msg);
}
}
});
}
function testReg(){
var content='<form class="layui-form" style="width:400px"><div style="padding:10px 15px">\
function testReg() {
var content = '<form class="layui-form" style="width:400px"><div style="padding:10px 15px">\
<p style="padding:10px 0">用户名:</p>\
<p><input name="username" type="text" class="layui-input" value=""/></p>\
<p style="padding:10px 0">密 码:</p>\
@ -104,89 +98,88 @@
</div>\
</form>';
layer.open({
type:1,
title:'API测试用户注册',
area:['432px','360px'],
content:content,
type: 1,
title: 'API测试用户注册',
area: ['432px', '360px'],
content: content,
btnAlign: 'c',
btn: ['注册'],
yes: function(idx){
yes: function (idx) {
var username = $('[name="username"]').val();
var password = $('[name="password"]').val();
var newpassword = $('[name="newpassword"]').val();
if(username==''){
if (username == '') {
layer.msg('请填写用户名');
return;
}
if(password==''){
if (password == '') {
layer.msg('请填写密码');
return;
}
if(password != newpassword){
if (password != newpassword) {
layer.msg('两次密码填写不一致');
return;
}
$.ajax({
url: "/home/api/index/reg",
type:'post',
data:{username:username,pwd:password},
success:function(res){
type: 'post',
data: { username: username, pwd: password },
success: function (res) {
$('#res').html(JSON.stringify(res));
layer.msg(res.msg);
if(res.code==1){
if (res.code == 1) {
token = res.data.token;
layer.close(idx);
}
}
})
})
}
})
})
}
function testLogin(){
var content='<form class="layui-form" style="width:400px"><div style="padding:10px 15px">\
function testLogin() {
var content = '<form class="layui-form" style="width:400px"><div style="padding:10px 15px">\
<p style="padding:10px 0">用户名:</p>\
<p><input name="username" type="text" class="layui-input" value="hdm58"/></p>\
<p style="padding:10px 0">密 码:</p>\
<p><input name="password" type="password" class="layui-input" value="123456"/></p>\
</div>\
</form>';
layer.open({
type:1,
title:'API测试用户登录',
area:['432px','300px'],
content:content,
btnAlign: 'c',
btn: ['登录'],
yes: function(idx){
var username = $('[name="username"]').val();
var password = $('[name="password"]').val();
if(username==''){
layer.msg('请填写用户名');
return;
}
if(password==''){
layer.msg('请填写密码');
return;
}
$.ajax({
url: "/home/api/index/login",
type:'post',
data:{username:username,password:password},
success:function(res){
$('#res').html(JSON.stringify(res));
layer.msg(res.msg);
if(res.code==1){
token = res.data.token;
layer.close(idx);
}
}
})
layer.open({
type: 1,
title: 'API测试用户登录',
area: ['432px', '300px'],
content: content,
btnAlign: 'c',
btn: ['登录'],
yes: function (idx) {
var username = $('[name="username"]').val();
var password = $('[name="password"]').val();
if (username == '') {
layer.msg('请填写用户名');
return;
}
})
}
if (password == '') {
layer.msg('请填写密码');
return;
}
$.ajax({
url: "/home/api/index/login",
type: 'post',
data: { username: username, password: password },
success: function (res) {
$('#res').html(JSON.stringify(res));
layer.msg(res.msg);
if (res.code == 1) {
token = res.data.token;
layer.close(idx);
}
}
})
}
})
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,82 +1,99 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">系统配置</h3>
<table class="layui-table">
<form class="layui-form p-4">
<h3 class="pb-3">系统配置</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">系统名称<font>*</font>
<td class="layui-td-gray-2">系统名称<font>*</font>
</td>
<td>
<input type="hidden" name="id" value="{$id}">
<input type="text" name="admin_title" lay-verify="required" autocomplete="off" placeholder="请输入系统名称" lay-reqText="请输入系统名称" class="layui-input" {notempty name="$config.admin_title"} value="{$config.admin_title}" {/notempty}>
<input type="text" name="admin_title" lay-verify="required" autocomplete="off" placeholder="请输入系统名称"
lay-reqText="请输入系统名称" class="layui-input" {notempty name="$config.admin_title" }
value="{$config.admin_title}" {/notempty}>
</td>
<td class="layui-td-gray2">网站名称<font>*</font>
<td class="layui-td-gray">网站名称<font>*</font>
</td>
<td>
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入网站平台名称" lay-reqText="请输入网站名称" class="layui-input" {notempty name="$config.title"} value="{$config.title}" {/notempty}>
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入网站平台名称"
lay-reqText="请输入网站名称" class="layui-input" {notempty name="$config.title" } value="{$config.title}"
{/notempty}>
</td>
<td rowspan="3" class="layui-td-gray2">系统LOGO</td>
<td rowspan="3" class="layui-td-gray">系统LOGO</td>
<td rowspan="3" style="width: 240px;">
<div class="layui-upload" style="width: 240px;">
<div class="layui-upload-list" id="demo1" style="width: 100%; height:100px; overflow: hidden;">
<img src='{notempty name="$config.logo"}{$config.logo}{/notempty}' style="max-width: 100%; width: 100%;" />
<input type="hidden" name="logo" {notempty name="$config.logo"} value="{$config.logo}" {/notempty}>
<img src='{notempty name="$config.logo"}{$config.logo}{/notempty}'
style="max-width: 100%; width: 100%;" />
<input type="hidden" name="logo" {notempty name="$config.logo" } value="{$config.logo}"
{/notempty}>
</div>
<button type="button" class="layui-btn layui-btn-normal" style="width: 100%;"
id="test1">上传LOGO</button>
id="uploadBtn">上传LOGO</button>
</div>
</td>
</tr>
<tr>
<td class="layui-td-gray2">网站域名<font>*</font>
<td class="layui-td-gray">网站域名<font>*</font>
</td>
<td>
<input type="text" name="domain" lay-verify="required" autocomplete="off" placeholder="请输入网站域名" lay-reqText="请输入网站域名" class="layui-input" {notempty name="$config.domain"} value="{$config.domain}" {/notempty}>
<input type="text" name="domain" lay-verify="required" autocomplete="off" placeholder="请输入网站域名"
lay-reqText="请输入网站域名" class="layui-input" {notempty name="$config.domain" } value="{$config.domain}"
{/notempty}>
</td>
<td class="layui-td-gray2">ICP备案号</td>
<td class="layui-td-gray">ICP备案号</td>
<td>
<input type="text" name="icp" autocomplete="off" placeholder="请输入ICP备案号" class="layui-input" {notempty name="$config.icp"} value="{$config.icp}" {/notempty}>
<input type="text" name="icp" autocomplete="off" placeholder="请输入ICP备案号" class="layui-input" {notempty
name="$config.icp" } value="{$config.icp}" {/notempty}>
</td>
</tr>
<tr>
<td class="layui-td-gray2">SEO关键词<font>*</font>
<td class="layui-td-gray">SEO关键词<font>*</font>
</td>
<td>
<input type="text" name="keywords" lay-verify="required" autocomplete="off" placeholder="多个关键词用“,”隔开" lay-reqText="请输入SEO关键字" class="layui-input" {notempty name="$config.keywords"} value="{$config.keywords}" {/notempty}>
<input type="text" name="keywords" lay-verify="required" autocomplete="off" placeholder="多个关键词用“,”隔开"
lay-reqText="请输入SEO关键字" class="layui-input" {notempty name="$config.keywords" }
value="{$config.keywords}" {/notempty}>
</td>
<td class="layui-td-gray2">公安备案号</td>
<td class="layui-td-gray-2">公安备案号</td>
<td>
<input type="text" name="beian" autocomplete="off" placeholder="请输入公安备案号" class="layui-input" {notempty name="$config.beian"} value="{$config.beian}" {/notempty}>
<input type="text" name="beian" autocomplete="off" placeholder="请输入公安备案号" class="layui-input" {notempty
name="$config.beian" } value="{$config.beian}" {/notempty}>
</td>
</tr>
<tr>
<td class="layui-td-gray2">SEO描述<font>*</font>
<td class="layui-td-gray">SEO描述<font>*</font>
</td>
<td colspan="5">
<textarea name="desc" lay-verify="required" placeholder="请输入网站描述" lay-reqText="请输入网站描述" class="layui-textarea">{notempty name="$config.desc"}{$config.desc} {/notempty}</textarea>
<textarea name="desc" lay-verify="required" placeholder="请输入网站描述" lay-reqText="请输入网站描述"
class="layui-textarea">{notempty name="$config.desc"}{$config.desc} {/notempty}</textarea>
</td>
</tr>
<tr>
<td class="layui-td-gray2">统计代码</td>
<td class="layui-td-gray">统计代码</td>
<td colspan="5">
<textarea name="code" placeholder="请输入完整的统计代码" class="layui-textarea">{notempty name="$config.code"} value={$config.code}{/notempty}</textarea>
<textarea name="code" placeholder="请输入完整的统计代码"
class="layui-textarea">{notempty name="$config.code"} value={$config.code}{/notempty}</textarea>
</td>
</tr>
<tr>
<td class="layui-td-gray2">版权信息</td>
<td class="layui-td-gray">版权信息</td>
<td colspan="3">
<input type="text" name="copyright" autocomplete="off" placeholder="请输入版权信息" lay-reqText="请输入版权信息" class="layui-input"{notempty name="$config.copyright"} value="{$config.copyright}" {/notempty}>
<input type="text" name="copyright" autocomplete="off" placeholder="请输入版权信息" lay-reqText="请输入版权信息"
class="layui-input" {notempty name="$config.copyright" } value="{$config.copyright}" {/notempty}>
</td>
<td class="layui-td-gray2">代码版本号<font>*</font>
<td class="layui-td-gray-2">代码版本号<font>*</font>
</td>
<td>
<input type="text" lay-verify="required" name="version" autocomplete="off" placeholder="请输入版本号" lay-reqText="请输入版本号" class="layui-input" {notempty name="$config.version"} value="{$config.version}" {/notempty}>
<input type="text" lay-verify="required" name="version" autocomplete="off" placeholder="请输入版本号"
lay-reqText="请输入版本号" class="layui-input" {notempty name="$config.version" }
value="{$config.version}" {/notempty}>
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
@ -87,47 +104,38 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form,
layer = layui.layer,
upload = layui.upload;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form, tool = layui.tool, upload = layui.upload;
//监听提交
form.on('submit(webform)', function (data) {
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
}
tool.post("/home/conf/edit", data.field, callback);
return false;
});
//logo上传
var uploadInst = upload.render({
elem: '#test1',
elem: '#uploadBtn',
url: "/api/index/upload",
done: function (res) {
//如果上传失败
if (res.code == 1) {
return layer.msg('上传失败');
layer.msg('上传失败');
} else {
layer.msg('上传成功');
$('#demo1 input').attr('value', res.data.filepath);
$('#demo1 img').attr('src', res.data.filepath);
}
//上传成功
layer.msg('上传成功');
$('#demo1 input').attr('value', res.data.filepath);
$('#demo1 img').attr('src', res.data.filepath);
}
});
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/home/conf/edit",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
}
})
return false;
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,50 +1,55 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<table cellspacing="0" cellpadding="0" border="0" class="layui-table">
<tr style="background-color: #f5f5f5; text-align: center;">
<div class="p-3">
<div class="gg-form-bar border-t border-x" style="background-color:#FAFAFA">
<h3>数据还原</h3>
</div>
<table cellspacing="0" cellpadding="0" border="0" class="layui-table layui-table-form">
<tr>
<th style=" text-align: center; font-weight: 800;"><span>文件名称</span></th>
<th style=" text-align: center; font-weight: 800;"><span>文件格式</span></th>
<th style=" text-align: center; font-weight: 800;"><span>分隔符</span></th>
<th style=" text-align: center; font-weight: 800;"><span>文件总大小</span></th>
<th style=" text-align: center; font-weight: 800;"><span>分卷总数</span></th>
<th style=" text-align: center; font-weight: 800; width:222px"><span>操作</span></th>
</tr>
</tr>
{empty name="list"}
<tr>
<td colspan="6" align="center">暂无备份数据</td>
</tr>
{/empty}
{volist name="list" id="vo" key="k"}
<tr style="background-color: #fafafa;">
<td><strong>备份时间:{$vo.time}</strong>{if $vo.timespan == $lock_time}<span style="color:red; margin-left:20px;">该备份不是完整备份,请删除重新备份</span>{/if}</td>
<td align="center"><span>.sql</span></td>
<td align="center"><span>{$vo.data.compress}</span></td>
<td align="center"><span>{:format_bytes($vo.data.size)}</span></td>
<td align="center"><span>{$vo.data.part}</span></td>
<td align="center">
<div class="layui-btn-group" data-time='{$vo.timespan}'>
{if $vo.timespan == $lock_time}
<a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="reset">清除不完整的备份</a>
{else/}
<a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="import">数据还原</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">备份删除</a>
{/if}
</div>
</td>
</tr>
{for start="0" end="$vo.data.part" step="1"}
<tr>
<td colspan="5">
{:date("Ymd",$vo.timespan)}{$vo.data.compress}{:date("His",$vo.timespan)}{$vo.data.compress}{$i+1}.sql
</td>
<td align="center">
<a class="layui-btn layui-btn-xs" href='/home/database/downfile?time={$vo.data.time}&part={$i+1}'>下载备份(分卷{$i+1})</a>
</td>
</tr>
{/for}
{/volist}
{volist name="list" id="vo" key="k"}
<tr style="background-color: #fafafa;">
<td><strong>备份时间:{$vo.time}</strong>{if $vo.timespan == $lock_time}<span
style="color:red; margin-left:20px;">该备份不是完整备份,请删除重新备份</span>{/if}</td>
<td align="center"><span>.sql</span></td>
<td align="center"><span>{$vo.data.compress}</span></td>
<td align="center"><span>{:format_bytes($vo.data.size)}</span></td>
<td align="center"><span>{$vo.data.part}</span></td>
<td align="center">
<div class="layui-btn-group" data-time='{$vo.timespan}'>
{if $vo.timespan == $lock_time}
<a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="reset">清除不完整的备份</a>
{else/}
<a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="import">数据还原</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">备份删除</a>
{/if}
</div>
</td>
</tr>
{for start="0" end="$vo.data.part" step="1"}
<tr>
<td colspan="5">
{:date("Ymd",$vo.timespan)}{$vo.data.compress}{:date("His",$vo.timespan)}{$vo.data.compress}{$i+1}.sql
</td>
<td align="center">
<a class="layui-btn layui-btn-xs"
href='/home/database/downfile?time={$vo.data.time}&part={$i+1}'>下载备份(分卷{$i+1})</a>
</td>
</tr>
{/for}
{/volist}
</table>
</div>
@ -54,97 +59,96 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
function importData(data){
if(data.code==0){
function gouguInit() {
function importData(data) {
if (data.code == 0) {
console.log(data.msg);
layer.closeAll();
layer.msg(data.msg,{time: 200000});
if($.isPlainObject(data.data)){
layer.msg(data.msg, { time: 200000 });
if ($.isPlainObject(data.data)) {
$.ajax({
url: "/home/database/import",
type:'get',
data:{"part" : data.data.part, "start" : data.data.start,time:data.data.time},
success: function (res) {
importData(res);
}
})
}else {
layer.msg(data.msg);
window.onbeforeunload = function(){ return null; }
}
} else {
layer.msg(data.msg);
}
}
//监听行工具事件
$('[lay-event="import"]').on('click',function(){
var time=$(this).parent().data('time');
layer.confirm('确认要还原该备份吗?', {
icon: 3,
title: '提示'
}, function (index) {
layer.msg("数据还原中...",{time: 200000});
$.ajax({
url: "/home/database/import?time="+time,
type:'get',
type: 'get',
data: { "part": data.data.part, "start": data.data.start, time: data.data.time },
success: function (res) {
importData(res);
}
})
window.onbeforeunload = function(){ return "正在还原数据库,请不要关闭!" }
} else {
layer.msg(data.msg);
window.onbeforeunload = function () { return null; }
}
} else {
layer.msg(data.msg);
}
}
//监听行工具事件
$('[lay-event="import"]').on('click', function () {
var time = $(this).parent().data('time');
layer.confirm('确认要还原该备份吗?', {
icon: 3,
title: '提示'
}, function (index) {
layer.msg("数据还原中...", { time: 200000 });
$.ajax({
url: "/home/database/import?time=" + time,
type: 'post',
success: function (res) {
importData(res);
}
})
window.onbeforeunload = function () { return "正在还原数据库,请不要关闭!" }
layer.close(index);
});
return false;
})
$('[lay-event="del"]').on('click',function(){
var time=$(this).parent().data('time');
$('[lay-event="del"]').on('click', function () {
var time = $(this).parent().data('time');
layer.confirm('确认要删除该备份吗?', {
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/del",
data: {'time':time},
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
setTimeout(function(){
location.reload();
},2000)
}
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/del",
data: { 'time': time },
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
setTimeout(function () {
location.reload();
}, 2000)
}
})
layer.close(index);
});
}
})
layer.close(index);
});
return false;
})
$('[lay-event="reset"]').on('click',function(){
var time=$(this).parent().data('time');
$('[lay-event="reset"]').on('click', function () {
var time = $(this).parent().data('time');
layer.confirm('确认要清除该备份吗?', {
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/del",
data: {'time':time,'lock':1},
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
setTimeout(function(){
location.reload();
},2000)
}
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/del",
data: { 'time': time, 'lock': 1 },
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
setTimeout(function () {
location.reload();
}, 2000)
}
})
layer.close(index);
});
}
})
layer.close(index);
});
return false;
})
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<table class="layui-hide" id="backup" lay-filter="test"></table>
<div class="p-3">
<table class="layui-hide" id="backup" lay-filter="backup"></table>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-group">
@ -12,16 +12,11 @@
</script>
{/block}
<!-- /主体 -->
<script>
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var table = layui.table,
form = layui.form;
function gouguInit() {
var table = layui.table, form = layui.form;
var tableIns = table.render({
elem: '#backup',
title: '数据备份',
@ -30,45 +25,45 @@
page: false,
cols: [
[ //表头
{type: 'checkbox'},
{ type: 'checkbox' },
{
field: 'name',
title: '数据表',
width: 220
width: 200
},
{
field: 'status',
title: '状态',
width: 120,
templet:function(d){
return '<span id="table_'+d.name+'">-</span>';
width: 100,
templet: function (d) {
return '<span id="table_' + d.name + '">-</span>';
}
},
{
field: 'engine',
title: '存储引擎',
align: 'center',
width: 90
width: 80
}, {
field: 'row_format',
title: '行格式',
align: 'center',
width: 90
width: 80
}, {
field: 'rows',
title: '行数',
align: 'center',
width: 100,
width: 60,
}, {
field: 'data_size',
title: '字节数',
align: 'center',
width: 120
width: 80
}, {
field: 'data_length',
title: '数据大小',
align: 'center',
width: 120
width: 80
}, {
field: 'comment',
title: '数据表注释'
@ -80,61 +75,60 @@
}
]
],
done:function(res, curr, count){
done: function (res, curr, count) {
$('#dataTips').html(res.msg);
}
});
      //递归备份表
       function backup(tab,status,table){
//递归备份表
function backup(tab, status, table) {
layer.closeAll();
layer.msg("备份中...,请勿关闭本页面",{time: 200000});
        $.get("/home/database/backup", tab, function(data){
           // console.log(data)
if(data.code==0){
             showmsg(data.data.tab.table, data.msg);
              if(data.data.tab.start=='ok'){
layer.msg("备份中...,请勿关闭本页面", { time: 200000 });
$.get("/home/database/backup", tab, function (data) {
if (data.code == 0) {
showmsg(data.data.tab.table, data.msg);
if (data.data.tab.start == 'ok') {
layer.msg('备份完成');
                    window.onbeforeunload = function(){ return null }
                    return;
                } 
                backup(data.data.tab, tab.id != data.data.tab.id);
            } else {
window.onbeforeunload = function () { return null }
return;
}
backup(data.data.tab, tab.id != data.data.tab.id);
} else {
layer.msg('立即备份');
            }
        }, "json"); 
       }
}
}, "json");
}
    //修改备份状态
    function showmsg(table, msg){
//修改备份状态
function showmsg(table, msg) {
console.log(table);
     $("#table_"+table).addClass('span-color-2').html(msg);
    }
$("#table_" + table).addClass('span-color-2').html(msg);
}
//监听行工具事件
table.on('toolbar(test)', function (obj) {
table.on('toolbar(backup)', function (obj) {
var checkData = table.checkStatus(obj.config.id).data;
var len = checkData.length;
var tables=[];
if(len==0){
var tables = [];
if (len == 0) {
layer.msg('请先选择表');
return false;
}
for(var i=0;i<len;i++){
tables.push(checkData[i].name);
for (var i = 0; i < len; i++) {
tables.push(checkData[i].name);
}
if (obj.event === 'backup') {
layer.confirm('确认要备份选中的'+len+'个数据表吗?', {
layer.confirm('确认要备份选中的' + len + '个数据表吗?', {
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/backup",
type:'post',
data: {'tables':tables},
type: 'post',
data: { 'tables': tables },
success: function (res) {
if (res.code == 0) {
layer.msg( "开始备份,请不要关闭本页面!");
                window.onbeforeunload = function(){ return "正在备份数据库,请不要关闭!" }
layer.msg("开始备份,请不要关闭本页面!");
window.onbeforeunload = function () { return "正在备份数据库,请不要关闭!" }
backup(res.data.tab);
}
if (res.code == 2) {
@ -144,53 +138,55 @@
}, function (index) {
$.ajax({
url: "/home/database/del",
data: {'lock':1},
data: { 'lock': 1 },
success: function (res) {
layer.msg(res.msg);
}
})
})
})
}
else{
else {
layer.msg(res.msg);
}
}
})
layer.close(index);
});
}else if (obj.event === 'optimize') {
layer.confirm('确认要优化选中的'+len+'个数据表吗?', {
} else if (obj.event === 'optimize') {
layer.confirm('确认要优化选中的' + len + '个数据表吗?', {
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/optimize",
data: {'tables':tables},
type: 'post',
data: { 'tables': tables },
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
setTimeout(function(){
setTimeout(function () {
location.reload();
},2000)
}, 2000)
}
}
})
layer.close(index);
});
}else if (obj.event === 'repair') {
layer.confirm('确认要修复选中的'+len+'个数据表吗?', {
} else if (obj.event === 'repair') {
layer.confirm('确认要修复选中的' + len + '个数据表吗?', {
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/home/database/repair",
data: {'tables':tables},
type: 'post',
data: { 'tables': tables },
success: function (res) {
layer.msg(res.msg);
if (res.code == 0) {
setTimeout(function(){
setTimeout(function () {
location.reload();
},2000)
}, 2000)
}
}
})
@ -200,6 +196,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->
<!-- /脚本 -->

View File

@ -1,6 +1,5 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/formSelects/formSelects-v4.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}
@ -12,8 +11,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">审批流程</h3>
<form class="layui-form p-4">
<h3 class="pb-3">审批流程</h3>
{eq name="$id" value="0"}
<table class="layui-table">
<tr>
@ -55,7 +54,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray">审批流类型<font>*</font></td>
<td class="layui-td-gray-2">审批流类型<font>*</font></td>
<td colspan="5">
<input type="radio" name="check_type" lay-filter="checktype" value="1" title="固定审批流" checked>
<input type="radio" name="check_type" lay-filter="checktype" value="2" title="授权审批人">
@ -141,7 +140,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray">审批流类型<font>*</font></td>
<td class="layui-td-gray-2">审批流类型<font>*</font></td>
<td colspan="5">
<input type="radio" name="check_type" lay-filter="checktype" value="1" title="固定审批流" {eq name="$detail.check_type" value="1"}checked{/eq}>
<input type="radio" name="check_type" lay-filter="checktype" value="2" title="授权审批人" {eq name="$detail.check_type" value="2"}checked{/eq}>
@ -189,7 +188,7 @@
</tr>
</table>
{/eq}
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$id}">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -201,30 +200,25 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,formSelects = layui.formSelects
,layer = layui.layer;
const moduleInit = ['tool','formSelects'];
function gouguInit() {
var form = layui.form,tool=layui.tool,formSelects = layui.formSelects;
form.on('select(type)', function(data){
$.ajax({
url: "/api/index/get_flow_cate",
type:'post',
data:{type:data.value},
success: function (e) {
if (e.code == 0) {
if(e.data.length>0){
let ops='<option value="">--请选择--</option>';
for(var i=0;i<e.data.length;i++){
ops+='<option value="'+e.data[i].id+'">'+e.data[i].title+'</option>';
}
$('[name="flow_cate"]').html(ops);
form.render();
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
if(e.data.length>0){
let ops='<option value="">--请选择--</option>';
for(var i=0;i<e.data.length;i++){
ops+='<option value="'+e.data[i].id+'">'+e.data[i].title+'</option>';
}
}
$('[name="flow_cate"]').html(ops);
form.render();
}
}
})
}
tool.get("/api/index/get_flow_cate", {type:data.value}, callback);
})
var selcted = $('#department_ids').attr('xm-selected');
@ -234,22 +228,16 @@
});
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/home/flow/add",
type:'post',
data:data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
setTimeout(function(){
parent.layui.rightpage.close();
},1000);
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.layui.pageTable.reload();
setTimeout(function () {
parent.layui.tool.close();
}, 1000);
}
})
}
tool.post("/home/flow/add", data.field, callback);
return false;
});
@ -257,7 +245,7 @@
var employee=[];
$.ajax({
url: "/api/index/get_employee_select",
type:'post',
type:'get',
success: function (e) {
if (e.code == 0) {
employee=e.data;
@ -331,10 +319,8 @@
$(this).html('第'+(index+2)+'级');
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
@ -15,13 +15,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table=layui.table,
rightpage=layui.rightpage,
layer=layui.layer;
tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'审批流程列表'
@ -83,54 +80,39 @@
table.on('tool(test)',function (obj) {
if(obj.event === 'edit'){
rightpage.open('/home/flow/add?id='+obj.data.id,'900px');
tool.side('/home/flow/add?id='+obj.data.id);
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该模块吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/flow/check",
type: 'post',
data: {
id: obj.data.id,
status: 0
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
layer.close(index);
}
tool.post("/home/flow/check", { id: obj.data.id,status: 0 }, callback);
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该模块吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/flow/check",
type: 'post',
data: {
id: obj.data.id,
status: 1
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layui.pageTable.reload();
}
})
layer.close(index);
}
tool.post("/home/flow/check", { id: obj.data.id,status: 1 }, callback);
layer.close(index);
});
}
});
$('.body-table').on('click','.addNew',function(){
rightpage.open('/home/flow/add','900px');
$('body').on('click','.addNew',function(){
tool.side("/home/flow/add");
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,59 +1,89 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/font/extend/iconfont.css?v={:get_system_config('web','version')}">
<link rel="stylesheet" href="{__CSS__}/gougucms.css?v={:get_system_config('web','version')}">
<link rel="stylesheet" href="{__GOUGU__}/gougu/css/layout.css" media="all">
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-layout-body">
<div class="layui-layout layui-layout-admin">
<div class="layui-header">
<div class="layui-logo" ittab-home><img src="{__IMG__}/syslogo.png" width="166" alt="{:get_system_config('web','admin_title')}" /></div>
<ul class="layui-layout-right">
<li class="layui-nav-item" lay-unselect>
<a href="javascript:;" ittab-refresh class="refreshThis" id="ittab-refresh" title="刷新当前页">
<i class="layui-icon layui-icon-refresh"></i>
</a>
</li>
<li class="layui-nav-item" lay-unselect>
<a href="javascript:;" ittab-notice class="noticeThis menu-active" data-src="/message/index/inbox" data-id="78" data-title="收件箱" title="消息通知">
<i class="layui-icon layui-icon-notice"></i>
</a>
<div id="msgNum" class="msg-num"><a data-title="收件箱" class="menu-active" data-src="/message/index/inbox" data-id="78" title="未读消息">0</a></div>
</li>
<li class="layui-nav-item" lay-unselect>
<a href="javascript:;" ittab-logout title="{:get_login_admin('nickname')}-点击退出登录">
<img src="{:get_login_admin('thumb')}" class="layui-nav-img" onerror="javascript:this.src='{__IMG__}/nonepic360x360.jpg';this.onerror=null;">
</a>
</li>
</ul>
</div>
<div id="GouguApp">
<div class="layui-layout gg-layout">
<div class="layui-header">
<!-- 头部区域 -->
<div class="layui-layout-left">
<span class="gg-head-item">
<a href="javascript:;" gg-event="shrink" title="侧边伸缩"><i class="layui-icon layui-icon-shrink-right"></i></a>
</span>
<span class="gg-head-item gg-head-cache">
<a href="javascript:;" gg-event="cache" title="清空缓存"><i class="layui-icon layui-icon-fonts-clear"></i></a>
</span>
<span class="gg-head-item gg-head-home">
<a href="https://www.gougucms.com/home/pages/detail/s/gouguoa.html" target="_blank" title="前台首页"><i class="layui-icon layui-icon-website"></i></a>
</span>
</div>
<div class="layui-side menulist-bg-gray">
<div class="menulist">
<div class="menulist-top">
<a href="/" title="返回首页" style="background-color: #E94335"><i class="layui-icon layui-icon-home"></i></a><a href="javascript:;" title="修改个人信息" style="background-color:#fbbc05" data-title="修改个人信息" data-id="10000" data-src="/api/index/edit_personal" class="menu-active"><i class="layui-icon layui-icon-username"></i></a><a href="javascript:;" title="修改密码" data-id="100001" style="background-color:#4285f4" data-title="修改密码" data-src="/api/index/edit_password" class="menu-active"><i class="layui-icon layui-icon-password"></i></a><a href="javascript:;" ittab-del-cache id="ittab-del-cache" style="margin-top:2px;" title="清空缓存" style="background-color:#12bb37"><i class="layui-icon layui-icon-fonts-clear"></i></a>
</div>
<ul class="layui-nav layui-nav-tree layui-inline" lay-shrink="all">
<div class="layui-layout-right">
<span class="gg-head-item gg-head-refresh">
<a href="javascript:;" class="refreshThis" gg-event="refresh" title="刷新">
<i class="layui-icon layui-icon-refresh-3"></i>
</a>
</span>
<span class="gg-head-item gg-head-screen">
<a href="javascript:;" gg-event="screen" data-screen="full">
<i class="fullScreen layui-icon layui-icon-screen-full"></i>
</a>
</span>
<span class="gg-head-item gg-head-message">
<a href="javascript:;" data-href="/message/index/inbox" data-id="78" data-title="消息中心" class="side-menu-item" title="消息中心">
<i class="layui-icon layui-icon-notice"></i>
<!-- 如果有新消息,则显示 -->
<div class="gg-message-num" id="msgNum" style="display: none;"><span>0</span></div>
</a>
</span>
<span class="gg-head-item gg-head-avatar">
<ul class="layui-nav">
<li class="layui-nav-item">
<a href="javascript:;">
<img src="{:get_login_admin('thumb')}" onerror="javascript:this.src='{__IMG__}/nonepic360x360.jpg';this.onerror=null;">
<cite>{:get_login_admin('nickname')}</cite>
</a>
<dl class="layui-nav-child" style="text-align: center; cursor: pointer;">
<dd><a data-href="/api/index/edit_personal" data-id="0101" data-title="基本资料" class="side-menu-item">基本资料</a></dd>
<dd><a data-href="/api/index/edit_password" data-id="0102" data-title="修改密码" class="side-menu-item">修改密码</a></dd>
<hr>
<dd gg-event="logout"><a>退出</a></dd>
</dl>
</li>
</ul>
</span>
</div>
</div>
<!-- 侧边菜单 -->
<div class="layui-side layui-side-menu">
<div class="layui-side-scroll">
<div class="layui-logo" gg-event="closeAllTabs">
<img src="{__IMG__}/syslogo.png" style="height: 40px;" class="syslogo">
<img src="{__IMG__}/syslogo_small.png" style="height: 40px;" class="logo">
</div>
<ul id="menuList" class="layui-nav layui-nav-tree layui-inline" lay-shrink="all">
{foreach name="menu" item="a"}
<li class="layui-nav-item">
<a href="javascript:;" class="menu-active" data-id="{$a.id}" data-title="{$a.title}" data-src="/{$a.src}"><i class="iconfont {$a.icon}"></i> {$a.title}</a>
<li class="layui-nav-item menu-li">
<a href="javascript:;" lay-tips="{$a.title}" lay-direction="2" data-id="{$a.id}" data-title="{$a.title}" data-href="/{$a.src}"><i class="iconfont {$a.icon}"></i> {$a.title}</a>
{notempty name="$a.list"}
<dl class="layui-nav-child">
{foreach name="$a.list" item="b"}
<dd>
<a href="javascript:;" class="menu-active menu-b" data-id="{$b.id}" data-title="{$b.title}" data-src="/{$b.src}">{$b.title}</a>
<a href="javascript:;" class="side-menu-item" data-id="{$b.id}" data-title="{$b.title}" data-href="/{$b.src}">{$b.title}</a>
{notempty name="$b.list"}
<dl class="layui-nav-child">
{foreach name="$b.list" item="c"}
<dd>
<a href="javascript:;" class="menu-active menu-c" data-id="{$c.id}" data-title="{$c.title}" data-src="/{$c.src}">{$c.title}</a>
<a href="javascript:;" class="side-menu-item" data-id="{$c.id}" data-title="{$c.title}" data-href="/{$c.src}">{$c.title}</a>
{notempty name="$c.list"}
<dl class="layui-nav-child">
{foreach name="$c.list" item="d"}
<dd><a href="javascript:;" class="menu-active menu-d" data-id="{$d.id}" data-title="{$d.title}" data-src="/{$d.src}">{$d.title}</a></dd>
<dd><a href="javascript:;" class="side-menu-item" data-id="{$d.id}" data-title="{$d.title}" data-href="/{$d.src}">{$d.title}</a></dd>
{/foreach}
</dl>
{/notempty}
@ -67,25 +97,43 @@
{/notempty}
</li>
{/foreach}
</ul>
</div>
</div>
</ul>
</div>
</div>
<div class="layui-body">
<div class="layui-tab layui-tab-brief gougu-admin-tab" lay-filter="gougu-admin-tab" lay-unauto="" lay-allowClose="true" style="height: 100%;">
<ul class="layui-tab-title">
<li class="layui-this ittab-tab-home" lay-id="0">首页</li>
</ul>
<div class="layui-icon layui-icon-prev" id="left_button" title="向左滚动菜单"></div>
<div class="layui-icon layui-icon-next" id="right_button" title="向右滚动菜单"></div>
<div class="layui-tab-content" style="height: 100%;">
<div class="layui-tab-item layui-show">
<iframe id="0" data-frameid="0" name="myiframe" src="/home/index/main" frameborder="0" align="left" width="100%" height="100%" scrolling="yes"></iframe>
</div>
</div>
</div>
</div>
</div>
<!-- 页面标签 -->
<div id="pageTabs" class="page-tabs">
<div class="layui-icon gg-tabs-control layui-icon-prev" gg-event="tabRollLeft"></div>
<div class="layui-icon gg-tabs-control layui-icon-next" gg-event="tabRollRight"></div>
<div class="layui-icon gg-tabs-control layui-icon-down">
<ul class="layui-nav gg-tabs-select">
<li class="layui-nav-item">
<a href="javascript:;"></a>
<dl class="layui-nav-child layui-anim-fadein">
<dd gg-event="closeThisTabs"><a href="javascript:;">关闭当前</a></dd>
<dd gg-event="closeOtherTabs"><a href="javascript:;">关闭其它</a></dd>
<dd gg-event="closeAllTabs"><a href="javascript:;">关闭全部</a></dd>
</dl>
</li>
</ul>
</div>
<div class="layui-tab gg-admin-tab" lay-unauto lay-allowClose="true" lay-filter="gg-admin-tab">
<ul class="layui-tab-title">
<li lay-id="0" lay-attr="view/home/index.html" class="layui-this"><i class="layui-icon layui-icon-home"></i></li>
</ul>
</div>
</div>
<!-- 主体内容 -->
<div class="layui-body" id="GouguAppBody">
<div class="gg-tab-page layui-show" id="tabItem0">
<iframe id="0" data-frameid="0" name="myiframe" src="{:url('/home/index/main')}" frameborder="0" align="left" width="100%" height="100%" scrolling="yes"></iframe>
</div>
</div>
<!-- 辅助元素,用于移动设备下遮罩 -->
<div class="gg-body-shade" gg-event="shade"></div>
</div>
</div>
</div>
<!-- /主体 -->
{/block}
@ -93,9 +141,9 @@
{block name="script"}
<script>
var msgStatus=0,isClose=0,msgNum = 0;
function init(layui) {
var layer = layui.layer;
$("[ittab-logout]").on("click", function () {
const moduleInit = ['tool','admin'];
function gouguInit() {
$('#GouguApp').on("click",'[gg-event="logout"]',function () {
layer.confirm('确认注销登录吗?', { icon: 7, title: '警告' }, function (index) {
//注销
$.ajax({
@ -104,7 +152,7 @@
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
location.href = "/home/login/index"
location.href = "{:url('home/login/index')}"
}, 1000)
}
}
@ -112,57 +160,57 @@
layer.close(index);
});
});
};
//轮循获取消息
var getStatus = setInterval(function () {
$.ajax({
url: "/home/index/index",
type:'post',
success:function(e){
if(e.code==0 && e.data!=''){
if(e.data.msg_num>0){
$('#msgNum').show().find('a').html(e.data.msg_num);
}
else{
$('#msgNum').hide().find('a').html(0);
}
if(isClose==0){
var html = '<ul id="messageul" style="line-height:24px;">';
$.each(e.data, function(key, value) {
if(key!='msg_num'){
html += '<li style="cursor:pointer;">'+value+'</li>';
}
});
html +='</ul>';
if(msgStatus==1){
$('#msgBox').html(html);
}else{
layer.open({
type: 1
,title:'消息提醒'
,offset: 'rb'
,area:['240px','168px']
,content: '<div id="msgBox" style="padding:10px 15px;">'+html+'</div>'
,btnAlign: 'c' //按钮居中
,shade: 0 //不显示遮罩
,success:function(){
msgStatus=1;
}
,cancel:function(){
msgStatus=0;
isClose=1;
}
});
//轮循获取消息
var getStatus = setInterval(function () {
$.ajax({
url: "/home/index/index",
type:'post',
success:function(e){
if(e.code==0 && e.data!=''){
if(e.data.msg_num>0){
$('#msgNum').show().find('span').html(e.data.msg_num);
}
else{
$('#msgNum').hide().find('span').html(0);
}
if(isClose==0){
var html = '<ul id="messageul" style="line-height:24px;">';
$.each(e.data, function(key, value) {
if(key!='msg_num'){
html += '<li style="cursor:pointer;">'+value+'</li>';
}
});
html +='</ul>';
if(msgStatus==1){
$('#msgBox').html(html);
}else{
layer.open({
type: 1
,title:'消息提醒'
,offset: 'rb'
,area:['240px','168px']
,content: '<div id="msgBox" style="padding:10px 15px;">'+html+'</div>'
,btnAlign: 'c' //按钮居中
,shade: 0 //不显示遮罩
,success:function(){
msgStatus=1;
}
,cancel:function(){
msgStatus=0;
isClose=1;
}
});
}
}
}else{
msgStatus=0;
layer.closeAll();
}
}else{
msgStatus=0;
layer.closeAll();
}
}
})
}, 10000);
})
}, 10000);
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['gougucms']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -2,65 +2,24 @@
{block name="style"}
<style type="text/css">
.table-title {
font-size: 18px;
font-weight: 800;
padding: 12px 12px 0;
}
.panel-num table {
width: 100%;
}
.panel-num td {
text-align: center;
padding: 20px 0;
width: 20%;
border-left: 1px solid #eee
}
.panel-num .num-title {
padding-bottom: 10px;
color: #999;
}
.panel-num .num-num {
font-size: 28px;
font-weight: 300;
color: #009688;
}
.layui-timeline-title {
padding-bottom: 0;
}
.layui-timeline-item {
padding-bottom: 1px;
}
.layui-timeline-title span {
color: #999
}
.layui-timeline{
padding-bottom: 30px;
}
.panel-more {
width: 100%;
height: 48px;
line-height: 48px;
text-align: center;
position: absolute;
bottom: 0;
left: 0;
}
.panel-more a {
color: #0088FF
}
.info-td{width:90px; text-align:right; background-color:#f8f8f8; color:#999; padding:5px 3px;}
.panel-num table {width: 100%;}
.panel-num td {text-align: center; padding: 16px 0; width: 20%;border-left: 1px solid #f1f1f1; position: relative;}
.panel-num td:nth-child(1) { border-left: none}
.panel-num .num-title { padding-bottom: 10px; color: #999;}
.panel-num .blue {font-size: 20px; font-weight: 300;}
.panel-num td .badge {position: absolute;top: 0; right: 0;}
.panel-num td .badge span { padding: 2px 4px; font-size: 12px; border-radius: 0 0 0 4px;}
.dashboard-total td {border-top: 1px solid #f1f1f1}
.dashboard-logs .layui-timeline-item {padding-bottom: 1px;}
.info-td { width: 90px; text-align: right;background-color: #fafafa; color: #999; padding: 5px 3px;}
.info-td {width: 90px; text-align: right;background-color: #fafafa; color: #999; padding: 5px 3px;}
.layui-card-body .layui-timeline-title {padding-bottom: 0;font-size: 14px;}
.layui-card-body .layui-timeline-item {padding-bottom: 5px;}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<div class="p-3">
<div class="layui-row layui-col-space12">
<div class="layui-col-md8">
<div class="layui-row layui-col-space12">
@ -70,36 +29,36 @@
<tr>
<td>
<div class="num-title">员工</div>
<div class="num-num">{$adminCount}</div>
<div class="blue">{$adminCount}</div>
</td>
<td>
<div class="num-title">知识</div>
<div class="num-num">{$articleCount}</div>
<div class="blue">{$articleCount}</div>
</td>
<td>
<div class="num-title">审批</div>
<div class="num-num">{$approveCount}</div>
<div class="blue">{$approveCount}</div>
</td>
<td>
<div class="num-title">报销</div>
<div class="num-num">{$expenseCount}</div>
<div class="blue">{$expenseCount}</div>
</td>
<td>
<div class="num-title">发票</div>
<div class="num-num">{$invoiceCount}</div>
<div class="blue">{$invoiceCount}</div>
</td>
</tr>
</table>
</div>
<div class="layui-card">
<div class="table-title">企业公告</div>
<div style="padding: 15px;">
<div class="layui-card-title">企业公告</div>
<div style="padding: 12px;">
<table id="Note" lay-filter="Note" class="layui-hide" style="margin-top:0"></table>
</div>
</div>
<div class="layui-card">
<div class="table-title">知识列表</div>
<div style="padding: 15px;">
<div class="layui-card-title">知识列表</div>
<div style="padding: 12px;">
<table id="Article" lay-filter="Article" class="layui-hide" style="margin-top:0"></table>
</div>
</div>
@ -114,7 +73,7 @@
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="table-title">系统信息</div>
<div class="layui-card-title">系统信息</div>
<div class="layui-card-body">
<table class="layui-table" lay-skin="" lay-size="sm">
{if condition="($install == true)"}
@ -145,7 +104,7 @@
</tr>
<tr>
<td class="info-td">Layui版本</td>
<td colspan="3">{:LAYUI_VERSION}<a class="layui-badge layui-bg-blue" style="margin-left:8px" href="https://www.layui.site/doc/" target="_blank">Layui文档</a></td>
<td colspan="3">{:LAYUI_VERSION}<a class="layui-badge layui-bg-blue" style="margin-left:8px" href="https://layui.gitee.io/v2/docs/" target="_blank">Layui文档</a></td>
</tr>
<tr>
<td class="info-td">BUG反馈</td>
@ -157,7 +116,7 @@
</tr>
<tr>
<td class="info-td">同系列开源软件</td>
<td colspan="3"><a class="layui-badge layui-bg-blue" style="margin-right:8px" href="https://gitee.com/gougucms/gougucms" target="_blank">勾股CMS</a><a class="layui-badge layui-bg-blue" style="margin-right:8px" href="https://gitee.com/gougucms/blog.git" target="_blank">勾股BLOG</a><a class="layui-badge layui-bg-blue" href="https://gitee.com/gougucms/dev" target="_blank">勾股DEV</a></td>
<td colspan="3"><a class="layui-badge layui-bg-blue" style="margin-right:8px" href="https://gitee.com/gouguopen/gougucms" target="_blank">勾股CMS</a><a class="layui-badge layui-bg-blue" style="margin-right:8px" href="https://gitee.com/gouguopen/blog.git" target="_blank">勾股BLOG</a><a class="layui-badge layui-bg-blue" href="https://gitee.com/gouguopen/dev" target="_blank" style="margin-right:8px">勾股DEV</a><a class="layui-badge layui-bg-blue" href="https://gitee.com/gouguopen/guoguadmin" target="_blank">勾股ADMIN</a></td>
</tr>
<tr>
<td class="info-td">🍗🍗<br/>给作者加鸡腿<br/>🍗🍗</td>
@ -166,27 +125,17 @@
</td>
</tr>
</table>
<script>
$('body').on('click','[data-event="pay"]',function(){
var src=$(this).attr('src');
layer.open({
type:1,
title:'感谢您给作者加鸡腿🍗🍗',
content:'<img src="'+src+'" style="width:100%" align=center />',
});
})
</script>
</div>
</div>
<div class="layui-card">
<div class="table-title">员工动态</div>
<div class="layui-card-header"><h3>员工动态</h3><a data-title="员工动态" data-href="/api/index/log_list" class="pull-right tab-a">更多</a></div>
<div class="layui-card-body">
<ul class="layui-timeline" id="logs"></ul>
<div class="panel-more"><a href="javascript:;">查看更多动态</a></div>
</div>
</div>
</div>
</div>
</div>
{/block}
<!-- /主体 -->
@ -194,11 +143,9 @@
{block name="script"}
<script src="https://cdn.staticfile.org/echarts/5.3.0/echarts.min.js"></script>
<script>
function init(layui) {
var TAB = parent.layui.tab,
layer = layui.layer,
table = layui.table;
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table;
//公告
table.render({
elem: '#Note'
@ -206,11 +153,7 @@
, page: false //开启分页
, cols: [[ //表头
{ field: 'cate_title', title: '公告分类', align: 'center','width': 90 },
{ field: 'title', title: '公告标题'},
{ field: 'view', title: '操作','width': 60 , align: 'center', templet:function(d){
var html='<button class="layui-btn layui-btn-xs layui-btn-normal" lay-event="view">详情</button>';
return html;
}},
{ field: 'title', title: '公告标题',templet: '<div><a data-href="/note/index/view/id/{{d.id}}.html" class="layui-table-link right-a" target="_blank">{{d.title}}</a></div>'},
{ field: 'create_time', title: '发布时间', align: 'center','width': 136}
]]
});
@ -221,39 +164,21 @@
, page: false //开启分页
, cols: [[ //表头
{ field: 'cate_title', title: '知识分类', align: 'center','width': 90 },
{ field: 'title', title: '知识标题'},
{ field: 'title', title: '知识标题',templet: '<div><a data-href="/article/index/view/id/{{d.id}}.html" class="layui-table-link right-a" target="_blank">{{d.title}}</a></div>'},
{ field: 'read', title: '访问量', align: 'center','width': 80 },
{ field: 'view', title: '操作','width': 60 , align: 'center', templet:function(d){
var html='<button class="layui-btn layui-btn-xs layui-btn-normal" lay-event="view">详情</button>';
return html;
}},
{ field: 'create_time', title: '发布时间', align: 'center','width': 136}
]]
});
$('.panel-more').on('click', function () {
TAB.sonAdd('/api/index/log_list','员工动态');
return;
});
//监听行工具事件
table.on('tool(Note)', function (obj) {
var data = obj.data;
if (obj.event === 'view') {
TAB.sonAdd('/note/index/view?id='+data.id,'公告详情');
return;
}
});
table.on('tool(Article)', function (obj) {
var data = obj.data;
if (obj.event === 'view') {
TAB.sonAdd('/article/index/view?id='+data.id,'知识文章详情');
return;
}
});
get_logs();
$('body').on('click','[data-event="pay"]',function(){
var src=$(this).attr('src');
layer.open({
type:1,
title:'感谢您给作者加鸡腿🍗🍗',
content:'<img src="'+src+'" style="width:100%" align=center />',
});
})
get_logs();
get_view_data();
}
@ -321,7 +246,7 @@
title: {
top: '12px',
text: '今日与昨日员工活跃度',
left: '12px',
left: '6px',
textStyle: {
fontSize: '18',
color: '#333',
@ -408,7 +333,7 @@
title: {
top: '12px',
text: '近一年员工活跃度',
left: '10px',
left: '68px',
textStyle: {
fontSize: '18',
color: '#333',
@ -527,6 +452,5 @@
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-input-inline" style="width:300px;">
<input type="text" name="keywords" placeholder="昵称/操作数据id/操作描述" class="layui-input" autocomplete="off" />
</div>
@ -16,7 +16,7 @@
</div>
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
</form>
<table class="layui-hide" id="test" lay-filter="test"></table>
<table class="layui-hide" id="log" lay-filter="log"></table>
</div>
{/block}
<!-- /主体 -->
@ -24,12 +24,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var table = layui.table,
form = layui.form;
function gouguInit() {
var table = layui.table, form = layui.form;
var tableIns = table.render({
elem: '#test',
elem: '#log',
title: '操作日志列表',
toolbar: '#toolbarDemo',
url: "/home/log/index", //数据接口
@ -64,7 +62,7 @@
field: 'ip',
title: 'IP地址',
align: 'center',
width: 150
width: 130
}, {
field: 'create_time',
title: '操作时间',
@ -91,6 +89,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,21 +1,43 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<style type="text/css">
.latest-news{padding-top: 12px; padding-bottom:30px; padding-left: 20px; position: relative;}
.latest-news .layui-timeline-title{padding-bottom:0; font-size: 14px;}
.latest-news .layui-timeline-item{padding-bottom:5px;}
.layui-timeline-title span{color:#999}
.panel-more{width: 100%; height:48px; line-height: 48px; text-align: center; position: absolute; bottom: 0; left:0;}
.panel-more a{color:#0088FF}
.layui-card-body .layui-timeline-title {
padding-bottom: 0;
font-size: 14px;
}
.layui-card-body .layui-timeline-item {
padding-bottom: 5px;
}
.layui-timeline-title span {
color: #999
}
.panel-more {
width: 100%;
height: 48px;
line-height: 48px;
text-align: center;
position: absolute;
bottom: 0;
left: 0;
}
.panel-more a {
color: #0088FF
}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<div class="body-content" style="padding: 20px;">
<div class="h3-title">员工动态</div>
<div class="latest-news">
<ul class="layui-timeline" id="logs"></ul>
<div class="panel-more"><a href="javascript:getLogs();">查看更多动态</a></div>
<div class="p-3">
<div class="layui-card">
<div class="layui-card-header"><h3>员工动态</h3></div>
<div class="layui-card-body">
<ul class="layui-timeline" id="logs"></ul>
<div class="panel-more"><a href="javascript:;">查看更多员工动态</a></div>
</div>
</div>
</div>
{/block}
@ -54,7 +76,12 @@
}
})
}
getLogs();
function gouguInit() {
getLogs();
$('.panel-more').on('click',function(){
getLogs();
})
}
</script>
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<table class="layui-hide" id="test" lay-filter="test"></table>
<div class="p-3">
<table class="layui-hide" id="list" lay-filter="list"></table>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
@ -14,162 +14,147 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var table=layui.table,
layer=layui.layer;
var tableIns = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'功能模块列表'
,url: "/home/module/index"
,page: false //开启分页
,cellMinWidth: 80
,cols: [[
{field:'id',width:80, title: 'ID号', align:'center'}
,{field:'title',title: '模块名称'}
,{field:'name',title: '模块标识'}
,{field:'status', title: '状态',width:80,align:'center',templet: function(d){
var html1='<span>正常</span>';
var html2='<span style="color:#FF5722">禁用</span>';
if(d.status==1){
<script>
const moduleInit = ['tool'];
function gouguInit() {
var tool = layui.tool, table = layui.table;
layui.pageTable = table.render({
elem: '#list'
, toolbar: '#toolbarDemo'
, title: '功能模块列表'
, url: "/home/module/index"
, page: false //开启分页
, cellMinWidth: 80
, cols: [[
{ field: 'id', width: 80, title: 'ID号', align: 'center' }
, { field: 'title', title: '模块名称' }
, {
field: 'name', title: '模块所在目录', templet: function (d) {
var html = 'app/' + d.name;
return html;
}
}
, {
field: 'status', title: '状态', width: 80, align: 'center', templet: function (d) {
var html1 = '<span>正常</span>';
var html2 = '<span style="color:#FF5722">禁用</span>';
if (d.status == 1) {
return html1;
}
else{
else {
return html2;
}
}}
,{field:'type', title: '类型',width:120,align:'center',templet: function(d){
var html1='<span>系统模块</span>';
var html2='<span style="color:#FF5722">自定义模块</span>';
if(d.type==1){
}
}
, {
field: 'type', title: '类型', width: 120, align: 'center', templet: function (d) {
var html1 = '<span>系统模块</span>';
var html2 = '<span style="color:#FF5722">普通模块</span>';
if (d.type == 1) {
return html1;
}
else{
else {
return html2;
}
}}
,{width:100,title: '操作', align:'center',templet: function(d){
var html='';
var btn='<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>';
var btn1='<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="disable">禁用</a>';
var btn2='<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="open">启用</a>';
if(d.status==1){
html = '<div class="layui-btn-group">'+btn+btn1+'</div>';
}
}
, {
width: 100, title: '操作', align: 'center', templet: function (d) {
var html = '';
var btn = '<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>';
var btn1 = '<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="disable">禁用</a>';
var btn2 = '<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="open">启用</a>';
if (d.status == 1) {
html = '<div class="layui-btn-group">' + btn + btn1 + '</div>';
}
else{
html = '<div class="layui-btn-group">'+btn+btn2+'</div>';
else {
html = '<div class="layui-btn-group">' + btn + btn2 + '</div>';
}
return html;
}}
]]
});
table.on('tool(test)',function (obj) {
if(obj.event === 'edit'){
addExpense(obj.data.id,obj.data.title,obj.data.name);
}
if(obj.event === 'disable'){
layer.confirm('确定要禁用该模块吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/module/disable",
type: 'post',
data: {
id: obj.data.id,
status: 0
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.location.reload();
}
}
})
layer.close(index);
});
}
if(obj.event === 'open'){
layer.confirm('确定要启用该模块吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/home/module/disable",
type: 'post',
data: {
id: obj.data.id,
status: 1
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.location.reload();
}
}
})
layer.close(index);
});
}
});
$('.body-table').on('click','.addNew',function(){
addExpense(0,'','');
});
function addExpense(id,title,name){
var biaoti = '新增模块';
if(id>0){
biaoti = '编辑模块';
}
layer.open({
type: 1
,title: biaoti
,area: '368px;'
,id: 'LAY_module' //设定一个id防止重复弹出
,btn: ['确定', '取消']
,btnAlign: 'c'
,content: '<div style="padding-top:15px;">\
<div class="layui-form-item">\
<label class="layui-form-label">模块名称</label>\
<div class="layui-input-inline">\
<input type="hidden" name="id" value="'+id+'">\
<input type="text" name="title" autocomplete="off" value="'+title+'" placeholder="请输入模块名称" class="layui-input">\
</div>\
</div>\
<div class="layui-form-item">\
<label class="layui-form-label">模块标识</label>\
<div class="layui-input-inline">\
<input type="text" name="name" autocomplete="off" value="'+name+'" placeholder="请输入至少2个大写字符" class="layui-input">\
</div>\
</div>\
</div>'
,yes: function(index){
let id = $('#LAY_module').find('[name="id"]').val();
let title = $('#LAY_module').find('[name="title"]').val();
let name = $('#LAY_module').find('[name="name"]').val();
$.ajax({
url: "/home/module/add",
type: 'post',
data: {
id: id,
title: title,
name: name
},
success: function(e) {
layer.msg(e.msg);
if (e.code == 0) {
layer.close(index);
tableIns.reload();
}
}
})
}
,btn2: function(){
layer.closeAll();
}
]]
});
table.on('tool(list)', function (obj) {
if (obj.event === 'edit') {
addExpense(obj.data.id, obj.data.title, obj.data.name);
}
if (obj.event === 'disable') {
layer.confirm('确定要禁用该模块吗?', { icon: 3, title: '提示' }, function (index) {
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layer.close(index);
layui.pageTable.reload()
}
}
tool.post("/home/module/disable", { id: obj.data.id, status: 0 }, callback);
layer.close(index);
});
}
if (obj.event === 'open') {
layer.confirm('确定要启用该模块吗?', { icon: 3, title: '提示' }, function (index) {
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layer.close(index);
layui.pageTable.reload()
}
}
tool.post("/home/module/disable", { id: obj.data.id, status: 1 }, callback);
layer.close(index);
});
}
});
$('body').on('click', '.addNew', function () {
addExpense(0, '', '');
});
function addExpense(id, title, name) {
layer.open({
type: 1
, title: id > 0 ? '新增模块' : '编辑模块'
, area: '398px;'
, id: 'GG_module' //设定一个id防止重复弹出
, btn: ['确定', '取消']
, btnAlign: 'c'
, content: `<div style="padding-top:16px;">
<div class="layui-form-item">
<label class="layui-form-label">模块名称</label>
<div class="layui-input-inline">
<input type="hidden" name="id" value="${id}">
<input type="text" name="title" autocomplete="off" value="${title}" placeholder="请输入模块名称" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">所在目录</label>
<div class="layui-input-inline">
<input type="text" name="name" autocomplete="off" value="${name}" placeholder="请输入至少2个小写字符" class="layui-input">
</div>
</div>
<div style="padding:8px 0;text-align:center;color:red">目录如:"app/admin",只需要填写"admin"就可以了。</div>
</div>`
, yes: function (index) {
let id = $('#GG_module').find('[name="id"]').val();
let title = $('#GG_module').find('[name="title"]').val();
let name = $('#GG_module').find('[name="name"]').val();
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layer.close(index);
layui.pageTable.reload();
}
}
tool.post("/home/module/add", { id: id, title: title, name: name }, callback);
}
, btn2: function () {
layer.closeAll();
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
}
</script>
{/block}
<!-- /脚本 -->

View File

@ -1,22 +1,25 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<style>
.checkbox16 .layui-form-checkbox span{font-size:15px;font-weight:800;}
#rule .layui-checkbox-disabled span {color: #666666!important;}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<style>
.checkbox16 .layui-form-checkbox span{font-size:15px;font-weight:800;}
#rule .layui-checkbox-disabled span {color: #666666!important;}
</style>
<form class="layui-form page-content">
<h3 class="h3-title">权限角色</h3>
<table class="layui-table">
<form class="layui-form p-4">
<h3 class="pb-3">权限角色</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">角色名称<font>*</font>
<td class="layui-td-gray">角色名称<font>*</font>
</td>
<td>
<input type="hidden" name="id" value="{$id}" />
<input class="layui-input" type="text" name="title" lay-verify="required" lay-reqText="请输入角色名称" {notempty name="$role.title"
<input class="layui-input" type="text" name="title" lay-verify="required" lay-reqText="请输入角色名称" {notempty name="$role.title"
}value="{$role.title}" {/notempty} placeholder="请输入角色名称" autocomplete="off" />
</td>
<td class="layui-td-gray2">状态<font>*</font>
<td class="layui-td-gray">状态<font>*</font>
</td>
<td>
{if condition="$id eq 0"}
@ -29,7 +32,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align:top">权限配置</td>
<td class="layui-td-gray" style="vertical-align:top">权限配置<font>*</font></td>
<td colspan="3">
<table style="width:100%" id="rule">
<tr>
@ -67,7 +70,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align: top;">备注内容
<td class="layui-td-gray" style="vertical-align: top;">备注内容
</td>
<td colspan="3">
<textarea name="desc" placeholder="请输入备注" class="layui-textarea">{notempty name="$role.desc" }{$role.desc}{/notempty}</textarea>
@ -85,13 +88,11 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var tree = layui.tree;
var form = layui.form;
var layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool, tree = layui.tree;
//监听提交
form.on('submit(webform)', function (obj) {
console.log(obj.field);
$.ajax({
url: "/home/role/add",
data: obj.field,
@ -99,9 +100,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -137,6 +138,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,14 +1,14 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-input-inline" style="width:300px;">
<input type="text" name="keywords" placeholder="名称/备注" class="layui-input" autocomplete="off" />
</div>
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
</form>
<table class="layui-hide" id="test" lay-filter="test"></table>
<table class="layui-hide" id="role" lay-filter="role"></table>
</div>
<script type="text/html" id="status">
@ -25,14 +25,11 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form;
tableIns = table.render({
elem: '#test',
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool, form = layui.form;
layui.pageTable = table.render({
elem: '#role',
toolbar: '#toolbarDemo',
url: "/home/role/index", //数据接口
page: true, //开启分页
@ -51,31 +48,32 @@
});
//表头工具栏事件
table.on('toolbar(test)', function(obj){
table.on('toolbar(role)', function(obj){
if (obj.event === 'add') {
rightpage.open("/home/role/add");
tool.side("/home/role/add");
return;
}
});
//监听行工具事件
table.on('tool(test)', function (obj) {
table.on('tool(role)', function (obj) {
var data = obj.data;
if (obj.event === 'edit') {
rightpage.open('/home/role/add?id='+obj.data.id);
tool.side('/home/role/add?id='+obj.data.id);
return;
}
if (obj.event === 'del') {
layer.confirm('确定要删除该权限角色吗?', { icon: 3, title: '提示' }, function (index) {
$.ajax({
url: "/home/role/delete",
data: { id: data.id },
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
layer.msg(res.msg);
if (res.code == 0) {
obj.del();
layer.close(index);
}
}
})
}
tool.delete("/home/role/delete", { id: obj.data.id }, callback);
layer.close(index);
});
}
@ -83,7 +81,7 @@
//监听搜索提交
form.on('submit(webform)', function (data) {
tableIns.reload({
layui.pageTable.reload({
where: { keywords: data.field.keywords },
page: { curr: 1 }
});
@ -92,6 +90,5 @@
}
</script>
{include file="../../base/view/common/layui" base="base" extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,12 +1,13 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">功能菜单/节点</h3>
<form class="layui-form p-4">
<h3 class="pb-3">功能菜单/节点</h3>
{if condition="$id eq 0"}
<table class="layui-table">
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">父级菜单/节点<font>*</font></td>
<td class="layui-td-gray-2">父级菜单/节点<font>*</font>
</td>
<td>
<select name="pid" lay-verify="required" lay-reqText="请选择父级菜单/节点">
<option value="0">作为顶级菜单/节点</option>
@ -15,7 +16,7 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">所属功能模块<font>*</font></td>
<td class="layui-td-gray-2">所属功能模块<font>*</font></td>
<td>
<select name="module" lay-verify="required" lay-reqText="请选择所属功能模块">
<option value="">请选择</option>
@ -26,42 +27,50 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">菜单/节点名称<font>*</font></td>
<td>
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入菜单/节点名称" lay-reqText="请输入菜单/节点名称" class="layui-input">
<td class="layui-td-gray">菜单/节点名称<font>*</font>
</td>
<td class="layui-td-gray2">菜单/节点URL</td>
<td>
<input type="text" name="src" placeholder="请输入菜单/节点URL可空" autocomplete="off" class="layui-input">
<input type="text" name="title" lay-verify="required" autocomplete="off" placeholder="请输入菜单/节点名称"
lay-reqText="请输入菜单/节点名称" class="layui-input">
</td>
<td class="layui-td-gray">操作日志名称<font>*</font>
</td>
<td>
<input type="text" name="name" lay-verify="required" placeholder="请输入操作日志名称" lay-reqText="请输入操作日志名称"
autocomplete="off" class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray2">操作日志名称<font>*</font></td>
<td class="layui-td-gray">菜单/节点URL</td>
<td>
<input type="text" name="name" lay-verify="required" placeholder="请输入操作日志名称" lay-reqText="请输入操作日志名称" autocomplete="off" class="layui-input">
<input type="text" name="src" placeholder="请输入菜单/节点URL可空" autocomplete="off" class="layui-input">
</td>
<td class="layui-td-gray">菜单排序</td>
<td>
<input type="text" name="sort" value="0" placeholder="请输入数字,越小越靠前" autocomplete="off"
class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray-2">左侧菜单显示<font>*</font>
</td>
<td class="layui-td-gray2">是否是左侧菜单<font>*</font></td>
<td>
<input type="radio" name="menu" value="1" title="是">
<input type="radio" name="menu" value="2" title="不是">
</td>
</tr>
<tr>
<td class="layui-td-gray2">排序</td>
<td>
<input type="text" name="sort" value="0" placeholder="请输入数字,越小越靠前" autocomplete="off" class="layui-input">
</td>
<td class="layui-td-gray3">图标</td>
<td>
<input type="text" name="icon" style="width:150px; display:inline" placeholder="请输入图标,可空" autocomplete="off" class="layui-input">
icon-jichuguanli<a href="{__LAYUI__}/font/extend/demo_index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
<td class="layui-td-gray">菜单图标</td>
<td colspan="3">
<input type="text" name="icon" style="width:150px; display:inline" placeholder="请输入图标,可空"
autocomplete="off" class="layui-input">
icon-jichupeizhi<a href="{__GOUGU__}/icon/index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
</td>
</tr>
</table>
{else/}
<table class="layui-table">
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">父级菜单/节点<font>*</font></td>
<td class="layui-td-gray-2">父级菜单/节点<font>*</font>
</td>
<td>
<select name="pid" lay-verify="required" lay-reqText="请选择父级菜单/节点">
<option value="0">作为顶级节点</option>
@ -70,7 +79,7 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">所属功能模块<font>*</font></td>
<td class="layui-td-gray-2">所属功能模块<font>*</font></td>
<td>
<select name="module" lay-verify="required" lay-reqText="请选择所属功能模块">
<option value="">请选择</option>
@ -81,40 +90,47 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">菜单/节点名称<font>*</font></td>
<td>
<input type="text" name="title" value="{$detail.title}" lay-verify="required" autocomplete="off" placeholder="请输入菜单/节点名称" lay-reqText="请输入菜单/节点名称" class="layui-input">
<td class="layui-td-gray">菜单/节点名称<font>*</font>
</td>
<td class="layui-td-gray2">菜单/节点URL</td>
<td>
<input type="text" name="src" value="{$detail.src}" placeholder="请输入菜单/节点URL可空" autocomplete="off" class="layui-input">
<input type="text" name="title" value="{$detail.title}" lay-verify="required" autocomplete="off"
placeholder="请输入菜单/节点名称" lay-reqText="请输入菜单/节点名称" class="layui-input">
</td>
<td class="layui-td-gray">操作日志名称<font>*</font>
</td>
<td>
<input type="text" name="name" value="{$detail.name}" lay-verify="required" placeholder="请输入操作日志名称"
lay-reqText="请输入操作日志名称" autocomplete="off" class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray2">操作日志名称<font>*</font></td>
<td class="layui-td-gray">菜单/节点URL</td>
<td>
<input type="text" name="name" value="{$detail.name}" lay-verify="required" placeholder="请输入操作日志名称" lay-reqText="请输入操作日志名称" autocomplete="off" class="layui-input">
<input type="text" name="src" value="{$detail.src}" placeholder="请输入菜单/节点URL可空" autocomplete="off"
class="layui-input">
</td>
<td class="layui-td-gray2">是否左侧菜单<font>*</font></td>
<td class="layui-td-gray">菜单排序</td>
<td>
<input type="radio" name="menu" value="1" title="是" {eq name="$detail.menu" value="1"} checked{/eq}>
<input type="radio" name="menu" value="2" title="不是" {eq name="$detail.menu" value="2"} checked{/eq}>
<input type="text" name="sort" value="{$detail.sort}" placeholder="请输入数字,越小越靠前" autocomplete="off"
class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray2">排序</td>
<td>
<input type="text" name="sort" value="{$detail.sort}" placeholder="请输入数字,越小越靠前" autocomplete="off" class="layui-input">
<td class="layui-td-gray-2">左侧菜单显示<font>*</font>
</td>
<td class="layui-td-gray2">图标</td>
<td>
<input style="width:150px; display:inline" type="text" name="icon" value="{$detail.icon}" placeholder="请输入图标,可空" autocomplete="off" class="layui-input">
icon-jichuguanli<a href="{__LAYUI__}/font/extend/demo_index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
<input type="radio" name="menu" value="1" title="是" {eq name="$detail.menu" value="1" } checked{/eq}>
<input type="radio" name="menu" value="2" title="不是" {eq name="$detail.menu" value="2" } checked{/eq}>
</td>
<td class="layui-td-gray">菜单图标</td>
<td colspan="3">
<input style="width:150px; display:inline" type="text" name="icon" value="{$detail.icon}" placeholder="请输入图标,可空" autocomplete="off" class="layui-input">
<i class="iconfont {$detail.icon}"></i><a href="{__GOUGU__}/icon/index.html" target="_blank" style="margin-left:10px; color:#007AFF">[查看图标]</a>
</td>
</tr>
</table>
{/if}
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$id}">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -126,36 +142,27 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form,
layer = layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var form = layui.form,tool=layui.tool;
//监听提交
form.on('submit(webform)', function (data) {
/*
if(data.field.src!='' && data.field.module!=''){
if(data.field.src.indexOf(data.field.module.toLowerCase()+'/')!=0){
layer.msg('输入的菜单/节点URL与所属功能模块不匹配');
return false;
if (!data.field.menu || data.field.menu == '') {
layer.msg('请选择是否在左侧菜单显示');
return false;
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
setTimeout(function () {
parent.location.reload();
}, 1000);
}
}
*/
$.ajax({
url: "/home/rule/add",
type: 'post',
data: data.field,
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
//parent.rightpage.close();
parent.location.reload();
}
}
})
tool.post("/home/rule/add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base"/}
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table" style="margin-bottom:0;">
<div class="layui-form-bar">
<div class="p-3">
<div class="gg-form-bar border-t border-x">
<button class="layui-btn layui-btn-normal layui-btn-sm add-menu">+ 添加菜单/节点</button>
</div>
<div>
@ -15,14 +15,12 @@
<!-- 脚本 -->
{block name="script"}
<script>
var ptable = null, treeGrid = null,rightpage=null, layer = null, tableId = "treeTable";
function init(layui) {
treeGrid = layui.treeGrid;
rightpage = layui.rightpage;
layer = layui.layer;
ptable = treeGrid.render({
id: tableId
, elem: '#' + tableId
const moduleInit = ['tool', 'treeGrid'];
function gouguInit() {
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
layui.pageTable = treeGrid.render({
id: 'treeTable'
, elem: '#treeTable'
, idField: 'id'
, url: "/home/rule/index"
, cellMinWidth: 80
@ -30,24 +28,25 @@
, treeUpId: 'pid'//树形父id字段名称
, treeShowName: 'title'//以树形式显示的字段
, cols: [[
{ field: 'id', width: 80, title: 'ID号', align: 'center'}
, { field: 'sort', width: 80, title: '排序',align: 'center'}
, { field: 'title', width: 160, title: '菜单/节点名称'}
{ field: 'id', width: 80, title: 'ID号', align: 'center' }
, { field: 'sort', width: 60, title: '排序', align: 'center' }
, { field: 'title', width: 160, title: '菜单/节点名称' }
, { field: 'pid', title: '父ID', width: 80, align: 'center' }
, { field: 'src', title: 'URL链接'}
, { field: 'menu', width: 100, title: '是否是菜单',align: 'center', templet: function (d) {
, { field: 'src', title: 'URL链接' }
, {
field: 'menu', width: 100, title: '是否是菜单', align: 'center', templet: function (d) {
var html = '<span style="color:#fbbc05"></span>';
if(d.menu=='1'){
if (d.menu == '1') {
html = '<span style="color:#12bb37"></span>';
}
return html;
}
}
, {field: 'name', width: 110, title: '操作日志名称',align: 'center'}
, {field: 'module_title', width: 110, title: '所属模块',align: 'center'}
, {width: 200, title: '操作', align: 'center'
, { field: 'name', width: 110, title: '操作日志名称', align: 'center' }
, {
width: 188, title: '操作', align: 'center'
, templet: function (d) {
var html = '<span class="layui-btn-group"><button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="add">添加子菜单/节点</button><button class="layui-btn layui-btn-xs" lay-event="edit">编辑</button><button class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</button></span>';
var html = '<span class="layui-btn-group"><button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="add">添加子菜单/节点</button><button class="layui-btn layui-btn-xs" lay-event="edit">编辑</button><button class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</button>';
return html;
}
}
@ -55,41 +54,36 @@
, page: false
});
//表头工具栏事件
$('.add-menu').on('click',function(){
rightpage.open("/home/rule/add",'900px');
$('.add-menu').on('click', function () {
tool.side("/home/rule/add");
return;
});
//操作按钮
treeGrid.on('tool(' + tableId + ')', function (obj) {
treeGrid.on('tool(treeTable)', function (obj) {
console.log(obj);
if (obj.event === 'add') {
rightpage.open('/home/rule/add?pid='+obj.data.id,'900px');
tool.side('/home/rule/add?pid=' + obj.data.id);
return;
}
if (obj.event === 'edit') {
rightpage.open('/home/rule/add?id='+obj.data.id,'900px');
tool.side('/home/rule/add?id=' + obj.data.id);
return;
}
if (obj.event === 'del') {
layer.confirm('确定要删除吗?', { icon: 3, title: '提示' }, function (index) {
$.ajax({
url: "/home/rule/delete",
type: 'post',
data: { id: obj.data.id },
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
})
}
tool.delete("/home/rule/delete", { id: obj.data.id }, callback);
layer.close(index);
});
}
});
}
</script>
{include file="../../base/view/common/layui" base="base" extend="['treeGrid','rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -67,8 +67,8 @@ class Index
public function step3()
{
return view();
}
}
public function install()
{
$data = get_params();
@ -78,6 +78,7 @@ class Index
// 验证失败 输出错误信息
return to_assign(1, $e->getError());
}
$dbName = $data['DB_NAME'];
// 连接数据库
$link = @new mysqli("{$data['DB_HOST']}:{$data['DB_PORT']}", $data['DB_USER'], $data['DB_PWD']);
// 获取错误信息
@ -88,15 +89,17 @@ class Index
return to_assign(1, '数据库链接失败:' . $error);die;
}
// 设置字符集
$link->query("SET NAMES 'utf8'");
$link->query("SET NAMES 'utf8mb4'");
if ($link->server_info < 5.0) {
return to_assign(1, '请将您的mysql升级到5.0以上');die;
}
// 创建数据库并选中
if (!$link->select_db($data['DB_NAME'])) {
return to_assign(1, '未找到数据库' . $data['DB_NAME'] . ',请先自行创建数据库');die;
if (!$link->select_db($dbName)) {
//创建数据库
$sql = "CREATE DATABASE IF NOT EXISTS `{$dbName}` DEFAULT CHARACTER SET utf8mb4";
$link->query($sql);
}
$link->select_db($data['DB_NAME']);
$link->select_db($dbName);
// 导入sql数据并创建表
$oa_sql = file_get_contents(CMS_ROOT . '/app/install/data/gouguoa.sql');
$sql_array = preg_split("/;[\r\n]+/", str_replace("oa_", $data['DB_PREFIX'], $oa_sql));
@ -105,6 +108,10 @@ class Index
$link->query($v);
}
}
$isTable = $link->query('SHOW TABLES LIKE "'.$data['DB_PREFIX'] . 'admin"');
if(!$isTable){
return to_assign(1, '创建数据库表失败,请检查是否有创建权限!');
}
//插入管理员信息
$username = get_params('username');

View File

@ -7,7 +7,7 @@
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="{__LAYUI__}/css/layui.css" media="all">
<link rel="stylesheet" href="{__GOUGU__}/layui/css/layui.css" media="all">
<style>
body {
width: 100%;
@ -16,9 +16,7 @@
background-size: cover;
background: url("{__IMG__}/bg_pattern.png"), #7b4397;
background: url("{__IMG__}/bg_pattern.png"), -webkit-linear-gradient(to left, #34a853, #4285f4);
/* Chrome 10-25, Safari 5.1-6 */
background: url("{__IMG__}bg_pattern.png"), linear-gradient(to left, #34a853, #4285f4);
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
background: url("{__IMG__}/bg_pattern.png"), linear-gradient(to left, #34a853, #4285f4);
}
</style>
</head>
@ -45,7 +43,7 @@
</div>
</div>
</div>
<script src="{__LAYUI__}/layui.js" charset="utf-8"></script>
<script src="{__GOUGU__}/layui/layui.js" charset="utf-8"></script>
</body>
</html>

View File

@ -7,7 +7,7 @@
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="{__LAYUI__}/css/layui.css" media="all">
<link rel="stylesheet" href="{__GOUGU__}/layui/css/layui.css" media="all">
<style>
body {
width: 100%;
@ -16,9 +16,7 @@
background-size: cover;
background: url("{__IMG__}/bg_pattern.png"), #7b4397;
background: url("{__IMG__}/bg_pattern.png"), -webkit-linear-gradient(to left, #34a853, #4285f4);
/* Chrome 10-25, Safari 5.1-6 */
background: url("{__IMG__}/bg_pattern.png"), linear-gradient(to left, #34a853, #4285f4);
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
</style>
</head>
@ -193,7 +191,7 @@
</div>
</div>
<script src="{__LAYUI__}/layui.js" charset="utf-8"></script>
<script src="{__GOUGU__}/layui/layui.js" charset="utf-8"></script>
<script>
layui.use(['jquery', 'layer'], function () {
var $ = layui.jquery,

View File

@ -7,7 +7,7 @@
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="{__LAYUI__}/css/layui.css" media="all">
<link rel="stylesheet" href="{__GOUGU__}/layui/css/layui.css" media="all">
<style>
body {
width: 100%;
@ -16,9 +16,7 @@
background-size: cover;
background: url("{__IMG__}/bg_pattern.png"), #7b4397;
background: url("{__IMG__}/bg_pattern.png"), -webkit-linear-gradient(to left, #34a853, #4285f4);
/* Chrome 10-25, Safari 5.1-6 */
background: url("{__IMG__}/bg_pattern.png"), linear-gradient(to left, #34a853, #4285f4);
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
</style>
</head>
@ -65,7 +63,7 @@
<label class="layui-form-label">数据库名</label>
<div class="layui-input-inline">
<input type="text" name="DB_NAME" required lay-verify="required" autocomplete="off"
class="layui-input" value="" lay-reqText="请输入数据库名">
class="layui-input" value="oa" lay-reqText="请输入数据库名">
</div>
<div class="layui-form-mid layui-word-aux">系统数据库名,必须包含字母,不能有"-"等特殊符号</div>
</div>
@ -139,7 +137,7 @@
</div>
</div>
<script src="{__LAYUI__}/layui.js" charset="utf-8"></script>
<script src="{__GOUGU__}/layui/layui.js" charset="utf-8"></script>
<script>
layui.use(['element', 'jquery', 'layer', 'form'], function () {
var $ = layui.jquery,

View File

@ -1,16 +1,12 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">发送消息</h3>
<form class="layui-form p-4">
<h3 class="pb-3">发送消息</h3>
{if condition="$id eq 0"}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">接收人类型</td>
<td class="layui-td-gray-2">接收人类型</td>
<td>
<input type="radio" name="type" lay-filter="type" value="1" title="同事" checked>
<input type="radio" name="type" lay-filter="type" value="2" title="部门">
@ -19,7 +15,7 @@
</td>
</tr>
<tr id ="person">
<td class="layui-td-gray2">收件人<span style="color: red">*</span></td>
<td class="layui-td-gray">收件人<span style="color: red">*</span></td>
<td>
<input type="text" name="person_name" value="" lay-verify="required" lay-reqText="请选择收件人" placeholder="请选择收件人" readonly class="layui-input">
<input type="hidden" name="uids" value="">
@ -28,18 +24,18 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">主题<span style="color: red">*</span></td>
<td class="layui-td-gray">主题<span style="color: red">*</span></td>
<td>
<input type="text" name="title" value="" lay-verify="required" lay-reqText="请输入消息主题" placeholder="请输入消息主题" class="layui-input" lay-verify="required">
</td>
</tr>
<tr><td class="layui-td-gray2">发送内容<span style="color: red">*</span></td>
<tr><td class="layui-td-gray">发送内容<span style="color: red">*</span></td>
<td>
<textarea name="content" placeholder="请输入消息内容" class="layui-textarea" style="height: 200px;" lay-verify="required" lay-reqText="请输入消息内容"></textarea>
</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align:top">消息附件</td>
<td class="layui-td-gray" style="vertical-align:top">消息附件</td>
<td>
<div class="layui-upload" style="max-width: 800px;">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" id="testList">选择文件并上传</button> <span style="color:#FF5722;margin-left: 10px;">最大只能上传{:get_system_info('upload_max_filesize')}的文件,超过{:get_system_info('upload_max_filesize')}请压缩成多个文件上传。</span>
@ -62,7 +58,7 @@
{else/}
<table class="layui-table">
<tr>
<td class="layui-td-gray2">接收人类型</td>
<td class="layui-td-gray-2">接收人类型</td>
<td>
<input type="radio" name="type" lay-filter="type" value="1" title="同事" {eq name="$detail.type" value="1"}checked{/eq}>
<input type="radio" name="type" lay-filter="type" value="2" title="部门" {eq name="$detail.type" value="2"}checked{/eq}>
@ -71,7 +67,7 @@
</td>
</tr>
<tr id ="person" {eq name="$detail.type" value="3"}style="display:none;"{/eq}>
<td class="layui-td-gray2">收件人<span style="color: red">*</span></td>
<td class="layui-td-gray">收件人<span style="color: red">*</span></td>
<td>
{eq name="$detail.type" value="3"}
<input type="text" name="person_name" value="0" lay-verify="required" lay-reqText="请选择收件人" placeholder="请选择收件人" readonly class="layui-input">
@ -84,12 +80,12 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">主题<span style="color: red">*</span></td>
<td class="layui-td-gray">主题<span style="color: red">*</span></td>
<td>
<input type="text" name="title" value="{$detail.title}" lay-verify="required" lay-reqText="请输入消息主题" placeholder="请输入消息主题" class="layui-input" lay-verify="required">
</td>
</tr>
<tr><td class="layui-td-gray2">发送内容<span style="color: red">*</span></td>
<tr><td class="layui-td-gray">发送内容<span style="color: red">*</span></td>
<td>
<textarea name="content" placeholder="请输入消息内容" class="layui-textarea" style="height: 200px;" lay-verify="required" lay-reqText="请输入消息内容">{$detail.content}</textarea>
{if condition="($detail.fid > 0)"}
@ -100,7 +96,7 @@
</tr>
{notempty name="$detail.from_file_array"}
<tr>
<td class="layui-td-gray2" style="vertical-align:top">引用消息附件</td>
<td class="layui-td-gray" style="vertical-align:top">引用消息附件</td>
<td>
<table class="layui-table" style="max-width: 680px;">
<thead>
@ -126,7 +122,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align:top">消息附件</td>
<td class="layui-td-gray" style="vertical-align:top">消息附件</td>
<td>
<div class="layui-upload" style="max-width: 800px;">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" id="testList">选择文件并上传</button> <span style="color:#FF5722;margin-left: 10px;">最大只能上传{:get_system_info('upload_max_filesize')}的文件,超过{:get_system_info('upload_max_filesize')}请压缩成多个文件上传。</span>
@ -159,7 +155,7 @@
</tr>
</table>
{/if}
<div class="layui-form-item" style="padding-top:10px;">
<div class="py-3">
<input type="hidden" value="{$id}" name="id">
<input type="hidden" value="{$fid}" name="fid">
<button class="layui-btn" lay-submit="" lay-filter="draftform">存为草稿</button>
@ -172,13 +168,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer
,table = layui.table
,dtree = layui.dtree
,upload = layui.upload
,employeepicker = layui.employeepicker;
const moduleInit = ['tool','employeepicker','dtree'];
function gouguInit() {
var form = layui.form,tool=layui.tool,table=layui.table,laydate = layui.laydate,employeepicker = layui.employeepicker,dtree = layui.dtree,upload = layui.upload;
//监听保存到草稿并发送
form.on('submit(webform)', function(data){
@ -190,7 +182,6 @@
file_ids.push(item_id);
}
});
console.log(file_ids.join(','));
data.field.file_ids = file_ids.join(',');
$.ajax({
url: "/message/index/save",
@ -206,9 +197,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -231,7 +222,6 @@
file_ids.push(item_id);
}
});
console.log(file_ids.join(','));
data.field.file_ids = file_ids.join(',');
$.ajax({
url: "/message/index/save",
@ -240,9 +230,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -290,7 +280,7 @@
$('[name="person_name"]').val('');
$('[name="dids"]').val('');
$('[name="uids"]').val('');
$('[name="auids"]').val('');
$('[name="pids"]').val('');
if(data.value==4){
$('#person').val('0').hide();
}
@ -343,7 +333,7 @@
success:function(){
$.ajax({
url: "/api/index/get_department_tree",
type:'post',
type:'get',
success:function(res){
dtree.render({
elem: "#checkemployeetree",
@ -414,9 +404,7 @@
}
})
}
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['dtree','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-inline" style="width:240px">
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
</div>
@ -43,20 +43,16 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table = layui.table
,form = layui.form
,rightpage = layui.rightpage
,laydate = layui.laydate;
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form,laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#date',
range: ['#start_time', '#end_time']
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
toolbar: '#toolbarDemo',
title:'草稿箱',
@ -80,21 +76,22 @@
var data = obj.data;
if(obj.event === 'del'){
layer.confirm('确定该信息要放入垃圾箱吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/message/index/check",
data:{ids:data.id,type:2,source:2},
success:function(e){
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: data.id,
type:2,
source:2
}, callback);
layer.close(index);
});
}
if(obj.event === 'edit'){
rightpage.open('/message/index/add?id='+data.id,'900px');
tool.side('/message/index/add?id='+data.id);
return;
}
});
@ -103,7 +100,7 @@
var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
var data = checkStatus.data;
if (obj.event === 'add') {
rightpage.open("/message/index/add",'900px');
tool.side("/message/index/add");
return;
}
if(data.length==0){
@ -125,20 +122,17 @@
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/message/index/check",
data: {
ids: idArray.join(','),
type:type,
source:2
},
success: function (e) {
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: idArray.join(','),
type:type,
source:2
}, callback);
layer.close(index);
});
});
@ -146,11 +140,10 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-inline" style="width:240px">
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
</div>
@ -56,20 +56,15 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table = layui.table
,form = layui.form
,rightpage = layui.rightpage
,laydate = layui.laydate;
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form,laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#date',
range: ['#start_time', '#end_time']
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
toolbar: '#toolbarDemo',
title:'收件箱',
@ -101,29 +96,30 @@
var data = obj.data;
if(obj.event === 'del'){
layer.confirm('确定该信息要放入垃圾箱吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/message/index/check",
data:{ids:data.id,type:2,source:3},
success:function(e){
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: data.id,
type:2,
source:3
}, callback);
layer.close(index);
});
}
if(obj.event === 'view'){
rightpage.open('/message/index/read?id='+data.id,'900px');
tool.side('/message/index/read?id='+data.id);
return;
}
if(obj.event === 'reply'){
rightpage.open('/message/index/reply?id='+data.id+'&type=1','900px');
tool.side('/message/index/reply?id='+data.id+'&type=1');
return;
}
if(obj.event === 'resend'){
rightpage.open('/message/index/reply?id='+data.id+'&type=2','900px');
tool.side('/message/index/reply?id='+data.id+'&type=2');
return;
}
});
@ -133,7 +129,7 @@
var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
var data = checkStatus.data;
if (obj.event === 'add') {
rightpage.open("/message/index/add",'900px');
tool.side("/message/index/add");
return;
}
if(data.length==0){
@ -159,20 +155,17 @@
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/message/index/check",
data: {
ids: idArray.join(','),
type:type,
source:3
},
success: function (e) {
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: idArray.join(','),
type:type,
source:3
}, callback);
layer.close(index);
});
});
@ -180,12 +173,10 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time,template:f.template,read:f.read},page:{curr:1}});
layui.pageTable.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time,template:f.template,read:f.read},page:{curr:1}});
return false;
});
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,17 +1,17 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">消息详情</h3>
<form class="layui-form p-4">
<h3 class="pb-3">消息详情</h3>
<table class="layui-table">
<tr>
<td class="layui-td-gray2">信息主题</td>
<td class="layui-td-gray">信息主题</td>
<td colspan="5">{$detail.title}</td>
</tr>
<tr>
<td class="layui-td-gray2">发送人</td>
<td class="layui-td-gray">发送人</td>
<td>{$detail.person_name}</td>
<td class="layui-td-gray2">接收人类别</td>
<td class="layui-td-gray-2">接收人类别</td>
<td>
{eq name="$detail.type" value="0"}-{/eq}
{eq name="$detail.type" value="1"}同事{/eq}
@ -19,26 +19,26 @@
{eq name="$detail.type" value="3"}岗位{/eq}
{eq name="$detail.type" value="4"}全部{/eq}
</td>
<td class="layui-td-gray2">发送时间</td>
<td class="layui-td-gray">发送时间</td>
<td>{$detail.send_time}</td>
</tr>
<tr>
<td class="layui-td-gray2">收件人</td>
<td class="layui-td-gray">收件人</td>
<td colspan="5">{$detail.users}</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align:top;">消息内容</td>
<td class="layui-td-gray" style="vertical-align:top;">消息内容</td>
<td colspan="5">
{$detail.content}
{if condition="($detail.fid > 0)"}
<table class="layui-table" style="margin-top:10px;">
<tr>
<td class="layui-td-gray2">引用消息内容</td>
<td class="layui-td-gray-2">引用消息内容</td>
<td style="color:#999">{$detail.from_content}</td>
</tr>
{notempty name="$detail.from_file_array"}
<tr>
<td class="layui-td-gray2" style="vertical-align:top">引用消息附件</td>
<td class="layui-td-gray-2" style="vertical-align:top">引用消息附件</td>
<td>
<table class="layui-table" style="max-width: 680px;">
<thead>
@ -65,7 +65,7 @@
</tr>
{notempty name="$detail.file_array"}
<tr>
<td class="layui-td-gray2" style="vertical-align:top">相关附件</td>
<td class="layui-td-gray" style="vertical-align:top">相关附件</td>
<td colspan="5">
<table class="layui-table" style="max-width: 800px;">
<thead>
@ -90,33 +90,16 @@
{/notempty}
{notempty name="$detail.read_users"}
<tr>
<td class="layui-td-gray2" style="vertical-align:top">收件人已读回执</td>
<td class="layui-td-gray-2" style="vertical-align:top">收件人已读回执</td>
<td colspan="5">{$detail.read_users}</td>
</tr>
{/notempty}
</table>
{if condition="($detail.template == 0) AND ($detail.pid != 0)"}
<div class="layui-form-item" style=" padding-top:10px;">
<div class="py-3">
<a class="layui-btn" href="/message/index/reply?id={$detail.id}&type=1">回复</a>
</div>
{/if}
</form>
{/block}
<!-- /主体 -->
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
//监听返回
$('.body-content').on('click','[lay-event="back"]',function () {
var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
parent.layer.close(index);//关闭弹出的子页面窗口
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{/block}
<!-- /脚本 -->
<!-- /主体 -->

View File

@ -1,19 +1,15 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<form class="layui-form p-4">
{if condition="$type eq 1"}
<h3 class="h3-title">回复消息</h3>
<h3 class="pb-3">回复消息</h3>
{else/}
<h3 class="h3-title">转发消息</h3>
<h3 class="pb-3">转发消息</h3>
{/if}
<table class="layui-table">
<tr>
<td class="layui-td-gray">接收人类型</td>
<td class="layui-td-gray-2">接收人类型</td>
<td>
<input type="radio" name="type" lay-filter="type" value="1" title="同事" checked>
<input type="radio" name="type" lay-filter="type" value="2" title="部门">
@ -61,13 +57,13 @@
<table class="layui-table" style="margin-top:10px;">
<tr>
<td class="layui-td-gray">原消息内容</td>
<td class="layui-td-gray-2">原消息内容</td>
<td>{$detail.content}
</td>
</tr>
{notempty name="$file_array"}
<tr>
<td class="layui-td-gray" style="vertical-align:top">原消息附件</td>
<td class="layui-td-gray-2" style="vertical-align:top">原消息附件</td>
<td>
<table class="layui-table">
<thead>
@ -112,7 +108,7 @@
</td>
</tr>
</table>
<div class="layui-form-item" style="padding-top:10px;">
<div class="py-3">
<input type="hidden" value="0" name="id">
<input type="hidden" value="{$fid}" name="fid">
<button class="layui-btn" lay-submit="" lay-filter="draftform">存为草稿</button>
@ -125,14 +121,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,layer = layui.layer
,table = layui.table
,dtree = layui.dtree
,upload = layui.upload
,employeepicker = layui.employeepicker;
const moduleInit = ['tool','employeepicker','dtree'];
function gouguInit() {
var form = layui.form,tool=layui.tool,table=layui.table,laydate = layui.laydate,employeepicker = layui.employeepicker,dtree = layui.dtree,upload = layui.upload;
//监听保存到草稿并发送
form.on('submit(webform)', function(data){
var file_ids = [];
@ -159,9 +150,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -193,9 +184,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -242,7 +233,7 @@
$('[name="person_name"]').val('');
$('[name="dids"]').val('');
$('[name="uids"]').val('');
$('[name="auids"]').val('');
$('[name="pids"]').val('');
if(data.value==4){
$('#person').val('0').hide();
}
@ -295,7 +286,7 @@
success:function(){
$.ajax({
url: "/api/index/get_department_tree",
type:'post',
type:'get',
success:function(res){
dtree.render({
elem: "#checkemployeetree",
@ -327,7 +318,7 @@
})
}
//选择角色
//选择岗位
function selectAuditor(){
layer.open({
title:'选择岗位',
@ -357,18 +348,16 @@
title.push(data[i].name);
}
$('[name="person_name"]').val(title.join(','));
$('[name="auids"]').val(val.join(','));
$('[name="pids"]').val(val.join(','));
layer.closeAll();
}else{
layer.msg('请选择角色');
layer.msg('请选择岗位');
return;
}
}
})
}
}
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['dtree','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-inline" style="width:240px">
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
</div>
@ -44,12 +44,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table = layui.table
,form = layui.form
,rightpage = layui.rightpage
,laydate = layui.laydate;
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form,laydate = layui.laydate;
//日期范围
laydate.render({
@ -57,7 +54,7 @@
range: ['#start_time', '#end_time']
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
toolbar: '#toolbarDemo',
title:'垃圾箱',
@ -81,7 +78,7 @@
table.on('tool(test)', function(obj){
var data = obj.data;
if(obj.event === 'view'){
rightpage.open('/message/index/read?id='+data.id,'900px');
tool.side('/message/index/read?id='+data.id);
return;
}
if(obj.event === 'del'){
@ -121,7 +118,7 @@
var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
var data = checkStatus.data;
if (obj.event === 'add') {
rightpage.open("/message/index/add",'900px');
tool.side("/message/index/add");
return;
}
if(data.length==0){
@ -147,19 +144,16 @@
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/message/index/check",
data: {
ids: idArray.join(','),
type:type
},
success: function (e) {
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: idArray.join(','),
type:type
}, callback);
layer.close(index);
});
});
@ -167,11 +161,10 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,8 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<form class="layui-form layui-form-bar">
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-inline" style="width:240px">
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
</div>
@ -42,13 +42,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table = layui.table
,form = layui.form
,rightpage = layui.rightpage
,laydate = layui.laydate;
<script>
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form,laydate = layui.laydate;
//日期范围
laydate.render({
@ -56,7 +53,7 @@
range: ['#start_time', '#end_time']
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test',
toolbar: '#toolbarDemo',
title:'发件箱',
@ -80,25 +77,26 @@
var data = obj.data;
if(obj.event === 'del'){
layer.confirm('确定该信息要放入垃圾箱吗?', {icon: 3, title:'提示'}, function(index){
$.ajax({
url: "/message/index/check",
data:{ids:data.id,type:2,source:1},
success:function(e){
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: data.id,
type:2,
source:1
}, callback);
layer.close(index);
})
}
if(obj.event === 'view'){
rightpage.open('/message/index/read?id='+data.id,'900px');
tool.side('/message/index/read?id='+data.id);
return;
}
if(obj.event === 'resend'){
rightpage.open('/message/index/reply?id='+data.id+'&type=2','900px');
tool.side('/message/index/reply?id='+data.id+'&type=2');
return;
}
});
@ -107,7 +105,7 @@
var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
var data = checkStatus.data;
if (obj.event === 'add') {
rightpage.open("/message/index/add",'900px');
tool.side("/message/index/add");
return;
}
if(data.length==0){
@ -129,20 +127,17 @@
icon: 3,
title: '提示'
}, function (index) {
$.ajax({
url: "/message/index/check",
data: {
ids: idArray.join(','),
type:type,
source:1
},
success: function (e) {
layer.msg(e.msg);
if(e.code==0){
tableIns.reload();
}
let callback = function (e) {
layer.msg(e.msg);
if(e.code==0){
layui.pageTable.reload();
}
})
}
tool.delete("/message/index/check", {
ids: idArray.join(','),
type:type,
source:1
}, callback);
layer.close(index);
});
});
@ -150,12 +145,11 @@
//监听搜索提交
form.on('submit(webform)', function(data){
let f=data.field;
tableIns.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
layui.pageTable.reload({where:{keywords:f.keywords,start_time:f.start_time,end_time:f.end_time},page:{curr:1}});
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -98,6 +98,7 @@ class Index extends BaseController
{
$id = empty(get_params('id')) ? 0 : get_params('id');
$note = Db::name('Note')->where(['id' => $id])->find();
$note['cate_title'] = Db::name('NoteCate')->where(['id' => $note['cate_id']])->value('title');
View::assign('note', $note);
return view();
}

View File

@ -1,11 +1,11 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<form class="layui-form p-4">
{eq name="$id" value="0"}
<h3 class="h3-title">新增公告</h3>
<h3 class="pb-3">新增公告</h3>
{else/}
<h3 class="h3-title">编辑公告</h3>
<h3 class="pb-3">编辑公告</h3>
{/eq}
<table class="layui-table layui-table-form">
<tr>
@ -14,7 +14,7 @@
<input type="text" name="title" lay-verify="required" lay-reqText="请输入公告标题" placeholder="请输入公告标题" class="layui-input"
{notempty name="$note.title" }value="{$note.title}" {/notempty}>
</td>
<td class="layui-td-gray2">公告分类<span style="color: red">*</span></td>
<td class="layui-td-gray">公告分类<span style="color: red">*</span></td>
<td>
<select name="cate_id" lay-verify="required" lay-reqText="请选择分类">
<option value="">请选择分类</option>
@ -41,7 +41,7 @@
<input type="text" id="end_time" name="end_time" readonly lay-verify="required" lay-reqText="请选择公告展示结束时间" placeholder="请选择时间" class="layui-input" {notempty name="$note.end_time" }value="{$note.end_time | date='Y-m-d'}" {/notempty}>
</div>
</td>
<td class="layui-td-gray2">状态<span style="color: red">*</span></td>
<td class="layui-td-gray">状态<span style="color: red">*</span></td>
<td>
{if condition="$id eq 0"}
<input type="radio" name="status" value="1" title="正常" checked>
@ -65,15 +65,14 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align:top;">公告内容<span style="color: red">*</span></td>
<td class="layui-td-gray" style="vertical-align:top;">公告内容<span style="color: red">*</span></td>
<td colspan="3">
<textarea name="content" placeholder="请输入内容" class="layui-textarea" id="container" lay-verify="required" lay-reqText="请完善文章内容"
style="border:0;padding:0">{notempty name="$note.content" }{$note.content}{/notempty}</textarea>
<textarea name="content" placeholder="请输入内容" class="layui-textarea" id="container" style="border:0;padding:0">{notempty name="$note.content" }{$note.content}{/notempty}</textarea>
</td>
</tr>
</table>
<div style="padding: 10px 0">
<div class="py-3">
<input type="hidden" name="id" value="{$id}" />
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
@ -85,38 +84,43 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
var form = layui.form
, layer = layui.layer
,laydate = layui.laydate;
const moduleInit = ['tool','tinymce'];
function gouguInit() {
var form = layui.form,tool=layui.tool,laydate = layui.laydate;
//日期范围
laydate.render({
elem: '#date',
range: ['#start_time', '#end_time']
});
//日期范围
laydate.render({
elem: '#date',
range: ['#start_time', '#end_time']
});
//监听提交
form.on('submit(webform)', function (data) {
$.ajax({
url: "/note/index/add",
type: 'post',
data: data.field,
success: function (e) {
//编辑器初始化
var editor = layui.tinymce;
var edit = editor.render({
selector: "#container",
images_upload_url: '/api/index/upload/sourse/tinymce',//图片上传接口
height: 500
});
//监听提交
form.on('submit(webform)', function (data) {
data.field.content = tinyMCE.editors['container'].getContent();
if (data.field.content == '') {
layer.msg('请先完善公告内容');
return false;
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
})
return false;
});
tool.post("/note/index/add", data.field, callback);
return false;
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
{include file="../../base/view/common/ueditor" id="container" name="content" width="776" height="400" toolbar="[]" /}
{/block}
<!-- /脚本 -->

View File

@ -1,7 +1,7 @@
{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="body-table">
<div class="p-3">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
@ -22,13 +22,10 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui) {
var table = layui.table,
rightpage = layui.rightpage,
form = layui.form;
tableIns = table.render({
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form;
layui.pageTable = table.render({
elem: '#test',
title: '公告列表',
toolbar: '#toolbarDemo',
@ -82,7 +79,7 @@
//表头工具栏事件
table.on('toolbar(test)', function(obj){
if (obj.event === 'add') {
rightpage.open("/note/index/add");
tool.side("/note/index/add");
return;
}
})
@ -91,11 +88,11 @@
table.on('tool(test)', function(obj) {
var data = obj.data;
if (obj.event === 'view') {
rightpage.open("/note/index/view?id="+data.id,'900px');
tool.side("/note/index/view?id="+data.id);
return;
}
if (obj.event === 'edit') {
rightpage.open("/note/index/add?id="+data.id);
tool.side("/note/index/add?id="+data.id);
return;
}
if (obj.event === 'del') {
@ -103,24 +100,18 @@
icon: 3,
title: '提示'
}, function(index) {
$.ajax({
url: "/note/index/delete",
data: {
id: data.id
},
success: function(res) {
layer.msg(res.msg);
if (res.code == 1) {
obj.del();
}
let callback = function (e) {
layer.msg(res.msg);
if (res.code == 1) {
obj.del();
}
})
}
tool.delete("/note/index/delete", {id: data.id}, callback);
layer.close(index);
});
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" use="['table','form']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,51 +1,43 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__GOUGU__}/third_party/prism/prism.css"/>
<style>
.text-detial-ops{line-height: 30px; color:#999; font-size: 12px; padding: 12px 0;}
.text-detial-ops span{margin-right: 20px;}
.text-detial-ops a{margin-right:10px;}
.text-detial-content{padding: 8px 0; color:#333; word-break: break-all; border-top:1px solid #e8e8e8;font-size: 16px!important; line-height: 1.72!important;}
.text-detial-content p{padding: 8px 0;}
.text-detial-content img{max-width:98%!important; margin:0 auto; display:block; border: 1px solid #e6e6e6; -webkit-box-shadow: 0 2px 6px rgba(26,26,26,.08); box-shadow: 0 2px 6px rgba(26,26,26,.08); border-radius: 4px;}
.text-detial-content h1,.text-detial-content h2,.text-detial-content h3,.text-detial-content h4,.text-detial-content h5{margin-top:10px;}
.text-detial-content a{color:#186AF2; font-style:italic;}
.text-detial-content a:hover{text-decoration:underline;}
.text-detial-content p code,.blog-detial-content pre{margin:0 3px;font-size: 14px; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; background: #f6f6f6; padding: 10px; border-radius: 2px;}
.text-detial-content p code{border: 1px solid #eee;padding: 2px 4px;}
.text-detial-content table {border-collapse: collapse; border-spacing: 0; display: block; width: 100%; overflow: auto; word-break: normal;word-break: keep-all; margin-top: 0;margin-bottom: 16px;}
.text-detial-content table tr {background-color: #fff;border-top: 1px solid #ccc;}
.text-detial-content table tr:nth-child(2n) {background-color: #f8f8f8;}
.text-detial-content table td, .blog-detial-content table th { padding: 6px 12px;border: 1px solid #ddd; font-size:14px; }
.text-detial-content table th {font-weight: 800;}
.text-detial-content li {list-style: initial;margin-left: 20px;}
:not(pre)>code[class*=language-], pre[class*=language-]{background:#fff!important;border:1px solid #e8e8e8!important; border-radius:3px;}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<div class="page-content">
<h3 class="h3-title">公告详情</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">公告标题</td>
<td>{$note.title}</td>
<td class="layui-td-gray2">公告分类</td>
<td>
{volist name=":set_recursion(note_cate())" id="v"}
{eq name="$note.cate_id" value="$v.id" }{$v.title}{/eq}
{/volist}
</td>
</tr>
<tr>
<td class="layui-td-gray">展示期间</td>
<td>{$note.start_time | date='Y-m-d'} - {$note.end_time | date='Y-m-d'}</td>
<td class="layui-td-gray2">状态</td>
<td>
{eq name="$note.status" value="1" }正常{/eq}
{eq name="$note.status" value="0" }禁用{/eq}
</td>
</tr>
<tr>
<td class="layui-td-gray">关联链接</td>
<td>{$note.src}</td>
<td class="layui-td-gray">排序</td>
<td>{$note.sort}</td>
</tr>
<tr>
<td class="layui-td-gray2" style="vertical-align:top;">公告内容</td>
<td colspan="3">{$note.content|raw}</td>
</tr>
</table>
<form class="layui-form p-4">
<h1>{$note.title}</h1>
<div class="text-detial-ops">
<span>发表于:{$note.create_time | date='Y-m-d m:i:s'}</span><span>公告分类:{$note.cate_title}</span>
<span>展示期间:{$note.start_time | date='Y-m-d'} - {$note.end_time | date='Y-m-d'}</span>
</div>
<div class="text-detial-content">
{$note.content|raw}
</div>
</div>
{/block}
<!-- /主体 -->
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui) {
}
</script>
{include file="../../base/view/common/layui" base='base' extend="[]" callback="init" /}
<script src="{__GOUGU__}/third_party/prism/prism.js"></script>
{/block}
<!-- /脚本 -->

View File

@ -1,8 +1,5 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/formSelects/formSelects-v4.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}
@ -14,8 +11,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">请假审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">请假审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -302,13 +299,9 @@ function leaveTime() {
return hour;
}
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','formSelects','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, formSelects = layui.formSelects, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#start_time_a',
@ -399,9 +392,9 @@ function leaveTime() {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -464,11 +457,8 @@ function leaveTime() {
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,14 +4,14 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">采购申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">采购申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">物品名称<font>*</font></td>
<td colspan="2"><input type="text" name="name" value="" autocomplete="off" placeholder="请输入物品名称" lay-verify="required" lay-reqText="请输入物品名称" class="layui-input"></td>
<td class="layui-td-gray2">期望交互日期 <span style="color: red">*</span></td>
<td class="layui-td-gray-2">期望交互日期 <span style="color: red">*</span></td>
<td colspan="2">
<input id="detail_time" name="detail_time" autocomplete="off" readonly class="layui-input" value="" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
@ -19,7 +19,7 @@
<tr>
<td class="layui-td-gray">采购数量<font>*</font></td>
<td colspan="2"><input type="text" name="num" value="" autocomplete="off" placeholder="请输入采购数量" lay-verify="required|number" lay-reqText="请输入物品数量" class="layui-input"></td>
<td class="layui-td-gray2">采购金额<font>*</font></td>
<td class="layui-td-gray">采购金额<font>*</font></td>
<td colspan="2"><input type="text" name="amount" value="" autocomplete="off" placeholder="请输入采购金额" lay-verify="required|number" lay-reqText="请输入采购金额" class="layui-input"></td>
</tr>
<tr>
@ -57,7 +57,7 @@
<tr>
<td class="layui-td-gray">物品名称<font>*</font></td>
<td colspan="2"><input type="text" name="name" value="{$detail.name}" autocomplete="off" placeholder="请输入物品名称" lay-verify="required" lay-reqText="请输入物品名称" class="layui-input"></td>
<td class="layui-td-gray2">期望交互日期 <span style="color: red">*</span></td>
<td class="layui-td-gray-2">期望交互日期 <span style="color: red">*</span></td>
<td colspan="2">
<input id="detail_time" name="detail_time" autocomplete="off" readonly class="layui-input" value="{$detail.detail_time}" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
@ -65,7 +65,7 @@
<tr>
<td class="layui-td-gray">采购数量<font>*</font></td>
<td colspan="2"><input type="text" name="num" value="{$detail.num}" autocomplete="off" placeholder="请输入采购数量" lay-verify="required|number" lay-reqText="请输入物品数量" class="layui-input"></td>
<td class="layui-td-gray2">采购金额<font>*</font></td>
<td class="layui-td-gray">采购金额<font>*</font></td>
<td colspan="2"><input type="text" name="amount" value="{$detail.amount}" autocomplete="off" placeholder="请输入采购金额" lay-verify="required|number" lay-reqText="请输入采购金额" class="layui-input"></td>
</tr>
<tr>
@ -112,12 +112,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#detail_time',
@ -154,9 +151,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -222,6 +219,5 @@
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">出差审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">出差审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -214,12 +214,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#start_time_a',
@ -255,8 +252,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -264,9 +259,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -334,6 +329,5 @@
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,25 +1,15 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<link rel="stylesheet" href="{__LAYUI__}/plugin/formSelects/formSelects-v4.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}
.layui-form-item{margin-bottom:5px;}
.layui-form-item .layui-btn-danger{display:none; margin-top:-8px}
.layui-form-item:hover .layui-btn-danger{display:inline-block;}
.select-1,.select-2{display:none;}
</style>
{include file="/approve/add_style" /}
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">付款申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">付款申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">付款金额<font>*</font></td>
<td class="layui-td-gray">付款金额<font>*</font></td>
<td><input type="text" name="amount" value="" autocomplete="off" placeholder="请输入付款金额" lay-verify="required|number" lay-reqText="请输入付款金额" class="layui-input"></td>
<td class="layui-td-gray">付款方式<font>*</font></td>
<td>
@ -40,7 +30,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">收款人全称<font>*</font></td>
<td class="layui-td-gray-2">收款人全称<font>*</font></td>
<td><input type="text" name="name" value="" autocomplete="off" placeholder="请输入收款人全称" lay-verify="required" lay-reqText="请输入收款人全称" class="layui-input"></td>
<td class="layui-td-gray">银行账号<font>*</font></td>
<td><input type="text" name="bank" value="" autocomplete="off" placeholder="请输入银行账号" lay-verify="required|number" lay-reqText="请输入银行账号" class="layui-input"></td>
@ -82,7 +72,7 @@
{else/}
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">付款金额<font>*</font></td>
<td class="layui-td-gray">付款金额<font>*</font></td>
<td><input type="text" name="amount" value="{$detail.amount}" autocomplete="off" placeholder="请输入费用金额" lay-verify="required|number" lay-reqText="请输入费用金额" class="layui-input"></td>
<td class="layui-td-gray">付款方式<font>*</font></td>
<td>
@ -103,7 +93,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">收款人全称<font>*</font></td>
<td class="layui-td-gray-2">收款人全称<font>*</font></td>
<td><input type="text" name="name" value="{$detail.name}" autocomplete="off" placeholder="请输入收款人全称" lay-verify="required" lay-reqText="请输入收款人全称" class="layui-input"></td>
<td class="layui-td-gray">银行账号<font>*</font></td>
<td><input type="text" name="bank" value="{$detail.bank}" autocomplete="off" placeholder="请输入银行账号" lay-verify="required|number" lay-reqText="请输入银行账号" class="layui-input"></td>
@ -156,11 +146,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -198,9 +186,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -268,6 +256,5 @@
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">公文流转审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">公文流转审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -123,11 +123,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -156,8 +154,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -165,9 +161,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -235,6 +231,5 @@
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">会议室预定审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">会议室预定审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -76,7 +76,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray">会议室名称<font>*</font></td>
<td class="layui-td-gray-2">会议室名称<font>*</font></td>
<td colspan="5"><input type="text" name="name" value="" autocomplete="off" placeholder="请输入会议室名称" lay-verify="required" lay-reqText="请输入会议室名称" class="layui-input"></td>
</tr>
<tr>
@ -173,7 +173,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray">会议室名称<font>*</font></td>
<td class="layui-td-gray-2">会议室名称<font>*</font></td>
<td colspan="5"><input type="text" name="name" value="{$detail.name}" autocomplete="off" placeholder="请输入会议室名称" lay-verify="required" lay-reqText="请输入会议室名称" class="layui-input"></td>
</tr>
<tr>
@ -214,11 +214,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -255,8 +253,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -329,11 +325,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">活动经费审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">活动经费审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -230,11 +230,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -280,9 +278,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -350,6 +348,5 @@
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">加班申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">加班申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -331,12 +331,9 @@ function leaveTime() {
}
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#start_time_a',
@ -412,9 +409,9 @@ function leaveTime() {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -482,6 +479,5 @@ function leaveTime() {
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">奖励申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">奖励申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -100,12 +100,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#detail_time',
@ -142,9 +139,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -207,11 +204,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">借款申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">借款申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -138,11 +138,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -180,9 +178,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -245,11 +243,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">离职申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">离职申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -37,17 +37,17 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">申请离职日期<font>*</font></td>
<td class="layui-td-gray-2">申请离职日期<font>*</font></td>
<td colspan="2"><input id="start_time" name="start_time" autocomplete="off" class="layui-input" value="" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间"></td>
<td class="layui-td-gray2">预计离职日期<font>*</font></td>
<td class="layui-td-gray-2">预计离职日期<font>*</font></td>
<td colspan="2">
<input id="end_time" name="end_time" autocomplete="off" class="layui-input" value="" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
</tr>
<tr>
<td class="layui-td-gray">申请离职原因<font>*</font></td>
<td class="layui-td-gray">离职原因<font>*</font></td>
<td colspan="5">
<textarea name="content" placeholder="请输入申请离职原因" class="layui-textarea" lay-verify="required" lay-reqText="请输入申请离职原因"></textarea>
<textarea name="content" placeholder="请输入离职原因" class="layui-textarea" lay-verify="required" lay-reqText="请输入离职原因"></textarea>
</td>
</tr>
<tr>
@ -99,17 +99,17 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">申请离职日期<font>*</font></td>
<td class="layui-td-gray-2">申请离职日期<font>*</font></td>
<td colspan="2"><input id="start_time" name="start_time" autocomplete="off" class="layui-input" value="{$detail.start_time_a}" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间"></td>
<td class="layui-td-gray2">预计离职日期<font>*</font></td>
<td class="layui-td-gray-2">预计离职日期<font>*</font></td>
<td colspan="2">
<input id="end_time" name="end_time" autocomplete="off" class="layui-input" value="{$detail.end_time_a}" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
</tr>
<tr>
<td class="layui-td-gray">申请离职原因<font>*</font></td>
<td class="layui-td-gray">离职原因<font>*</font></td>
<td colspan="5">
<textarea name="content" placeholder="请输入申请离职原因" class="layui-textarea" lay-verify="required" lay-reqText="请输入申请离职原因">{$detail.content}</textarea>
<textarea name="content" placeholder="请输入离职原因" class="layui-textarea" lay-verify="required" lay-reqText="请输入离职原因">{$detail.content}</textarea>
</td>
</tr>
<tr>
@ -144,12 +144,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间
laydate.render({
elem: '#detail_time,#start_time,#end_time',
@ -177,8 +174,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -186,9 +181,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -256,6 +251,5 @@
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">请假审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">请假审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -292,13 +292,9 @@ function leaveTime() {
return hour;
}
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','formSelects','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, formSelects = layui.formSelects, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#start_time_a',
@ -389,9 +385,9 @@ function leaveTime() {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -459,6 +455,5 @@ function leaveTime() {
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">入职申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">入职申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -146,11 +146,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -179,8 +177,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -188,9 +184,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -253,11 +249,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,6 +1,3 @@
<link rel="stylesheet" href="{__LAYUI__}/plugin/formSelects/formSelects-v4.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/dtree.css">
<link rel="stylesheet" href="{__LAYUI__}/plugin/dtree/font/dtreefont.css">
<style>
.layui-form-pane .layui-form-label{color:#999; width:80px; padding:8px 3px;}
.layui-form-item .layui-inline{margin-right:3px; margin-bottom:10px;}

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">外出审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">外出审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -267,12 +267,9 @@ function leaveTime() {
}
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#start_time_a',
@ -354,8 +351,6 @@ function leaveTime() {
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -363,9 +358,9 @@ function leaveTime() {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -428,11 +423,8 @@ function leaveTime() {
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,12 +4,12 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">物品维修审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">物品维修审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">故障设备名称<font>*</font></td>
<td class="layui-td-gray-2">故障设备名称<font>*</font></td>
<td colspan="2"><input type="text" name="name" value="" autocomplete="off" placeholder="请输入设备名称" lay-verify="required" lay-reqText="请输入设备名称" class="layui-input"></td>
<td class="layui-td-gray">紧急程度<font>*</font></td>
<td colspan="2">
@ -22,7 +22,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">预计维修费用<font>*</font></td>
<td class="layui-td-gray-2">预计维修费用<font>*</font></td>
<td colspan="2"><input type="text" name="amount" value="" autocomplete="off" placeholder="请输入预计维修费用" lay-verify="required|number" lay-reqText="请输入预计维修费用" class="layui-input"></td>
<td class="layui-td-gray">报修日期 <span style="color: red">*</span></td>
<td colspan="2">
@ -114,12 +114,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
elem: '#detail_time',
@ -147,8 +144,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -156,9 +151,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -221,11 +216,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">用车审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">用车审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -126,7 +126,7 @@
<td colspan="5" id="duration">-</td>
</tr>
<tr>
<td class="layui-td-gray">用车目的地<font>*</font></td>
<td class="layui-td-gray-2">用车目的地<font>*</font></td>
<td colspan="2"><input type="text" name="address" value="" autocomplete="off" placeholder="请输入用车目的地" lay-verify="required" lay-reqText="请输入用车目的地" class="layui-input"></td>
<td class="layui-td-gray">车辆选择<font>*</font></td>
<td colspan="2">
@ -282,7 +282,7 @@
<td colspan="5" id="duration">共{$detail.duration}小时</td>
</tr>
<tr>
<td class="layui-td-gray">用车目的地<font>*</font></td>
<td class="layui-td-gray-2">用车目的地<font>*</font></td>
<td colspan="2"><input type="text" name="address" value="{$detail.address}" autocomplete="off" placeholder="请输入用车目的地" lay-verify="required" lay-reqText="请输入用车目的地" class="layui-input"></td>
<td class="layui-td-gray">车辆选择<font>*</font></td>
<td colspan="2">
@ -356,12 +356,9 @@ function leaveTime() {
return hours;
}
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -429,8 +426,6 @@ function leaveTime() {
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -438,9 +433,9 @@ function leaveTime() {
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -503,11 +498,8 @@ function leaveTime() {
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,12 +4,12 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">用车归还审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">用车归还审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">车辆选择<font>*</font></td>
<td class="layui-td-gray">车辆选择<font>*</font></td>
<td colspan="2">
<select name="detail_type" lay-verify="required" lay-reqText="请选择">
<option value="">--请选择--</option>
@ -18,15 +18,15 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">归还时间 <span style="color: red">*</span></td>
<td class="layui-td-gray">归还时间 <span style="color: red">*</span></td>
<td colspan="2">
<input id="detail_time" name="detail_time" autocomplete="off" class="layui-input" value="" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
</tr>
<tr>
<td class="layui-td-gray2">用车前公里数<font>*</font></td>
<td class="layui-td-gray-2">用车前公里数<font>*</font></td>
<td colspan="2"><input type="text" name="num" value="" autocomplete="off" placeholder="请输入用车前公里数" lay-verify="required" lay-reqText="请输入用车前公里数" class="layui-input"></td>
<td class="layui-td-gray2">用车后公里数<font>*</font></td>
<td class="layui-td-gray-2">用车后公里数<font>*</font></td>
<td colspan="2"><input type="text" name="num1" value="" autocomplete="off" placeholder="请输入用车后公里数" lay-verify="required" lay-reqText="请输入用车后公里数" class="layui-input"></td>
</tr>
<tr>
@ -56,7 +56,7 @@
{else/}
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray2">车辆选择<font>*</font></td>
<td class="layui-td-gray">车辆选择<font>*</font></td>
<td colspan="2">
<select name="detail_type" lay-verify="required" lay-reqText="请选择">
<option value="">--请选择--</option>
@ -65,15 +65,15 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">归还时间 <span style="color: red">*</span></td>
<td class="layui-td-gray">归还时间 <span style="color: red">*</span></td>
<td colspan="2">
<input id="detail_time" name="detail_time" autocomplete="off" class="layui-input" value="{$detail.detail_time}" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
</tr>
<tr>
<td class="layui-td-gray2">用车前公里数<font>*</font></td>
<td class="layui-td-gray-2">用车前公里数<font>*</font></td>
<td colspan="2"><input type="text" name="num" value="{$detail.num}" autocomplete="off" placeholder="请输入用车前公里数" lay-verify="required" lay-reqText="请输入用车前公里数" class="layui-input"></td>
<td class="layui-td-gray2">用车后公里数<font>*</font></td>
<td class="layui-td-gray-2">用车后公里数<font>*</font></td>
<td colspan="2"><input type="text" name="num1" value="{$detail.num1}" autocomplete="off" placeholder="请输入用车后公里数" lay-verify="required" lay-reqText="请输入用车后公里数" class="layui-input"></td>
</tr>
<tr>
@ -114,11 +114,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -147,8 +145,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -156,9 +152,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -221,11 +217,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">用章审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">用章审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -24,11 +24,11 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">文件名称<font>*</font></td>
<td class="layui-td-gray">文件名称<font>*</font></td>
<td colspan="5"><input type="text" name="name" value="" autocomplete="off" placeholder="请输入文件名称" lay-verify="required" lay-reqText="请输入文件名称" class="layui-input"></td>
</tr>
<tr>
<td class="layui-td-gray2">文件类型<font>*</font></td>
<td class="layui-td-gray">文件类型<font>*</font></td>
<td colspan="2">
<select name="other_type" lay-verify="required" lay-reqText="请选择">
<option value="">--请选择--</option>
@ -87,11 +87,11 @@
</td>
</tr>
<tr>
<td class="layui-td-gray2">文件名称<font>*</font></td>
<td class="layui-td-gray">文件名称<font>*</font></td>
<td colspan="5"><input type="text" name="name" value="{$detail.name}" autocomplete="off" placeholder="请输入文件名称" lay-verify="required" lay-reqText="请输入文件名称" class="layui-input"></td>
</tr>
<tr>
<td class="layui-td-gray2">文件类型<font>*</font></td>
<td class="layui-td-gray">文件类型<font>*</font></td>
<td colspan="2">
<select name="other_type" lay-verify="required" lay-reqText="请选择">
<option value="">--请选择--</option>
@ -146,11 +146,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -179,8 +177,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -188,9 +184,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -253,11 +249,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">招聘需求审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">招聘需求审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -18,7 +18,7 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">期望到岗日期 <span style="color: red">*</span></td>
<td class="layui-td-gray-2">期望到岗日期 <span style="color: red">*</span></td>
<td colspan="2">
<input id="detail_time" name="detail_time" autocomplete="off" readonly class="layui-input" value="" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
@ -80,7 +80,7 @@
{/volist}
</select>
</td>
<td class="layui-td-gray2">期望到岗日期 <span style="color: red">*</span></td>
<td class="layui-td-gray-2">期望到岗日期 <span style="color: red">*</span></td>
<td colspan="2">
<input id="detail_time" name="detail_time" autocomplete="off" readonly class="layui-input" value="{$detail.detail_time}" readonly lay-verify="required" placeholder="请选择时间" lay-reqText="请选择时间">
</td>
@ -144,11 +144,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -177,8 +175,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -186,9 +182,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -251,11 +247,8 @@
}
})
}
});
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<form class="layui-form page-content">
<h3 class="h3-title">转正申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">转正申请审批</h3>
{eq name="$id" value="0"}
<table class="layui-table layui-table-form">
<tr>
@ -37,7 +37,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray">试用期评价<font>*</font></td>
<td class="layui-td-gray-2">试用期评价<font>*</font></td>
<td colspan="5">
<textarea name="content" placeholder="请输入备注" class="layui-textarea" lay-verify="required" lay-reqText="请输入试用期评价"></textarea>
</td>
@ -91,7 +91,7 @@
</td>
</tr>
<tr>
<td class="layui-td-gray">试用期评价<font>*</font></td>
<td class="layui-td-gray-2">试用期评价<font>*</font></td>
<td colspan="5">
<textarea name="content" placeholder="请输入备注" class="layui-textarea" lay-verify="required" lay-reqText="请输入试用期评价">{$detail.content}</textarea>
</td>
@ -128,11 +128,9 @@
<!-- 脚本 -->
{block name="script"}
<script>
function init(layui){
var form = layui.form
,laydate = layui.laydate
,employeepicker = layui.employeepicker
,layer = layui.layer;
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate;
//日期时间范围
laydate.render({
@ -161,8 +159,6 @@
//监听提交
form.on('submit(webform)', function(data){
console.log(data.field);
//return false;
$.ajax({
url: "/oa/approve/add",
type:'post',
@ -170,9 +166,9 @@
success: function (e) {
layer.msg(e.msg);
if (e.code == 0) {
parent.tableIns.reload();
parent.layui.pageTable.reload();
setTimeout(function(){
parent.layui.rightpage.close();
parent.layui.tool.close();
},1000);
}
}
@ -235,11 +231,8 @@
}
})
}
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['formSelects','employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -2,22 +2,18 @@
{block name="style"}
<style>
.layui-card-header{height:40px; line-height:40px; border-left:1px solid #eee; border-right:1px solid #eee; border-bottom:none}
.square .layui-col-md4{border: 1px solid #f5f5f5; cursor:pointer;}
.square .layui-col-md4 div{padding:15px 0; text-align:center; background-color:#fff; color:#666}
.square .layui-col-md4 i{font-size:24px; font-weight:800; display:block; padding-bottom:5px; color:#4285f4}
.square .layui-col-md4:nth-child(3n-1),.square .layui-col-md4:nth-child(3n){
border-left:0;
}
.square .layui-col-md4:nth-child(n+4){
margin-top: -1px;
}
.square .layui-col-md4:nth-child(3n-1),.square .layui-col-md4:nth-child(3n){border-left:0;}
.square .layui-col-md4:nth-child(n+4){margin-top: -1px;}
.square .layui-col-md4 div:hover{color:#4285f4; background-color:#fafafa}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-row layui-col-space15">
<div class="p-3">
<div class="layui-row layui-col-space12">
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header" style="border-bottom:1px solid #eee;"><h3 class="h3-title">审批新申请</h3></div>
@ -89,6 +85,7 @@
</div>
</div>
</div>
</div>
<script type="text/html" id="toolbarDemo">
<h3 class="h3-title" style="height:32px;">审批列表</h3>
</script>
@ -98,20 +95,16 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table=layui.table,
element=layui.element,
rightpage=layui.rightpage,
layer=layui.layer;
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,element=layui.element;
element.on('tab(tab)', function(data){
tableIns.reload({where:{status:data.index},page:{curr:1}});
return false;
});
element.on('tab(tab)', function(data){
layui.pageTable.reload({where:{status:data.index},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'审批列表'
@ -139,17 +132,16 @@
table.on('tool(test)',function (obj) {
if(obj.event === 'view'){
rightpage.open('/oa/approve/view?id='+obj.data.id,'900px');
tool.side('/oa/approve/view?id='+obj.data.id);
}
});
$('.square').on('click','.layui-col-md4',function(){
var type=$(this).data('type');
rightpage.open('/oa/approve/add?type='+type,'900px');
tool.side('/oa/approve/add?type='+type);
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -1,92 +1,20 @@
{extend name="../../base/view/common/base" /}
{block name="style"}
<style>
.layui-card-header{height:40px; line-height:40px; border-left:1px solid #eee; border-right:1px solid #eee; border-bottom:none}
.square .layui-col-md4{border: 1px solid #f5f5f5; cursor:pointer;}
.square .layui-col-md4 div{padding:16px 0; text-align:center; background-color:#fff}
.square .layui-col-md4 i{font-size:24px; font-weight:800; display:block; padding-bottom:8px; color:#4285f4}
.square .layui-col-md4:nth-child(3n-1){
border-left:0;border-right:0;
}
.square .layui-col-md4:nth-child(n+4){
margin-top: -1px;
}
</style>
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-row layui-col-space15">
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header" style="border-bottom:1px solid #eee;"><h3 class="h3-title">审批新申请</h3></div>
<div class="layui-card-header"><strong>假勤</strong></div>
<div class="square">
<div class="layui-row">
{volist name="list" id="vo"}
{eq name="vo.type" value="1"}
<div class="layui-col-md4" data-type="{$vo.id}" title="{$vo.title}"><div><i class="iconfont {$vo.icon}"></i>{$vo.title}</div></div>
{/eq}
{/volist}
</div>
</div>
<div class="layui-card-header"><strong>行政</strong></div>
<div class="square">
<div class="layui-row">
{volist name="list" id="vo"}
{eq name="vo.type" value="2"}
<div class="layui-col-md4" data-type="{$vo.id}" title="{$vo.title}"><div><i class="iconfont {$vo.icon}"></i>{$vo.title}</div></div>
{/eq}
{/volist}
</div>
</div>
<div class="layui-card-header"><strong>财务</strong></div>
<div class="square">
<div class="layui-row">
{volist name="list" id="vo"}
{eq name="vo.type" value="3"}
<div class="layui-col-md4" data-type="{$vo.id}" title="{$vo.title}"><div><i class="iconfont {$vo.icon}"></i>{$vo.title}</div></div>
{/eq}
{/volist}
</div>
</div>
<div class="layui-card-header"><strong>人事</strong></div>
<div class="square">
<div class="layui-row">
{volist name="list" id="vo"}
{eq name="vo.type" value="4"}
<div class="layui-col-md4" data-type="{$vo.id}" title="{$vo.title}"><div><i class="iconfont {$vo.icon}"></i>{$vo.title}</div></div>
{/eq}
{/volist}
</div>
</div>
<div class="layui-card-header"><strong>其他</strong></div>
<div class="square">
<div class="layui-row">
{volist name="list" id="vo"}
{eq name="vo.type" value="5"}
<div class="layui-col-md4" data-type="{$vo.id}" title="{$vo.title}"><div><i class="iconfont {$vo.icon}"></i>{$vo.title}</div></div>
{/eq}
{/volist}
</div>
</div>
<div class="p-3">
<div class="layui-card">
<div class="body-table layui-tab layui-tab-brief" lay-filter="tab">
<ul class="layui-tab-title">
<li class="layui-this">全部</li>
<li>待我审批</li>
<li>我已审批</li>
</ul>
<div class="layui-tab-content" style="padding:0">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
</div>
<div class="layui-col-md9">
<div class="layui-card">
<div class="body-table layui-tab layui-tab-brief" lay-filter="tab">
<ul class="layui-tab-title">
<li class="layui-this">全部</li>
<li>待我审批</li>
<li>我已审批</li>
</ul>
<div class="layui-tab-content" style="padding:0">
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/html" id="toolbarDemo">
<h3 class="h3-title" style="height:32px;">审批列表</h3>
</script>
@ -95,21 +23,17 @@
<!-- 脚本 -->
{block name="script"}
<script>
var tableIns = null;
function init(layui){
var table=layui.table,
element=layui.element,
rightpage=layui.rightpage,
layer=layui.layer;
<script>
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,element=layui.element;
element.on('tab(tab)', function(data){
tableIns.reload({where:{status:data.index},page:{curr:1}});
return false;
});
element.on('tab(tab)', function(data){
layui.pageTable.reload({where:{status:data.index},page:{curr:1}});
return false;
});
tableIns = table.render({
layui.pageTable = table.render({
elem: '#test'
,toolbar: '#toolbarDemo'
,title:'审批列表'
@ -137,17 +61,10 @@
table.on('tool(test)',function (obj) {
if(obj.event === 'view'){
rightpage.open('/oa/approve/view?id='+obj.data.id,'900px');
tool.side('/oa/approve/view?id='+obj.data.id);
}
});
$('.square').on('click','.layui-col-md4',function(){
var type=$(this).data('type');
rightpage.open('/oa/approve/add?type='+type,'900px');
});
}
</script>
{include file="../../base/view/common/layui" base='base' extend="['rightpage']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">采购申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">采购申请审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">物品名称</td>
@ -37,6 +37,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">出差审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">出差审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">出差地点</td>
@ -29,6 +29,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">付款申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">付款申请审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">付款金额</td>
@ -49,6 +49,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">公文流转审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">公文流转审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">文件名称</td>
@ -40,7 +40,6 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">会议室预定审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">会议室预定审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">会议室名称</td>
@ -29,6 +29,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">活动经费审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">活动经费审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">活动名称</td>
@ -33,6 +33,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">加班申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">加班申请审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">加班时间</td>
@ -27,6 +27,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

View File

@ -4,8 +4,8 @@
{/block}
<!-- 主体 -->
{block name="body"}
<div class="layui-form page-content">
<h3 class="h3-title">奖励申请审批</h3>
<form class="layui-form p-4">
<h3 class="pb-3">奖励申请审批</h3>
<table class="layui-table layui-table-form">
<tr>
<td class="layui-td-gray">奖励金额</td>
@ -31,6 +31,5 @@
<!-- 脚本 -->
{block name="script"}
{include file="/approve/view_script" /}
{include file="../../base/view/common/layui" base='base' extend="['employeepicker']" callback="init" /}
{/block}
<!-- /脚本 -->

Some files were not shown because too many files have changed in this diff Show More