基于SpringBoot的财务管理系统的设计与实现

背景

财务管理系统能够通过互联网得到广泛的、全面的宣传,让尽可能多的员工了解和熟知财务管理系统的便捷高效,为管理者和员工提供了服务,节省人力、物力和时间,提高工作效率。

系统设计

为了更好的去理清本系统整体思路,对该系统以结构图的形式表达出来,设计实现该财务管理系统的功能结构图如下所示:

在这里插入图片描述

数据库设计

ER图

ER图是由实体及其关系构成的图,通过E/R图可以清楚地描述系统涉及到的实体之间的相互关系。在系统中对一些主要的几个关键实体如下图。

(1)员工管理E/R图如下所示:

在这里插入图片描述
(2)工资调整管理
在这里插入图片描述
(3) 固定资产管理E/R图如下所示

在这里插入图片描述

数据库表设计

由于涉及的数据表较多,此处只展示部分数据表。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

系统详细设计

管理员功能模块

管理员登录系统后,可以对首页,个人中心,员工管理,部门管理,员工工资管理,工资调整管理,资产类别管理,固定资产管理,经营信息管理,序时账管理,年度利润管理,系统管理等功能进行相应的操作管理,如图。

在这里插入图片描述
员工管理,在员工管理页面可以对索引,员工工号,员工姓名,图片,性别,部门,职位,联系方式,入职时间等内容进行详情,修改和删除等操作,如图。
在这里插入图片描述

员工功能模块

员工登录进入系统可以对首页,个人中心,员工工资管理,工资调整管理,系统管理等功能进行相应操作,如图。

在这里插入图片描述
个人中心,在个人信息页面通过填写员工工号,员工姓名,照片,性别,职位,联系方式,入职时间等内容进行个人信息修改操作,如图。

在这里插入图片描述
工资调整管理,在工资调整管理页面可以对索引,调整原因,调整额度,调整时间,员工工号,员工姓名,部门等内容进行详情操作,如图。

在这里插入图片描述

代码实现

由于代码较多,此处只展示部分代码。

年度利润管理

/**
 * 年度利润
 * 后端接口
 * @author 
 * @email 
 * @date 2022-04-02 16:46:23
 */
@RestController
@RequestMapping("/niandulirun")
public class NiandulirunController {
    @Autowired
    private NiandulirunService niandulirunService;


    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,NiandulirunEntity niandulirun,
		HttpServletRequest request){
        EntityWrapper<NiandulirunEntity> ew = new EntityWrapper<NiandulirunEntity>();
		PageUtils page = niandulirunService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, niandulirun), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,NiandulirunEntity niandulirun, 
		HttpServletRequest request){
        EntityWrapper<NiandulirunEntity> ew = new EntityWrapper<NiandulirunEntity>();
		PageUtils page = niandulirunService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, niandulirun), params), params));
        return R.ok().put("data", page);
    }

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

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(NiandulirunEntity niandulirun){
        EntityWrapper< NiandulirunEntity> ew = new EntityWrapper< NiandulirunEntity>();
 		ew.allEq(MPUtil.allEQMapPre( niandulirun, "niandulirun")); 
		NiandulirunView niandulirunView =  niandulirunService.selectView(ew);
		return R.ok("查询年度利润成功").put("data", niandulirunView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        NiandulirunEntity niandulirun = niandulirunService.selectById(id);
        return R.ok().put("data", niandulirun);
    }

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



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody NiandulirunEntity niandulirun, HttpServletRequest request){
    	niandulirun.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(niandulirun);
        niandulirunService.insert(niandulirun);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody NiandulirunEntity niandulirun, HttpServletRequest request){
    	niandulirun.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(niandulirun);
        niandulirunService.insert(niandulirun);
        return R.ok();
    }

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


工资调整管理

@RestController
@RequestMapping("/gongzidiaozheng")
public class GongzidiaozhengController {
    @Autowired
    private GongzidiaozhengService gongzidiaozhengService;


    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,GongzidiaozhengEntity gongzidiaozheng,
		HttpServletRequest request){
		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yuangong")) {
			gongzidiaozheng.setYuangonggonghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<GongzidiaozhengEntity> ew = new EntityWrapper<GongzidiaozhengEntity>();
		PageUtils page = gongzidiaozhengService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gongzidiaozheng), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,GongzidiaozhengEntity gongzidiaozheng, 
		HttpServletRequest request){
        EntityWrapper<GongzidiaozhengEntity> ew = new EntityWrapper<GongzidiaozhengEntity>();
		PageUtils page = gongzidiaozhengService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gongzidiaozheng), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( GongzidiaozhengEntity gongzidiaozheng){
       	EntityWrapper<GongzidiaozhengEntity> ew = new EntityWrapper<GongzidiaozhengEntity>();
      	ew.allEq(MPUtil.allEQMapPre( gongzidiaozheng, "gongzidiaozheng")); 
        return R.ok().put("data", gongzidiaozhengService.selectListView(ew));
    }
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱coding的同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值