You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

552 lines
20 KiB

<#include "../../_include/_t.ftl"/>
<!DOCTYPE html>
<html>
<head>
<title></title>
<#include "../../_include/_h.ftl"/>
<#include "../../_include/_l.ftl"/>
<#include "../../_include/admin/_c.ftl"/>
</head>
<body>
<div class="page_div">
<blockquote class="layui-elem-quote">
${title}
<button id="dic_reloadBtn" class="layui-btn" style="float:right;margin-top:-8px;"><i class="layui-icon">&#xe614;</i>加载所有数据到系统缓存中</button>
</blockquote>
<div style="float:left;width:500px;margin:0;padding:0;">
<div>
<blockquote class="layui-elem-quote">模块列表</blockquote>
<div class="layui-bg-gray page_tools">
<div class="layui-inline" id="dic_mcode_tips">
<input class="layui-input" id="dic_mcode" placeholder="模块code" autocomplete="off" style="width:100px;"/>
</div>
<div class="layui-inline" id="dic_mname_tips">
<input class="layui-input" id="dic_mname" placeholder="模块名称" autocomplete="off" style="width:100px;"/>
</div>
<button id="dic1_addBtn" class="layui-btn"><i class="layui-icon">&#xe61f;</i>快速添加</button><span>[点击单元格修改]</span>
</div>
<table id="dic1_dataTable" lay-filter="dic1_dataTable_filter" lay-size="sm"></table>
</div>
</div>
<div style="margin-left:500px;">
<div class="page_div">
<blockquote class="layui-elem-quote"><span id="dic2_title">模块详情</span></blockquote>
<div class="layui-bg-gray page_tools">
<input type="hidden" id="dic2_mcode"/>
<div class="layui-inline" style="width:160px;">
<input class="layui-input" id="dic2_dt" placeholder="1级属性名(支持模糊)" autocomplete="off"/>
</div>
<!--
<div class="layui-inline layui-form" style="width:80px;">
<select id="dic2_dl">
<option value="">全部</option>
<option value="1">一级</option>
</select>
</div>
-->
<button id="dic2_queryBtn" class="layui-btn layui-btn-normal"><i class="layui-icon">&#xe615;</i>查询</button>
<button id="dic2_resetBtn" class="layui-btn layui-btn-normal"><i class="layui-icon">&#xe666;</i>重置</button>
<button id="dic2_optBtn" class="layui-btn layui-btn-normal"><i class="layui-icon">&#xe631;</i>收起子属性</button>
<button id="dic2_addBtn" class="layui-btn"><i class="layui-icon">&#xe61f;</i>添加一级属性</button>
<button id="dic2_clearBtn" class="layui-btn layui-btn-danger"><i class="layui-icon">&#xe640;</i>清空当前数据</button><span>[点击单元格修改]</span>
</div>
<div id="dic2_addWin" class="page_tools page_win_hide" style="height:320px;padding:30px;">
<form id="dic2_addForm" style="float:left;margin-left:-60px;">
<input type="hidden" id="dic2_addForm_mcode" name="mcode"/>
<input type="hidden" name="pid"/>
<input type="hidden" name="dl" value="1"/>
<input type="hidden" name="cls" value="2"/>
<input type="hidden" name="isdel" value="0"/>
<div class="layui-form-item">
<label class="layui-form-label">所属模块:</label>
<div class="layui-form-mid"><span id="dic2_addForm_mname"></span></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">所属级别:</label>
<div class="layui-form-mid"><span>一级属性</span></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">属性名:</label>
<div class="layui-input-inline" style="width:200px;">
<input type="text" name="dt" class="layui-input" placeholder="请输入属性名" lay-verify="required" lay-verType="tips" autocomplete="off"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">属性值:</label>
<div class="layui-input-inline" style="width:200px;">
<input type="text" name="dv" class="layui-input" placeholder="请输入属性值" lay-verify="required" lay-verType="tips" autocomplete="off"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">排序:</label>
<div class="layui-input-inline" style="width:60px;">
<input type="number" name="dr" class="layui-input" autocomplete="off"/>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block page_btn">
<button id="dic2_addForm_submitBtn" class="layui-btn layui-btn-normal"><i class="icon_submit"></i>提交数据</button>
<button id="dic2_addForm_closeBtn" class="layui-btn layui-btn-danger"><i class="icon_cancel"></i>关闭</button>
</div>
</div>
</form>
</div>
<table id="dic2_dataTable" lay-filter="dic2_dataTable_filter" lay-size="sm"></table>
</div>
</div>
<div style="clear:both;"></div>
</div>
<!--添加页面-->
<div id="dic_addWin23" class="page_win page_win_hide">
<form id="dic_addForm23" lay-filter="dic_addForm23_filter" class="layui-form">
<input type="hidden" name="mcode"/>
<input type="hidden" name="pid"/>
<input type="hidden" name="dl"/>
<input type="hidden" name="cls" value="2"/>
<input type="hidden" name="isdel" value="0"/>
<div class="layui-form-item">
<label class="layui-form-label">所属模块:</label>
<div class="layui-form-mid"><span id="dic_addForm23_mname"></span></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">所属上级:</label>
<div class="layui-form-mid"><span id="dic_addForm23_pidt"></span></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">所属级别:</label>
<div class="layui-form-mid"><span id="dic_addForm23_dlt"></span></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">属性名:</label>
<div class="layui-input-inline" style="width:200px;">
<input type="text" name="dt" class="layui-input" placeholder="请输入属性名" lay-verify="required" lay-verType="tips" autocomplete="off"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">属性值:</label>
<div class="layui-input-inline" style="width:200px;">
<input type="text" name="dv" class="layui-input" placeholder="请输入属性值" lay-verify="required" lay-verType="tips" autocomplete="off"/>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">排序:</label>
<div class="layui-input-inline" style="width:60px;">
<input type="number" name="dr" class="layui-input" autocomplete="off"/>
</div>
</div>
<button lay-submit class="layui-btn layui-btn-normal layui-hide" lay-filter="dic_addForm23_filter"><i class="icon_submit"></i>提交数据</button>
</form>
</div>
<script type="text/javascript">
layuiplus.on(function(){
layuiplus.init(0);
//定义窗口变量============
var dic_addWin23 = null;
//数据表格1=========================================================================================================
var dic1_dataTable = table.render({
elem:"#dic1_dataTable",
url:"${ctx}/admin/data/dic/list/1",
method:"get",
cols:[[
{field:"mcode",title:"模块码",unresize:true,width:150},
{field:"mname",title:"模块名",unresize:true,width:200,edit:"text"},
{title:"操作 ",unresize:true,align:"left",templet:function(d){
var opt = "<a class=\"layui-btn layui-btn-danger layui-btn-xs\" lay-event=\"opt_delete\">删除</a>&nbsp;&nbsp;";
opt += "<a class=\"layui-btn layui-btn-normal layui-btn-xs\" lay-event=\"opt_detail\">详情 >>></a>";
return opt;
}}
]]
});
//数据表格1每行数据操作监听=============================================================================================
table.on("edit(dic1_dataTable_filter)",function(obj){
$.ajax({
type:"post",
url:"${ctx}/admin/data/dic/update",
data:{id:obj.data.id,mname:obj.value},
dataType:"json",
success:function(data){
if(data.status = true){
var t = $("#dic2_title").text();
if(t.indexOf("-") > -1){
$("#dic2_title").html("<span style=\"color:blue;\">"+obj.value+"</span> - 模块详情");
}
dic1_dataTable.reload();
layer.msg("操作成功",{time:2000});
}
}
});
});
table.on("tool(dic1_dataTable_filter)",function(row){//row.data row.event
if(row.event == "opt_delete"){
layer.confirm("删除操作将清空所有关联的数据(慎重)。<br/>如果继续请点击“确定”,否则点击“取消”<br/>是否继续?",{title:"提示",icon:3},function(index){
$.ajax({
type:"get",
url:"${ctx}/admin/data/dic/delete/1",
data:{id:row.data.id,mcode:row.data.mcode},
dataType:"json",
success:function(data){
if(data.status == true){
$("#dic2_title").html("模块详情");
$("#dic2_mcode").val("");
$("#dic2_addForm_mcode").val("");
$("#dic2_dt").val("");
//$("#dic2_dl").val("");
//清空dic2_dataTable的数据
var _target = $("#dic2_dataTable").next("div").children("div").children("div:last").children("table").children("tbody");//.children("tr");
_target.html("");
dic1_dataTable.reload();
layer.close(index);
layer.msg("操作成功",{time:2000});
}
}
});
});
}
if(row.event == "opt_detail"){
$("#dic2_title").html("<span style=\"color:blue;\">"+row.data.mname+"</span> - 模块详情");
$("#dic2_mcode").val(row.data.mcode);
$("#dic2_addForm_mcode").val(row.data.mcode);
$("#dic2_dt").val("");
//$("#dic2_dl").val("");
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
}
});
//数据表格1上面工具栏========================================================================================================
$("#dic1_addBtn").click(function(){
if($("#dic_mcode").val() == ""){
$("#dic_mcode").focus();
layer.tips("请输入模块code","#dic_mcode_tips");
return false;
}
if($("#dic_mname").val() == ""){
$("#dic_mname").focus();
layer.tips("请输入模块名称","#dic_mname_tips");
return false;
}
$.ajax({
type:"post",
url:"${ctx}/admin/data/dic/add",
data:{cls:"1",mcode:$("#dic_mcode").val(),mname:$("#dic_mname").val()},
dataType:"json",
success:function(data){
if(data.status == true){
$("#dic_mcode").val("");
$("#dic_mname").val("");
dic1_dataTable.reload();
layer.msg("操作成功",{time:2000});
}else{
$("#dic_mcode").select();
layer.tips("模块code已占用","#dic_mcode_tips");
return false;
}
}
});
});
//数据表格2=========================================================================================================
var dic2_dataTable = table.render({
elem:"#dic2_dataTable",
method:"get",
cols:[[
{field:"dl",title:"级别",unresize:true,width:90,templet:function(d){
if(d.dl == "1"){
return "<span style=\"font-weight:bold;color:#2F4056;\">1</span>";
}
if(d.dl == "2"){
return "<span style=\"font-weight:normal;color:#01AAED;margin-left:26px;\">2</span>";
}
if(d.dl == "3"){
return "<span style=\"font-weight:normal;color:#FFB800;margin-left:52px;\">3</span>";
}
return "";
}},
{field:"dt",title:"属性名",unresize:true,width:360,edit:"text"},
{field:"dv",title:"属性值",unresize:true,width:260,edit:"text"},
{field:"dr",title:"排序",unresize:true,width:60,edit:"number"},
{title:"操作 ",unresize:true,align:"left",templet:function(d){
var opt = "<a class=\"layui-btn layui-btn-danger layui-btn-xs\" lay-event=\"opt_delete\">删除</a>&nbsp;&nbsp;";
if(d.dl != "3") opt += "<a class=\"layui-btn layui-btn-xs\" lay-event=\"opt_add\">添加子属性</a>&nbsp;&nbsp;";
if(d.dl == "1") opt += "<a class=\"layui-btn layui-btn-normal layui-btn-xs\" lay-event=\"opt_showandhide\">[收起/展开]子属性</a>&nbsp;&nbsp;";
return opt;
}}
]],
done:function(){
var trs = $("#dic2_dataTable").next("div").children("div").children("div:last").children("table").children("tbody").children("tr");
$.each(trs,function(){
var t = $(this).find("td[data-field=dl]").text();
if(t == "1"){
$(this).css("background","#d2d2d2");
}
if(t == "2"){
$(this).css("background","#e2e2e2");
}
if(t == "3"){
$(this).css("background","#F0F0F0");
}
});
}
});
table.on("edit(dic2_dataTable_filter)",function(obj){
var _data = {id:obj.data.id};
if(obj.field == "dv"){
_data.dv = obj.value;
}
if(obj.field == "dt"){
_data.dt = obj.value;
}
if(obj.field == "dr"){
_data.dr = obj.value;
}
$.ajax({
type:"post",
url:"${ctx}/admin/data/dic/update",
data:_data,
dataType:"json",
success:function(data){
if(data.status = true){
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
layer.msg("操作成功",{time:2000});
}
}
});
});
table.on("tool(dic2_dataTable_filter)",function(row){//row.data row.event
if(row.event == "opt_delete"){
layer.confirm("删除操作将清空所有关联的数据(慎重)。<br/>如果继续请点击“确定”,否则点击“取消”<br/>是否继续?",{title:"提示",icon:3},function(index){
$.ajax({
type:"get",
url:"${ctx}/admin/data/dic/delete/2",
data:{id:row.data.id,mcode:row.data.mcode},
dataType:"json",
success:function(data){
if(data.status == true){
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
layer.close(index);
layer.msg("操作成功",{time:2000});
}
}
});
});
}
if(row.event == "opt_add"){
dic_addWin23 = layer.open({
id:"dic_addWin23_id",
type:1,
title:"<i class=\"icon_add\"></i>添加子属性",
shade:0.3,
area:"400px",
resize:false,
content:$("#dic_addWin23"),
btn:["<i class=\"icon_submit\"></i>提交数据"],
yes:function(index, layero){
$("#dic_addForm23").find("button[lay-filter=dic_addForm23_filter]").click();
},
end:function(){
$("#dic_addForm23")[0].reset();
},
success:function(){
form.val("dic_addForm23_filter",{
mcode:row.data.mcode,
pid:row.data.id,
dl:parseInt(row.data.dl)+1
});
var t = $("#dic2_title").text();
$("#dic_addForm23_mname").html(t.substring(0,t.indexOf(" - ")));
$("#dic_addForm23_pidt").html(row.data.dt);
if(row.data.dl == "1") $("#dic_addForm23_dlt").html("二级");
if(row.data.dl == "2") $("#dic_addForm23_dlt").html("三级");
}
});
}
if(row.event == "opt_showandhide"){
var trs = $(row.tr).nextAll();
var n = 0;
$.each(trs,function(){
var t = $(this).find("td[data-field=dl]").text();
if(t == "1"){
return false;
}else{
if($(this).css("display") == "none"){
$(this).css("display","");
}else{
$(this).css("display","none");
}
n++;
}
});
if(n == 0) layer.msg("当前还没有子属性",{time:2000});
}
});
//数据表格2上面工具栏========================================================================================================
$("#dic2_queryBtn").click(function(){
if($("#dic2_mcode").val() == "") return false;
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
});
$("#dic2_resetBtn").click(function(){
$("#dic2_dt").val("");
//$("#dic2_dl").val("");
//form.render();
if($("#dic2_mcode").val() == "") return false;
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
});
$("#dic2_addBtn").click(function(){
if($("#dic2_mcode").val() == "") return false;
var t = $("#dic2_title").text();
$("#dic2_addForm_mname").html(t.substring(0,t.indexOf(" - ")));
$("#dic2_addWin").slideDown(100);
});
$("#dic2_addForm_submitBtn").click(function(){
var dt = $("#dic2_addForm input[name=dt]");
if(dt.val() == ""){
layer.tips("必填项不能为空","#dic2_addForm input[name=dt]");
dt.focus();
return false;
}
var dv = $("#dic2_addForm input[name=dv]");
if(dv.val() == ""){
layer.tips("必填项不能为空","#dic2_addForm input[name=dv]");
dv.focus();
return false;
}
$.ajax({
type:"post",
url:"${ctx}/admin/data/dic/add",
data:$("#dic2_addForm").serialize(),
dataType:"json",
success:function(data){
if(data.status == true){
$("#dic2_addForm")[0].reset();
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
layer.msg("操作成功",{time:2000});
}
}
});
return false;
});
$("#dic2_addForm_closeBtn").click(function(){
$("#dic2_addWin").slideUp(100);
$("#dic2_addForm")[0].reset();
return false;
});
$("#dic2_optBtn").click(function(){
if($("#dic2_mcode").val() == "") return false;
var n = $(this).html().indexOf("收起");
if(n > -1)
$(this).html("<i class=\"layui-icon\">&#xe631;</i>展开子属性");
else
$(this).html("<i class=\"layui-icon\">&#xe631;</i>收起子属性");
var trs = $("#dic2_dataTable").next("div").children("div").children("div:last").children("table").children("tbody").children("tr");
$.each(trs,function(){
var t = $(this).find("td[data-field=dl]").text();
if(t != "1"){
if(n > -1)
$(this).css("display","none");
else
$(this).css("display","");
}
});
});
$("#dic2_clearBtn").click(function(){
if($("#dic2_mcode").val() == "") return false;
layer.confirm("清空操作将清空所有关联的数据(慎重)。<br/>如果继续请点击“确定”,否则点击“取消”<br/>是否继续?",{title:"提示",icon:3},function(index){
$.ajax({
type:"get",
url:"${ctx}/admin/data/dic/delete/1",
data:{mcode:$("#dic2_mcode").val()},
dataType:"json",
success:function(data){
if(data.status == true){
$("#dic2_addForm_mcode").val("");
//清空dic2_dataTable的数据
var _target = $("#dic2_dataTable").next("div").children("div").children("div:last").children("table").children("tbody");//.children("tr");
_target.html("");
layer.close(index);
layer.msg("操作成功",{time:2000});
}
}
});
});
});
//添加窗口23按钮=====================================================================================
form.on("submit(dic_addForm23_filter)",function(formData){
$.ajax({
type:"post",
url:"${ctx}/admin/data/dic/add",
data:formData.field,
dataType:"json",
success:function(data){
if(data.status == true){
dic2_dataTable.reload({
url:"${ctx}/admin/data/dic/list/2",
where:{
mcode:$("#dic2_mcode").val(),
dt:$("#dic2_dt").val()//,
//dl:$("#dic2_dl").val()
}
});
$("#dic_addForm23").find("input[name=dt]").val("");
$("#dic_addForm23").find("input[name=dv]").val("");
layer.msg("操作成功",{time:500});
}
}
});
return false;
});
//加载缓存按钮
$("#dic_reloadBtn").click(function(){
$.ajax({
type:"get",
url:"${ctx}/admin/data/dic/reload",
dataType:"json",
success:function(data){
if(data.status == true){
layer.msg("操作成功",{time:2000});
}
}
});
});
});
</script>
</body>
</html>