简账(开源记账软件)-功能介绍

前言

由于自己有记账的需求,在尝试使用过市面上的记账软件后,发现大多数都有以下几个问题

  • 广告比较多,主要分为信息流广告及金融类广告
  • 页面太痈肿,使用体验不好
  • 部分高级功能需要收费,如数据导出

所以就萌生了自己做一个记账软件的想法,这个想法在2020年5月左右落地的,到目前也快有一年了。
本着OpenSource的想法,已全部开源,也想借写博客的机会获得一些Star❤

正式环境体验:

  • 小程序:微信搜索【简账】
  • PC端:简账PC端

Github开源地址:

后续要完成的功能(重要性至上而下)

  • 支持多账本,可自定义维护
  • 支持设置预算(年月预算)
  • 支持多账本间冲销
  • 支持Excel导出(年或月可自定义)
  • 支持多人记账及家庭账本

写在后面
如果你有其他的想法或问题欢迎给我留言,或在Github上提Pr&Issue
tips:如果你也想你写的东西被人使用,欢迎跟我一起维护简账~


一、主要技术栈简介

  • 后端:SpringBoot、SpringSecurity、JWT、MybatisPlus、Redis
  • PC端:Vue 2.6、Vue Router、Vuex、axios、AntDesign Vue 3.0
  • 小程序:Uniapp、UView

二、主要功能

  1. 用户登陆
    如果为小程序用户,微信授权即可登陆
    如果为PC端用户,微信扫码授权即可登陆

在这里插入图片描述
2. 账户设置
在这里插入图片描述

  1. 用户管理

在这里插入图片描述

  1. 角色管理

在这里插入图片描述

  1. 权限管理

在这里插入图片描述

  1. 记账(收入支出)

在这里插入图片描述

  1. 月账单

在这里插入图片描述

  1. 图表分析

在这里插入图片描述

三、项目难点

我是一个工作两年的Java后端?,PC端及小程序部分代码写的不是很好,仅以功能实现为主。
如果您看了源码,发现有写的不好的地方,可以提交PR 🙂

在我实践的过程中,我认为比较难的地方有以下几个**(由于篇幅,此处仅介绍思路)**

  1. 权限控制+前端动态路由

    后端主要分为两个部分

    • 授权:后端校验过账号密码后,利用JWT生成token(useId+权限字符集)后传给前端
    • 鉴权:前端请求时带上token,经过过滤器Filter时,解析token中的内容,判断是否有对应的权限,如有则放行

    前端:利用token获取到当前的菜单列表,递归生成Routes
    简账中实现:动态菜单实现

  2. 微信扫码小程序授权登陆

这里的授权是指微信扫码后会跳转至小程序内,小程序内部发起授权

主要分为两个部分,我画了一个简易的图

ubuntu的画图软件怎么没有画箭头的工具阿~ tnt

在这里插入图片描述
需要注意的时PC端轮询时会获取到三种状态

  1. 已扫描
  2. 已过期
  3. 已授权

需要根据这三种状态需做不同的展示

四、总结

后续博客内容:

  1. 环境搭建
  2. 数据库设计
  3. SpringBoot集成SpringSecurity+JWT及动态路由生成
  4. 小程序扫码登陆实现
  5. 记账及月账单实现
  6. 图表分析实现

简账开发者:

  1. SloppyJack
  2. SmallishJoker
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享