Funny-Nation icon indicating copy to clipboard operation
Funny-Nation copied to clipboard

Badge

Open plbin97 opened this issue 2 years ago • 0 comments

Badge 徽章

Use Case 1 - Create a badge

User Story

作为一名管理员, 我想创建一个徽章, 于是我输入命令

/badge create [徽章emoji] [徽章介绍] [徽章一个月价格] [徽章Tag]

来创建一个徽章

Acceptance Criteria

我输入创建徽章时,

如果我不是管理员,bot回复你没有权限

如果徽章已存在,bot回复徽章已存在

如果Tag不存在,bot回复Tag不存在

如果徽章数量超过20个,bot回复徽章太多了(最多20个徽章)

如果徽章tag已经被别的徽章使用,bot回复徽章tag已被使用

创建徽章时,徽章将被存入数据库

Use Case 2 - Remove a badge

User Story

作为一名管理员, 我想删除一个徽章, 于是我输入命令

/badge remove [徽章emoji]

徽章将会被删除

Acceptance Criteria

我输入创建徽章时,

如果我不是管理员,bot回复你没有权限

如果徽章不存在,bot回复徽章不存在

删除徽章时,徽章将会从数据库删除,但tag依然保留。

Use Case 3 - Purchase a badge

User Story

作为一名普通用户, 我想为自己购买一个徽章, 于是我输入命令

/badge buy [徽章emoji] [自动续费]

我便拥有这个徽章

Acceptance Criteria

我输入命令时,

如果我不够钱,bot回复你没钱

购买后,徽章数据记录入数据库

Use Case 4 - List all badge

User Story

作为一名普通用户, 我想查看本服务器的所有徽章, 于是我输入命令

/badge list

我便可以查看所有徽章的emoji,介绍,价格

Acceptance Criteria

我输入命令时, bot回复徽章介绍

Use Case 5 - Manage my badge

User Story

作为一名普通用户, 我管理我的徽章, 于是我输入命令

/badge manage-my-badge

bot回复一个管理面板, 用户可以在管理面板中设置哪些badge自动续费,哪些badge不自动续费。

Acceptance Criteria

我输入命令时, bot回复徽章管理面板

管理面板中有若干个drop down menu, 一个menu对应一个用户购买的badge, menu中可以选择:自动续费、不自动续费 管理面板底部有一个button:关闭面板

Use Case 6 - Auto Polling badge expired

User Story

作为bot, 我需要处理用户们的徽章, 当用户徽章过期,根据用户设置的是否自动续费,来决定续费。 如果没有自动续费,徽章将被收回,tag也将被收回。

Acceptance Criteria

我需要每24小时监测每位用户的徽章是否过期。

当用户徽章过期,则进行判断用户徽章的设置。

如果用户设置了自动续费,则自动为用户续费,并且私聊用户,徽章续费成功

如果用户没设置自动续费,则收回徽章和tag,并私聊用户,徽章已被拿下。

plbin97 avatar Aug 13 '22 06:08 plbin97