【蜗趣记账】手把手带你实现记账小程序

779 阅读4分钟

蜗趣记账.jpg

2024年干的活,2025年来说说。

写在前面

大家好,我是后端开发程序员蜗趣君,我的微信小程序——蜗趣记账已发布。写下这篇文章,主要是聊聊我在2024年做了哪些事情,你可以根据我的思路完成一个完整的记账软件,同时也可以根据我的接口自行实现一套记账软件,接口长期维护。

业务设计

  • 支持一个用户维护多个账本
  • 支持常见的记账分类
  • 支持用户邀请他人共同记账
  • 支持对记账数据分类统计
  • 支持智能记账
  • 支持三方系统对接接入
  • 支持三方小程序对接开发

架构

  • 技术架构图

image.png

服务端

用于提供后端支持,对所有业务逻辑及存储进行支持。

  • 技术栈:springboot + mybatis + mysql + redis

  • 包结构:

    • controller:接口层,RestController入口;
    • validator:接口校验层,做数据校验,也可以通过注解校验;
    • service:服务层,控制事务管理;
    • dao:缓存层,使用spring-cache通过注解方式管理缓存;
    • mapper:数据持久化层,使用mybatis操作数据库,也可使用mybatis-plus更加灵活;
    • interceptor:拦截器,身份校验、日志记录;
    • filter:过滤器,防止XSS过滤、跨域设置、统一编码防止乱码;
    • push:推送服务,使用LinkedBlockingDeque实现,支持异步操作,也可使用MQ实现。
  • 主要表结构:

-- user表,用户
userId        用户ID,全局唯一
openid        小程序的唯一标识
nickName      昵称
gender        性别
avatarUrl     头像

-- account表,账本
accountId     账本ID
accountName   账本名称
userId        用户ID

-- bill表,账单
billId        账单ID
accountId     账本ID
amount        金额
icon          图标
type          类型(收入/支出)
usedTime      使用时间
userId        用户ID

-- 基础表
-- 图标表,维护图标的基础信息

-- 业务表
-- 消息表,维护消息内容
-- 图片表,维护图片消息
-- 用户邀请表,维护用户邀请其他用户的记录

-- 关联表
-- 一个用户有多个账本,一个账本对应多个用户,需要设置用户账本关系表,多对多。
-- 一个用户有多个消息,一个消息对应多个用户,需要设置用户消息关系表,多对多。
-- 一个用户有多条邀请,需要设置用户邀请记录表,一对多。
-- 一个账本有多个账单,需要设置账本账单关系表,一对多。
-- 一个账单有多个图片,需要设置账单图片关系表,一对多。

-- 扩展部分
-- 用户积分表
-- 用户操作日志表
-- 系统参数表
  • FOS文件系统:自行开发的文件管理系统,通过license的配置提供后端服务文件操作的能力,也可通过阿里云OSS等第三方文件系统实现。

小程序

当前已对接微信小程序。

  • 技术栈:Vue3 + Vite + Uni-App + ts + UnoCss + Wot-Design-UI
  • 界面预览:
985347fe4faf37ae68ba8788c283290.png e4ea833e8c6e653c41faa298db588c7.png 950b5d5cd7fc2f236e994e80ed21609.png dcc95af0197f7c758c3e0589b277773.png 9e0e09d6929d0345788f1b3aaab4cb6.png 17d3382b3c6f66744580f0b1ccb96f1.jpg

运营端

对系统中的基础数据进行维护,如文件、标签等;对业务数据运营维护,如消息群发、黑/白名单配置、全局参数设置等。目前主要是本人自行维护使用,不提供公开的访问链接。

  • 技术栈:基于开源项目V3-Admin-Vite进行开发。
  • 界面预览:

image.png

官网

HTML页面,简单介绍蜗趣记账,后期开放接口文档和SDK下载。

三方接入

提供两种方式接入:

  • 小程序登录:需要自行开发前端小程序,根据接口进行开发。

image.png

  • 三方登录:适合第三方系统对接接入,调用蜗趣记账提供的能力。

image.png

写在后面

回过头会发现,其实干了不少事,也花了很多时间把系统逻辑一点点完善起来,以后有新的东西会持续分享。对了,三方接入的许可证可以通过小程序直接与我联系获取。希望大家玩的开心,能给出意见就更好了,遇见你真是太好啦!

蜗趣记账.jpg