HtmlLayuiTemplate.ftl 10.7 KB
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>八爪云ERP系统</title>
  <meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  <link rel="stylesheet" href="/plugins/layuiadmin/layui/css/layui.css" media="all">
  <link rel="stylesheet" href="/plugins/layuiadmin/style/admin.css" media="all">
</head>
<body>

  <div class="layui-fluid">
    <div class="layui-card">
    
      <!-- 筛选条件栏 -->
      <div class="layui-form layui-card-header layuiadmin-card-header-auto">
        <div class="layui-form-item">
          <#list fields as tempField>
		  ${tempField["layui-search-item"]}
		  </#list>
          
          <div class="layui-inline">
            <button class="layui-btn" lay-submit lay-filter="btn-search-bar">
              <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
            </button>
          </div>
        </div>
      </div>
      
      <!-- 表格窗体 -->
      <div class="layui-card-body">
        <div class="layui-btn-group" style="padding-bottom: 10px;">
          <button class="layui-btn " onclick="add();">添加</button>
          <button class="layui-btn " onclick="batchDelete();">删除</button>          
        </div>
        
        <table id="table-data-main" class="layui-table" lay-filter="table-data-main"></table>
        
        <script type="text/html" id="table-operation">
		  <a class="layui-btn layui-btn-normal layui-btn-xs " lay-event="operationLog"><i class="layui-icon layui-icon-log"></i>操作记录</a>
          <a class="layui-btn layui-btn-normal layui-btn-xs " lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
          <a class="layui-btn layui-btn-danger layui-btn-xs " lay-event="delete"><i class="layui-icon layui-icon-delete"></i>删除</a>		  
        </script>
      </div>
    </div>
  </div>
  	  
  	<!-- 添加表单 -->
  	<form id="form-data-add" class="layui-hide layui-form" lay-filter="form-data-add">
  	  <div class="layui-form-item">
	  <#list fields as tempField>
	  	<#if (tempField["name"]!="id")>
		${tempField["layui-form-item"]}
		</#if>
	  </#list>
	  </div>
	  
	  <div class="layui-form-item">
	    <div class="layui-input-block">
	      <button type="button" class="layui-btn" onclick="addSubmit();">立即提交</button>
	      <button type="reset" class="layui-btn layui-btn-primary">重置</button>
	    </div>
	  </div>
  	</form>
  	
  	<!-- 修改表单 -->
  	<form id="form-data-edit" class="layui-hide layui-form" lay-filter="form-data-edit">  		
	  <div class="layui-form-item">
	  <#list fields as tempField>
		${tempField["layui-form-item"]}
	  </#list>
	  </div>
	  
	  <div class="layui-form-item">
	    <div class="layui-input-block">
	      <button type="button" class="layui-btn" onclick="editSubmit();">立即提交</button>
	      <button type="reset" class="layui-btn layui-btn-primary">重置</button>
	    </div>
	  </div>
  	</form>
  	  	
  <script src="/plugins/layuiadmin/layui/layui.js"></script>
  <script>
  layui.config({
	base: '/plugins/layuiadmin/' //静态资源所在路径
  }).extend({
	operationlog: 'modules/operationlog' //操作模块日志
  }).use(['table', 'laydate', 'layer', 'form', 'operationlog'], function(){
    var $ = layui.$, form = layui.form, table = layui.table, laydate = layui.laydate, operationlog=layui.operationlog;
    
    table.render({
    	elem: '#table-data-main',
    	url:'/${controllerPathMap}/query.htm', 
    	request:{
    		pageName:'page',
    		limitName:'pageSize'
    	},
    	page:true, 
        loading:true,
        response: {
        	statusName: 'resultId',
        	statusCode: 200,
        	msgName: 'resultMessage',
        	countName: 'total',
        	dataName: 'rows'
        },
        cols: [[
        	{checkbox: true},
        	  <#list fields as tempField>
	    	${tempField["layui-table-item"]}
	    	  </#list>
		    {title:'操作', field:'id', fixed:'right', width:240, toolbar: '#table-operation'}
		]],
        done: function(res, curr, count){
        	//将请求返回的数据存入document全局变量中
        	window.document.global_tableData = res;
		}
    });
    
    //日期组件初始化
    $('.me-date-range').each(function(index, element){
    	laydate.render({
    		elem: element,
    		range: true
    	});
    });
    
    //表格服务器端排序监听
    table.on('sort(table-data-main)', function(obj){ //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"   	  
   	  //尽管我们的 table 自带排序功能,但并没有请求服务端。
   	  //有些时候,你可能需要根据当前排序的字段,重新向服务端发送请求,从而实现服务端排序,如:
   	  table.reload('table-data-main', {
   	    initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。 layui 2.1.1 新增参数
   	    ,where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式)
   	      sort: obj.field //排序字段
   	      ,order: obj.type //排序方式
   	    }
   	  });
   	});
    
  	//监听工具条
    table.on('tool(table-data-main)', function(obj){
      var data = obj.data;
      
      //表格操作栏动作入口
      if(obj.event === 'operationLog'){ //查看操作日志动作监听入口
	      operationlog.open(data.id, '${tableName}');
      } else if(obj.event === 'delete'){ //删除按钮操作入口
    	  if(!data){
    		  layer.alert('没有找到需要删除的记录~');
    		  return;
    	  }else{
    		  layer.confirm('您选择了一条记录,确认删除', function(){
    			  $.ajax({
            		  url: '/${controllerPathMap}/delete.htm',
            		  type: 'post',
            		  data: {
            			  ids: data.id
            		  },
            		  success: function(data){
            			if(data && data.resultMessage){
            				layer.alert(data.resultMessage);
            				table.reload('table-data-main');
            			}else{
            				layer.alert('返回的数据无法解析,请反馈到管理员');
            			}
            		  },
					  error: function(data){
						  layer.alert('请求出错,请检查网络连接是否正常');
					  }
            	  }); 
    		  });
    	  }
      } else if(obj.event === 'edit'){ //修改按钮操作入口    	
		$('#form-data-edit').removeClass('layui-hide');
		layer.open({
			title: '修改窗口',
			type: 1,
			content: $('#form-data-edit'),
			btn: null,
			end: function(){
				$('#form-data-edit').addClass('layui-hide');
			}
		});
		form.val('form-data-edit', data);
		form.render();
		$('.me-date-form').each(function(index, element){
			laydate.render({
				elem: element,
				type: 'datetime'
			});
		});
	  }
    });
    
    //搜索按钮点击事件
    form.on('submit(btn-search-bar)', function(data){
      var field = data.field;
      //执行重载
      table.reload('table-data-main', {
        where: field
      });
    });
    
  });
  
	//添加按钮监听方法
	function add(){
		var $ = layui.$;
		layui.use(['layer', 'form', 'laydate'], function(){
			var layer = layui.layer;
			var form = layui.form;
			var laydate = layui.laydate;
			$('#form-data-add').removeClass('layui-hide');
			layer.open({
				title: '添加窗口',
				type: 1,
				content: $('#form-data-add'),
				btn: null,
				end: function(){
					$('#form-data-add').addClass('layui-hide');
				}
			});
			form.render();
			$('#form-data-add .me-date-form').each(function(index, element){
				laydate.render({
					elem: element,
					type: 'datetime'
				});
			});
		}); 		
	}
	
	//添加窗口表单提交方法
	function addSubmit(){
		var $ = layui.$;
		layui.use(['layer', 'form', 'table'], function(){
			var layer = layui.layer;
			var form = layui.form;
			var table = layui.table;
			var formArray = $('#form-data-add').serializeArray();
			var params = {};
			layui.each(formArray, function(index, item){
				params[item.name] = item.value;
			});
			$.ajax({
				url: '/${controllerPathMap}/add.htm',
				type: 'post',
				data: params,
				success: function(data){
					layer.closeAll();
					if(data && data.resultMessage){
        				layer.alert(data.resultMessage);
        				table.reload('table-data-main');
        			}else{
        				layer.alert('返回的数据无法解析,请反馈到管理员');
        			}
				},
				error: function(data){
					layer.closeAll();
					layer.alert('请求出错,请检查网络连接是否正常');					
				}
			});
		});
	}
	
	//批量删除按钮监听方法
	function batchDelete(){
		var $ = layui.$;
		layui.use(['layer', 'form', 'table'], function(){
			var layer = layui.layer;
			var form = layui.form;
			var table = layui.table;
			var checkedData = table.checkStatus('table-data-main').data; //test即为基础参数id对应的值
			if(checkedData == null || checkedData.length == 0){
				layer.alert('没有选择任何选项,请选择需要删除记录再进行该操作');
				return;
			}else{
				var ids = checkedData[0].id;
				for(var i=1; i<checkedData.length; ++i){
					ids += ','+checkedData[i].id;
				}				
				layer.confirm('您当前选择了'+checkedData.length+'条记录,是否确认删除?', function(){
					$.ajax({
						url: '/${controllerPathMap}/delete.htm',
						type: 'post',
						data: {
							ids: ids
						},
						success: function(data){
							layer.closeAll();
							if(data && data.resultMessage){
		        				layer.alert(data.resultMessage);
		        				table.reload('table-data-main');
		        			}else{
		        				layer.alert('返回的数据无法解析,请反馈到管理员');
		        			}
						},
						error: function(data){
							layer.closeAll();
							layer.alert('请求出错,请检查网络连接是否正常');
						}
					});		
				});
			}
		});
	}
	
	//修改按钮表单提交方法
	function editSubmit(){
		var $ = layui.$;
		layui.use(['layer', 'form', 'table'], function(){
			var layer = layui.layer;
			var form = layui.form;
			var table = layui.table;
			var formArray = $('#form-data-edit').serializeArray();
			var params = {};
			layui.each(formArray, function(index, item){
				params[item.name] = item.value;
			});
			$.ajax({
				url: '/${controllerPathMap}/edit.htm',
				type: 'post',
				data: params,
				success: function(data){
					layer.closeAll();
					if(data && data.resultMessage){
        				layer.alert(data.resultMessage);
        				table.reload('table-data-main');
        			}else{
        				layer.alert('返回的数据无法解析,请反馈到管理员');
        			}
				},
				error: function(data){
					layer.closeAll();
					layer.alert('请求出错,请检查网络连接是否正常');
				}
			});
		});
	}
  </script>
</body>
</html>