当前位置: 首页 > news >正文

基于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 {@Autowiredprivate 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 {@Autowiredprivate 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));}
http://www.lryc.cn/news/69280.html

相关文章:

  • 使用OpenCV进行肺炎诊断检测
  • 北华大学第九届程序设计竞赛 题解
  • 【Java算法题】剑指offer_01数据结构
  • 最简单配置jenkins容器使用宿主机的docker方法
  • Android aidl及binder基础知识巩固
  • [日记]LeetCode算法·二十五——二叉树⑤ AVL树(插入+删除)附代码实现
  • flink-1.13.6 例子
  • Go语音基于zap的日志封装
  • 可持续能源技术具有改变世界的潜力,并且已经在多个方面展现出积极的影响。
  • Java常用工具之StringUtils类
  • MyBatis-plus的批量插入方式对比分析
  • 【系分论文】论软件开发模型及应用
  • 渗透测试--5.3.使用john破解密码
  • Go中的变量类型
  • 基于STM32的NRF24L01 2.4G通讯模块的驱动实验(HAL库)
  • DJ5-3 多路访问链路和协议
  • 技术领导力?
  • 计算机的基本工作原理
  • 【论文简述】Cross-Attentional Flow Transformer for Robust Optical Flow(CVPR 2022)
  • 【JAVA】Java中方法的使用,理解方法重载和递归
  • 高级网络计算模式复习
  • 【笔试强训选择题】Day15.习题(错题)解析
  • 图论专题(一)
  • 新星计划2023【网络应用领域基础】————————Day4
  • [CTF/网络安全] 攻防世界 view_source 解题详析
  • 目前流行的9大前端框架
  • 【mysql】explain执行计划之select_type列
  • 网易云音乐开发--音乐播放暂停切换上下首功能实现
  • 如何学习网络安全?
  • 软件测试适合女生吗?