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

一、项目简述

功能包括:实现公司对项目的管理。

二、项目运行

环境配置:

Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

项目技术:

JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等

用户信息控制层:

@Controller
public class UserInfoController {@Resourceprivate UserInfoService userInfoService;@Resourceprivate PrivilegeService privilegeService;@RequestMapping(value = {"/", "login.html"})public String toLogin(HttpServletRequest request, HttpServletResponse response){HttpSession session = request.getSession();if(session.getAttribute(Config.CURRENT_USERNAME)==null){return "login";}else {try {response.sendRedirect("/pages/index");} catch (IOException e) {e.printStackTrace();return "login";}return null;}}//    @RequestMapping(value = "/login.do",method = RequestMethod.POST)@RequestMapping(value = "/login.do")@ResponseBodypublic Result getUserInfo(UserInfo userInfo, HttpServletRequest request, HttpServletResponse response){boolean userIsExisted = userInfoService.userIsExisted(userInfo);System.out.println(userIsExisted + " - " + request.getHeader("token"));userInfo = getUserInfo(userInfo);if("client".equals(request.getHeader("token")) && !userIsExisted){//用户不存在return  ResultUtil.success(-1);}if (userIsExisted && userInfo == null){return  ResultUtil.unSuccess("用户名或密码错误!");}else {//将用户信息存入sessionuserInfo = setSessionUserInfo(userInfo,request.getSession());//将当前用户信息存入cookiesetCookieUser(request,response);return ResultUtil.success("登录成功", userInfo);}}@RequestMapping("/users/getUsersByWhere/{pageNo}/{pageSize}")public @ResponseBody Result getUsersByWhere(UserInfo userInfo, @PathVariable int pageNo, @PathVariable int pageSize, HttpSession session){if ("".equals(userInfo.getHouseid())){userInfo.setHouseid(null);}if (userInfo.getRoleid() == -1){userInfo.setRoleid(Config.getSessionUser(session).getRoleid());}Utils.log(userInfo.toString());PageModel model = new PageModel<>(pageNo,userInfo);model.setPageSize(pageSize);return userInfoService.getUsersByWhere(model);}@RequestMapping("/user/add")public @ResponseBody Result addUser(UserInfo userInfo){System.out.println(userInfo);try {int num = userInfoService.add(userInfo);if(num>0){return ResultUtil.success();}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/user/update")public @ResponseBody Result updateUser(UserInfo userInfo){try {int num = userInfoService.update(userInfo);if(num>0){return ResultUtil.success();}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/user/del/{id}")public @ResponseBody Result deleteUser(@PathVariable String id){try {int num = userInfoService.delete(id);if(num>0){return ResultUtil.success();}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/getSessionUser")@ResponseBodypublic UserInfo getSessionUser(HttpSession session){UserInfo sessionUser = (UserInfo) session.getAttribute(Config.CURRENT_USERNAME);sessionUser.setPassword(null);return sessionUser;}@RequestMapping("/logout")public String logout(HttpServletRequest request, HttpServletResponse response){delCookieUser(request, response);request.getSession().removeAttribute(Config.CURRENT_USERNAME);return "login";}@RequestMapping("/getAllRoles")public @ResponseBody Result<Role> getAllRoles(){try {List<Role> roles = userInfoService.getAllRoles();if (roles.size()>0){return ResultUtil.success(roles);}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/role/add")public @ResponseBody Result addRole(Role role){try {int num = userInfoService.addRole(role);if(num>0){privilegeService.addDefaultPrivilegesWhenAddRole(role.getRoleid().toString());return ResultUtil.success();}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/role/update")public @ResponseBody Result updateRole(Role role){try {int num = userInfoService.updateRole(role);if(num>0){return ResultUtil.success();}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/role/del/{roleid}")public @ResponseBody Result deleteRole(@PathVariable String roleid){try {privilegeService.delPrivilegesWenDelRole(roleid);int num = userInfoService.deleteRole(roleid);if(num>0){return ResultUtil.success();}else {privilegeService.addDefaultPrivilegesWhenAddRole(roleid);return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/getRole/{id}")public @ResponseBody Result getRoleById(@PathVariable String id){try {Role role = userInfoService.getRoleById(id);if(role != null){return ResultUtil.success(role);}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}/*** 登录时将用户信息加入cookie中* @param response*/private void setCookieUser(HttpServletRequest request, HttpServletResponse response){UserInfo user = getSessionUser(request.getSession());Cookie cookie = new Cookie(Config.CURRENT_USERNAME,user.getUsername()+"_"+user.getId());//cookie 保存7天cookie.setMaxAge(60*60*24*7);response.addCookie(cookie);}/*** 注销时删除cookie信息* @param request* @param response*/private void delCookieUser(HttpServletRequest request, HttpServletResponse response){UserInfo user = getSessionUser(request.getSession());Cookie cookie = new Cookie(Config.CURRENT_USERNAME,user.getUsername()+"_"+user.getId());cookie.setMaxAge(-1);response.addCookie(cookie);}/*** 通过用户信息获取用户权限信息,并存入session中* @param userInfo* @param session* @return*/public UserInfo setSessionUserInfo(UserInfo userInfo, HttpSession session){List<Privilege> privileges = privilegeService.getPrivilegeByRoleid(userInfo.getRoleid());userInfo.setPrivileges(privileges);session.setAttribute(Config.CURRENT_USERNAME,userInfo);return userInfo;}public UserInfo getUserInfo(UserInfo userInfo){return userInfoService.getUserInfo(userInfo);}
}

数据图形控制层:

@RestController
@RequestMapping("/bills")
public class BillController {@Resourceprivate BillService billService;/*** 适用于统计图* @param bill* @return*/@RequestMapping("/getBillsToChart")public Result<Bill> findByWhereNoPage(Bill bill, HttpSession session){bill = getHouseBill(bill,session);return billService.findByWhereNoPage(bill);}@RequestMapping("/getBillsByWhere/{type}/{pageNo}/{pageSize}")public Result<Bill> getBillsByWhere(Bill bill,@PathVariable String type, @PathVariable int pageNo, @PathVariable int pageSize, HttpSession session){if("-1".equals(bill.getPayway())){bill.setPayway(null);}bill.setType(type);bill = getHouseBill(bill,session);System.out.println(bill);PageModel model = new PageModel<>(pageNo,bill);model.setPageSize(pageSize);return billService.findByWhere(model);}@RequestMapping("/getBillsByUserid/{userid}/{pageNo}/{pageSize}/{year}/{month}")public Result getBillsByUserid(@PathVariable Integer userid, @PathVariable int pageNo, @PathVariable int pageSize, @PathVariable int year, @PathVariable int month){Bill bill = new Bill();bill.setUserid(userid);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");bill.setStartTime(year+"-0"+month+"-01");try {Date date = sdf.parse(year+"-0"+(month+1)+"-01");date.setDate(date.getDate()-1);bill.setEndTime(sdf.format(date));} catch (ParseException e) {e.printStackTrace();}PageModel model = new PageModel<>(pageNo,bill);model.setPageSize(pageSize);Result result = billService.findByWhere(model);List<Map<String,String>> r = billService.getMonthlyInfo(model);Map<String,String> map = new HashMap<>();for (Map<String,String> m: r) {map.put(m.get("typeid"),String.format("%.2f",m.get("sum(money)")));}result.setData(map);return result;}private Bill getHouseBill(Bill bill, HttpSession session) {UserInfo currentUser = Config.getSessionUser(session);//当登录用户为家主时,查询默认查询全家账单情况//当登录用户为普通用户时,仅查询当前用户的账单if (currentUser.getRoleid() == 2){bill.setHouseid(currentUser.getHouseid());}else if (currentUser.getRoleid() == 3){bill.setUserid(currentUser.getId());}return bill;}@RequestMapping(value = "/addBill",method = RequestMethod.POST)public Result add(Bill bill, HttpSession session){if (Config.getSessionUser(session)!=null){bill.setUserid(Config.getSessionUser(session).getId());}Utils.log(bill.toString());try {int num = billService.add(bill);if(num>0){int billid = bill.getId();bill = new Bill();bill.setId(billid);return ResultUtil.success("记账成功!",billService.findByWhereNoPage(bill));
//                return ResultUtil.success("记账成功!",bill);}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/updateBill")public Result update(Bill bill, HttpSession session){if (Config.getSessionUser(session)!=null){bill.setUserid(Config.getSessionUser(session).getId());}Utils.log(bill.toString());try {int num = billService.update(bill);if(num>0){return ResultUtil.success("修改成功!",null);}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/delBill")public Result del(int id){try {int num = billService.del(id);if(num>0){return ResultUtil.success("删除成功!",null);}else {return ResultUtil.unSuccess();}}catch (Exception e){return ResultUtil.error(e);}}@RequestMapping("/getPayways")public Result<Payway> getAllPayways(){try {List<Payway> payways = billService.getAllPayways();if (payways!=null && payways.size()>0){return ResultUtil.success(payways);}else {return ResultUtil.unSuccess();}} catch (Exception e) {return ResultUtil.error(e);}}}

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

Java项目:财务预算管理系统(java+SSM+Jsp+Mysql+Layui+Maven)相关推荐

  1. Java项目:设计管理系统(java+SSM+JSP+MYSQL+layui+Maven)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能包括: 课题管理,学生管理,内容管理,文件管理,提问管理,教师管理,进度管理等等. 二.项目运行 环境配置: Jdk1.8 ...

  2. 基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+mysql+layui)

    基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+mysql+layui) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...

  3. Java项目:养老院管理系统(java+Spring Boot + SpringMVC + MyBatis+HTML+CSS+JavaScrip+ Layui+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 关注公众号,带你学Java 项目介绍 : Spring Boot + SpringMVC + MyBatis+ Mysql + druid ...

  4. Java项目:健身俱乐部管理系统(java+SSM+Mysql+Jsp)

    源码获取:博客首页 "资源" 里下载! 项目介绍: 基于jsp+mysql+Spring+mybatis的SSM健身房管理系统 运行环境: jdk 1.8 IDE环境: Eclip ...

  5. Java项目:房屋租赁管理系统(java+SSM+Layui+Maven+Mysql+Jsp)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能包括: 房屋租赁管理系统是一款方便快捷,易操作的租房和各种物业收费的管理系统,该系统官网包含着用户和管理员分类登录,减少了 ...

  6. Java项目:图书管理系统(java+SSM+jsp+mysql+maven)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能包括(管理员和学生角色): 管理员和学生登录,图书管理,图书添加删除修改,图书 借阅,图书归还,图书查看,学生管理,借还管 ...

  7. Java项目:房屋租赁管理系统(java+SSM+Layui+Maven+Mysql+Jsp

    一.项目简述 功能包括: 房屋租赁管理系统是一款方便快捷,易操作的租房和各种物业收费的管理系统,该系统官网包含着用户和管理员分类登录,减少了为使用管理员系统的开支,用户分别支持手机网上或电脑网页快捷的 ...

  8. Java项目:宿舍管理系统(java+jsp+SSM+Spring+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能:包括学生管理,班级管理,宿舍管理,人员信息维 护.维修登记,卫生管理,访客管理等等. 二.项目运行 环境配置: Jdk1 ...

  9. Java项目:教材管理系统(java+SSM+jsp+mysql+maven)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能包括: 管理员可以增删改查教材.教材商.入库教材.用户(用 户包括学生和教师)可以对教材商.教材进行.xcel的导入 导出 ...

最新文章

  1. 《Android应用开发入门经典(第3版)》——导读
  2. leetcode733. 图像渲染(bfs)
  3. 【笔记】用正则匹配字符串的方法摘抄
  4. 小米公司在区块链领域的布局:小米WiFi链也开始种“米”了
  5. Apple watch无法登陆网易云音乐
  6. 【python】urlencode、quote、unquote
  7. 请编程序将“China”译成密码,密码规律是:用原来的字母后面第四个字母代替原来的字母。
  8. 大数据学习路线详解,零基础学大数据学习路线
  9. 消息中间件第一讲:RocketMQ从入门到精通
  10. 学python用虚拟机还是双系统_Macbook双系统虚机-win10篇
  11. 像素游戏画法_点画法遇到像素化
  12. 地理坐标系和投影坐标系详解(及坐标系在ArcGIS中的应用)
  13. 从右下角出来的广告实例
  14. 如何删除.nfs00000xxxx文件
  15. 我的一个道姑朋友 -- 以冬 下载
  16. java中accept什么意思_accept()
  17. 【啃书C++Primer5】-c++有些理论基础需要了解,墙裂建议看看原书,有太多细节需要注意了
  18. 你真的了解Cadence吗?
  19. jmeter断言beanshell判断日期/整型大小比较
  20. day13—栈和队列完结

热门文章

  1. 关于 Caused by: java.lang.NoClassDefFoundError: com/alipay/api/AlipayApiException 解决办法
  2. Ubuntu 14.04 64bit上使用IPython玩转Docker
  3. Linux系统分辨率设置
  4. Codeforces Round #550 (Div. 3)E. Median String
  5. Pandas缺失数据
  6. git---远程仓库版本回滚
  7. hdu 1085 Holding Bin-Laden Captive!
  8. 【数据结构】某些难理解点
  9. Oracle Connect to an idle instance
  10. AR + ROS +UBUNTU16.04+ORB-SLAM2