1.systemLogRecord.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!-- gr grprogram@163.com 2014.6.20--> <style type="text/css"> #la{margin-left:10px;} #log_search{margin-left:10px;} </style> <script type="text/javascript" src="${ctx}/js/Municipal/systemLogRecord.js"></script> <div class="easyui-layout" data-options="fit:true" style="width:100%;height:100%;"> <!-- 显示按钮--> <div id="log_north" data-options="region:'north'" style="height:30%"> <form id="logFrom5"> <table> <tr> <td nowrap><label id="la">用户名:</label> <input id="operatoruser" name ="operatoruser" class="easyui-validatebox" validType="reg[/^[a-zA-Z0-9\u4e00-\u9fa5]*$/,'不能包含特殊字符!']" onblur="this.value = checkcode(this.value)" style="width:120px;heigth:20px;border:1px solid #DAEEF5;"/></td> <td nowrap><label>施工许可证号:</label> <input id="dataid" name ="dataid" class="easyui-validatebox" validType="reg[/^[a-zA-Z0-9/[\]\u4e00-\u9fa5]*$/,'不能包含特殊字符!']" onblur="this.value = checkcode(this.value)" style="width:120px;heigth:20px;border:1px solid #DAEEF5;"/></td> <!-- <td><input type="text" name="aa"></td> --> <td nowrap> <a id="log_search" href="javascript:logSearch()" class="easyui-linkbutton" data-options="iconCls:'icon-search'" >查询</a> <a href="javascript:logClear()" class="easyui-linkbutton" data-options="iconCls:'icon-cancel'" >清空</a> <!-- <a href="javascript:deletelogUnit()" class="easyui-linkbutton" data-options="iconCls:'icon-remove'" >删除</a> --> </td> </tr> </table> </form> </div> <div data-options="region:'center',iconCls:'icon-ok'"> <!-- 显示日志信息 --> <table id="log_Unit"></table> </div> </div>
2.systemLogRecord.js
//gr grprogram@163.com 2014.4.28 $(function() { $('#log_Unit').datagrid({ url:'/QXFL/logUnite.htm?type=1', border : false, pagination : true,// 是否分页 pageSize : 12,//条数 pageList : [ 3, 6, 12, 24 ],//选择条数 // fitColumns : true,//小自动适应格式 fit : true,//大自动适应 //分页end // sortName:'tbrq',//根据填报日期排序 // sortOrder:desc,//定义排序顺序,可以是'asc'或者'desc'(正序或者倒序)。 idField : 'logid',// 很重要 表明该列是一个唯一列。 // checkOnSelect : true, selectOnCheck : true,//如果设置为true,单击一个复选框,将始终选择行。如果为false,不会选择行选中该复选框。 // singleSelect : true,//设置为true将只允许选择一行。 columns:[[ // { // checkbox:true,//复选框 //// hidden:true //默认不显示 // }, { field:'operatoruser', title:'用户名', width:90 },{ field:'operatortype', title:'操作类型', width:160, },{ field:'time1', title:'时间', width:130, },{ field:'datatype', title:'数据类型', width:100, },{ field:'executionresults', title:'执行结果', width:80, },{ field:'dataid', title:'施工许可证号', width:130, } // ,{ // field : 'logid',//建设单位法定代表人(必须用数据库属性表中有的字段,替换成按钮) // title : '删除', // width : 150, // formatter : function(value, rowData, // rowIndex) { // return '<img src="/QXFL/js/jquery-easyui-1.3.3/themes/icons/cancel.png" title="删除" onclick="deleteSysLog();"/>'; // } // } ]] }); }); //日志查询方法 function logSearch() { $('#log_Unit').datagrid('load',zy.serializeObject($('#logFrom5'))); } //清除方法 function logClear() { // document.getElementById("shzt").value="全部"; // $('#jsgcszqx').combobox('setValue','全部区县'); // document.getElementById("GCMC").value=""; document.getElementById("operatoruser").value=""; document.getElementById("dataid").value=""; $('#log_Unit').datagrid('load', {}); } //删除本行 //function deleteSysLog(value,rowIndex,rowData) { // //} //function deleteUserTowns(){ // var selectedRows=$("#u_dgTowns").datagrid('getSelections'); // var row = selectedRows[0]; // if(selectedRows.length==0){ // $.messager.alert("系统提示","请选择要删除的数据!"); // return; // } // $.messager.confirm("系统提示","您确认要删掉这<font color=red>"+selectedRows.length+"</font>条数据吗?",function(r){ // if(r){ //// alert("真删啊"+row.name); // $.post('/QXFL/deleteUserTowns.htm?type=2&name='+row.name,function(data){ // if(data == true) { // $.messager.alert('提示','删除成功!') // $('#u_dgTowns').datagrid('load', {});//刷新datagrid // }else { // $.messager.alert('提示','删除失败!'); // } // },"json"); // }else { //// alert("删除取消"); // } // }); //} /*//责任单位用户-删除选中行 function deleteUserUnit(){ var selectedRows=$("#u_dgUnit").datagrid('getSelections'); var row = selectedRows[0]; if(selectedRows.length==0){ $.messager.alert("系统提示","请选择要删除的数据!"); return; } $.messager.confirm("系统提示","您确认要删掉这<font color=red>"+selectedRows.length+"</font>条数据吗?",function(r){ if(r){ // alert("真删啊"+row.name); $.post('/QXFL/deleteUserUnit.htm?type=5&name='+row.name,function(data){ if(data == true) { $.messager.alert('提示','删除成功!') $('#u_dgUnit').datagrid('load', {});//刷新datagrid }else { $.messager.alert('提示','删除失败!'); } },"json"); }else { // alert("删除取消"); } }); }*/
3.UserControler
package org.bjits.controller; import java.io.IOException; import java.util.ArrayList; import java.util.Enumeration; import java.security.NoSuchAlgorithmException; import java.sql.Timestamp; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.UUID; import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.IncorrectCredentialsException; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.subject.Subject; import org.bjits.dao.Permissions_qxjMapper; import org.bjits.dao.Roles_permissions_qxjMapper; import org.bjits.dao.Roles_qxjMapper; import org.bjits.model.Roles_permissions_qxj; import org.bjits.model.Permissions_qxj; import org.bjits.model.Roles_qxj; import org.bjits.model.Sgxkz_qxj; import org.bjits.model.User; import org.bjits.realm.CaptchaUsernamePasswordToken; import org.bjits.service.UserService; import org.bjits.util.CodeUtil; import org.bjits.util.DataGrid; import org.bjits.util.mail.emailUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.servlet.ModelAndView; @Controller //@RequestMapping("/UserControler") public class UserControler extends BaseController{ @Autowired private UserService userService;//用户的service接口 @Autowired private Roles_qxjMapper roles_qxjMapper;//mybaities反向生成的roles_qxjMapper @Autowired private Permissions_qxjMapper permissions_qxjMapper;//权限 @Autowired private Roles_permissions_qxjMapper roles_permissions_qxjMapper;//权限 /** * 系统日志记录 */ @RequestMapping(value = "/logUnite") //转码@ResponseBody public @ResponseBody DataGrid logUnite(HttpServletRequest request,HttpServletResponse response,@RequestParam("type")String type ) { String page = request.getParameter("page");//页数 String rows = request.getParameter("rows");//每页显示几条 // String sort = request.getParameter("sort");//排序 // String order = request.getParameter("order");//升序降序 // String name = request.getParameter("name");//主见查询用的 String operatoruser = request.getParameter("operatoruser");//获取页面上的用户名文本框 String dataid = request.getParameter("dataid");//获取施工许可证号 int role = 4;//市级用户对应角色表id是4,先写死了。 Map map = new HashMap(); if(type.equals("1")) {//type为1 的时候是系统日志 map.put("type", 1); } if(type.equals("2")) {//type为2的时候是用户日志 map.put("type", 2); } if(operatoruser != null && !"".equals(operatoruser)) { map.put("operatoruser", "%"+operatoruser+"%"); } if(dataid != null && !"".equals(dataid)) { map.put("dataid", "%"+dataid+"%"); } DataGrid dg = (DataGrid)userService.getLogUnit(Integer.valueOf(page),Integer.valueOf(rows),role,map);//调用接口中的dataGrid方法 // writeJson(dg, response);//返回给页面 return dg; } }
4.UserService
package org.bjits.service; import java.util.List; import java.security.NoSuchAlgorithmException; import java.util.Map; import org.bjits.model.Log_qxj; import org.bjits.model.Permissions_qxj; import org.bjits.model.User; import org.bjits.util.DataGrid; import org.springframework.stereotype.Service; @Service("UserService") public interface UserService { /** * 系统操作日志 * @param page * @param rows * @param role * @param map * @return */ DataGrid getLogUnit(int page, int rows, int role, Map map); }
5.UserServiceImpl
package org.bjits.service.impl; import java.security.NoSuchAlgorithmException; import java.sql.Timestamp; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Random; import java.util.UUID; import org.apache.shiro.SecurityUtils; import org.apache.shiro.subject.Subject; import org.bjits.dao.Flgcxxb_qxjMapper; import org.bjits.dao.Log_qxjMapper; import org.bjits.dao.Permissions_qxjMapper; import org.bjits.dao.UserMapper; import org.bjits.dao.User_permissions_qxjMapper; import org.bjits.model.Log_qxj; import org.bjits.model.Permissions_qxj; import org.bjits.model.Sgxkz_qxj; import org.bjits.model.User; import org.bjits.model.User_permissions_qxj; import org.bjits.service.UserService; import org.bjits.util.CodeUtil; import org.bjits.util.DataGrid; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service("UserService") public class UserServiceImpl implements UserService{ @Autowired UserMapper userMapper; @Autowired Permissions_qxjMapper permissions_qxjMapper; @Autowired User_permissions_qxjMapper user_permissions_qxjMapper; @Autowired Log_qxjMapper log_qxjMapper; @Autowired Flgcxxb_qxjMapper flgcxxb_qxjMapper; //系统操作用户日志 @Override public DataGrid getLogUnit(int page, int rows, int role, Map map) { // TODO Auto-generated method stub DataGrid dg = new DataGrid(); //开始记录数 int start=(page-1)*rows; //结束记录数 map.put("start", start); map.put("end", rows); map.put("role", role); List<Log_qxj> list=log_qxjMapper.getSysLogData(map);//根据角色id返回区县级用户列表 for(Log_qxj log_qxj:list) { DateFormat df = new SimpleDateFormat("yyyy-MM-dd");//格式化时间 if(null != log_qxj.getTime()) { log_qxj.setTime1(df.format(log_qxj.getTime()));//属性中创建了一个虚拟的time1对象,将从数据库中获取的time值付给虚拟的time1传给页面,实现时间格式的转换 } } // for(int i=0;i<list.size();i++) { // DateFormat df = new SimpleDateFormat("yyyy-MM-dd");//格式化时间 // Log_qxj log_qxj = list.get(i); // if(null != log_qxj.getTime()) { // log_qxj.setTime1(df.format(log_qxj.getTime()));//属性中创建了一个虚拟的time1对象,将从数据库中获取的time值付给虚拟的time1传给页面,实现时间格式的转换 // } // } // for(int i=0;i<list.size();i++) { // DateFormat df = new SimpleDateFormat("yyyy-MM-dd");//格式化时间 //// Log_qxj log_qxj = list.get(i); // if(null != list.get(i).getTime()) { // list.get(i).setTime1(df.format(list.get(i).getTime()));//属性中创建了一个虚拟的time1对象,将从数据库中获取的time值付给虚拟的time1传给页面,实现时间格式的转换 // } // } int totals=log_qxjMapper.getSysLogCount(map);//分页获得总页数 dg.setTotal(totals);//总记录数 dg.setRows(list);//将集合付给DataGrid对象 return dg; } }
6.Log_qxjMapper
package org.bjits.dao; import java.util.List; import java.util.Map; import org.bjits.model.Log_qxj; import org.bjits.model.User; public interface Log_qxjMapper { int insert(Log_qxj record); int insertSelective(Log_qxj record); List<Log_qxj> getSysLogData(Map map);//系统日志返回dataGrid int getSysLogCount(Map map);//系统日志放回dataGrid总数 }
7.Log_qxjMapper.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="org.bjits.dao.Log_qxjMapper" > <resultMap id="BaseResultMap" type="org.bjits.model.Log_qxj" > <result column="logid" property="logid" jdbcType="BIGINT" /> <result column="operatoruser" property="operatoruser" jdbcType="VARCHAR" /> <result column="operatortype" property="operatortype" jdbcType="VARCHAR" /> <result column="time" property="time" jdbcType="TIMESTAMP" /> <result column="datatype" property="datatype" jdbcType="VARCHAR" /> <result column="executionresults" property="executionresults" jdbcType="VARCHAR" /> <result column="dataid" property="dataid" jdbcType="VARCHAR" /> </resultMap> <insert id="insert" parameterType="org.bjits.model.Log_qxj" > insert into log_qxj ( operatoruser, operatortype, time, datatype, executionresults, dataid) values ( #{operatoruser,jdbcType=VARCHAR}, #{operatortype,jdbcType=VARCHAR}, #{time,jdbcType=TIMESTAMP}, #{datatype,jdbcType=VARCHAR}, #{executionresults,jdbcType=VARCHAR}, #{dataid,jdbcType=VARCHAR}) </insert> <insert id="insertSelective" parameterType="org.bjits.model.Log_qxj" > insert into log_qxj <trim prefix="(" suffix=")" suffixOverrides="," > <if test="logid != null" > logid, </if> <if test="operatoruser != null" > operatoruser, </if> <if test="operatortype != null" > operatortype, </if> <if test="time != null" > time, </if> <if test="datatype != null" > datatype, </if> <if test="executionresults != null" > executionresults, </if> <if test="dataid != null" > dataid, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides="," > <if test="logid != null" > #{logid,jdbcType=BIGINT}, </if> <if test="operatoruser != null" > #{operatoruser,jdbcType=VARCHAR}, </if> <if test="operatortype != null" > #{operatortype,jdbcType=VARCHAR}, </if> <if test="time != null" > #{time,jdbcType=TIMESTAMP}, </if> <if test="datatype != null" > #{datatype,jdbcType=VARCHAR}, </if> <if test="executionresults != null" > #{executionresults,jdbcType=VARCHAR}, </if> <if test="dataid != null" > #{dataid,jdbcType=VARCHAR}, </if> </trim> </insert> <!-- 转义框架<![CDATA[]]> --> <select id="getSysLogData" parameterType="map" resultMap="BaseResultMap"> select * from log_qxj l1 where 1=1 <if test="operatoruser != null" > and l1."operatoruser"like #{operatoruser} </if> <if test="dataid != null" > and l1."dataid"like #{dataid} </if> <if test="type == 1"> <![CDATA[and l1."dataid"<>'']]> </if> <if test="type == 2"> <![CDATA[and l1."dataid"='']]> </if> order by l1."logid" desc limit #{end} offset #{start} </select> <select id="getSysLogCount" parameterType="map" resultType="int"> select count (*) from log_qxj l1 where 1=1 <if test="operatoruser != null" > and l1."operatoruser"like #{operatoruser} </if> <if test="dataid != null" > and l1."dataid"like #{dataid} </if> <if test="type == 1"> <![CDATA[and l1."dataid"<>'']]> </if> <if test="type == 2"> <![CDATA[and l1."dataid"='']]> </if> </select> </mapper>
相关推荐
Datagrid 是 jQuery EasyUI 中一个强大的数据展示组件,常用于表格数据的展示和操作,支持分页、排序、过滤、编辑等功能。通过阅读这份文档,我们可以了解 Datagrid 的基本配置和高级特性,以及如何与后端数据源进行...
在jQuery EasyUI中,DataGrid是一种常用的表格展示控件,它可以与各种编辑器结合使用,如combobox(下拉框)来实现更丰富的交互功能。本文主要探讨的是如何利用jQuery EasyUI的DataGrid和combobox组件实现多级联动的...
jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) Demo 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停离开事件,源码奉献!!!
在jQuery EasyUI中,`datagrid`是一个非常常用的组件,它用于展示数据表格,具有丰富的功能和良好的用户体验。而`searchbox`则是为了增强`datagrid`的搜索功能,让用户能够更方便地查找表格中的特定数据。在标题和...
jQuery EasyUI 的核心在于其组件系统,这些组件包括但不限于数据网格(datagrid)、下拉菜单(combobox)、对话框(dialog)、表单(form)、布局(layout)、菜单(menu)、面板(panel)、进度条(progressbar)、...
分页和排序功能同样通过Ajax实现,DataGrid会发送包含当前页码和排序信息的请求给服务器,服务器根据这些信息查询数据库并返回对应页的数据,DataGrid则据此更新显示。 总的来说,"struts2+ajax+easyui+json+...
标题 "jquery easyui 表头固定 datagrid 弹出框 AJAX刷新页面" 涉及的是在网页开发中使用jQuery EasyUI库实现的功能。jQuery EasyUI是一个基于jQuery的UI框架,它提供了一系列易于使用的组件,如datagrid(数据网格...
在这个例子中,我们将深入探讨如何使用 jQuery EasyUI 的 DataGrid 实现表格的增删改查功能,并结合后台的 Servlet 进行数据处理。 首先,`DataGrid` 是一个可滚动、可排序、可分页的表格控件,可以展示大量数据。...
- **EasyUI 组件**: EasyUI 将jQuery的功能进一步扩展,提供了如`datagrid`(数据网格)、`panel`(面板)、`dialog`(对话框)等丰富的UI组件。 2. **组件的使用**: - **初始化组件**: 使用`$(selector)....
jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列的 UI 组件,使得开发者能够快速构建出美观且功能丰富的 Web 应用程序。这个初试 Jquery EasyUI 的 Demo 旨在帮助新手逐步理解和应用这个强大的工具。 ...
jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列的 UI 组件,使得开发者能够快速构建出美观且功能丰富的 Web 应用程序。这个框架大大简化了网页界面的设计工作,使得开发者可以专注于业务逻辑,而无需...
jquery easyui 扩展 datagrid 自定义动态隐藏显示列
4. **easyloader.js**:EasyLoader是jQuery EasyUI的一部分,用于自动化加载所需的组件,帮助减少页面加载时间,提高性能。 5. **jquery.easyui.mobile.js**:这个文件针对移动设备进行了优化,提供了一套适应手机...
在这个"Jquery EasyUI 日历Demo"中,我们将探讨如何利用 EasyUI 的日历组件来实现一个简单的日期选择功能。 首先,我们需要在 HTML 页面中引入 jQuery 和 JQuery EasyUI 的库文件。这些库文件通常可以从官方 CDN...
标题 "EasyUI可扩展Editable DataGrid(可编辑数据表格)" 涉及的是一个流行的JavaScript框架——EasyUI中的一个特性。EasyUI是基于jQuery的一个轻量级且易于使用的前端框架,它提供了一系列预定义的CSS样式和...
在IT领域,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如数据分页、排序、筛选等。当我们需要将Datagrid中的数据进行打印时,可能会遇到一些挑战,因为通常默认的浏览器打印功能...
在IT行业中,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如排序、分页、过滤等。在实际工作中,我们经常需要将这些展示的数据导出到Excel文件,以便进行进一步的分析或存储。下面...
2. **组件详解**:jQuery EasyUI 提供了许多组件,如 `datagrid`(数据网格)、`dialog`(对话框)、`menu`(菜单)、`tabs`(选项卡)、`tree`(树形结构)和`form`(表单)。每个组件都有详细的配置选项、方法和...
谁在jquery easyUI 下做过动态生成多条件查询功能,动态添加一行(一个条件):参数名(多个字段名)、关系符(>、<、>=、、=)、比较值(input)。大体就这样,点击“添加条件”,生成上面描述的一行,这个在jquery...
最新版本的jQuery EasyUI 1.3.6版全中文API汉化文档火热出炉,由于很多人和我要chm格式的,所以本次API我提供了2种版本的API,一个还是以前的EXE格式,另外一个就是人气颇高的chm格式。本次还将EasyUI 1.3.6版直接...