第四章:AI 实战开发18. 统计功能开发

统计功能开发 - 数据分析与可视化

大家好,这节课呢,我们要继续往下开发统计分析模块,也就是首页的统计功能。

功能依赖

统计功能依赖于账目数据,也就是我们前面开发的记账功能和明细功能。

这个应该很好理解,因为有了记账的记录,然后才好去做数据的分析。

需求说明

下面我们来简单的过一下需求。

首页仪表盘功能

  • 显示当前选中的账本名称 - 支持点击切换账本,和明细页面的最上面的功能一样
  • 显示当前的统计周期 - 默认是本月
  • 显示本月的收入、支出、余额
  • 切换统计周期 - 所有统计数据仅针对当前选中的账本

按分类统计

统计页面既要支持支出的统计,也要支持单独统计收入。

时间筛选要求

  • 本周、本月、本年的快速筛选
  • 自定义日期
  • 切换时间范围之后统计数据要自动刷新

统计展示形式

展示收支数据和分类统计。

功能限制

暂时还不支持一些图表,当然后面我们也可以自己去扩展。

创建 Quest 任务

下面我们就直接进入开发。

新建任务

仍然是点击左侧的 Quest,然后新建一个任务。

添加上下文

新建任务之后,我们先添加上下文,把需求文档添加进来。

编写提示词

然后根据需求文档来描述一下:

这个文档是当前软件的需求文档,按照顺序从上往下开发。

目前开发到了"统计分析模块",前面的部分都已经开发完成。

因为当前这个统计分析模块依赖于之前的记账和明细相关的功能,
可以参考一下这个文件:
[记账和明细功能的开发文档路径]

这个文件是之前开发记账和明细功能的开发文档,可以参考一下。

结合需求文档中统计分析模块的功能,做详细的设计,然后基于设计去做开发。

另外,root 目录下面有当前项目的信息,可以参考一下。

现在开始吧。

提示词说明

我们找到之前 Quest 生成的文档,复制相对路径,然后告诉 AI 这个文件是之前开发记账和明细功能的开发文档,可以参考一下。

我们还可以把项目的规则信息告诉他,比如 root 目录下面有一些规则,也可以复制相对路径。

然后回车。

查看设计文档

现在开发文档已经完成了,我们简单的过一下:

  1. 模块概述
  2. 数据模型设计
  3. 接口设计
  4. 流程图
  5. 前端页面设计

关于文档审查

如果说我们没有开发背景的话,看这些文档其实没有太大的意义,我们后面只需要去核对功能就行了。如果功能不对的话,然后再让 AI 去对着功能去修改。

我们就先点击”采纳”,然后直接”开始任务”就行了。

处理报错问题

我们来看一下,AI 提示我们任务已经完成,给了总结验证,还有 6 个变更的文件。

但是界面是空白的,只有左上角显示一个”欢迎使用账号服务”。

第一次报错

刷新页面

我们先刷新一下看看。

刷新之后,界面报错。

报错很正常

有报错其实也是很正常的现象,没有关系,我们可以把报错信息发给 AI,让 AI 来帮我们解决就行了。

我们先点击”接受”,然后我们重启一下项目。

查看报错

重启之后,我们看到服务端的控制台有一个 Error,然后再看一下客户端,客户端的控制台也有报错。

使用 AI 解决

我们新建一个 AI 的对话,然后把刚才生成的这个文档发给他:

我用 Quest 模式生成了这个开发文档,
然后根据这个文档开发结束后,软件报错了。

客户端的报错信息如下:
[复制的报错信息]

服务端的报错信息如下:
[复制的报错信息]

分析一下原因并解决。

第二次报错

AI 告诉我们问题已经修复了,现在让我们重新启动客户端和服务端进行测试。

我们来重启一下。

重启测试

重启之后,好像又有了别的报错信息,我们继续把这些报错信息发给 AI。

先看一下客户端吧,找到控制台里面红色的文字,一般这种都是报错,里面有 error 信息。

继续调试

然后我们跟 AI 说:

我重启了一下客户端和服务端,仍然有报错。

客户端报错如下:
[复制的报错信息]

服务端报错信息如下:
[复制的报错信息]

服务端这里的两个报错其实是重复的,所以我们只需要复制其中的一部分就行了。

然后直接回车。

这里需要我们手动确认一下运行,点击。

问题解决

我们来看一下,现在两个问题都已经修复了,然后界面也正常显示了。

补充账本切换功能

我们看到首页的统计,最上面是一个切换周期的功能,然后下面是总收入、总支出、余额,然后还有支出分类的统计。

但是我们发现,这里还缺少了一个账本切换的功能。

⚠️

功能缺失

我们需要切换账本来查看不同账本的一个收支情况,所以我们直接在这个地方去跟 AI 讲一下。

添加切换功能

我们直接告诉 AI:

现在问题已经修复了,但是首页统计中缺少了账本切换的功能。

参考开发文档和需求文档,以及记账明细界面最上方的切换功能,
将统计页面也加上一个账本切换的功能。

这个功能现在已经完成了,我们看到界面上也已经有了这个账本切换的功能。

功能测试

切换一下试一下。

测试账本切换

然后我们切换到”测试账本2”,我们发现”测试账本2”切换之后,数据变了。

测试时间筛选

然后再看一下本周、本月和本年的数据:

  • 本周的数据 - 是 0,因为我们本周还没有数据,我们之前添加的是上周的数据
  • 本月的数据 - 已经有了
  • 本年的数据 - 也包含在里面

切换回测试账本1

再切换回到”测试账本1”,切换回来之后,这边也是跟着切换的。

功能测试完成

那么说明首页的这个统计功能,我们也已经完成了。

后续扩展

如果后续需要做一些图表的统计,我们可以让 AI 再去加图表。这个版本呢,我们就先不加了。

软件的开发就是这样,首先我们要做一个可以闭环的、基础的、能用的功能,然后后面版本更新的时候,再逐步去迭代。

提交代码

最后我们来提交一下代码。

创建新分支

首先点击左下角的这个分支,我们仍然是新建一个分支,在当前分支的基础上新建:

v1.0.0-5-统计功能

然后回车。

回车之后,我们看到左下角的分支已经变了,但是他当前还是一个本地的分支。

暂存修改

然后我们点击左侧的”源代码管理器”,然后点击目录右侧的加号。

所有的都点完之后,这个”更改”的下方就没有数据了,都变到了上方,说明我们都已经点过了。

提交代码

然后点击”提交”,输入:

统计功能开发

发布分支

然后”发布分支”。

开发完成

那么到这里,我们统计功能就已经完成,并且代码也提交到了仓库中。

💡

遇到问题?

如果在开发统计功能时遇到问题,可以扫描下方的微信二维码帮您看下(免费咨询)

下一步

统计功能开发完成后,接下来我们需要:

👉 下一节:个人中心功能开发


相关信息

💬 扫码了解更多信息

客服微信二维码

添加微信

知识星球二维码

加入知识星球