基于javaweb的财务预算管理系统(java+ssm+jsp+mysql+layui)

基于javaweb的财务预算管理系统(java+ssm+jsp+mysql+layui)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

20220519000110

20220519000112

20220519000113

20220519000114

20220519000115

20220519000116

基于javaweb+jsp的财务预算管理系统(SSM+Jsp+Mysql+Layui+Maven)

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

二、项目运行 环境配置:

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 {

@Resource

private UserInfoService userInfoService;

@Resource

private 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”)

@ResponseBody

public 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 {

//将用户信息存入session

userInfo = setSessionUserInfo(userInfo,request.getSession());

//将当前用户信息存入cookie

setCookieUser(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”)

@ResponseBody

public 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 getAllRoles(){

try {

List 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(606024*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 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 {

@Resource

private BillService billService;

/**

  • 适用于统计图

  • @param bill

  • @return

*/

@RequestMapping(“/getBillsToChart”)

public Result findByWhereNoPage(Bill bill, HttpSession session){

bill = getHouseBill(bill,session);

return billService.findByWhereNoPage(bill);

@RequestMapping(“/getBillsByWhere/{type}/{pageNo}/{pageSize}”)

public Result 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 getAllPayways(){

try {

List payways = billService.getAllPayways();

if (payways!=null && payways.size()>0){

return ResultUtil.success(payways);

}else {

return ResultUtil.unSuccess();

} catch (Exception e) {

return ResultUtil.error(e);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值