项目地址:golang小项目
参考资料:尚硅谷golang教程P229

家庭收支记账系统

1. 系统简介

1.1 项目背景

在现代社会中,家庭的财务管理显得尤为重要。随着生活成本的不断上升,家庭需要有效地记录和分析收支情况,以确保财务健康。然而,许多家庭缺乏合适的工具来帮助他们进行系统化的财务管理,导致预算不合理和支出失控,从而影响到家庭的经济稳定。为了满足这一需求,我开发了基于命令行界面的《家庭收支记账系统》。该系统旨在通过提供简单易用的界面和功能,帮助家庭用户更好地管理日常财务。通过清晰记录收入和支出,用户能够提高财务透明度,制定合理的预算,从而做出更明智的经济决策。

1.2 系统功能概述

用面向对象的方式实现基于命令行界面的《家庭收支记账系统》,该软件能实现注册、登录、记录家庭的收入与支出、打印收支明细表、转账、注销、修改密码等功能。其中收支明细表显示所有交易记录,一条交易记录由交易类型(收入/支出)、用户余额(交易后)、交易金额、备注组成。所有数据都存在本地的 TXT 文件中,软件要实现对文件数据的读和写。

1.3 开发环境与框架

  • 操作系统:Windows 11
  • 开发工具:Visual Studio Code 1.89.1
  • 编程语言:Go 1.23.1

2. 系统需求分析

2.1 打印菜单

只打印菜单,参考界面如下:

  • 主界面在这里插入图片描述

  • 登录后界面在这里插入图片描述

  • 收支明细记录在这里插入图片描述

2.2 注册

  1. 要求用户输入用户名和密码,若用户名和本地用户名冲突则给出提示。
  2. 注册后用户余额默认为 0。
  3. 注册成功后自动登录。

2.3 登录

要求用户输入用户名和密码,若用户名或密码错误则给出提示。

2.4 收入

  1. 要求用户输入收入金额和备注,系统能修改余额和更新交易记录。
  2. 收入金额必须保证是非负数。

2.5 支出

  1. 要求用户输入支出金额和备注,系统能修改余额和更新交易记录。
  2. 支出金额必须保证是非负数,且支出金额不能超过余额。
  3. 支出为 0 是无效交易,提醒用户。

2.6 转账

  1. 列出转账对象菜单并要求用户选择,其中转账对象是家庭关系,如父亲、母亲等。
  2. 转账对象选完后要求用户输入转账金额、对方用户名和备注,系统能修改双方的余额和更新交易记录。
  3. 转账金额必须保证是非负数,且不能超过转账人的余额。
  4. 转账金额为 0 也是无效交易,提醒用户。
  5. 转账人的备注如果不写,默认加“转给”+转账对象,如“转给母亲”。
  6. 被转账人的备注要写“由”+转账人用户名+“转账”,如“由张三转账”。
  7. 转给自己也是无效交易,要及时提醒用户。

2.7 退出

提示用户是否退出(可用 y/n 等选项),如果用户输入错误的选项,则提示用户重新输入;如果选项正确且用户选择是,则退出软件,否则不退出。

2.8 注销

用户选择注销后立即返回主界面。

2.9 修改密码

要求用户输入新密码,如果和原来一样则提醒用户,不更新密码。

2.10 输入验证

所有选项的输入都必须保证是和菜单上一样的选项。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部