基于ssm家庭理财系统源码和论文

基于ssm家庭理财系统源码和论文743

idea 数据库mysql5.7+ 数据库链接工具:navcat,小海豚等

环境: jdk8 tomcat8.5 开发技术 ssm

摘要

随着Internet的发展,人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化,网络化和电子化。网上管理,它将是直接管理家庭理财系统app的最新形式。本论文是以构建家庭理财系统app为目标,使用java技术制作,由前台和后台两大部分组成。着重论述了系统设计分析,系统主要包括首页、个人中心、用户管理、账户信息管理、账户支出管理、账户收入管理、系统管理等功能,以及后台数据库管理。从app设计到详细实现都根据了app的建设思想和mysql数据库的设计方法。

该系统它可以使家庭理财操作简单,使家庭理财的管理向一个更高层次前进。

本系统尝试使用ssm框架在网上架构一个动态的家庭理财系统app,以使每一用户在家就能通过系统来进行家庭理财管理。

****关键词:****家庭理财;ssm框架;mysql数据库

基于ssm家庭理财系统源码和论文743

演示视频:

基于ssm家庭理财系统源码和论文

Abstract

With the development of Internet, People's Daily life has been inseparable from the Network. In the future, people's life and work will become more and more digital, network and electronic. Online management, it will be the latest form of direct management family financial system app. This paper is to build a family financial management system app as the goal, the use of Java technology, made by the front and back two parts. The system mainly includes home page, personal center, user management, account information management, account expenditure management, account income management, system management and other functions, as well as background database management. From app design to detailed implementation are based on the idea of app construction and mysql database design method.

The system it can make family financial management simple operation, so that the management of family financial management to a higher level forward.

This system tries to use SSM framework to construct a dynamic family financial management system app on the Internet, so that each user can manage family financial management through the system at home.

Key words: family finance; SSM framework; The mysql database

复制代码
package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.ZhanghushouruEntity;
import com.entity.view.ZhanghushouruView;

import com.service.ZhanghushouruService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;

/**
 * 账户收入
 * 后端接口
 * @author 
 * @email 
 * @date 2022-03-16 17:22:42
 */
@RestController
@RequestMapping("/zhanghushouru")
public class ZhanghushouruController {
    @Autowired
    private ZhanghushouruService zhanghushouruService;



    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ZhanghushouruEntity zhanghushouru, 
		HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			zhanghushouru.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZhanghushouruEntity> ew = new EntityWrapper<ZhanghushouruEntity>();
		PageUtils page = zhanghushouruService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhanghushouru), params), params));
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ZhanghushouruEntity zhanghushouru, 
		HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			zhanghushouru.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZhanghushouruEntity> ew = new EntityWrapper<ZhanghushouruEntity>();
		PageUtils page = zhanghushouruService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhanghushouru), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( ZhanghushouruEntity zhanghushouru){
       	EntityWrapper<ZhanghushouruEntity> ew = new EntityWrapper<ZhanghushouruEntity>();
      	ew.allEq(MPUtil.allEQMapPre( zhanghushouru, "zhanghushouru")); 
        return R.ok().put("data", zhanghushouruService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ZhanghushouruEntity zhanghushouru){
        EntityWrapper< ZhanghushouruEntity> ew = new EntityWrapper< ZhanghushouruEntity>();
 		ew.allEq(MPUtil.allEQMapPre( zhanghushouru, "zhanghushouru")); 
		ZhanghushouruView zhanghushouruView =  zhanghushouruService.selectView(ew);
		return R.ok("查询账户收入成功").put("data", zhanghushouruView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ZhanghushouruEntity zhanghushouru = zhanghushouruService.selectById(id);
        return R.ok().put("data", zhanghushouru);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ZhanghushouruEntity zhanghushouru = zhanghushouruService.selectById(id);
        return R.ok().put("data", zhanghushouru);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ZhanghushouruEntity zhanghushouru, HttpServletRequest request){
    	zhanghushouru.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zhanghushouru);

        zhanghushouruService.insert(zhanghushouru);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ZhanghushouruEntity zhanghushouru, HttpServletRequest request){
    	zhanghushouru.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zhanghushouru);
    	zhanghushouru.setUserid((Long)request.getSession().getAttribute("userId"));

        zhanghushouruService.insert(zhanghushouru);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ZhanghushouruEntity zhanghushouru, HttpServletRequest request){
        //ValidatorUtils.validateEntity(zhanghushouru);
        zhanghushouruService.updateById(zhanghushouru);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        zhanghushouruService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<ZhanghushouruEntity> wrapper = new EntityWrapper<ZhanghushouruEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			wrapper.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
		}

		int count = zhanghushouruService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	







}

package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.ZhanghuxinxiEntity;
import com.entity.view.ZhanghuxinxiView;

import com.service.ZhanghuxinxiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;

/**
 * 账户信息
 * 后端接口
 * @author 
 * @email 
 * @date 2022-03-16 17:22:42
 */
@RestController
@RequestMapping("/zhanghuxinxi")
public class ZhanghuxinxiController {
    @Autowired
    private ZhanghuxinxiService zhanghuxinxiService;



    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ZhanghuxinxiEntity zhanghuxinxi, 
		HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			zhanghuxinxi.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZhanghuxinxiEntity> ew = new EntityWrapper<ZhanghuxinxiEntity>();
		PageUtils page = zhanghuxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhanghuxinxi), params), params));
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ZhanghuxinxiEntity zhanghuxinxi, 
		HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			zhanghuxinxi.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZhanghuxinxiEntity> ew = new EntityWrapper<ZhanghuxinxiEntity>();
		PageUtils page = zhanghuxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhanghuxinxi), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( ZhanghuxinxiEntity zhanghuxinxi){
       	EntityWrapper<ZhanghuxinxiEntity> ew = new EntityWrapper<ZhanghuxinxiEntity>();
      	ew.allEq(MPUtil.allEQMapPre( zhanghuxinxi, "zhanghuxinxi")); 
        return R.ok().put("data", zhanghuxinxiService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ZhanghuxinxiEntity zhanghuxinxi){
        EntityWrapper< ZhanghuxinxiEntity> ew = new EntityWrapper< ZhanghuxinxiEntity>();
 		ew.allEq(MPUtil.allEQMapPre( zhanghuxinxi, "zhanghuxinxi")); 
		ZhanghuxinxiView zhanghuxinxiView =  zhanghuxinxiService.selectView(ew);
		return R.ok("查询账户信息成功").put("data", zhanghuxinxiView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ZhanghuxinxiEntity zhanghuxinxi = zhanghuxinxiService.selectById(id);
        return R.ok().put("data", zhanghuxinxi);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ZhanghuxinxiEntity zhanghuxinxi = zhanghuxinxiService.selectById(id);
        return R.ok().put("data", zhanghuxinxi);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ZhanghuxinxiEntity zhanghuxinxi, HttpServletRequest request){
    	zhanghuxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zhanghuxinxi);

        zhanghuxinxiService.insert(zhanghuxinxi);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ZhanghuxinxiEntity zhanghuxinxi, HttpServletRequest request){
    	zhanghuxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zhanghuxinxi);
    	zhanghuxinxi.setUserid((Long)request.getSession().getAttribute("userId"));

        zhanghuxinxiService.insert(zhanghuxinxi);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ZhanghuxinxiEntity zhanghuxinxi, HttpServletRequest request){
        //ValidatorUtils.validateEntity(zhanghuxinxi);
        zhanghuxinxiService.updateById(zhanghuxinxi);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        zhanghuxinxiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<ZhanghuxinxiEntity> wrapper = new EntityWrapper<ZhanghuxinxiEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			wrapper.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
		}

		int count = zhanghuxinxiService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	







}
相关推荐
凌虚7 小时前
面向 MySQL 用户的 PostgreSQL 快速上手指南
数据库·后端·架构
五阿哥永琪7 小时前
MySQL中操作json的函数!
数据库·mysql·json
来者皆善7 小时前
了解Mysql优化吗?如何优化索引?
数据库·mysql
都叫我大帅哥7 小时前
Java JJWT 完全指南:从入门到生产级实践
java
前端开发张小七8 小时前
Java 学习笔记 · 第一课:基础语法与核心概念
java·后端
ThsPool9 小时前
【ENVI二次开发学习整理 04】ENVI功能扩展与二次开发
java·前端·javascript
赤壁小虾9 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例
java·前端·数据库
MC皮蛋侠客9 小时前
SQLAlchemy 系列(七):高级建模与高效写入——批量 DML、方言与扩展
数据库·python
奈斯先生Vector10 小时前
把 Midjourney 二次编辑做成生产系统:customId 能力令牌、Action Graph 与 WebUI 精修工作台
数据库·人工智能·架构·aigc·音视频·midjourney
青山木11 小时前
Hot 100 --- 搜索插入位置
java·数据结构·算法·leetcode