核心提示:1.用户管理功能模块效果图如下2.用户管理功能模块-新增、修改和详情功能大致相同,故截一个图,效果图如下3.用户管理功能模块-分配角色功能,效果图如下 用户管理模块后台controller代码pack...
1.用户管理功能模块效果图如下
2.用户管理功能模块->新增、修改和详情功能大致相同,故截一个图,效果图如下
3.用户管理功能模块->分配角色功能,效果图如下

package com.gsww.controller.sys; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springside.modules.web.Servlets; import com.gsww.controller.BaseController; import com.gsww.entity.sys.SysRoleInfo; import com.gsww.entity.sys.SysSession; import com.gsww.entity.sys.SysUserInfo; import com.gsww.entity.sys.SysUserRole; import com.gsww.service.sys.SysRoleInfoService; import com.gsww.service.sys.SysUserInfoService; import com.gsww.service.sys.SysUserRoleService; import com.gsww.util.PageUtils; import com.gsww.util.TimeHelper; /** * 系统用户管理 * @author Administrator * */ @Controller @RequestMapping(value = "/sysUser") public class SysUserInfoController extends BaseController { @Autowired private SysUserInfoService sysUserInfoService; @Autowired private SysRoleInfoService sysRoleInfoService; @Autowired private SysUserRoleService sysUserRoleService; /* * 返回系统系统用户管理页面 */ @RequestMapping(value = "/getSysUserIndex") public String getSysUserIndex(HttpServletRequest request, HttpServletResponse response,Model model) throws Exception{ SysSession sysSession = (SysSession) request.getSession().getAttribute("sysSession"); model.addAttribute("sysSession", sysSession); return "sysManage/sysUserInfo"; } /* * 获取系统用户分页列表 */ @RequestMapping(value = "/getSysUserInfoPage",method = RequestMethod.GET) public void getSysUserInfoPage(@RequestParam(value = "start", defaultValue = "1") int page, @RequestParam(value = "limit", defaultValue = LIMIT) int pageSize, @RequestParam(value = "orderField", defaultValue = "createTime") String orderField, @RequestParam(value = "orderSort", defaultValue = "DESC") String orderSort, @RequestParam(value = "userName", defaultValue = "") String userName, @RequestParam(value = "findNowPage", defaultValue = "false") String findNowPage, Model model,HttpServletRequest request,HttpServletResponse response){ try { //初始化分页数据 page = page/pageSize + 1; PageUtils pageUtils=new PageUtils(page,pageSize,orderField,orderSort); PageRequest pageRequest=super.buildPageRequest(request,pageUtils,SysRoleInfo.class,findNowPage); //获取页面的参数 Map用户管理模块后台jsp代码searchParams = Servlets.getParametersStartingWith(request, "search_"); if(StringUtils.isNotBlank(userName)){ searchParams.put("LIKE_userName", userName); } Specification spec=super.toSpecification(searchParams, SysUserInfo.class); //分页 Page sysUserPage = sysUserInfoService.getSysUserInfoPage(spec, pageRequest); //获取角色userRoleIds和userRoleNames for (SysUserInfo sysUserInfo : sysUserPage.getContent()) { String userId = sysUserInfo.getUserId(); List sysurList = sysUserRoleService.getSysUserRoleByUserId(userId); String userRoleIds = "",userRoleNames = ""; if(sysurList.size()>0){ for (SysUserRole sysUserRole : sysurList) { String roleId = sysUserRole.getRoleId(); userRoleIds += roleId+","; SysRoleInfo sysRoleInfo = sysRoleInfoService.getSysRoleInfoByRoleId(roleId); if(null!=sysRoleInfo){ userRoleNames += sysRoleInfo.getRoleName()+","; } } } if(userRoleIds.indexOf(",")>0){ userRoleIds = userRoleIds.substring(0, userRoleIds.length()-1); } if(userRoleNames.indexOf(",")>0){ userRoleNames = userRoleNames.substring(0, userRoleNames.length()-1); } sysUserInfo.setUserRoleIds(userRoleIds); sysUserInfo.setUserRoleNames(userRoleNames); } Map dataMap = new HashMap (); dataMap.put("data", sysUserPage.getContent()); dataMap.put("count", sysUserPage.getTotalElements()); this.getJson(response, dataMap); } catch (Exception e) { e.printStackTrace(); } } /* * 系统用户新增 */ @RequestMapping(value = "/sysUserInfoSave",method = RequestMethod.POST) public void sysUserInfoSave(HttpServletRequest request, HttpServletResponse response,SysUserInfo sysUserInfo) throws Exception{ String userId = sysUserInfo.getUserId(); if(StringUtils.isBlank(userId)){ sysUserInfo.setCreateTime(TimeHelper.getCurrentTime()); }else{ sysUserInfo.setUpdateTime(TimeHelper.getCurrentTime()); } String userSex = sysUserInfo.getUserSex(); if(StringUtils.isNotBlank(userSex)){ if(userSex.equals("男")){ userSex = "1"; }else{ userSex = "0"; } sysUserInfo.setUserSex(userSex); } String userState = sysUserInfo.getUserState(); if(StringUtils.isNotBlank(userState)){ if(userState.equals("有效")){ userState = "1"; }else{ userState = "0"; } sysUserInfo.setUserState(userState); } sysUserInfoService.sysUserInfoSave(sysUserInfo); } /* * 系统用户删除 */ @RequestMapping(value = "/sysUserInfoDelete",method = RequestMethod.GET) public void sysUserInfoDelete(HttpServletRequest request, HttpServletResponse response,String idStr) throws Exception{ if(StringUtils.isNotBlank(idStr)){ String[] arr = idStr.split(","); int delSum = 0; for (String userId : arr) { sysUserInfoService.sysUserInfoDelet(userId); delSum++; } String message = "您成功删除了"+delSum+"条记录!"; this.getJson(response, message); } } /* * 系统用户启用停用 */ @RequestMapping(value = "/sysUserInfoUpdate",method = RequestMethod.GET) public void sysUserInfoUpdate(HttpServletRequest request, HttpServletResponse response,String idStr,String userState) throws Exception{ if(StringUtils.isNotBlank(idStr)){ String[] arr = idStr.split(","); int sucSum = 0; for (String roleId : arr) { SysUserInfo sysUserInfo = sysUserInfoService.getSysUserInfoByUserId(roleId); if(sysUserInfo!=null){ String ustate = sysUserInfo.getUserState(); if(!ustate.equals(userState)){ sysUserInfoService.sysUserInfoUpdate(userState, roleId); sucSum++; } } } String roleStateText = userState!=null&&userState.equals("1")?"启用":"停用"; String message = "您成功"+roleStateText+sucSum+"条记录!"; int failSum = arr.length-sucSum; if(failSum>0){ message+=","+failSum+"条记录由于已"+roleStateText+","+roleStateText+"失败!"; } this.getJson(response, message); } } /* * 系统用户分配角色保存 */ @RequestMapping(value = "/sysUserRoleSave",method = RequestMethod.GET) public void sysUserRoleSave(HttpServletRequest request, HttpServletResponse response,String userId,String idStr) throws Exception{ if(StringUtils.isNotBlank(userId)&&StringUtils.isNotBlank(idStr)){ //在进行分配角色之前先删除原先分配的角色 List sysurList = sysUserRoleService.getSysUserRoleByUserId(userId); if(sysurList.size()>0){ for (SysUserRole sysUserRole : sysurList) { sysUserRoleService.sysUserRoleDelete(sysUserRole); } } String[] arr =idStr.split(","); //分配角色 for (int i = 0; i < arr.length; i++) { SysUserRole sysUserRole = sysUserRoleService.getSysUserRole(userId,arr[i]); if(null==sysUserRole){ SysUserRole sysur = new SysUserRole(); sysur.setUserId(userId); sysur.setRoleId(arr[i]); sysUserRoleService.sysUserRoleSave(sysur); } } } } /* * 系统用户密码初始化 */ @RequestMapping(value = "/sysUserPassInitilalize",method = RequestMethod.GET) public void sysUserPassInitilalize(HttpServletRequest request, HttpServletResponse response,String idStr) throws Exception{ if(StringUtils.isNotBlank(idStr)){ String[] arr = idStr.split(","); int succSum = 0; for (String userId : arr) { SysUserInfo sysUserInfo = sysUserInfoService.getSysUserInfoByUserId(userId); sysUserInfo.setUserPass(INITUSERPASS); sysUserInfoService.sysUserInfoSave(sysUserInfo); succSum++; } String message = "您成功将"+succSum+"条记录进行了密码初始化,初始密码为:"+INITUSERPASS+",请牢记!"; this.getJson(response, message); } } /* * 系统用户修改密码 */ @RequestMapping(value = "/sysUserModifyPass",method = RequestMethod.POST) public void sysUserModifyPass(HttpServletRequest request, HttpServletResponse response,String userId,String userPass,String userNewPass) throws Exception{ if(StringUtils.isNotBlank(userId)){ String code = "0",message = ""; SysUserInfo sysUserInfo = sysUserInfoService.getSysUserInfoByUserId(userId); if(null!=sysUserInfo){ if(StringUtils.isNotBlank(userPass)){ if(userPass.equals(sysUserInfo.getUserPass())){ sysUserInfo.setUserPass(userNewPass); sysUserInfoService.sysUserInfoSave(sysUserInfo); code = "1"; message = "修改成功,请重新登录!"; }else{ message = "原密码输入错误,修改失败!"; } } }else{ message = "用户不存在,修改失败!"; } Map dataMap = new HashMap (); dataMap.put("code", code); dataMap.put("message", message); this.getJson(response, dataMap); } } }
<%@ page language="java" contentType="text/html;charset=utf-8" pageEncoding="utf-8"%><%@ include file="/resource/include/meta.jsp"%>
/********************************************Ext入口函数,相当于java中的主函数开始********************************************/ Ext.onReady(function() { Ext.QuickTips.init(); var userStateStore = new Ext.data.ArrayStore({ fields : ['key', 'value'], data : [['有效','1'],['无效', '0']] }); var userSexStore = new Ext.data.ArrayStore({ fields : ['key', 'value'], data : [['男','1'],['女', '0']] }); var record = Ext.data.Record.create([ {name:'userId'}, {name:'loginAccount'}, {name:'userName'}, {name:'userPass'}, {name:'userSex'}, {name:'userBrithday'}, {name:'createTime'}, {name:'updateTime'}, {name:'userState'}, {name:'userDesc'}, {name:'userRoleIds'}, {name:'userRoleNames'} ]); /***************************** 表格数据代理Store开始 *******************************************/ var dataStore = new Ext.data.Store({ restful : true, autoLoad : true, proxy : new Ext.data.HttpProxy({ url:basepath+'/sysUser/getSysUserInfoPage', method : 'GET' }), reader : new Ext.data.JsonReader({ successProperty : 'success', idProperty : 'ID', messageProperty : 'message', root : 'data', totalProperty : 'count' }, record) }); /***************************** 表格数据代理Store结束 *******************************************/ /***************************** 定义自动当前页行号开始 *******************************************/ var rownum = new Ext.grid.RowNumberer({ header : 'No.', width : 28 }); /***************************** 定义自动当前页行号结束 *******************************************/ /***************************** 定义复选框开始 *******************************************/ var sm = new Ext.grid.CheckboxSelectionModel(); /***************************** 定义复选框结束 *******************************************/ /***************************** 设置分页参数开始 *******************************************/ var pagesize_combo = new Ext.form.ComboBox({ name : 'pagesize', triggerAction : 'all', mode : 'local', store : new Ext.data.ArrayStore({ fields : ['value', 'text'], data : [ [ 10, '10条/页' ], [ 20, '20条/页' ], [ 50, '50条/页' ], [ 100, '100条/页' ], [ 250, '250条/页' ], [ 500, '500条/页' ] ] }), valueField : 'value', displayField : 'text', value: 20, editable : false, width : 85 }); var bbar = new Ext.PagingToolbar({ //分页组件 pageSize : parseInt(pagesize_combo.getValue()), store : dataStore, displayInfo : true, displayMsg : '显示{0}条到{1}条,共{2}条', emptyMsg : "没有符合条件的记录", items : ['-', '', pagesize_combo] }); pagesize_combo.on("select", function(comboBox) { bbar.pageSize = parseInt(pagesize_combo.getValue()), dataStore.reload({ params : { start : 0, limit : parseInt(pagesize_combo.getValue()) } }); }); /***************************** 设置分页参数结束 *******************************************/ /***************************************** 新增editForm开始 **************************************************/ var editForm = new Ext.form.FormPanel({ formId:'editForm', frame:true, border:false, labelAlign:'center', standardSubmit:false, layout : 'form',//*form布局 items : [{ layout:'column', items : [{ columnWidth : .5, //列宽为25% layout : 'form', //*form布局 items: [{ columnWidth : .5, //列宽为25% layout : 'form', //*form布局 items: [{ fieldLabel : '*用户账号', name : 'loginAccount', xtype : 'textfield', // 设置为数字输入框类型 labelStyle : 'text-align:right;',//右对齐 emptyText:'请您输入用户账号', //水印提示 allowBlank:false, minLength:5, minLengthText:'用户账号的长度为[5-32]', maxLength:32, maxLengthText:'用户账号的长度为[5-32]', anchor : '90%' }] },{ columnWidth : .5, //列宽为25% layout : 'form', //*form布局 items : [{ //下拉框 xtype : 'combo', fieldLabel : '*用户状态', name : 'userState', store : userStateStore, //*加载客户类型Store editable : false, //false为不可编辑,页面效果为点击下拉框空白处直接触发下拉用户 labelStyle : 'text-align:right;',//fieldLabel右对齐 triggerAction : 'all', //*触发器被激活时执行allQuery查询 displayField : 'key', //*下列列表选项的中文名,对应Store中的value valueField : 'value', //*下列列表选项对应的key值,对应Store中的key mode : 'local', //*读取本地数据 emptyText:'请您选择', //*水印提示 resizable : false, //*下拉框下部的缩放柄,可改变下拉框大小 allowBlank:false, anchor : '90%' },{ fieldLabel : '*用户姓名', name : 'userName', xtype : 'textfield', // 设置为数字输入框类型 labelStyle : 'text-align:right;',//右对齐 emptyText:'请您输入用户姓名', //水印提示 allowBlank:false, anchor : '90%' }] }] },{ columnWidth : .5, //列宽为25% layout : 'form', //*form布局 items: [{ fieldLabel : '*用户密码', id:'userPass', name : 'userPass', xtype : 'textfield', // 设置为数字输入框类型 labelStyle : 'text-align:right;',//右对齐 emptyText:'请您输入用户密码', //水印提示 minLength:6, minLengthText:'用户账号的长度为[6-32]', maxLength:32, maxLengthText:'用户账号的长度为[6-32]', anchor : '90%' },{ columnWidth : .5, //列宽为25% layout : 'form', //*form布局 items : [{ //下拉框 xtype : 'combo', fieldLabel : '*用户性别', name : 'userSex', store : userSexStore, //*加载客户类型Store //下列属性在复用时一般不作修改 editable : false, //false为不可编辑,页面效果为点击下拉框空白处直接触发下拉用户 labelStyle : 'text-align:right;',//fieldLabel右对齐 triggerAction : 'all', //*触发器被激活时执行allQuery查询 displayField : 'key', //*下列列表选项的中文名,对应Store中的value valueField : 'value', //*下列列表选项对应的key值,对应Store中的key mode : 'local', //*读取本地数据 emptyText:'请您选择', //*水印提示 resizable : false, //*下拉框下部的缩放柄,可改变下拉框大小 allowBlank:false, //allowBlank : false就是已经定义好的校验规则,extjs getForm().isValid()函数会调用已经定义的校验规则来验证输入框中的值 anchor : '90%' },{ fieldLabel : '*用户生日', name : 'userBrithday', xtype : 'datefield', // 设置为数字输入框类型 labelStyle : 'text-align:right;',//右对齐 emptyText:'请您选择用户生日', //水印提示 allowBlank:false, //allowBlank : false就是已经定义好的校验规则,extjs getForm().isValid()函数会调用已经定义的校验规则来验证输入框中的值 format:'Y-m-d', anchor : '90%' }] }] }] },{ columnWidth : 1, //列宽为25% layout : 'form', //*form布局 items: [{ xtype : 'htmleditor', height : 140, width : 700, fontFamilies : ['宋体','黑体','隶书','微软雅黑','Arial','Courier New','Tahoma','Times New Roman','Verdana'], defaultFont: '宋体', defaultLinkValue:"https://www.", enableAlignments:true, enableColors:true, enableFont:true, enableFontSize:true, enableFormat:true, enableLinks:true, enableSourceEdit:true, fieldLabel:'用户描述', labelStyle:'text-align:right;', name:'userDesc', anchor:'95%' }] },{ name : 'userId', xtype : 'hidden' },{ id : 'createTime', name : 'createTime', xtype : 'hidden' },{ id : 'userRoleIds', name : 'userRoleIds', xtype : 'hidden' }] }); /***************************************** 新增editForm结束 **************************************************/ /***************************************** 新增和修改editWindow窗口开始 **************************************************/ var editWindow=new Ext.Window({ id:'editWindow', width : 880, height :350, closable : true, resizable : false, collapsible : false, draggable : true, closeAction : 'hide', title : '新增系统用户', modal : true, animCollapse : false, border : false, closable : true, animateTarget : Ext.getBody(), constrain : true, items : [editForm], buttonAlign:'center', buttons:[{ text:'保存', handler:function(){ if(!editForm.getForm().isValid()){ Ext.MessageBox.alert('系统提示', '请您正确输入各项信息!'); return false; } //提交表单的方法 var pars = editForm.getForm().getFieldValues(); var userReg = /^[A-Za-z0-9]{6,32}$/; if(!userReg.test(pars.loginAccount)){ Ext.MessageBox.alert('系统提示', '用户账号必须为6到32位的字母,数字或字母加数据组成!'); return false; } if(!userReg.test(pars.userPass)){ Ext.MessageBox.alert('系统提示', '用户密码必须为6到32位的字母,数字或字母加数据组成!'); return false; } editForm.getForm().submit({ url : basepath + '/sysUser/sysUserInfoSave', method : 'POST', waitTilte : '系统提示', waitMsg : '正在提交数据,请稍后!', success:function(response){ Ext.Msg.alert('系统提示', '保存成功!',function(btn){ if(btn == 'ok'){ dataStore.load({ params : { start : 0, limit : parseInt(pagesize_combo.getValue()) } }); } }); }, failure : function(form, action){ Ext.MessageBox.alert('系统提示', '保存失败!'); }, }); // editForm.getForm().reset(); editWindow.hide(); } },{ text: '关闭', handler:function(){ editForm.getForm().reset(); editWindow.hide(); } }] }); /***************************************** 新增和修改editWindow窗口结束 **************************************************/ /***************************************** 详情detailForm开始 **************************************************/ var detailForm=new Ext.FormPanel({ formId:'detailForm', frame:true, border:false, labelAlign:'right', standardSubmit:false, width : '100%', layout:'form', items : [{ layout:'column', items : [{ columnWidth : .5, layout : 'form', items : [{ xtype : 'textfield', fieldLabel : '用户ID', name : 'userId', editable : false, anchor : '90%' }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'textfield', fieldLabel : '用户账号', name : 'loginAccount', readOnly:true, editable : false, anchor : '90%' }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'textfield', fieldLabel : '用户密码', name : 'userPass', readOnly:true, editable : false, anchor : '90%' },{ xtype : 'combo', fieldLabel : '用户性别', labelStyle:{ width:'120px' }, name : 'userSex', allowBlank:false, mode:'local', emptyText:'请您选择', store:userSexStore, triggerAction:'all', valueField:'value', editable : false, displayField:'key', anchor : '90%' },{ xtype : 'textfield', fieldLabel : '用户角色', name : 'userRoleNames', readOnly:true, editable : false, anchor : '90%' }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'textfield', fieldLabel : '用户姓名', name : 'userName', readOnly:true, editable : false, anchor : '90%' }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'combo', fieldLabel : '用户状态', labelStyle:{ width:'120px' }, name : 'userState', allowBlank:false, mode:'local', emptyText:'请您选择', store:userStateStore, triggerAction:'all', valueField:'value', editable : false, displayField:'key', anchor : '90%' }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'textfield', fieldLabel : '创建时间', name : 'createTime', readOnly:true, editable : false, anchor : '90%' }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'textfield', fieldLabel : '更新时间', name : 'updateTime', readOnly:true, editable : false, anchor : '90%' }] }] },{ columnWidth : .5, layout : 'form', items : [{ xtype : 'htmleditor', height : 140, fontFamilies : ['宋体','黑体','隶书','微软雅黑','Arial','Courier New','Tahoma','Times New Roman','Verdana'], defaultFont: '宋体', defaultLinkValue:"https://www.", enableAlignments:true, enableColors:true, enableFont:true, enableFontSize:true, enableFormat:true, enableLinks:true, enableLists:true, enableSourceEdit:true, id:'noticeContentBaby', fieldLabel : '用户描述', readOnly:true, name : 'userDesc', anchor : '95%' }] }] }); /***************************************** 详情detailForm结束 **************************************************/ /***************************************** 详情detailWindow窗口开始 **************************************************/ var detailWindow = new Ext.Window({ id:'detailWindow', width : 880, height :350, closable : true, resizable : false, collapsible : false, draggable : true, closeAction : 'hide', title : '系统用户详情', modal : true, animCollapse : false, border : false, closable : true, animateTarget : Ext.getBody(), constrain : true, items : [detailForm], buttonAlign:'center', buttons : [{ text : '关闭', handler : function() { detailWindow.hide(); dataStore.reload(); } }] }); /***************************************** 详情detailWindow窗口结束 **************************************************/ /***************************************** 分配角色roleWindow窗口开始 **************************************************/ var userId = "",userRoleIds = ""; var rolePanel = new Ext.tree.TreePanel({ id: 'roleTree', border:false, rootVisible: true, loader: new Ext.tree.TreeLoader({ url: basepath + '/sysRole/getSysUserRoleJson' }), root: new Ext.tree.AsyncTreeNode({ id:'0', text: '系统角色', expanded:true }), listeners: { load:function(node){ //在树加载完成之后给编辑角色动态给角色授权树赋值 if(null!=userRoleIds){ var arr = userRoleIds.split(","); var allNodes = node.childNodes; for(var i = 0; i < allNodes.length; i++){ var roleId = allNodes[i].attributes.id; allNodes[i].attributes.checked=false; for ( var j = 0; j < arr.length; j++) { if(roleId==arr[j]){ allNodes[i].attributes.checked=true; } } } } } } }); var roleWindow = new Ext.Window({ width : 350, height :400, modal : true, border : false, closable : true, autoScroll: true, draggable : true, constrain : true, closable : true, resizable : false, collapsible : false, animCollapse : false, closeAction : 'hide', id:'roleWindow', title : '系统用户分配角色', animateTarget : Ext.getBody(), items : [rolePanel], bodyStyle: 'background:#fff;font-size:20px;font-family:"微软雅黑";font-weight:900;color:#fff;', buttonAlign:'center', buttons : [{ text : '保存', handler : function() { var idStr = ""; var treeNodes = Ext.getCmp('roleTree').getChecked(); for(var i=0;i1) { Ext.MessageBox.alert('系统提示', '请您选择其中一条记录进行修改!'); return false; } else { editWindow.setTitle("修改系统用户"); editForm.getForm().loadRecord(record.getSelected()); editWindow.restore(); editWindow.show(); } }else{ Ext.Msg.alert("系统提示", "请您先选择一条要修改的记录!"); } } }, '-', { text : '删除', iconCls : 'deleteIconCss', handler : function() { var checkedNodes = grid.getSelectionModel().selections.items; if(checkedNodes.length==0){ Ext.Msg.alert("系统提示", "请您先选择一条要删除的记录!"); return ; }else{ Ext.MessageBox.confirm("系统提示","您确定要删除吗?", function(button,text){ if( button == 'yes'){ var idStr = ""; for(var i=0;i 1) { Ext.MessageBox.alert('系统提示', '请您选择其中一条记录进行查看!'); return false; } else { detailForm.getForm().loadRecord(_record.getSelected()); detailWindow.restore(); detailWindow.show(); } }else{ Ext.Msg.alert("系统提示", "请您先选择一条要查看的记录!"); } } },'-', { text : '启用', iconCls : 'optionIconCss', handler : function() { if(grid.selModel.hasSelection()){ var idStr = ""; var _record = grid.getSelectionModel().selections.items; for(var i=0;i<_record.length;i++){ var userId = _record[i].data.userId; idStr +=userId+","; } Ext.Ajax.request({ url : basepath + '/sysUser/sysUserInfoUpdate?idStr=' + idStr+'&userState=1', waitTilte : '系统提示', waitMsg : '正在启用数据,请您等待...', // 显示读盘的动画效果,执行完成后效果消失 success : function(response) { Ext.Msg.alert("系统提示", response.responseText); dataStore.reload(); }, failure : function() { Ext.MessageBox.alert('系统提示', '操作失败!'); } }); }else{ Ext.Msg.alert("系统提示", "请您先选择一条要启用的记录!"); } } },'-', { text : '停用', iconCls : 'optionIconCss', handler : function() { if(grid.selModel.hasSelection()){ var idStr = ""; var _record = grid.getSelectionModel().selections.items; for(var i=0;i<_record.length;i++){ var userId = _record[i].data.userId; idStr +=userId+","; } Ext.Ajax.request({ url : basepath + '/sysUser/sysUserInfoUpdate?idStr=' + idStr+'&userState=0', waitTilte : '系统提示', waitMsg : '正在停用数据,请您等待...', // 显示读盘的动画效果,执行完成后效果消失 success : function(response) { Ext.Msg.alert("系统提示", response.responseText); dataStore.reload(); }, failure : function() { Ext.MessageBox.alert('系统提示', '操作失败!'); } }); }else{ Ext.Msg.alert("系统提示", "请您先选择一条要停用的记录!"); } } },'-', { text : '密码初始化', iconCls : 'custSelectIconCss', handler : function() { var checkedNodes = grid.getSelectionModel().selections.items; if(checkedNodes.length==0){ Ext.Msg.alert("系统提示", "请您先选择一条要密码初始化的记录!"); return ; }else{ Ext.MessageBox.confirm("系统提示","您确定要密码初始化吗?", function(button,text){ if( button == 'yes'){ var idStr = ""; for(var i=0;i