900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Java项目:车队货车管理系统(java+SSM+JSP+bootstrap+Mysql)

Java项目:车队货车管理系统(java+SSM+JSP+bootstrap+Mysql)

时间:2021-02-25 01:18:34

相关推荐

Java项目:车队货车管理系统(java+SSM+JSP+bootstrap+Mysql)

源码获取:俺的博客首页 "资源" 里下载!

项目介绍

本项目包含管理员、老板、司机三种角色;

老板角色包含以下功能:

老板登录,角色管理,用户管理,货车信息管理,运单信息管理,请假申请管理,费用报销管理,工资管理,查看工资报表,查看货车报表,新增建议等功能。

管理员角色包含以下功能:

管理员角色,角色管理,菜单管理,在线管理,日志管理,用户管理,货车信息管理,运单信息管理,请假申请管理,费用报销管理,工资信息管理,匿名建议管理,查看工资报表,查看货车报表,修改管理员资料等功能。

司机角色包含以下功能:

司机登录,货车信息管理,运单信息管理,请假申请管理,费用报销管理,工资管理,修改司机资料等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;

3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可

4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;

5.数据库:MySql 5.7版本;

6.是否Maven项目:否;

技术栈

1. 后端:Spring+SpringMVC+Mybatis

2. 前端:JSP+bootstrap+jQuery+css+javascript

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;

3. 将项目中dbconfig.properties配置文件中的数据库配置改为自己的配置;

4. 运行项目,输入localhost:8080/

用户管理控制层:

@Controller@RequestMapping(value="/user")public class UserController extends BaseController {String menuUrl = "user/listUsers.do"; //菜单地址(权限用)@Resource(name="userService")private UserManager userService;@Resource(name="roleService")private RoleManager roleService;@Resource(name="menuService")private MenuManager menuService;@Resource(name="fhlogService")private FHlogManager FHLOG;/**显示用户列表* @param page* @return* @throws Exception*/@RequestMapping(value="/listUsers")public ModelAndView listUsers(Page page)throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();String keywords = pd.getString("keywords");//关键词检索条件if(null != keywords && !"".equals(keywords)){pd.put("keywords", keywords.trim());}String lastLoginStart = pd.getString("lastLoginStart");//开始时间String lastLoginEnd = pd.getString("lastLoginEnd");//结束时间if(lastLoginStart != null && !"".equals(lastLoginStart)){pd.put("lastLoginStart", lastLoginStart+" 00:00:00");}if(lastLoginEnd != null && !"".equals(lastLoginEnd)){pd.put("lastLoginEnd", lastLoginEnd+" 00:00:00");} page.setPd(pd);List<PageData>userList = userService.listUsers(page);//列出用户列表pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色mv.setViewName("system/user/user_list");mv.addObject("userList", userList);mv.addObject("roleList", roleList);mv.addObject("pd", pd);mv.addObject("QX",Jurisdiction.getHC());//按钮权限return mv;}/**删除用户* @param out* @throws Exception */@RequestMapping(value="/deleteU")public void deleteU(PrintWriter out) throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return;} //校验权限logBefore(logger, Jurisdiction.getUsername()+"删除user");PageData pd = new PageData();pd = this.getPageData();userService.deleteU(pd);FHLOG.save(Jurisdiction.getUsername(), "删除系统用户:"+pd);out.write("success");out.close();}/**去新增用户页面* @return* @throws Exception*/@RequestMapping(value="/goAddU")public ModelAndView goAddU()throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;} //校验权限ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色mv.setViewName("system/user/user_edit");mv.addObject("msg", "saveU");mv.addObject("pd", pd);mv.addObject("roleList", roleList);return mv;}/**保存用户* @return* @throws Exception*/@RequestMapping(value="/saveU")public ModelAndView saveU() throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;} //校验权限logBefore(logger, Jurisdiction.getUsername()+"新增user");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();pd.put("USER_ID", this.get32UUID());//ID 主键pd.put("LAST_LOGIN", "");//最后登录时间pd.put("IP", "");//IPpd.put("STATUS", "0");//状态pd.put("SKIN", "no-skin");//用户默认皮肤pd.put("RIGHTS", "");pd.put("PASSWORD", pd.getString("PASSWORD"));//密码加密if(null == userService.findByUsername(pd)){//判断用户名是否存在userService.saveU(pd); //执行保存FHLOG.save(Jurisdiction.getUsername(), "新增系统用户:"+pd.getString("USERNAME"));mv.addObject("msg","success");}else{mv.addObject("msg","failed");}mv.setViewName("save_result");return mv;}/**判断用户名是否存在* @return*/@RequestMapping(value="/hasU")@ResponseBodypublic Object hasU(){Map<String,String> map = new HashMap<String,String>();String errInfo = "success";PageData pd = new PageData();try{pd = this.getPageData();if(userService.findByUsername(pd) != null){errInfo = "error";}} catch(Exception e){logger.error(e.toString(), e);}map.put("result", errInfo);//返回结果return AppUtil.returnObject(new PageData(), map);}/**判断邮箱是否存在* @return*/@RequestMapping(value="/hasE")@ResponseBodypublic Object hasE(){Map<String,String> map = new HashMap<String,String>();String errInfo = "success";PageData pd = new PageData();try{pd = this.getPageData();if(userService.findByUE(pd) != null){errInfo = "error";}} catch(Exception e){logger.error(e.toString(), e);}map.put("result", errInfo);//返回结果return AppUtil.returnObject(new PageData(), map);}/**判断编码是否存在* @return*/@RequestMapping(value="/hasN")@ResponseBodypublic Object hasN(){Map<String,String> map = new HashMap<String,String>();String errInfo = "success";PageData pd = new PageData();try{pd = this.getPageData();if(userService.findByUN(pd) != null){errInfo = "error";}} catch(Exception e){logger.error(e.toString(), e);}map.put("result", errInfo);//返回结果return AppUtil.returnObject(new PageData(), map);}/**去修改用户页面(系统用户列表修改)* @return* @throws Exception*/@RequestMapping(value="/goEditU")public ModelAndView goEditU() throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){return null;} //校验权限ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();if("1".equals(pd.getString("USER_ID"))){return null;}//不能修改admin用户pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色mv.addObject("fx", "user");pd = userService.findById(pd);//根据ID读取List<Role> froleList = new ArrayList<Role>();//存放副职角色String ROLE_IDS = pd.getString("ROLE_IDS");//副职角色IDif(Tools.notEmpty(ROLE_IDS)){String arryROLE_ID[] = ROLE_IDS.split(",fh,");for(int i=0;i<roleList.size();i++){Role role = roleList.get(i);String roleId = role.getROLE_ID();for(int n=0;n<arryROLE_ID.length;n++){if(arryROLE_ID[n].equals(roleId)){role.setRIGHTS("1");//此时的目的是为了修改用户信息上,能看到副职角色都有哪些break;}}froleList.add(role);}}else{froleList = roleList;}mv.setViewName("system/user/user_edit");mv.addObject("msg", "editU");mv.addObject("pd", pd);mv.addObject("roleList", roleList);mv.addObject("froleList", froleList);return mv;}/**去修改用户页面(个人修改)* @return* @throws Exception*/@RequestMapping(value="/goEditMyU")public ModelAndView goEditMyU() throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();mv.addObject("fx", "head");pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色pd.put("USERNAME", Jurisdiction.getUsername());pd = userService.findByUsername(pd);//根据用户名读取mv.setViewName("system/user/user_edit");mv.addObject("msg", "editU");mv.addObject("pd", pd);mv.addObject("roleList", roleList);return mv;}/**查看用户* @return* @throws Exception*/@RequestMapping(value="/view")public ModelAndView view() throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();if("admin".equals(pd.getString("USERNAME"))){return null;}//不能查看admin用户pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色pd = userService.findByUsername(pd);//根据ID读取mv.setViewName("system/user/user_view");mv.addObject("msg", "editU");mv.addObject("pd", pd);mv.addObject("roleList", roleList);return mv;}/**去修改用户页面(在线管理页面打开)* @return* @throws Exception*/@RequestMapping(value="/goEditUfromOnline")public ModelAndView goEditUfromOnline() throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();if("admin".equals(pd.getString("USERNAME"))){return null;}//不能查看admin用户pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色pd = userService.findByUsername(pd);//根据ID读取List<Role> froleList = new ArrayList<Role>();//存放副职角色String ROLE_IDS = pd.getString("ROLE_IDS");//副职角色IDif(Tools.notEmpty(ROLE_IDS)){String arryROLE_ID[] = ROLE_IDS.split(",fh,");for(int i=0;i<roleList.size();i++){Role role = roleList.get(i);String roleId = role.getROLE_ID();for(int n=0;n<arryROLE_ID.length;n++){if(arryROLE_ID[n].equals(roleId)){role.setRIGHTS("1");//此时的目的是为了修改用户信息上,能看到副职角色都有哪些break;}}froleList.add(role);}}else{froleList = roleList;}mv.setViewName("system/user/user_edit");mv.addObject("msg", "editU");mv.addObject("pd", pd);mv.addObject("roleList", roleList);mv.addObject("froleList", froleList);return mv;}/*** 修改用户*/@RequestMapping(value="/editU")public ModelAndView editU() throws Exception{logBefore(logger, Jurisdiction.getUsername()+"修改ser");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();if(!Jurisdiction.getUsername().equals(pd.getString("USERNAME"))){//如果当前登录用户修改用户资料提交的用户名非本人if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限 判断当前操作者有无用户管理查看权限if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){return null;} //校验权限判断当前操作者有无用户管理修改权限if("admin".equals(pd.getString("USERNAME")) && !"admin".equals(Jurisdiction.getUsername())){return null;}//非admin用户不能修改admin}else{//如果当前登录用户修改用户资料提交的用户名是本人,则不能修改本人的角色IDpd.put("ROLE_ID", userService.findByUsername(pd).getString("ROLE_ID")); //对角色ID还原本人角色IDpd.put("ROLE_IDS", userService.findByUsername(pd).getString("ROLE_IDS")); //对角色ID还原本人副职角色ID}if(pd.getString("PASSWORD") != null && !"".equals(pd.getString("PASSWORD"))){pd.put("PASSWORD", pd.getString("PASSWORD"));}userService.editU(pd);//执行修改FHLOG.save(Jurisdiction.getUsername(), "修改系统用户:"+pd.getString("USERNAME"));mv.addObject("msg","success");mv.setViewName("save_result");return mv;}/*** 批量删除* @throws Exception */@RequestMapping(value="/deleteAllU")@ResponseBodypublic Object deleteAllU() throws Exception {if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return null;} //校验权限logBefore(logger, Jurisdiction.getUsername()+"批量删除user");FHLOG.save(Jurisdiction.getUsername(), "批量删除user");PageData pd = new PageData();Map<String,Object> map = new HashMap<String,Object>();pd = this.getPageData();List<PageData> pdList = new ArrayList<PageData>();String USER_IDS = pd.getString("USER_IDS");if(null != USER_IDS && !"".equals(USER_IDS)){String ArrayUSER_IDS[] = USER_IDS.split(",");userService.deleteAllU(ArrayUSER_IDS);pd.put("msg", "ok");}else{pd.put("msg", "no");}pdList.add(pd);map.put("list", pdList);return AppUtil.returnObject(pd, map);}/**导出用户信息到EXCEL* @return* @throws Exception */@RequestMapping(value="/excel")public ModelAndView exportExcel() throws Exception{FHLOG.save(Jurisdiction.getUsername(), "导出用户信息到EXCEL");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();try{if(Jurisdiction.buttonJurisdiction(menuUrl, "cha")){String keywords = pd.getString("keywords");//关键词检索条件if(null != keywords && !"".equals(keywords)){pd.put("keywords", keywords.trim());}String lastLoginStart = pd.getString("lastLoginStart");//开始时间String lastLoginEnd = pd.getString("lastLoginEnd");//结束时间if(lastLoginStart != null && !"".equals(lastLoginStart)){pd.put("lastLoginStart", lastLoginStart+" 00:00:00");}if(lastLoginEnd != null && !"".equals(lastLoginEnd)){pd.put("lastLoginEnd", lastLoginEnd+" 00:00:00");} Map<String,Object> dataMap = new HashMap<String,Object>();List<String> titles = new ArrayList<String>();titles.add("用户名"); //1titles.add("编号"); //2titles.add("姓名");//3titles.add("职位");//4titles.add("手机");//5titles.add("邮箱");//6titles.add("最近登录");//7titles.add("上次登录IP");//8dataMap.put("titles", titles);List<PageData> userList = userService.listAllUser(pd);List<PageData> varList = new ArrayList<PageData>();for(int i=0;i<userList.size();i++){PageData vpd = new PageData();vpd.put("var1", userList.get(i).getString("USERNAME"));//1vpd.put("var2", userList.get(i).getString("NUMBER"));//2vpd.put("var3", userList.get(i).getString("NAME"));//3vpd.put("var4", userList.get(i).getString("ROLE_NAME"));//4vpd.put("var5", userList.get(i).getString("PHONE"));//5vpd.put("var6", userList.get(i).getString("EMAIL"));//6vpd.put("var7", userList.get(i).getString("LAST_LOGIN"));//7vpd.put("var8", userList.get(i).getString("IP"));//8varList.add(vpd);}dataMap.put("varList", varList);ObjectExcelView erv = new ObjectExcelView();//执行excel操作mv = new ModelAndView(erv,dataMap);}} catch(Exception e){logger.error(e.toString(), e);}return mv;}/**打开上传EXCEL页面* @return* @throws Exception*/@RequestMapping(value="/goUploadExcel")public ModelAndView goUploadExcel()throws Exception{ModelAndView mv = this.getModelAndView();mv.setViewName("system/user/uploadexcel");return mv;}/**下载模版* @param response* @throws Exception*/@RequestMapping(value="/downExcel")public void downExcel(HttpServletResponse response)throws Exception{FileDownload.fileDownload(response, PathUtil.getClasspath() + Const.FILEPATHFILE + "Users.xls", "Users.xls");}/**从EXCEL导入到数据库* @param file* @return* @throws Exception*/@RequestMapping(value="/readExcel")public ModelAndView readExcel(@RequestParam(value="excel",required=false) MultipartFile file) throws Exception{FHLOG.save(Jurisdiction.getUsername(), "从EXCEL导入到数据库");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;}if (null != file && !file.isEmpty()) {String filePath = PathUtil.getClasspath() + Const.FILEPATHFILE;//文件上传路径String fileName = FileUpload.fileUp(file, filePath, "userexcel");//执行上传List<PageData> listPd = (List)ObjectExcelRead.readExcel(filePath, fileName, 2, 0, 0);//执行读EXCEL操作,读出的数据导入List 2:从第3行开始;0:从第A列开始;0:第0个sheet/*存入数据库操作======================================*/pd.put("RIGHTS", "");//权限pd.put("LAST_LOGIN", "");//最后登录时间pd.put("IP", "");//IPpd.put("STATUS", "0");//状态pd.put("SKIN", "no-skin");//默认皮肤pd.put("ROLE_ID", "1");pd.put("RIGHTS", "");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色pd.put("ROLE_ID", roleList.get(0).getROLE_ID());//设置角色ID为随便第一个/*** var0 :编号* var1 :姓名* var2 :手机* var3 :邮箱* var4 :备注*/for(int i=0;i<listPd.size();i++){pd.put("USER_ID", this.get32UUID());//IDpd.put("NAME", listPd.get(i).getString("var1"));//姓名String USERNAME = GetPinyin.getPingYin(listPd.get(i).getString("var1"));//根据姓名汉字生成全拼pd.put("USERNAME", USERNAME);if(userService.findByUsername(pd) != null){//判断用户名是否重复USERNAME = GetPinyin.getPingYin(listPd.get(i).getString("var1"))+Tools.getRandomNum();pd.put("USERNAME", USERNAME);}pd.put("BZ", listPd.get(i).getString("var4"));//备注if(Tools.checkEmail(listPd.get(i).getString("var3"))){//邮箱格式不对就跳过pd.put("EMAIL", listPd.get(i).getString("var3"));if(userService.findByUE(pd) != null){//邮箱已存在就跳过continue;}}else{continue;}pd.put("NUMBER", listPd.get(i).getString("var0"));//编号已存在就跳过pd.put("PHONE", listPd.get(i).getString("var2"));//手机号pd.put("PASSWORD", "123456");//默认密码123456if(userService.findByUN(pd) != null){continue;}userService.saveU(pd);}/*存入数据库操作======================================*/mv.addObject("msg","success");}mv.setViewName("save_result");return mv;}/**显示用户列表(弹窗选择用)* @param page* @return* @throws Exception*/@RequestMapping(value="/listUsersForWindow")public ModelAndView listUsersForWindow(Page page)throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();String keywords = pd.getString("keywords");//关键词检索条件if(null != keywords && !"".equals(keywords)){pd.put("keywords", keywords.trim());}String lastLoginStart = pd.getString("lastLoginStart");//开始时间String lastLoginEnd = pd.getString("lastLoginEnd");//结束时间if(lastLoginStart != null && !"".equals(lastLoginStart)){pd.put("lastLoginStart", lastLoginStart+" 00:00:00");}if(lastLoginEnd != null && !"".equals(lastLoginEnd)){pd.put("lastLoginEnd", lastLoginEnd+" 00:00:00");} page.setPd(pd);List<PageData>userList = userService.listUsersBystaff(page);//列出用户列表(弹窗选择用)pd.put("ROLE_ID", "1");List<Role> roleList = roleService.listAllRolesByPId(pd);//列出所有系统用户角色mv.setViewName("system/user/window_user_list");mv.addObject("userList", userList);mv.addObject("roleList", roleList);mv.addObject("pd", pd);return mv;}@InitBinderpublic void initBinder(WebDataBinder binder){DateFormat format = new SimpleDateFormat("yyyy-MM-dd");binder.registerCustomEditor(Date.class, new CustomDateEditor(format,true));}}

角色管理控制层:

@Controller@RequestMapping(value="/role")public class RoleController extends BaseController {String menuUrl = "role.do"; //菜单地址(权限用)@Resource(name="menuService")private MenuManager menuService;@Resource(name="roleService")private RoleManager roleService;@Resource(name="userService")private UserManager userService;@Resource(name="appuserService")private AppuserManager appuserService;@Resource(name="fhlogService")private FHlogManager FHLOG;/** 进入权限首页* @param * @return* @throws Exception*/@RequestMappingpublic ModelAndView list()throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();try{pd = this.getPageData();if(pd.getString("ROLE_ID") == null || "".equals(pd.getString("ROLE_ID").trim())){pd.put("ROLE_ID", "1");//默认列出第一组角色(初始设计系统用户和会员组不能删除)}PageData fpd = new PageData();fpd.put("ROLE_ID", "0");List<Role> roleList = roleService.listAllRolesByPId(fpd);//列出组(页面横向排列的一级组)List<Role> roleList_z = roleService.listAllRolesByPId(pd);//列出此组下架角色pd = roleService.findObjectById(pd);//取得点击的角色组(横排的)mv.addObject("pd", pd);mv.addObject("roleList", roleList);mv.addObject("roleList_z", roleList_z);mv.addObject("QX",Jurisdiction.getHC());//按钮权限mv.setViewName("system/role/role_list");} catch(Exception e){logger.error(e.toString(), e);}return mv;}/**去新增页面* @param * @return*/@RequestMapping(value="/toAdd")public ModelAndView toAdd(){ModelAndView mv = this.getModelAndView();PageData pd = new PageData();try{pd = this.getPageData();mv.addObject("msg", "add");mv.setViewName("system/role/role_edit");mv.addObject("pd", pd);} catch(Exception e){logger.error(e.toString(), e);}return mv;}/**保存新增角色* @return* @throws Exception*/@RequestMapping(value="/add",method=RequestMethod.POST)public ModelAndView add()throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;} //校验权限logBefore(logger, Jurisdiction.getUsername()+"新增角色");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();try{pd = this.getPageData();String parent_id = pd.getString("PARENT_ID");//父类角色idpd.put("ROLE_ID", parent_id);if("0".equals(parent_id)){pd.put("RIGHTS", "");//菜单权限}else{String rights = roleService.findObjectById(pd).getString("RIGHTS");pd.put("RIGHTS", (null == rights)?"":rights);//组菜单权限}pd.put("ROLE_ID", this.get32UUID());//主键pd.put("ADD_QX", "0");//初始新增权限为否pd.put("DEL_QX", "0");//删除权限pd.put("EDIT_QX", "0");//修改权限pd.put("CHA_QX", "0");//查看权限roleService.add(pd);FHLOG.save(Jurisdiction.getUsername(), "新增角色:"+pd.getString("ROLE_NAME"));} catch(Exception e){logger.error(e.toString(), e);mv.addObject("msg","failed");}mv.setViewName("save_result");return mv;}/**请求编辑* @param ROLE_ID* @return* @throws Exception*/@RequestMapping(value="/toEdit")public ModelAndView toEdit( String ROLE_ID )throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();try{pd = this.getPageData();pd.put("ROLE_ID", ROLE_ID);pd = roleService.findObjectById(pd);mv.addObject("msg", "edit");mv.addObject("pd", pd);mv.setViewName("system/role/role_edit");} catch(Exception e){logger.error(e.toString(), e);}return mv;}/**保存修改* @return* @throws Exception*/@RequestMapping(value="/edit")public ModelAndView edit()throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){return null;} //校验权限logBefore(logger, Jurisdiction.getUsername()+"修改角色");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();try{pd = this.getPageData();roleService.edit(pd);FHLOG.save(Jurisdiction.getUsername(), "修改角色:"+pd.getString("ROLE_NAME"));mv.addObject("msg","success");} catch(Exception e){logger.error(e.toString(), e);mv.addObject("msg","failed");}mv.setViewName("save_result");return mv;}/**删除角色* @param ROLE_ID* @return* @throws Exception*/@RequestMapping(value="/delete")@ResponseBodypublic Object deleteRole(@RequestParam String ROLE_ID)throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return null;} //校验权限logBefore(logger, Jurisdiction.getUsername()+"删除角色");Map<String,String> map = new HashMap<String,String>();PageData pd = new PageData();String errInfo = "";try{pd.put("ROLE_ID", ROLE_ID);List<Role> roleList_z = roleService.listAllRolesByPId(pd);//列出此部门的所有下级if(roleList_z.size() > 0){errInfo = "false";//下级有数据时,删除失败}else{List<PageData> userlist = userService.listAllUserByRoldId(pd);//此角色下的用户List<PageData> appuserlist = appuserService.listAllAppuserByRorlid(pd);//此角色下的会员if(userlist.size() > 0 || appuserlist.size() > 0){//此角色已被使用就不能删除errInfo = "false2";}else{roleService.deleteRoleById(ROLE_ID);//执行删除FHLOG.save(Jurisdiction.getUsername(), "删除角色ID为:"+ROLE_ID);errInfo = "success";}}} catch(Exception e){logger.error(e.toString(), e);}map.put("result", errInfo);return AppUtil.returnObject(new PageData(), map);}/*** 显示菜单列表ztree(菜单授权菜单)* @param model* @return*/@RequestMapping(value="/menuqx")public ModelAndView listAllMenu(Model model,String ROLE_ID)throws Exception{ModelAndView mv = this.getModelAndView();try{Role role = roleService.getRoleById(ROLE_ID);//根据角色ID获取角色对象String roleRights = role.getRIGHTS();//取出本角色菜单权限List<Menu> menuList = menuService.listAllMenuQx("0");//获取所有菜单menuList = this.readMenu(menuList, roleRights);//根据角色权限处理菜单权限状态(递归处理)JSONArray arr = JSONArray.fromObject(menuList);String json = arr.toString();json = json.replaceAll("MENU_ID", "id").replaceAll("PARENT_ID", "pId").replaceAll("MENU_NAME", "name").replaceAll("subMenu", "nodes").replaceAll("hasMenu", "checked");model.addAttribute("zTreeNodes", json);mv.addObject("ROLE_ID",ROLE_ID);mv.setViewName("system/role/menuqx");} catch(Exception e){logger.error(e.toString(), e);}return mv;}/**保存角色菜单权限* @param ROLE_ID 角色ID* @param menuIds 菜单ID集合* @param out* @throws Exception*/@RequestMapping(value="/saveMenuqx")public void saveMenuqx(@RequestParam String ROLE_ID,@RequestParam String menuIds,PrintWriter out)throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){} //校验权限logBefore(logger, Jurisdiction.getUsername()+"修改菜单权限");FHLOG.save(Jurisdiction.getUsername(), "修改角色菜单权限,角色ID为:"+ROLE_ID);PageData pd = new PageData();try{if(null != menuIds && !"".equals(menuIds.trim())){BigInteger rights = RightsHelper.sumRights(Tools.str2StrArray(menuIds));//用菜单ID做权处理Role role = roleService.getRoleById(ROLE_ID);//通过id获取角色对象role.setRIGHTS(rights.toString());roleService.updateRoleRights(role);//更新当前角色菜单权限pd.put("rights",rights.toString());}else{Role role = new Role();role.setRIGHTS("");role.setROLE_ID(ROLE_ID);roleService.updateRoleRights(role);//更新当前角色菜单权限(没有任何勾选)pd.put("rights","");}pd.put("ROLE_ID", ROLE_ID);if(!"1".equals(ROLE_ID)){//当修改admin权限时,不修改其它角色权限roleService.setAllRights(pd);//更新此角色所有子角色的菜单权限}out.write("success");out.close();} catch(Exception e){logger.error(e.toString(), e);}}/**请求角色按钮授权页面(增删改查)* @param ROLE_ID: 角色ID* @param msg: 区分增删改查* @param model* @return* @throws Exception*/@RequestMapping(value="/b4Button")public ModelAndView b4Button(@RequestParam String ROLE_ID,@RequestParam String msg,Model model)throws Exception{ModelAndView mv = this.getModelAndView();try{List<Menu> menuList = menuService.listAllMenuQx("0"); //获取所有菜单Role role = roleService.getRoleById(ROLE_ID); //根据角色ID获取角色对象String roleRights = "";if("add_qx".equals(msg)){roleRights = role.getADD_QX();//新增权限}else if("del_qx".equals(msg)){roleRights = role.getDEL_QX();//删除权限}else if("edit_qx".equals(msg)){roleRights = role.getEDIT_QX();//修改权限}else if("cha_qx".equals(msg)){roleRights = role.getCHA_QX();//查看权限}menuList = this.readMenu(menuList, roleRights);//根据角色权限处理菜单权限状态(递归处理)JSONArray arr = JSONArray.fromObject(menuList);String json = arr.toString();json = json.replaceAll("MENU_ID", "id").replaceAll("PARENT_ID", "pId").replaceAll("MENU_NAME", "name").replaceAll("subMenu", "nodes").replaceAll("hasMenu", "checked");model.addAttribute("zTreeNodes", json);mv.addObject("ROLE_ID",ROLE_ID);mv.addObject("msg", msg);} catch(Exception e){logger.error(e.toString(), e);}mv.setViewName("system/role/b4Button");return mv;}/**根据角色权限处理权限状态(递归处理)* @param menuList:传入的总菜单* @param roleRights:加密的权限字符串* @return*/public List<Menu> readMenu(List<Menu> menuList,String roleRights){for(int i=0;i<menuList.size();i++){menuList.get(i).setHasMenu(RightsHelper.testRights(roleRights, menuList.get(i).getMENU_ID()));this.readMenu(menuList.get(i).getSubMenu(), roleRights);//是:继续排查其子菜单}return menuList;}/*** 保存角色按钮权限*//*** @param ROLE_ID* @param menuIds* @param msg* @param out* @throws Exception*/@RequestMapping(value="/saveB4Button")public void saveB4Button(@RequestParam String ROLE_ID,@RequestParam String menuIds,@RequestParam String msg,PrintWriter out)throws Exception{if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){} //校验权限logBefore(logger, Jurisdiction.getUsername()+"修改"+msg+"权限");FHLOG.save(Jurisdiction.getUsername(), "修改"+msg+"权限,角色ID为:"+ROLE_ID);PageData pd = new PageData();pd = this.getPageData();try{if(null != menuIds && !"".equals(menuIds.trim())){BigInteger rights = RightsHelper.sumRights(Tools.str2StrArray(menuIds));pd.put("value",rights.toString());}else{pd.put("value","");}pd.put("ROLE_ID", ROLE_ID);roleService.saveB4Button(msg,pd);out.write("success");out.close();} catch(Exception e){logger.error(e.toString(), e);}}}

登录管理控制层:

@Controllerpublic class LoginController extends BaseController {@Resource(name="userService")private UserManager userService;@Resource(name="menuService")private MenuManager menuService;@Resource(name="roleService")private RoleManager roleService;@Resource(name="buttonrightsService")private ButtonrightsManager buttonrightsService;@Resource(name="fhbuttonService")private FhbuttonManager fhbuttonService;@Resource(name="appuserService")private AppuserManager appuserService;@Resource(name="datajurService")private DatajurManager datajurService;@Resource(name="fhlogService")private FHlogManager FHLOG;@Resource(name="loginimgService")private LogInImgManager loginimgService;/**访问登录页* @return* @throws Exception*/@RequestMapping(value="/login_toLogin")public ModelAndView toLogin()throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();pd = this.setLoginPd(pd);//设置登录页面的配置参数mv.setViewName("system/index/login");mv.addObject("pd",pd);return mv;}/**请求登录,验证用户* @return* @throws Exception*/@RequestMapping(value="/login_login" ,produces="application/json;charset=UTF-8")@ResponseBodypublic Object login()throws Exception{Map<String,String> map = new HashMap<String,String>();PageData pd = new PageData();pd = this.getPageData();String errInfo = "";String KEYDATA[] = pd.getString("KEYDATA").split(",");if(null != KEYDATA && KEYDATA.length == 3){Session session = Jurisdiction.getSession();String sessionCode = (String)session.getAttribute(Const.SESSION_SECURITY_CODE);//获取session中的验证码String code = KEYDATA[2];if(null == code || "".equals(code)){//判断效验码errInfo = "nullcode"; //效验码为空}else{String USERNAME = KEYDATA[0];//登录过来的用户名String PASSWORD = KEYDATA[1];//登录过来的密码pd.put("USERNAME", USERNAME);if(Tools.notEmpty(sessionCode) && sessionCode.equalsIgnoreCase(code)){//判断登录验证码pd.put("PASSWORD", PASSWORD);pd = userService.getUserByNameAndPwd(pd);//根据用户名和密码去读取用户信息if(pd != null){this.removeSession(USERNAME);//请缓存pd.put("LAST_LOGIN",DateUtil.getTime().toString());userService.updateLastLogin(pd);User user = new User();user.setUSER_ID(pd.getString("USER_ID"));user.setUSERNAME(pd.getString("USERNAME"));user.setPASSWORD(pd.getString("PASSWORD"));user.setNAME(pd.getString("NAME"));user.setRIGHTS(pd.getString("RIGHTS"));user.setROLE_ID(pd.getString("ROLE_ID"));user.setLAST_LOGIN(pd.getString("LAST_LOGIN"));user.setIP(pd.getString("IP"));user.setSTATUS(pd.getString("STATUS"));session.setAttribute(Const.SESSION_USER, user);//把用户信息放session中session.removeAttribute(Const.SESSION_SECURITY_CODE);//清除登录验证码的session//shiro加入身份验证Subject subject = SecurityUtils.getSubject(); UsernamePasswordToken token = new UsernamePasswordToken(USERNAME, PASSWORD); try { subject.login(token); } catch (AuthenticationException e) { errInfo = "身份验证失败!";}}else{errInfo = "usererror"; //用户名或密码有误logBefore(logger, USERNAME+"登录系统密码或用户名错误");FHLOG.save(USERNAME, "登录系统密码或用户名错误");}}else{errInfo = "codeerror"; //验证码输入有误}if(Tools.isEmpty(errInfo)){errInfo = "success";//验证成功logBefore(logger, USERNAME+"登录系统");FHLOG.save(USERNAME, "登录系统");}}}else{errInfo = "error";//缺少参数}map.put("result", errInfo);return AppUtil.returnObject(new PageData(), map);}/**访问系统首页* @param changeMenu:切换菜单参数* @return*/@RequestMapping(value="/main/{changeMenu}")public ModelAndView login_index(@PathVariable("changeMenu") String changeMenu){ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd = this.getPageData();try{Session session = Jurisdiction.getSession();User user = (User)session.getAttribute(Const.SESSION_USER);//读取session中的用户信息(单独用户信息)if (user != null) {User userr = (User)session.getAttribute(Const.SESSION_USERROL);//读取session中的用户信息(含角色信息)if(null == userr){user = userService.getUserAndRoleById(user.getUSER_ID());//通过用户ID读取用户信息和角色信息session.setAttribute(Const.SESSION_USERROL, user);//存入session}else{user = userr;}String USERNAME = user.getUSERNAME();Role role = user.getRole();//获取用户角色String roleRights = role!=null ? role.getRIGHTS() : "";//角色权限(菜单权限)String ROLE_IDS = user.getROLE_IDS();session.setAttribute(USERNAME + Const.SESSION_ROLE_RIGHTS, roleRights); //将角色权限存入sessionsession.setAttribute(Const.SESSION_USERNAME, USERNAME);//放入用户名到sessionsession.setAttribute(Const.SESSION_U_NAME, user.getNAME());//放入用户姓名到sessionthis.setAttributeToAllDEPARTMENT_ID(session, USERNAME);//把用户的组织机构权限放到session里面List<Menu> allmenuList = new ArrayList<Menu>();allmenuList = this.getAttributeMenu(session, USERNAME, roleRights, getArrayRoleRights(ROLE_IDS));//菜单缓存List<Menu> menuList = new ArrayList<Menu>();menuList = this.changeMenuF(allmenuList, session, USERNAME, changeMenu);//切换菜单if(null == session.getAttribute(USERNAME + Const.SESSION_QX)){session.setAttribute(USERNAME + Const.SESSION_QX, this.getUQX(USERNAME));//主职角色按钮权限放到session中session.setAttribute(USERNAME + Const.SESSION_QX2, this.getUQX2(USERNAME));//副职角色按钮权限放到session中}this.getRemortIP(USERNAME);//更新登录IPmv.setViewName("system/index/main");mv.addObject("user", user);mv.addObject("SKIN", null == session.getAttribute(Const.SKIN)?user.getSKIN():session.getAttribute(Const.SKIN)); //用户皮肤mv.addObject("menuList", menuList);}else {mv.setViewName("system/index/login");//session失效后跳转登录页面}} catch(Exception e){mv.setViewName("system/index/login");logger.error(e.getMessage(), e);}pd.put("SYSNAME", Tools.readTxtFile(Const.SYSNAME)); //读取系统名称mv.addObject("pd",pd);return mv;}/**获取副职角色权限List* @param ROLE_IDS* @return* @throws Exception*/public List<String> getArrayRoleRights(String ROLE_IDS) throws Exception{if(Tools.notEmpty(ROLE_IDS)){List<String> list = new ArrayList<String>();String arryROLE_ID[] = ROLE_IDS.split(",fh,");for(int i=0;i<arryROLE_ID.length;i++){PageData pd = new PageData();pd.put("ROLE_ID", arryROLE_ID[i]);pd = roleService.findObjectById(pd);if(null != pd){String RIGHTS = pd.getString("RIGHTS");if(Tools.notEmpty(RIGHTS)){list.add(RIGHTS);}}}return list.size() == 0 ? null : list;}else{return null;}}/**菜单缓存* @param session* @param USERNAME* @param roleRights* @return* @throws Exception*/@SuppressWarnings("unchecked")public List<Menu> getAttributeMenu(Session session, String USERNAME, String roleRights, List<String> arrayRoleRights) throws Exception{List<Menu> allmenuList = new ArrayList<Menu>();if(null == session.getAttribute(USERNAME + Const.SESSION_allmenuList)){allmenuList = menuService.listAllMenuQx("0");//获取所有菜单if(Tools.notEmpty(roleRights)){allmenuList = this.readMenu(allmenuList, roleRights, arrayRoleRights);//根据角色权限获取本权限的菜单列表}session.setAttribute(USERNAME + Const.SESSION_allmenuList, allmenuList);//菜单权限放入session中}else{allmenuList = (List<Menu>)session.getAttribute(USERNAME + Const.SESSION_allmenuList);}return allmenuList;}/**根据角色权限获取本权限的菜单列表(递归处理)* @param menuList:传入的总菜单* @param roleRights:加密的权限字符串* @return*/public List<Menu> readMenu(List<Menu> menuList,String roleRights, List<String> arrayRoleRights){for(int i=0;i<menuList.size();i++){Boolean b1 = RightsHelper.testRights(roleRights, menuList.get(i).getMENU_ID());menuList.get(i).setHasMenu(b1); //赋予主职角色菜单权限if(!b1 && null != arrayRoleRights){for(int n=0;n<arrayRoleRights.size();n++){if(RightsHelper.testRights(arrayRoleRights.get(n), menuList.get(i).getMENU_ID())){menuList.get(i).setHasMenu(true);break;}}}if(menuList.get(i).isHasMenu()){//判断是否有此菜单权限this.readMenu(menuList.get(i).getSubMenu(), roleRights, arrayRoleRights);//是:继续排查其子菜单}}return menuList;}/**切换菜单处理* @param allmenuList* @param session* @param USERNAME* @param changeMenu* @return*/@SuppressWarnings("unchecked")public List<Menu> changeMenuF(List<Menu> allmenuList, Session session, String USERNAME, String changeMenu){List<Menu> menuList = new ArrayList<Menu>();/** 菜单缓存为空 或者 传入的菜单类型和当前不一样的时候,条件成立,重新拆分菜单,把选择的菜单类型放入缓存 */if(null == session.getAttribute(USERNAME + Const.SESSION_menuList) || (!changeMenu.equals(session.getAttribute("changeMenu")))){List<Menu> menuList1 = new ArrayList<Menu>();List<Menu> menuList2 = new ArrayList<Menu>();List<Menu> menuList3 = new ArrayList<Menu>();List<Menu> menuList4 = new ArrayList<Menu>();for(int i=0;i<allmenuList.size();i++){//拆分菜单Menu menu = allmenuList.get(i);if("1".equals(menu.getMENU_TYPE())){menuList1.add(menu);//系统菜单}else if("2".equals(menu.getMENU_TYPE())){menuList2.add(menu);//业务菜单}else if("3".equals(menu.getMENU_TYPE())){menuList3.add(menu);//菜单类型三}else if("4".equals(menu.getMENU_TYPE())){menuList4.add(menu);//菜单类型四}}session.removeAttribute(USERNAME + Const.SESSION_menuList);if("index".equals(changeMenu)){session.setAttribute(USERNAME + Const.SESSION_menuList, menuList2);session.removeAttribute("changeMenu");session.setAttribute("changeMenu", "index");menuList = menuList2;}else if("2".equals(changeMenu)){session.setAttribute(USERNAME + Const.SESSION_menuList, menuList1);session.removeAttribute("changeMenu");session.setAttribute("changeMenu", "2");menuList = menuList1;}else if("3".equals(changeMenu)){session.setAttribute(USERNAME + Const.SESSION_menuList, menuList3);session.removeAttribute("changeMenu");session.setAttribute("changeMenu", "3");menuList = menuList3;}else if("4".equals(changeMenu)){session.setAttribute(USERNAME + Const.SESSION_menuList, menuList4);session.removeAttribute("changeMenu");session.setAttribute("changeMenu", "4");menuList = menuList4;}}else{menuList = (List<Menu>)session.getAttribute(USERNAME + Const.SESSION_menuList);}return menuList;}/**把用户的组织机构权限放到session里面* @param session* @param USERNAME* @return* @throws Exception */public void setAttributeToAllDEPARTMENT_ID(Session session, String USERNAME) throws Exception{String DEPARTMENT_IDS = "0",DEPARTMENT_ID = "0";if(!"admin".equals(USERNAME)){PageData pd = datajurService.getDEPARTMENT_IDS(USERNAME);DEPARTMENT_IDS = null == pd?"无权":pd.getString("DEPARTMENT_IDS");DEPARTMENT_ID = null == pd?"无权":pd.getString("DEPARTMENT_ID");}session.setAttribute(Const.DEPARTMENT_IDS, DEPARTMENT_IDS);//把用户的组织机构权限集合放到session里面session.setAttribute(Const.DEPARTMENT_ID, DEPARTMENT_ID);//把用户的最高组织机构权限放到session里面}/*** 进入tab标签* @return*/@RequestMapping(value="/tab")public String tab(){return "system/index/tab";}/*** 进入首页后的默认页面* @return* @throws Exception */@RequestMapping(value="/login_default")public ModelAndView defaultPage() throws Exception{ModelAndView mv = this.getModelAndView();PageData pd = new PageData();pd.put("userCount", Integer.parseInt(userService.getUserCount("").get("userCount").toString())-1);//系统用户数pd.put("appUserCount", Integer.parseInt(appuserService.getAppUserCount("").get("appUserCount").toString()));//会员数mv.addObject("pd",pd);mv.setViewName("system/index/default");return mv;}/*** 用户注销* @param session* @return* @throws Exception */@RequestMapping(value="/logout")public ModelAndView logout() throws Exception{String USERNAME = Jurisdiction.getUsername();//当前登录的用户名logBefore(logger, USERNAME+"退出系统");FHLOG.save(USERNAME, "退出");ModelAndView mv = this.getModelAndView();PageData pd = new PageData();this.removeSession(USERNAME);//请缓存//shiro销毁登录Subject subject = SecurityUtils.getSubject(); subject.logout();pd = this.getPageData();pd.put("msg", pd.getString("msg"));pd = this.setLoginPd(pd);//设置登录页面的配置参数mv.setViewName("system/index/login");mv.addObject("pd",pd);return mv;}/*** 清理session*/public void removeSession(String USERNAME){Session session = Jurisdiction.getSession();//以下清除session缓存session.removeAttribute(Const.SESSION_USER);session.removeAttribute(USERNAME + Const.SESSION_ROLE_RIGHTS);session.removeAttribute(USERNAME + Const.SESSION_allmenuList);session.removeAttribute(USERNAME + Const.SESSION_menuList);session.removeAttribute(USERNAME + Const.SESSION_QX);session.removeAttribute(USERNAME + Const.SESSION_QX2);session.removeAttribute(Const.SESSION_userpds);session.removeAttribute(Const.SESSION_USERNAME);session.removeAttribute(Const.SESSION_U_NAME);session.removeAttribute(Const.SESSION_USERROL);session.removeAttribute("changeMenu");session.removeAttribute("DEPARTMENT_IDS");session.removeAttribute("DEPARTMENT_ID");}/**设置登录页面的配置参数* @param pd* @return*/public PageData setLoginPd(PageData pd){pd.put("SYSNAME", Tools.readTxtFile(Const.SYSNAME)); //读取系统名称String strLOGINEDIT = Tools.readTxtFile(Const.LOGINEDIT);//读取登录页面配置if(null != strLOGINEDIT && !"".equals(strLOGINEDIT)){String strLo[] = strLOGINEDIT.split(",fh,");if(strLo.length == 2){pd.put("isZhuce", strLo[0]);pd.put("isMusic", strLo[1]);}}try {List<PageData> listImg = loginimgService.listAll(pd);//登录背景图片pd.put("listImg", listImg);} catch (Exception e) {e.printStackTrace();}return pd;}/**获取用户权限* @param session* @return*/public Map<String, String> getUQX(String USERNAME){PageData pd = new PageData();Map<String, String> map = new HashMap<String, String>();try {pd.put(Const.SESSION_USERNAME, USERNAME);PageData userpd = new PageData();userpd = userService.findByUsername(pd);//通过用户名获取用户信息String ROLE_ID = userpd.get("ROLE_ID").toString();String ROLE_IDS = userpd.getString("ROLE_IDS");pd.put("ROLE_ID", ROLE_ID);//获取角色IDpd = roleService.findObjectById(pd);//获取角色信息map.put("adds", pd.getString("ADD_QX"));//增map.put("dels", pd.getString("DEL_QX"));//删map.put("edits", pd.getString("EDIT_QX"));//改map.put("chas", pd.getString("CHA_QX"));//查List<PageData> buttonQXnamelist = new ArrayList<PageData>();if("admin".equals(USERNAME)){buttonQXnamelist = fhbuttonService.listAll(pd);//admin用户拥有所有按钮权限}else{if(Tools.notEmpty(ROLE_IDS)){//(主副职角色综合按钮权限)ROLE_IDS = ROLE_IDS + ROLE_ID;String arryROLE_ID[] = ROLE_IDS.split(",fh,");buttonQXnamelist = buttonrightsService.listAllBrAndQxnameByZF(arryROLE_ID);}else{//(主职角色按钮权限)buttonQXnamelist = buttonrightsService.listAllBrAndQxname(pd);//此角色拥有的按钮权限标识列表}}for(int i=0;i<buttonQXnamelist.size();i++){map.put(buttonQXnamelist.get(i).getString("QX_NAME"),"1");//按钮权限}} catch (Exception e) {logger.error(e.toString(), e);}return map;}/**获取用户权限(处理副职角色)* @param session* @return*/public Map<String, List<String>> getUQX2(String USERNAME){PageData pd = new PageData();Map<String, List<String>> maps = new HashMap<String, List<String>>();try {pd.put(Const.SESSION_USERNAME, USERNAME);PageData userpd = new PageData();userpd = userService.findByUsername(pd);//通过用户名获取用户信息String ROLE_IDS = userpd.getString("ROLE_IDS");if(Tools.notEmpty(ROLE_IDS)){String arryROLE_ID[] = ROLE_IDS.split(",fh,");PageData rolePd = new PageData();List<String> addsList = new ArrayList<String>();List<String> delsList = new ArrayList<String>();List<String> editsList = new ArrayList<String>();List<String> chasList = new ArrayList<String>();for(int i=0;i<arryROLE_ID.length;i++){rolePd.put("ROLE_ID", arryROLE_ID[i]);rolePd = roleService.findObjectById(rolePd);addsList.add(rolePd.getString("ADD_QX"));delsList.add(rolePd.getString("DEL_QX"));editsList.add(rolePd.getString("EDIT_QX"));chasList.add(rolePd.getString("CHA_QX"));}maps.put("addsList", addsList);//增maps.put("delsList", delsList);//删maps.put("editsList", editsList);//改maps.put("chasList", chasList);//查}} catch (Exception e) {logger.error(e.toString(), e);}return maps;}/** 更新登录用户的IP* @param USERNAME* @throws Exception*/public void getRemortIP(String USERNAME) throws Exception { PageData pd = new PageData();HttpServletRequest request = this.getRequest();String ip = "";if (request.getHeader("x-forwarded-for") == null) { ip = request.getRemoteAddr(); }else{ip = request.getHeader("x-forwarded-for"); }pd.put("USERNAME", USERNAME);pd.put("IP", ip);userService.saveIP(pd);} }

源码获取:俺的博客首页 "资源" 里下载!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。