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

文章目录

  • 简账(开源记账软件)-功能介绍
  • 前言
  • 一、主要技术栈简介
  • 二、主要功能
  • 三、项目难点
  • 四、总结

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


前言

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

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

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

正式环境体验:

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

Github开源地址:

  • Java后端:简账后端
  • PC端:简账PC端
  • 小程序:简账uniapp

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

  • 支持多账本,可自定义维护
  • 支持设置预算(年月预算)
  • 支持多账本间冲销
  • 支持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. 用户管理

  3. 权限管理

  4. 月账单

三、项目难点

我是一个工作两年的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

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91268 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年3月26日
下一篇 2021年3月26日

相关推荐