——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Node.js≥14
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
❗没学过node.js的不要搞前后端分离项目
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明







基于javaweb的SpringBoot公司财务管理系统(java+springboot+vue+mysql+maven)
系统介绍
该系统是一个小巧精致的公司财务系统,所用皆为最新流行技术,非常适合个人研究学习或者二次开发。
技术说明
后台 SpringBoot2.x,JWT 鉴权,Druid连接池,数据库 Mysql
前台 vue-cli 3.0,vue-element-ui
前端启动命令:npm run dev
用户名/密码 admin/123456
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| * 这个请求需要验证token才能访问 * * @return String 返回类型 */ @UserLoginToken @GetMapping("/getMessage") public String getMessage() { System.out.println(TokenUtil.getTokenUserNumber()); return "你已通过验证"; }
@ApiOperation(httpMethod = "POST", value = "分页获取用户信息", response = R.class, notes = "分页获取用户信息") @PostMapping("/page") @UserLoginToken public R getPages(@RequestBody Map<String,Object> map) { if(map!=null){ int page = 0; int size = 10; if(map.containsKey("page")){ page = (int)map.get("page"); } if(map.containsKey("size")){ size = (int)map.get("size"); } PageEntity<SysUserEntity> pages = sysUserService.getPage(page, size); return R.ok("获取用户列表",pages); } return R.ok("获取用户列表",""); } }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| @ApiOperation(httpMethod = "GET", value = "删除留言公告", response = R.class, notes = "删除留言公告") @GetMapping("/del") @UserLoginToken @Override public R del(Long id) { if(id>0){ boolean del = fmNoticeService.del(id); if(del){ return R.ok("删除成功",""); } } return R.error(500,"删除失败"); }
@ApiOperation(httpMethod = "POST", value = "更新公告留言信息", response = R.class, notes = "更新公告留言信息") @PostMapping("/update") @UserLoginToken @Override public R update(@RequestBody FmNoticeEntity fmNoticeEntity) { if(fmNoticeEntity!=null&&fmNoticeEntity.getId()>0){ boolean update = fmNoticeService.update(fmNoticeEntity); if(update){ return R.ok("更新成功",""); } } return R.error(500,"更新失败"); }
@Override public R getAll() { return null; }
@Override public R get(FmNoticeEntity fmNoticeEntity) { return null; }
@ApiOperation(httpMethod = "POST", value = "分页获取公告留言信息", response = R.class, notes = "分页获取公告留言信息") @PostMapping("/page") @UserLoginToken public R getPages(@RequestBody Map<String,Object> map) { if(map!=null){ int page = 0; int size = 10; if(map.containsKey("page")){ page = (int)map.get("page");
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| }
@Api(value="公司部门管理") @RestController @RequestMapping("/department") public class FmDepartmentController implements BaseController<FmDepartmentEntity> { @Autowired private FmDepartmentService fmDepartmentService;
@ApiOperation(httpMethod = "POST", value = "添加部门", response = R.class, notes = "添加部门信息") @PostMapping("/add") @UserLoginToken @Override public R add(@RequestBody FmDepartmentEntity fmDepartmentEntity) { LogUtil.i("添加的部门",fmDepartmentEntity); if(fmDepartmentEntity!=null){ boolean isExits = fmDepartmentService.getDepartmentByName(fmDepartmentEntity.getName()); if(!isExits){ boolean add = fmDepartmentService.add(fmDepartmentEntity); if(add){ return R.ok("添加成功",""); } }else{ return R.error(500,"添加失败,该部门已经存在"); }
}
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| if(fmBusinessEntity!=null){ boolean add = fmBusinessService.add(fmBusinessEntity); if(add){ return R.ok("添加成功",""); } } return R.error(500,"添加失败"); }
@ApiOperation(httpMethod = "POST", value = "删除业务", response = R.class, notes = "删除业务") @GetMapping("/del") @UserLoginToken @Override public R del(Long id) { if(id>0){ boolean del = fmBusinessService.del(id); if(del){ return R.ok("删除成功",""); } } return R.error(500,"删除失败"); }
@ApiOperation(httpMethod = "POST", value = "更新业务信息", response = R.class, notes = "更新业务信息") @PostMapping("/update") @UserLoginToken @Override public R update(@RequestBody FmBusinessEntity fmBusinessEntity) { if(fmBusinessEntity!=null&&fmBusinessEntity.getId()>0){ boolean update = fmBusinessService.update(fmBusinessEntity); if(update){ return R.ok("更新成功",""); } } return R.error(500,"更新失败"); }
@Override public R getAll() { return null; }
@Override public R get(FmBusinessEntity fmBusinessEntity) { return null;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| } return R.error(500,"删除失败"); }
@ApiOperation(httpMethod = "POST", value = "更新收入支出标签类型", response = R.class, notes = "更新收入支出标签类型") @PostMapping("/update") @UserLoginToken @Override public R update(@RequestBody FmMoneyTypeEntity fmMoneyTypeEntity) { if(fmMoneyTypeEntity!=null){ boolean update = fmMoneyTypeService.update(fmMoneyTypeEntity); if(update){ return R.ok("更新成功",""); } } return R.error(500,"更新失败"); }
@ApiOperation(httpMethod = "GET", value = "获取所有收入支出标签类型", response = R.class, notes = "获取所有收入支出标签类型") @GetMapping("/all") @UserLoginToken @Override public R getAll() { List<FmMoneyTypeEntity> all = fmMoneyTypeService.getAll(); if(all!=null&&all.size()>0){ Map<String,List<FmMoneyTypeEntity>> map = new HashMap<>(); List<FmMoneyTypeEntity> incomeList = new ArrayList<>(); List<FmMoneyTypeEntity> expenditureList = new ArrayList<>(); for (FmMoneyTypeEntity fmMoneyTypeEntity : all) { if(fmMoneyTypeEntity.getType()==1){ expenditureList.add(fmMoneyTypeEntity); }else{ incomeList.add(fmMoneyTypeEntity); } } map.put("income",incomeList); map.put("expenditure",expenditureList); return R.ok("获取成功",map); } return R.ok("获取成功",""); }
@Override public R get(FmMoneyTypeEntity fmMoneyTypeEntity) {
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=462123150309201du
https://javayms.pages.dev?id=462123150309201du