1、结合最新版的layui2.8.2,整体优化了前台的体验操作
2、树形table去除第三方组件treeGrid的依赖,使用layui2.8.2内置的treetable组件。 3、使用layui2.8.2的日期组件的新特性对联动日期进行优化。 此处更新更多的是改动了模板文件,功能逻辑没改变。
This commit is contained in:
parent
c6a7415b7b
commit
c114d6edbc
@ -22,7 +22,8 @@ class Cate extends BaseController
|
||||
{
|
||||
if (request()->isAjax()) {
|
||||
$cate = Db::name('ArticleCate')->order('create_time asc')->select();
|
||||
return to_assign(0, '', $cate);
|
||||
$list = generateTree($cate);
|
||||
return to_assign(0, '', $list);
|
||||
} else {
|
||||
return view();
|
||||
}
|
||||
|
@ -2,8 +2,8 @@
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<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 class="gg-form-bar border-t border-x" style="padding-bottom:12px;">
|
||||
<button class="layui-btn layui-btn-sm add-menu">+ 添加分类</button>
|
||||
</div>
|
||||
<div>
|
||||
<table class="layui-hide" id="treeTable" lay-filter="treeTable"></table>
|
||||
@ -18,18 +18,20 @@
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script>
|
||||
const moduleInit = ['tool', 'treeGrid'];
|
||||
const moduleInit = ['tool'];
|
||||
function gouguInit() {
|
||||
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
|
||||
var pageTable = treeGrid.render({
|
||||
id:'treeTable'
|
||||
,elem: '#treeTable'
|
||||
,idField:'id'
|
||||
var treeTable = layui.treeTable, tool = layui.tool;
|
||||
|
||||
layui.pageTable = treeTable.render({
|
||||
elem: '#treeTable'
|
||||
,url: "/article/cate/cate"
|
||||
,cellMinWidth: 100
|
||||
,treeId:'id'//树形id字段名称
|
||||
,treeUpId:'pid'//树形父id字段名称
|
||||
,treeShowName:'title'//以树形式显示的字段
|
||||
,tree: { // treeTable 特定属性集
|
||||
customName: {name:'title'},
|
||||
data: {},
|
||||
view: {showIcon:false},
|
||||
async: {},
|
||||
callback: {}
|
||||
}
|
||||
,cols: [[
|
||||
{field:'id',width:80, title: 'ID号', align:'center'}
|
||||
,{field: 'sort', title: '排序',align:'center', width:80}
|
||||
@ -53,7 +55,7 @@
|
||||
});
|
||||
|
||||
//操作按钮
|
||||
treeGrid.on('tool(treeTable)', function (obj) {
|
||||
treeTable.on('tool(treeTable)', function (obj) {
|
||||
if (obj.event === 'add') {
|
||||
tool.side('/article/cate/cate_add?pid='+obj.data.id);
|
||||
return;
|
||||
|
@ -76,9 +76,7 @@
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
setTimeout(function () {
|
||||
parent.location.reload();
|
||||
}, 1000);
|
||||
tool.sideClose(1000);
|
||||
}
|
||||
}
|
||||
tool.post("/article/cate/cate_add", data.field, callback);
|
||||
|
@ -1,81 +0,0 @@
|
||||
{extend name="../../base/view/common/base" /}
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<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>
|
||||
<table class="layui-hide" id="treeTable" lay-filter="treeTable"></table>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/html" id="switchStatus">
|
||||
<input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="是|否" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
|
||||
</script>
|
||||
{/block}
|
||||
<!-- /主体 -->
|
||||
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script>
|
||||
const moduleInit = ['tool', 'treeGrid'];
|
||||
function gouguInit() {
|
||||
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
|
||||
var pageTable = treeGrid.render({
|
||||
id:'treeTable'
|
||||
,elem: '#treeTable'
|
||||
,idField:'id'
|
||||
,url: "/article/cate/cate"
|
||||
,cellMinWidth: 100
|
||||
,treeId:'id'//树形id字段名称
|
||||
,treeUpId:'pid'//树形父id字段名称
|
||||
,treeShowName:'title'//以树形式显示的字段
|
||||
,cols: [[
|
||||
{field:'id',width:80, title: 'ID号', align:'center'}
|
||||
,{field: 'sort', title: '排序',align:'center', width:80}
|
||||
,{field:'title', edit:'text',width:240, title: '分类名称'}
|
||||
,{field:'pid', title: '父级ID', width:80, align:'center'}
|
||||
,{field:'desc', title: '描述', }
|
||||
,{width:160,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>';
|
||||
return html;
|
||||
}
|
||||
}
|
||||
]]
|
||||
,page:false
|
||||
//,skin:'line'
|
||||
});
|
||||
|
||||
//表头工具栏事件
|
||||
$('.add-menu').on('click', function(){
|
||||
tool.side("/article/cate/cate_add");
|
||||
return;
|
||||
});
|
||||
|
||||
//操作按钮
|
||||
treeGrid.on('tool(treeTable)', function (obj) {
|
||||
if (obj.event === 'add') {
|
||||
tool.side('/article/cate/cate_add?pid='+obj.data.id);
|
||||
return;
|
||||
}
|
||||
if (obj.event === 'edit') {
|
||||
tool.side('/article/cate/cate_add?id='+obj.data.id);
|
||||
return;
|
||||
}
|
||||
if (obj.event === 'del') {
|
||||
layer.confirm('确定要删除吗?', { icon: 3, title: '提示' }, function (index) {
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
obj.del();
|
||||
}
|
||||
}
|
||||
tool.delete("/article/cate/cate_delete", { id: obj.data.id }, callback);
|
||||
layer.close(index);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
{/block}
|
||||
<!-- /脚本 -->
|
@ -14,7 +14,10 @@
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -14,7 +14,10 @@
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -1098,6 +1098,19 @@ function get_data_node($data=[],$pid=0){
|
||||
return array_values($dep);
|
||||
}
|
||||
|
||||
|
||||
function generateTree($flatArray, $parentId = 0) {
|
||||
$tree = [];
|
||||
foreach ($flatArray as $item) {
|
||||
if ($item['pid'] === $parentId) {
|
||||
$node = $item;
|
||||
$node['children'] = generateTree($flatArray, $item['id']);
|
||||
$tree[] = $node;
|
||||
}
|
||||
}
|
||||
return $tree;
|
||||
}
|
||||
|
||||
//访问按小时归档统计
|
||||
function hour_document($arrData)
|
||||
{
|
||||
|
@ -302,13 +302,8 @@ class Index extends BaseController
|
||||
View::assign('flows', $flows);
|
||||
View::assign('auth', $auth);
|
||||
View::assign('detail', $detail);
|
||||
if($detail['check_status'] == 0 || $detail['check_status'] == 4){
|
||||
return view('view_set');
|
||||
}
|
||||
else{
|
||||
return view();
|
||||
}
|
||||
}
|
||||
//删除
|
||||
public function delete()
|
||||
{
|
||||
|
@ -2,7 +2,7 @@
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<div class="p-3">
|
||||
<div class="gg-form-bar border-x border-t red">
|
||||
<div class="gg-form-bar border-x border-t red" style="padding-bottom:12px">
|
||||
<p><strong>说明</strong></p>
|
||||
<p>合同性质分为:普通合同、框架合同、补充协议、其他合同</p>
|
||||
<p>1、普通合同有合同金额,且金额为必填项;</p>
|
||||
@ -14,7 +14,7 @@
|
||||
</div>
|
||||
<script type="text/html" id="toolbarDemo">
|
||||
<div class="layui-btn-container">
|
||||
<button class="layui-btn layui-btn-normal layui-btn-sm addNew" type="button">+ 添加合同类型</button>
|
||||
<button class="layui-btn layui-btn-sm addNew" type="button">+ 添加合同类型</button>
|
||||
</div>
|
||||
</script>
|
||||
{/block}
|
||||
|
@ -76,16 +76,20 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">客户联系地址</td>
|
||||
<td>
|
||||
<td colspan="3">
|
||||
<input type="text" name="customer_address" autocomplete="off" placeholder="请输入客户联系地址" class="layui-input">
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同开始日期<font>*</font></td>
|
||||
<td class="layui-td-gray-2">合同始止日期<font>*</font></td>
|
||||
<td>
|
||||
<input type="text" name="start_time" readonly lay-verify="required" lay-reqText="请选择合同开始时间" placeholder="请选择合同开始时间" class="layui-input select-time">
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同结束日期<font>*</font></td>
|
||||
<td>
|
||||
<input type="text" name="end_time" readonly lay-verify="required" lay-reqText="请选择合同结束时间" placeholder="请选择合同结束时间" class="layui-input select-time">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time" lay-verify="required" lay-reqText="请选择合同开始时间">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time" lay-verify="required" lay-reqText="请选择合同结束时间">
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{neq name="$type" value="2"}
|
||||
@ -120,7 +124,7 @@
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同签订时间<font>*</font></td>
|
||||
<td>
|
||||
<input type="text" name="sign_time" readonly lay-verify="required" lay-reqText="请选择合同签订日期" placeholder="请选择合同签订日期" class="layui-input select-time">
|
||||
<input type="text" name="sign_time" readonly lay-verify="required" lay-reqText="请选择合同签订日期" placeholder="请选择合同签订日期" class="layui-input tool-time">
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同制定人<font>*</font></td>
|
||||
<td>
|
||||
@ -177,12 +181,11 @@
|
||||
const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
function gouguInit() {
|
||||
var form = layui.form,tool=layui.tool,table = layui.table,laydate = layui.laydate,oaTool = layui.oaTool, employeepicker = layui.employeepicker;
|
||||
//日期
|
||||
lay('.select-time').each(function () {
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click'
|
||||
});
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//相关附件上传
|
||||
|
@ -23,7 +23,10 @@
|
||||
<div class="layui-input-inline" style="width:240px;">
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -66,16 +66,20 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">客户联系地址</td>
|
||||
<td>
|
||||
<td colspan="3">
|
||||
<input type="text" name="customer_address" value="{$detail.customer_address}" autocomplete="off" placeholder="请输入客户联系地址" class="layui-input">
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同开始日期<font>*</font></td>
|
||||
<td class="layui-td-gray-2">合同始止日期<font>*</font></td>
|
||||
<td>
|
||||
<input type="text" name="start_time" value="{$detail.start_time}" readonly lay-verify="required" lay-reqText="请选择合同开始时间" placeholder="请选择合同开始时间" class="layui-input select-time">
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同结束日期<font>*</font></td>
|
||||
<td>
|
||||
<input type="text" name="end_time" value="{$detail.end_time}" readonly lay-verify="required" lay-reqText="请选择合同结束时间" placeholder="请选择合同结束时间" class="layui-input select-time">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time" value="{$detail.start_time}" readonly lay-verify="required" lay-reqText="请选择合同开始时间">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time" value="{$detail.end_time}" readonly lay-verify="required" lay-reqText="请选择合同结束时间">
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{neq name="$detail.type" value="2"}
|
||||
@ -111,7 +115,7 @@
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同签订时间<font>*</font></td>
|
||||
<td>
|
||||
<input type="text" name="sign_time" value="{$detail.sign_time}" readonly lay-verify="required" lay-reqText="请选择合同签订日期" placeholder="请选择合同签订日期" class="layui-input select-time">
|
||||
<input type="text" name="sign_time" value="{$detail.sign_time}" readonly lay-verify="required" lay-reqText="请选择合同签订日期" placeholder="请选择合同签订日期" class="layui-input tool-time">
|
||||
</td>
|
||||
<td class="layui-td-gray-2">合同制定人<font>*</font></td>
|
||||
<td>
|
||||
@ -174,12 +178,11 @@
|
||||
const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
function gouguInit() {
|
||||
var form = layui.form,tool=layui.tool,table = layui.table,laydate = layui.laydate,oaTool = layui.oaTool, employeepicker = layui.employeepicker;
|
||||
//日期
|
||||
lay('.select-time').each(function () {
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click'
|
||||
});
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//相关附件上传
|
||||
|
@ -35,7 +35,10 @@
|
||||
<div class="layui-input-inline" style="width:240px;">
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -12,50 +12,6 @@ html{background-color:#fff;}
|
||||
.log-timeline .open-a{margin:0 4px;}
|
||||
.log-item i{font-weight:800; color:#323232}
|
||||
.log-content strong{margin:0 4px; color:#323232}
|
||||
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:18px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
.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;}
|
||||
</style>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
@ -68,7 +24,7 @@ html{background-color:#fff;}
|
||||
</ul>
|
||||
<div class="layui-tab-content">
|
||||
<div class="layui-tab-item layui-show">
|
||||
<table class="layui-table layui-table-form">
|
||||
<table class="layui-table layui-table-form" style="margin:0">
|
||||
{gt name="$detail.pid" value="0"}
|
||||
<tr>
|
||||
<td class="layui-td-gray">母合同名称</td>
|
||||
@ -212,6 +168,14 @@ html{background-color:#fff;}
|
||||
</td>
|
||||
</tr>
|
||||
{/notempty}
|
||||
</table>
|
||||
|
||||
{if ($detail.check_status == 1)}
|
||||
{include file="/index/view_step" /}
|
||||
{elseif ($detail.check_status == 0) OR ($detail.check_status == 4)}
|
||||
{include file="/index/view_set" /}
|
||||
{else /}
|
||||
<table class="layui-table layui-table-form">
|
||||
{eq name="$detail.check_status" value="2" }
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">归档状态</td>
|
||||
@ -227,7 +191,7 @@ html{background-color:#fff;}
|
||||
</tr>
|
||||
{/eq}
|
||||
|
||||
{eq name="$detail.check_status" value="4" }
|
||||
{eq name="$detail.check_status" value="5" }
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">中止人</td>
|
||||
<td>{$detail.stop_name} </td>
|
||||
@ -240,7 +204,7 @@ html{background-color:#fff;}
|
||||
</tr>
|
||||
{/eq}
|
||||
|
||||
{eq name="$detail.check_status" value="5" }
|
||||
{eq name="$detail.check_status" value="6" }
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">作废人</td>
|
||||
<td>{$detail.void_name} </td>
|
||||
@ -253,11 +217,7 @@ html{background-color:#fff;}
|
||||
</tr>
|
||||
{/eq}
|
||||
</table>
|
||||
|
||||
{eq name="$detail.check_status" value="1" }
|
||||
{include file="/index/view_step" /}
|
||||
{/eq}
|
||||
<div class="pt-3">
|
||||
<div class="pt-2">
|
||||
{gt name="$auth" value="0"}
|
||||
{eq name="$detail.check_status" value="2" }
|
||||
{eq name="$detail.archive_status" value="1" }
|
||||
@ -282,10 +242,9 @@ html{background-color:#fff;}
|
||||
{if ( $detail.check_status eq 3) AND ( $is_create_admin eq 1) }
|
||||
<span class="layui-btn layui-btn-primary check_back"><i class="layui-icon layui-icon-reduce-circle"></i> 撤回</span>
|
||||
{/if}
|
||||
{if ( $detail.check_status eq 4) AND ( $is_create_admin eq 1) }
|
||||
<a class="layui-btn" href="/contract/index/add/id/{$detail.id}">重新编辑</a>
|
||||
{/if}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
</div>
|
||||
<div class="layui-tab-item">
|
||||
{include file="/index/view_log" /}
|
||||
@ -310,6 +269,9 @@ const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
log(layui);
|
||||
}
|
||||
});
|
||||
if(typeof init==='function'){
|
||||
init(form,tool);
|
||||
}
|
||||
|
||||
if (typeof (flowStep) == "function") {
|
||||
flowStep();
|
||||
@ -336,7 +298,6 @@ const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
//选择共享成员弹窗
|
||||
$('body').on('click','#shares',function () {
|
||||
var ids=$(this).data('ids')+'',names = $(this).data('names')+'',share_ids_array=[],share_names_array=[];
|
||||
|
@ -1,203 +1,5 @@
|
||||
{extend name="../../base/view/common/base" /}
|
||||
{block name="style"}
|
||||
<style>
|
||||
html{background-color:#fff;}
|
||||
.log-timeline{ position: relative; min-height:600px; padding-left: 48px; background-color:#fff;}
|
||||
.log-timeline:after {content: ""; position: absolute; top: 0; left: 24px; width: 1px; height: 100%; background: #e3e9ed;}
|
||||
.log-timeline dl{padding-bottom: 8px; position: relative;}
|
||||
.log-timeline dt{font-size: 16px; line-height: 2.4; color: #323232; font-weight:600}
|
||||
.log-timeline dd{font-size: 14px; line-height: 1.6; padding:5px 0}
|
||||
.log-timeline .date-second-point{width: 10px; height: 10px; display: block; border-radius: 50%; border: 3px solid #FBBC05; background: #fff; position: absolute; z-index: 99; left:-32px; top:9px}
|
||||
.log-timeline .log-thumb{width: 24px; height: 24px; border-radius: 50%; margin-right:4px;}
|
||||
.log-timeline .open-a{margin:0 4px;}
|
||||
.log-item i{font-weight:800; color:#323232}
|
||||
.log-content strong{margin:0 4px; color:#323232}
|
||||
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:18px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
.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;}
|
||||
</style>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<form class="layui-form px-4 pt-2" lay-filter="contract">
|
||||
<div class="layui-tab" style="margin:0;" lay-filter="contract" id="contractTab">
|
||||
<ul class="layui-tab-title">
|
||||
<li class="layui-this" data-load="true">合同详情</li>
|
||||
<li>操作记录</li>
|
||||
</ul>
|
||||
<div class="layui-tab-content">
|
||||
<div class="layui-tab-item layui-show">
|
||||
<table class="layui-table layui-table-form">
|
||||
{gt name="$detail.pid" value="0"}
|
||||
<tr>
|
||||
<td class="layui-td-gray">母合同名称</td>
|
||||
<td colspan="7">{$detail.pname}</td>
|
||||
</tr>
|
||||
{/gt}
|
||||
<tr>
|
||||
<td class="layui-td-gray">合同名称</td>
|
||||
<td colspan="5">{$detail.name}</td>
|
||||
<td class="layui-td-gray">合同编号</td>
|
||||
<td>{$detail.code}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray">签约主体(乙方)</td>
|
||||
<td colspan="3">
|
||||
{volist name=":contract_subject()" id="v"}
|
||||
{eq name="$v.id" value="$detail.subject_id" }{$v.title}{/eq}
|
||||
{/volist}
|
||||
</td>
|
||||
<td class="layui-td-gray">合同性质</td>
|
||||
<td>
|
||||
{eq name="$detail.type" value="1" }普通合同{/eq}
|
||||
{eq name="$detail.type" value="2" }框架合同{/eq}
|
||||
{eq name="$detail.type" value="3" }补充协议{/eq}
|
||||
{eq name="$detail.type" value="4" }其他合同{/eq}
|
||||
</td>
|
||||
<td class="layui-td-gray">合同类别</td>
|
||||
<td>
|
||||
{volist name=":contract_cate()" id="v"}
|
||||
{eq name="$v.id" value="$detail.cate_id" }{$v.title}{/eq}
|
||||
{/volist}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray">客户名称(甲方)</td>
|
||||
<td colspan="3">{$detail.customer}</td>
|
||||
<td class="layui-td-gray">签约客户代表</td>
|
||||
<td>{$detail.customer_name}</td>
|
||||
<td class="layui-td-gray">客户联系电话</td>
|
||||
<td>{$detail.customer_mobile}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">客户联系地址</td>
|
||||
<td colspan="3">{$detail.customer_address}</td>
|
||||
<td class="layui-td-gray-2">合同开始日期</td>
|
||||
<td>{$detail.start_time}</td>
|
||||
<td class="layui-td-gray-2">合同结束日期</td>
|
||||
<td>{$detail.end_time}</td>
|
||||
</tr>
|
||||
{neq name="$detail.type" value="2"}
|
||||
<tr>
|
||||
<td class="layui-td-gray">合同金额</td>
|
||||
<td>{$detail.cost}</td>
|
||||
{eq name="$detail.is_tax" value="1" }
|
||||
<td class="layui-td-gray">是否含税</td>
|
||||
<td>是</td>
|
||||
<td class="layui-td-gray">税点(百分比)</td>
|
||||
<td colspan="3">{$detail.tax}%</td>
|
||||
{/eq}
|
||||
{eq name="$detail.is_tax" value="0" }
|
||||
<td class="layui-td-gray">是否含税</td>
|
||||
<td colspan="5">否</td>
|
||||
{/eq}
|
||||
</tr>
|
||||
{/neq}
|
||||
{notempty name="$detail.remark"}
|
||||
<tr>
|
||||
<td class="layui-td-gray">备注信息</td>
|
||||
<td colspan="7">{$detail.remark}</td>
|
||||
</tr>
|
||||
{/notempty}
|
||||
{notempty name="$detail.file_ids"}
|
||||
<tr>
|
||||
<td class="layui-td-gray">相关附件</td>
|
||||
<td colspan="7" style="line-height:inherit">
|
||||
<div class="layui-row">
|
||||
{volist name="$detail.fileArray" id="vo"}
|
||||
<div class="layui-col-md4" id="uploadImg{$vo.id}">{:file_card($vo,'view')}</div>
|
||||
{/volist}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{/notempty}
|
||||
<tr>
|
||||
<td colspan="8"><strong>签订信息</strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">合同制定人</td>
|
||||
<td>{$detail.prepared_name} </td>
|
||||
<td class="layui-td-gray-2">合同签订人</td>
|
||||
<td>{$detail.sign_name}</td>
|
||||
<td class="layui-td-gray-2">合同签订时间</td>
|
||||
<td>{$detail.sign_time}</td>
|
||||
<td class="layui-td-gray-2">合同签订部门</td>
|
||||
<td>{$detail.sign_department}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">合同保管人</td>
|
||||
<td>{$detail.keeper_name}{gt name="$auth" value="0"}<span id="keeper" data-ids="{$detail.keeper_uid}" data-names="{$detail.keeper_name}" class="layui-btn layui-btn-xs layui-btn-normal ml-1">更改</span>{/gt}</td>
|
||||
<td class="layui-td-gray">合同共享人员</td>
|
||||
<td colspan="5">{$detail.share_names}{gt name="$auth" value="0"}<span id="shares" data-ids="{$detail.share_ids}" data-names="{$detail.share_names}" class="layui-btn layui-btn-xs layui-btn-normal ml-1">更改</span>{/gt}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="8"><strong>审核信息</strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">合同状态</td>
|
||||
<td><span class="layui-color-{$detail.check_status}">{$detail.status_name}</span></td>
|
||||
<td class="layui-td-gray-2">录入人</td>
|
||||
<td>{$detail.admin_name} </td>
|
||||
<td class="layui-td-gray-2">录入时间</td>
|
||||
<td colspan="3">{$detail.create_time}</td>
|
||||
</tr>
|
||||
{notempty name="$check_record"}
|
||||
<tr>
|
||||
<td class="layui-td-gray">历史审批记录</td>
|
||||
<td colspan="7">
|
||||
<ul class="layui-timeline flow-record pt-2">
|
||||
{volist name="$check_record" id="vo"}
|
||||
<li class="layui-timeline-item delete-{$vo.delete_time}">
|
||||
<i class="layui-icon layui-timeline-axis"></i>
|
||||
<p style="padding-left:24px">{$vo.check_time_str}<span class="black ml-2">{$vo.name}</span><span class="mx-2 layui-color-{$vo.status}">{$vo.status_str}</span>了此申请。操作意见:<span class="green">{$vo.content}</span></p>
|
||||
</li>
|
||||
{/volist}
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
{/notempty}
|
||||
{eq name="$is_create_admin" value = "1"}
|
||||
<table class="layui-table layui-table-form">
|
||||
<tr>
|
||||
<td class="layui-td-gray-2">选择审批流程<font>*</font></td>
|
||||
<td colspan="7">
|
||||
@ -223,9 +25,9 @@ html{background-color:#fff;}
|
||||
<input type="hidden" name="copy_uids" value="">
|
||||
</td>
|
||||
</tr>
|
||||
{/eq}
|
||||
</table>
|
||||
<div class="pt-3">
|
||||
{/eq}
|
||||
<div class="pt-2">
|
||||
{eq name="$is_create_admin" value = "1"}
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交审核</button>
|
||||
<a class="layui-btn" href="/contract/index/add/id/{$detail.id}">编辑合同</a>
|
||||
@ -235,32 +37,8 @@ html{background-color:#fff;}
|
||||
<span class="layui-btn layui-btn-danger" data-event="check" data-status="6">作废合同</span>
|
||||
{/gt}
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab-item">
|
||||
{include file="/index/view_log" /}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
{/block}
|
||||
<!-- /主体 -->
|
||||
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script>
|
||||
const contract_id = '{$detail.id}';
|
||||
const contract_status = '{$detail.check_status}';
|
||||
const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
function gouguInit() {
|
||||
var form = layui.form,tool=layui.tool, oaTool = layui.oaTool,element = layui.element,employeepicker = layui.employeepicker,dropdown = layui.dropdown;
|
||||
element.on('tab(contract)', function(data){
|
||||
let index = data.index;
|
||||
if(index == 1){
|
||||
log(layui);
|
||||
}
|
||||
});
|
||||
|
||||
function init(form,tool) {
|
||||
$('body').on('click','[data-event="check"]',function(){
|
||||
let status = $(this).data('status');
|
||||
let action = '';
|
||||
@ -319,7 +97,7 @@ const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
success:function(e){
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
tool.sideClose(1000);
|
||||
parent.layui.tool.close(1000);
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -398,55 +176,6 @@ const moduleInit = ['tool','employeepicker','oaTool'];
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
//选择合同保管人弹窗
|
||||
$('body').on('click','#keeper',function () {
|
||||
var ids=$(this).data('ids')+'',names = $(this).data('names')+'';
|
||||
employeepicker.init({
|
||||
ids:ids,
|
||||
names:names,
|
||||
type:0,
|
||||
department_url: "/api/index/get_department_tree",
|
||||
employee_url: "/api/index/get_employee",
|
||||
callback:function(ids,names,dids,departments){
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
location.reload();
|
||||
}
|
||||
}
|
||||
tool.post("/contract/index/add", {'id':contract_id,'keeper_uid':ids,'scene':'change'}, callback);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
//选择共享成员弹窗
|
||||
$('body').on('click','#shares',function () {
|
||||
var ids=$(this).data('ids')+'',names = $(this).data('names')+'',share_ids_array=[],share_names_array=[];
|
||||
if(ids.length>0){
|
||||
share_ids_array=ids.split(',');
|
||||
share_names_array=names.split(',');
|
||||
}
|
||||
employeepicker.init({
|
||||
ids:share_ids_array,
|
||||
names:share_names_array,
|
||||
type:1,
|
||||
department_url: "/api/index/get_department_tree",
|
||||
employee_url: "/api/index/get_employee",
|
||||
callback:function(ids,names,dids,departments){
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
location.reload();
|
||||
}
|
||||
}
|
||||
tool.post("/contract/index/add", {'id':contract_id,'share_ids':ids.join(','),'scene':'change'}, callback);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
{/block}
|
||||
<!-- /脚本 -->
|
@ -15,11 +15,11 @@
|
||||
</select>
|
||||
</div>
|
||||
<div class="layui-input-inline" id="selectDate">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" name="start_date" id="startDate" class="layui-input" placeholder="预计签单时间">
|
||||
</div>
|
||||
<div class="layui-input-inline">-</div>
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" autocomplete="off" name="end_date" id="endDate" class="layui-input" placeholder="预计签单时间">
|
||||
</div>
|
||||
</div>
|
||||
@ -27,8 +27,10 @@
|
||||
<input type="text" name="username" placeholder="请选择归属人" class="layui-input picker-one" autocomplete="off" />
|
||||
<input type="text" name="uid" style="display:none" />
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -46,6 +48,7 @@
|
||||
laydate.render({
|
||||
elem: '#selectDate'
|
||||
,range: ['#startDate', '#endDate']
|
||||
,rangeLinked:true
|
||||
});
|
||||
|
||||
layui.pageTable = table.render({
|
||||
|
@ -6,7 +6,10 @@
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -5,7 +5,6 @@
|
||||
.gougu-upload-tips{color:#969696}
|
||||
.layui-form-item{margin-bottom:8px;}
|
||||
.layui-input-block{min-height:24px;}
|
||||
.layui-input-inline{padding-bottom:12px;}
|
||||
</style>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
@ -73,9 +72,9 @@
|
||||
<input type="hidden" name="tab" value="0" />
|
||||
<input type="text" name="keywords" placeholder="输入关键字" class="layui-input" autocomplete="off" />
|
||||
</div>
|
||||
<div class="layui-input-inline">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
|
@ -3,17 +3,9 @@
|
||||
{block name="body"}
|
||||
<div class="p-3">
|
||||
<div class="layui-row gg-form-bar border-x border-t">
|
||||
<div class="layui-col-xs3">
|
||||
<div class="layui-input-inline">
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">去抢客</button>
|
||||
</div>
|
||||
<div class="layui-col-xs9" style="text-align:right">
|
||||
<form class="layui-form" style="display:none;">
|
||||
<div class="layui-input-inline" style="width:240px;">
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -30,7 +30,10 @@
|
||||
<div class="layui-input-inline" style="width:240px;">
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -22,7 +22,10 @@
|
||||
<div class="layui-input-inline" style="width:240px;">
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -4,11 +4,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -19,7 +19,10 @@
|
||||
<option value="5">已打款</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -40,7 +43,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -4,15 +4,18 @@
|
||||
<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;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -28,7 +31,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -4,11 +4,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -22,7 +22,10 @@
|
||||
<option value="5">已打款</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -43,7 +46,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -7,50 +7,6 @@
|
||||
.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;}
|
||||
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:18px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
.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;}
|
||||
</style>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
|
@ -1,51 +1,4 @@
|
||||
{extend name="../../base/view/common/base" /}
|
||||
{block name="style"}
|
||||
<style>
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:18px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
.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;}
|
||||
</style>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<form class="layui-form p-4">
|
||||
|
@ -4,11 +4,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -20,7 +20,10 @@
|
||||
<option value="2">全部到账</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -42,7 +45,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -4,11 +4,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -20,7 +20,10 @@
|
||||
<option value="10">已作废</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -41,7 +44,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -4,15 +4,18 @@
|
||||
<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;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -28,7 +31,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -4,11 +4,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -23,7 +23,10 @@
|
||||
<option value="10">已作废</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-danger" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -44,7 +47,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -7,50 +7,6 @@
|
||||
.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;}
|
||||
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:18px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
.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;}
|
||||
</style>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
|
@ -26,7 +26,8 @@ class Rule extends BaseController
|
||||
->leftJoin('adminModule m', 'a.module = m.name')
|
||||
->order('a.sort asc,a.id asc')
|
||||
->select();
|
||||
return to_assign(0, '', $rule);
|
||||
$list = generateTree($rule);
|
||||
return to_assign(0, '', $list);
|
||||
} else {
|
||||
return view();
|
||||
}
|
||||
|
@ -6,7 +6,10 @@
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -14,7 +14,10 @@
|
||||
{/volist}
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="log" lay-filter="log"></table>
|
||||
</div>
|
||||
|
@ -154,9 +154,7 @@
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
setTimeout(function () {
|
||||
parent.location.reload();
|
||||
}, 1000);
|
||||
tool.sideClose(1000);
|
||||
}
|
||||
}
|
||||
tool.post("/home/rule/add", data.field, callback);
|
||||
|
@ -2,31 +2,39 @@
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<div class="p-3">
|
||||
<div class="gg-form-bar border-t border-x">
|
||||
<div class="gg-form-bar border-t border-x" style="padding-bottom:12px;">
|
||||
<button class="layui-btn layui-btn-sm add-menu">+ 添加菜单/节点</button>
|
||||
</div>
|
||||
<div>
|
||||
<table class="layui-hide" id="treeTable" lay-filter="treeTable"></table>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/html" id="toolbarDemo">
|
||||
<div class="layui-btn-container">
|
||||
<button class="layui-btn layui-btn-sm" lay-event="add">+ 添加权限组</button>
|
||||
</div>
|
||||
</script>
|
||||
{/block}
|
||||
<!-- /主体 -->
|
||||
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script>
|
||||
const moduleInit = ['tool', 'treeGrid'];
|
||||
const moduleInit = ['tool'];
|
||||
function gouguInit() {
|
||||
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
|
||||
var pageTable = treeGrid.render({
|
||||
id: 'treeTable'
|
||||
, elem: '#treeTable'
|
||||
, idField: 'id'
|
||||
var treeTable = layui.treeTable, tool = layui.tool;
|
||||
|
||||
layui.pageTable = treeTable.render({
|
||||
elem: '#treeTable'
|
||||
,url: "/home/rule/index"
|
||||
,tree: { // treeTable 特定属性集
|
||||
customName: {name:'title'},
|
||||
data: {},
|
||||
view: {showIcon:false},
|
||||
async: {},
|
||||
callback: {}
|
||||
}
|
||||
, cellMinWidth: 80
|
||||
, treeId: 'id'//树形id字段名称
|
||||
, treeUpId: 'pid'//树形父id字段名称
|
||||
, treeShowName: 'title'//以树形式显示的字段
|
||||
, cols: [[
|
||||
{ field: 'id', width: 80, title: 'ID号', align: 'center' }
|
||||
, { field: 'sort', width: 60, title: '排序', align: 'center' }
|
||||
@ -64,7 +72,7 @@
|
||||
});
|
||||
|
||||
//操作按钮
|
||||
treeGrid.on('tool(treeTable)', function (obj) {
|
||||
treeTable.on('tool(treeTable)', function (obj) {
|
||||
console.log(obj);
|
||||
if (obj.event === 'add') {
|
||||
tool.side('/home/rule/add?pid=' + obj.data.id);
|
||||
|
@ -5,19 +5,22 @@
|
||||
{include file="index/msgmenu" /}
|
||||
<div style="margin-left:172px;">
|
||||
<form class="layui-form gg-form-bar border-t border-x">
|
||||
<div class="layui-inline" style="width:240px">
|
||||
<div class="layui-input-inline" style="width:240px">
|
||||
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="layui-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="start_time" name="start_time" class="layui-input" placeholder="开始日期">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0;">
|
||||
<input type="text" autocomplete="off" id="end_time" name="end_time" class="layui-input" placeholder="结束日期">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -52,7 +55,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
layui.pageTable = table.render({
|
||||
|
@ -5,15 +5,15 @@
|
||||
{include file="index/msgmenu" /}
|
||||
<div style="margin-left:172px;">
|
||||
<form class="layui-form gg-form-bar border-t border-x">
|
||||
<div class="layui-inline" style="width:240px">
|
||||
<div class="layui-input-inline" style="width:240px">
|
||||
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="layui-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0;">
|
||||
<input type="text" autocomplete="off" id="start_time" name="start_time" class="layui-input" placeholder="接收开始日期">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="end_time" name="end_time" class="layui-input" placeholder="接收结束日期">
|
||||
</div>
|
||||
</div>
|
||||
@ -31,7 +31,10 @@
|
||||
<option value="2">个人消息</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -65,7 +68,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
layui.pageTable = table.render({
|
||||
elem: '#test',
|
||||
|
@ -5,19 +5,22 @@
|
||||
{include file="index/msgmenu" /}
|
||||
<div style="margin-left:172px;">
|
||||
<form class="layui-form gg-form-bar border-t border-x">
|
||||
<div class="layui-inline" style="width:240px">
|
||||
<div class="layui-input-inline" style="width:240px">
|
||||
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="layui-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0;">
|
||||
<input type="text" autocomplete="off" id="start_time" name="start_time" class="layui-input" placeholder="开始日期">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="end_time" name="end_time" class="layui-input" placeholder="结束日期">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -54,7 +57,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
layui.pageTable = table.render({
|
||||
|
@ -5,19 +5,22 @@
|
||||
{include file="index/msgmenu" /}
|
||||
<div style="margin-left:172px;">
|
||||
<form class="layui-form gg-form-bar border-t border-x">
|
||||
<div class="layui-inline" style="width:240px">
|
||||
<div class="layui-input-inline" style="width:240px">
|
||||
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
|
||||
</div>
|
||||
<div class="layui-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="start_time" name="start_time" class="layui-input" placeholder="发送开始日期">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="end_time" name="end_time" class="layui-input" placeholder="发送结束日期">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -53,7 +56,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
layui.pageTable = table.render({
|
||||
|
@ -131,7 +131,8 @@ class Index extends BaseController
|
||||
{
|
||||
if (request()->isAjax()) {
|
||||
$cate = Db::name('NoteCate')->order('create_time asc')->select();
|
||||
return to_assign(0, '', $cate);
|
||||
$list = generateTree($cate);
|
||||
return to_assign(0, '', $list);
|
||||
} else {
|
||||
return view();
|
||||
}
|
||||
|
@ -90,7 +90,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//编辑器初始化
|
||||
|
@ -2,7 +2,7 @@
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<div class="p-3">
|
||||
<div class="gg-form-bar border-t border-x">
|
||||
<div class="gg-form-bar border-t border-x" style="padding-bottom:12px;">
|
||||
<button class="layui-btn layui-btn-sm add-menu">+ 添加分类</button>
|
||||
</div>
|
||||
<div>
|
||||
@ -18,19 +18,20 @@
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script>
|
||||
const moduleInit = ['tool', 'treeGrid'];
|
||||
const moduleInit = ['tool'];
|
||||
function gouguInit() {
|
||||
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
|
||||
var pageTable = treeGrid.render({
|
||||
id:'treeTable'
|
||||
,elem: '#treeTable'
|
||||
,idField:'id'
|
||||
var treeTable = layui.treeTable, tool = layui.tool;
|
||||
|
||||
layui.pageTable = treeTable.render({
|
||||
elem: '#treeTable'
|
||||
,url: "/note/index/note_cate"
|
||||
,cellMinWidth: 100
|
||||
,treeId:'id'//树形id字段名称
|
||||
,treeUpId:'pid'//树形父id字段名称
|
||||
,treeShowName:'title'//以树形式显示的字段
|
||||
,isOpenDefault:true
|
||||
,tree: { // treeTable 特定属性集
|
||||
customName: {name:'title'},
|
||||
data: {},
|
||||
view: {showIcon:false},
|
||||
async: {},
|
||||
callback: {}
|
||||
}
|
||||
,cols: [[
|
||||
{field:'id',width:80, title: 'ID号', align:'center'}
|
||||
,{field: 'sort', title: '排序', align:'center', style:'cursor: pointer;', width:80}
|
||||
@ -43,7 +44,6 @@
|
||||
}
|
||||
]]
|
||||
,page:false
|
||||
//,skin:'line'
|
||||
});
|
||||
|
||||
|
||||
@ -54,7 +54,7 @@
|
||||
});
|
||||
|
||||
//操作按钮
|
||||
treeGrid.on('tool(treeTable)', function (obj) {
|
||||
treeTable.on('tool(treeTable)', function (obj) {
|
||||
if (obj.event === 'add') {
|
||||
tool.side('/note/index/note_cate_add?pid='+obj.data.id);
|
||||
return;
|
||||
|
@ -68,9 +68,7 @@
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
setTimeout(function () {
|
||||
parent.location.reload();
|
||||
}, 1000);
|
||||
tool.sideClose(1000);
|
||||
}
|
||||
}
|
||||
tool.post("/note/index/note_cate_add", data.field, callback);
|
||||
|
@ -16,16 +16,18 @@
|
||||
<input type="text" name="uid" value="" style="display:none" />
|
||||
</div>
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:120px;">
|
||||
<div class="layui-input-inline" style="width:120px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="申请时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:120px;">
|
||||
<div class="layui-input-inline" style="width:120px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="申请时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -51,7 +53,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//监听搜索提交
|
||||
|
@ -25,16 +25,18 @@
|
||||
<input type="text" name="uid" value="" style="display:none" />
|
||||
</div>
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:120px;">
|
||||
<div class="layui-input-inline" style="width:120px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="申请时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:120px;">
|
||||
<div class="layui-input-inline" style="width:120px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="申请时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -60,7 +62,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
element.on('tab(tab)', function(data){
|
||||
|
@ -17,48 +17,4 @@
|
||||
.log-item i{font-weight:800; color:#323232}
|
||||
.log-content strong{margin:0 4px; color:#323232}
|
||||
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{ margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:20px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
.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;}
|
||||
</style>
|
@ -9,11 +9,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0;">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -24,7 +24,10 @@
|
||||
<div class="layui-input-inline" style="width:220px;">
|
||||
<input type="text" name="keywords" placeholder="输入工作内容" class="layui-input"/>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button><button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<div>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
@ -48,7 +51,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
$('[lay-filter="clear"]').on('click',function(){
|
||||
|
@ -9,11 +9,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:110px;">
|
||||
<div class="layui-input-inline" style="width:110px;margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -24,7 +24,10 @@
|
||||
<div class="layui-input-inline" style="width:220px;">
|
||||
<input type="text" name="keywords" placeholder="输入工作内容" class="layui-input"/>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button><button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<div>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
@ -47,7 +50,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
$('[lay-filter="clear"]').on('click',function(){
|
||||
|
@ -11,12 +11,12 @@
|
||||
<div class="layui-tab-content" style="padding:0">
|
||||
<div class="layui-tab-item layui-show">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div class="layui-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" id="date">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="start_time" name="start_time" class="layui-input" placeholder="接收开始日期">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0">
|
||||
<input type="text" autocomplete="off" id="end_time" name="end_time" class="layui-input" placeholder="接收结束日期">
|
||||
</div>
|
||||
</div>
|
||||
@ -28,18 +28,21 @@
|
||||
<option value="2">月报</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
<div class="layui-tab-item">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform2">
|
||||
<div class="layui-inline" id="date1">
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" id="date1">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0"">
|
||||
<input type="text" autocomplete="off" id="start_time1" name="start_time" class="layui-input" placeholder="接收开始日期">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:112px">
|
||||
<div class="layui-input-inline" style="width:112px; margin-bottom:0"">
|
||||
<input type="text" autocomplete="off" id="end_time1" name="end_time" class="layui-input" placeholder="接收结束日期">
|
||||
</div>
|
||||
</div>
|
||||
@ -58,7 +61,10 @@
|
||||
<option value="2">月报</option>
|
||||
</select>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform1">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform1"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test1" lay-filter="test1"></table>
|
||||
</div>
|
||||
@ -94,7 +100,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'].
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
layui.pageTable = table.render({
|
||||
@ -179,7 +186,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date1',
|
||||
range: ['#start_time1', '#end_time1']
|
||||
range: ['#start_time1', '#end_time1'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
layui.pageTable1 = table.render({
|
||||
|
@ -22,8 +22,10 @@
|
||||
<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>
|
||||
<button type="reset" class="layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<table class="layui-hide" id="document" lay-filter="document"></table>
|
||||
|
@ -163,7 +163,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#date',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
//日期
|
||||
@ -171,6 +172,7 @@
|
||||
laydate.render({
|
||||
elem: this,
|
||||
range: '到',
|
||||
rangeLinked:true,
|
||||
trigger: 'click'
|
||||
});
|
||||
});
|
||||
|
@ -184,6 +184,7 @@
|
||||
laydate.render({
|
||||
elem: this,
|
||||
range: '到',
|
||||
rangeLinked:true,
|
||||
trigger: 'click'
|
||||
});
|
||||
});
|
||||
|
@ -55,8 +55,10 @@
|
||||
<div class="layui-input-inline" style="width:200px;">
|
||||
<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>
|
||||
<button type="reset" class="layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<table class="layui-hide" id="task" lay-filter="task"></table>
|
||||
|
@ -9,11 +9,11 @@
|
||||
<div class="p-3">
|
||||
<form class="layui-form gg-form-bar border-x border-t" lay-filter="barsearchform">
|
||||
<div id="barDate" class="layui-input-inline">
|
||||
<div class="layui-input-inline" style="width:120px;">
|
||||
<div class="layui-input-inline" style="width:120px; margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time">
|
||||
</div>
|
||||
~
|
||||
<div class="layui-input-inline" style="width:120px;">
|
||||
<div class="layui-input-inline" style="width:120px;margin-bottom:0">
|
||||
<input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time">
|
||||
</div>
|
||||
</div>
|
||||
@ -24,7 +24,10 @@
|
||||
<div class="layui-input-inline" style="width:240px;">
|
||||
<input type="text" name="keywords" placeholder="输入工作内容" class="layui-input"/>
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button><button type="reset" class="layui-btn layui-btn-reset" lay-filter="clear">清空</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<div>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
@ -42,7 +45,8 @@
|
||||
//日期范围
|
||||
laydate.render({
|
||||
elem: '#barDate',
|
||||
range: ['#start_time', '#end_time']
|
||||
range: ['#start_time', '#end_time'],
|
||||
rangeLinked:true
|
||||
});
|
||||
|
||||
$('[lay-filter="clear"]').on('click',function(){
|
||||
|
@ -20,12 +20,13 @@ class Department extends BaseController
|
||||
public function index()
|
||||
{
|
||||
if (request()->isAjax()) {
|
||||
$list = Db::name('Department')
|
||||
$cate = Db::name('Department')
|
||||
->field('d.*,a.name as leader')
|
||||
->alias('d')
|
||||
->join('Admin a', 'a.id = d.leader_id', 'LEFT')
|
||||
->order('d.sort desc,d.id asc')
|
||||
->select();
|
||||
$list = generateTree($cate);
|
||||
return to_assign(0, '', $list);
|
||||
} else {
|
||||
return view();
|
||||
|
@ -89,9 +89,7 @@
|
||||
let callback = function (e) {
|
||||
layer.msg(e.msg);
|
||||
if (e.code == 0) {
|
||||
setTimeout(function () {
|
||||
parent.location.reload();
|
||||
}, 1000);
|
||||
tool.sideClose(1000);
|
||||
}
|
||||
}
|
||||
tool.post("/user/department/add", data.field, callback);
|
||||
|
@ -2,7 +2,7 @@
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<div class="p-3">
|
||||
<div class="gg-form-bar border-t border-x">
|
||||
<div class="gg-form-bar border-t border-x" style="padding-bottom:12px;">
|
||||
<button class="layui-btn layui-btn-sm add-menu">+ 添加部门</button>
|
||||
</div>
|
||||
<div>
|
||||
@ -15,20 +15,24 @@
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script>
|
||||
const moduleInit = ['tool', 'treeGrid'];
|
||||
const moduleInit = ['tool'];
|
||||
function gouguInit() {
|
||||
var treeGrid = layui.treeGrid,table = layui.table, tool = layui.tool;
|
||||
var pageTable = treeGrid.render({
|
||||
id: 'treeTable'
|
||||
, elem: '#treeTable'
|
||||
, idField: 'id'
|
||||
var treeTable = layui.treeTable, tool = layui.tool;
|
||||
|
||||
layui.pageTable = treeTable.render({
|
||||
elem: '#treeTable'
|
||||
,id: 'treeTable'
|
||||
,url: "/user/department/index"
|
||||
, cellMinWidth: 80
|
||||
, treeId: 'id'//树形id字段名称
|
||||
, treeUpId: 'pid'//树形父id字段名称
|
||||
, treeShowName: 'title'//以树形式显示的字段
|
||||
, height: 'full-0'
|
||||
,isOpenDefault:true
|
||||
,tree: { // treeTable 特定属性集
|
||||
customName: {name:'title'},
|
||||
data: {},
|
||||
view: {showIcon:false},
|
||||
async: {},
|
||||
callback: {}
|
||||
}
|
||||
,done:function(){
|
||||
treeTable.expandAll('treeTable', true); // 关闭全部节点
|
||||
}
|
||||
, cols: [[
|
||||
{ field: 'id', width: 100, title: 'ID号', align: 'center' }
|
||||
, { field: 'pid', title: '上级部门ID',width: 120, align: 'center'}
|
||||
@ -52,7 +56,7 @@
|
||||
});
|
||||
|
||||
//操作按钮
|
||||
treeGrid.on('tool(treeTable)', function (obj) {
|
||||
treeTable.on('tool(treeTable)', function (obj) {
|
||||
if (obj.event === 'add') {
|
||||
tool.side("/user/department/add?pid="+obj.data.id);
|
||||
return;
|
||||
|
@ -6,7 +6,10 @@
|
||||
<div class="layui-input-inline">
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -6,7 +6,10 @@
|
||||
<div class="layui-input-inline">
|
||||
<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>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
|
@ -43,7 +43,10 @@
|
||||
<div class="layui-input-inline" style="width:240px">
|
||||
<input type="text" name="keywords" placeholder="输入关键字,如:ID/姓名/手机号码" class="layui-input" autocomplete="off" />
|
||||
</div>
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">提交搜索</button>
|
||||
<div class="layui-input-inline" style="width:150px;">
|
||||
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
|
||||
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
|
||||
</div>
|
||||
</form>
|
||||
<table class="layui-hide" id="test" lay-filter="test"></table>
|
||||
</div>
|
||||
@ -191,7 +194,7 @@
|
||||
url: "/user/user/index", //数据接口
|
||||
page: true, //开启分页
|
||||
limit: 20,
|
||||
height: 'full-90',
|
||||
height: 'full-85',
|
||||
cols: [
|
||||
[
|
||||
{type:'checkbox',fixed:'left'},
|
||||
|
@ -13,7 +13,13 @@
|
||||
.layui-table-box{background-color:#fff;}
|
||||
.layui-table-page{background-color:#fff;border-bottom:1px solid #f1f1f1;}
|
||||
.layui-table-tool{box-shadow: 0 0 0 rgb(0 0 0 / 1%);}
|
||||
.layui-btn-reset {height: 38px;background-color: #fff; line-height: 38px; border: 1px solid transparent;padding: 0 12px; white-space: nowrap; color: #767a82;font-size: 14px;cursor: pointer;vertical-align: middle;}
|
||||
.layui-input, .layui-select, .layui-textarea {height: 36px;line-height: 1.22;line-height: 36px\9;}
|
||||
.layui-input, .layui-textarea {padding-left:6px;}
|
||||
|
||||
.layui-btn {height: 36px;line-height: 36px; padding:0 16px;}
|
||||
.layui-btn-sm {height: 30px; line-height: 30px; padding:0 8px;}
|
||||
.layui-btn-xs {height: 22px; line-height: 22px; padding:0 4px;}
|
||||
.layui-btn-reset {height: 36px;background-color: #fff; line-height: 36px; border: 1px solid transparent;padding: 0 8px; white-space: nowrap; color: #767a82;font-size: 14px;cursor: pointer;vertical-align: middle;}
|
||||
.layui-btn-reset:hover{color: #333333;}
|
||||
|
||||
.layui-tab-brief>.layui-tab-title .layui-this{color:#187FDD}
|
||||
@ -68,6 +74,16 @@ a.tab-a:hover,a:hover,a.open-a:hover,a.link-a:hover,a.right-a:hover{color:#187FD
|
||||
.h3,h3{font-size:18px; font-weight: 600;}
|
||||
.h4,h4{font-size:16px; font-weight: 600;}
|
||||
|
||||
.f12{font-size:12px;}
|
||||
.f14{font-size:14px;}
|
||||
.f16{font-size:16px;}
|
||||
.f18{font-size:18px;}
|
||||
.f20{font-size:20px;}
|
||||
.f24{font-size:24px;}
|
||||
.f28{font-size:28px;}
|
||||
.f32{font-size:32px;}
|
||||
.f36{font-size:36px;}
|
||||
|
||||
.m-0{margin:0}
|
||||
.m-1{margin:4px}
|
||||
.m-2{margin:8px}
|
||||
@ -254,7 +270,8 @@ div.layui-table-main::-webkit-scrollbar-thumb:active{background-color:rgba(0,0,0
|
||||
}
|
||||
|
||||
/*gg-DIY*/
|
||||
.gg-form-bar{padding:12px; background-color:#fff;}
|
||||
.gg-form-bar{padding:10px 15px 0; background-color:#fff;}
|
||||
.gg-form-bar .layui-input-inline{margin-bottom:10px;}
|
||||
.gg-tab-bar{background-color:#fff;}
|
||||
.gg-tab{text-align: left!important;}
|
||||
.gg-tab-title{position: relative;left: 0; height: 40px; white-space: nowrap; font-size: 0;}
|
||||
@ -287,6 +304,7 @@ div.layui-table-main::-webkit-scrollbar-thumb:active{background-color:rgba(0,0,0
|
||||
.sub-menu li.sub-menu-li.active a{color:#4285F4; background-color:#F2F8FF}
|
||||
.sub-menu li.sub-menu-li span.num{margin-left:4px}
|
||||
|
||||
/*附件*/
|
||||
.file-card {background: #fff;border: 1px solid #f1f1f1; border-radius: 2px; padding:0; margin:4px 6px;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
@ -305,6 +323,49 @@ div.layui-table-main::-webkit-scrollbar-thumb:active{background-color:rgba(0,0,0
|
||||
.file-hasdelete{background:url(../images/delete_icon.png) no-repeat 96% 0; background-size: auto 58px; color:#aaa}
|
||||
.file-hasdelete .file-icon{color:#aaa;}
|
||||
.file-hasdelete .file-tool{display:none}
|
||||
/*审批*/
|
||||
.check-items{overflow-x: auto; padding: 2px 0;}
|
||||
.flow-flex-row {box-direction: row;
|
||||
box-orient: horizontal;
|
||||
-webkit-box-orient: horizontal;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
}
|
||||
.flow-flexbox { width: 100%;text-align: left;
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
box-align: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.check-item{width: auto; -ms-flex-negative: 0; flex-shrink: 0; padding:4px 0}
|
||||
.check-item i{margin-right:3px; color:#646464;}
|
||||
.check-item span{color:#999;margin:0 3px;}
|
||||
.check-item .layui-icon {font-size:18px;}
|
||||
.check-item .layui-icon.layui-icon-right{font-size:12px;}
|
||||
.layui-icon[data-ok]{color:#34a853}
|
||||
.layui-icon[data-no]{color:#FF5722;}
|
||||
.check-item-status{color:#999; font-size:12px; margin-left:3px;}
|
||||
|
||||
.flow-tips{padding:6px 10px;}
|
||||
.flow-tips li{padding:5px 0;}
|
||||
.flow-tips li i{color:#4285f4;}
|
||||
.flow-tips li span{color:#999; font-size:12px; margin-left:4px;}
|
||||
|
||||
.flow-record{padding:4px 4px 0;}
|
||||
.flow-record .layui-timeline-item{text-decoration:line-through; color:#acacac; padding-bottom:10px;}
|
||||
.flow-record .layui-timeline-item.delete-0{text-decoration:none; color:#323232;}
|
||||
.layui-timeline-content ul{font-size:12px;}
|
||||
.check-status{color:#999; margin-left:5px;}
|
||||
.check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;}
|
||||
.check-record{line-height:1.5; padding:4px 0}
|
||||
.flow-this{font-weight:800;}
|
||||
.flow-this i{color:#4285f4}
|
||||
|
||||
|
||||
.editormd,.editormd-toolbar,.editormd .CodeMirror,.CodeMirror-gutters{border-color:#eeeeee!important;}
|
||||
.editormd{margin-bottom:0!important;}
|
||||
@ -314,5 +375,5 @@ div.layui-table-main::-webkit-scrollbar-thumb:active{background-color:rgba(0,0,0
|
||||
.express-box { position: fixed; z-index:9999; height:100%; right: -100%; top:0;background-color: #fff;}
|
||||
.express-box article{width:100%; height:100%; overflow:auto;}
|
||||
.express-mask{ display: none; position: fixed; top: 0; left: 0; z-index: 9998; width: 100%; height: 100%; background-color: rgba(0,0,0,.6); }
|
||||
.express-close{position: absolute;width:24px;height:60px; padding:30px 6px; line-height:30px;text-align:center; left: -38px;right:0; top: 20%;background-color:#FF5722;color:#fff;border-radius:6px 0 0 6px; cursor:pointer; border:2px solid #fff; border-right:none; font-weight:600; font-size:14px;}
|
||||
.express-close{position: absolute;width:24px;height:60px; padding:20px 6px; line-height:30px;text-align:center; left: -38px;right:0; top: 16%;background-color:#FF5722;color:#fff;border-radius:6px 0 0 6px; cursor:pointer; border:2px solid #fff; border-right:none; font-weight:600; font-size:14px;}
|
||||
.express-close:hover{opacity:0.9}
|
Loading…
x
Reference in New Issue
Block a user