抱歉一连回复3贴,因为一开始没有想清楚,边想编写。
回答: 公开黑名单会破坏意见领袖的伪君子人设,还是给拉黑设限了 由 等边直角三角形 于 2024-06-07 22:53
抱歉一连回复3贴,因为一开始没有想清楚,边想编写。就必须双向拉黑。a拉黑b,不仅b不能回复a,a也不能回复b.这样才合理如果a拉黑b. b没有拉黑a. 那么a完全可以赖皮。
我建议,在提示 对方网友不欢迎你跟帖的这句提示上面
提供一个选择: yes -也对等拉黑对方。
然后拉黑成功,显示一句废话:拉黑后,不能回复对方,不能提到对方名号。才是文明人。60天后自动解除拉黑。若要拉黑请到时候继续拉。为什么不拉黑是一种光荣?我认为不拉黑不妥。
为什么不拉黑是一种光荣?我认为不拉黑不妥。因为这违背了万物万象的法则。
一个人,不可能讨好所有人。必定有个人喜好。
个人喜欢和谁交流。这是自由的,不需要任何解释的。
人,不能被迫和不喜欢的人交流。特别是自由的网络上面。拉黑,再解除拉黑后,有冷静期。比如7天,7天内无法拉黑对方。### 软件需求说明#### 概述
双向拉黑系统旨在提供一种双向拉黑功能,使用户能够在网络社区中自主选择与其他用户交互的方式。该系统将允许用户在双方都不欢迎交流时进行双向拉黑,并在解除拉黑后设定冷静期,以维护良好的交流环境。#### 功能需求
1. **双向拉黑功能**
- 用户可以选择拉黑其他用户,即禁止与其交互。
- 拉黑其他用户后,被拉黑用户将收到相应通知。
- 被拉黑用户无法再与拉黑用户进行交互。
- 解除拉黑后,被拉黑用户可以再次与拉黑用户进行交互。2. **选择对等拉黑**
- 当用户选择拉黑其他用户时,系统将提供对等拉黑选项。
- 用户可以选择对等拉黑,即同时将对方拉黑,实现双向拉黑。3. **冷静期功能**
- 用户解除拉黑后,设定一定冷静期(例如7天)。
- 在冷静期内,用户无法再次对该用户进行拉黑操作。4. **系统通知功能**
- 系统将向用户发送相关通知,包括拉黑通知、解除拉黑通知等。 #### 用例
1. 用户拉黑其他用户
2. 用户解除拉黑其他用户
3. 用户选择对等拉黑
4. 用户查看系统通知#### 测试计划
1. 用户拉黑功能测试:验证用户拉黑其他用户的功能是否正常,包括通知发送、禁止交互等。
2. 用户解除拉黑功能测试:验证用户解除拉黑其他用户的功能是否正常,包括确认操作、冷静期等。
3. 用户选择对等拉黑测试:验证用户选择对等拉黑的功能是否正常,包括双向拉黑、通知发送等。
4. 系统通知功能测试:验证系统向用户发送通知的功能是否正常,包括通知内容、接收方式等。
以下是修改后的 PHP Zend 代码示例,在 unblockUser 方法中添加了提示,并等待用户选择是否解除拉黑:```php
class User {
private $username;
private $blacklist = array(); // 存储用户拉黑的其他用户
private $blockedBy = array(); // 存储拉黑当前用户的其他用户
private $blockedUntil = null; // 记录解除拉黑后的冷静期结束时间 public function __construct($username) {
$this->username = $username;
} public function blockUser($otherUser) {
$this->blacklist[] = $otherUser;
$otherUser->blockedBy[] = $this;
echo "You have blocked {$otherUser->getUsername()}. You cannot interact with each other for 60 days.\n";
$this->blockedUntil = strtotime("+60 days");
} public function unblockUser($otherUser) {
$key = array_search($otherUser, $this->blacklist);
if ($key !== false) {
echo "Do you want to unblock {$otherUser->getUsername()}? (Type 'ok' to unblock, or 'no' to cancel): ";
$input = trim(fgets(STDIN));
if ($input === 'ok') {
unset($this->blacklist[$key]);
$key = array_search($this, $otherUser->blockedBy);
unset($otherUser->blockedBy[$key]);
$this->blockedUntil = strtotime("+7 days");
echo "You have unblocked {$otherUser->getUsername()}. Please wait for 7 days before blocking again.\n";
} else {
echo "Unblock canceled.\n";
}
}
} public function canInteract($otherUser) {
if (in_array($otherUser, $this->blacklist) || in_array($this, $otherUser->blacklist)) {
return false;
}
if ($this->blockedUntil !== null && time() < $this->blockedUntil) {
return false;
}
return true;
} public function getUsername() {
return $this->username;
}
}// 示例用法
$userA = new User("UserA");
$userB = new User("UserB");$userA->blockUser($userB); // UserA 拉黑 UserB
echo $userA->canInteract($userB) ? "UserA can interact with UserB.\n" : "UserA cannot interact with UserB.\n";$userA->unblockUser($userB); // UserA 解除拉黑 UserB
echo $userA->canInteract($userB) ? "UserA can interact with UserB.\n" : "UserA cannot interact with UserB.\n";
```在 unblockUser 方法中添加了对用户输入的判断,如果输入是 'ok',则解除拉黑,否则取消解除。以下是针对双向拉黑系统的用户案例(Use Cases):1. 用户注册
参与者: 用户
目标: 注册成为系统用户
主要流程:用户打开注册页面。
用户填写必要信息,包括用户名、密码等。
用户提交注册信息。
系统验证信息合法性。
如果信息合法,系统创建用户账号并提示注册成功。
2. 用户登录
参与者: 用户
目标: 登录系统
主要流程:用户打开登录页面。
用户输入用户名和密码。
用户提交登录信息。
系统验证用户身份信息。
如果验证通过,系统允许用户登录,跳转到用户主页。
3. 拉黑用户
参与者: 用户
目标: 拉黑其他用户
前提条件: 用户已登录
主要流程:用户进入其他用户的个人主页或相关页面。
用户选择拉黑该用户的选项。
系统提示用户确认拉黑操作。
用户确认后,系统执行拉黑操作。
被拉黑用户收到相应通知。
4. 解除拉黑
参与者: 用户
目标: 解除对其他用户的拉黑
前提条件: 用户已登录,并且已拉黑了该用户
主要流程:用户进入已拉黑用户的个人主页或相关页面。
用户选择解除拉黑该用户的选项。
系统提示用户确认解除拉黑操作。
用户确认后,系统执行解除拉黑操作。
被解除拉黑用户收到相应通知。
5. 查看用户信息
参与者: 用户
目标: 查看其他用户的个人信息
前提条件: 用户已登录
主要流程:用户进入其他用户的个人主页或相关页面。
用户查看该用户的个人信息,包括用户名、头像等。
6. 接收系统通知
参与者: 用户
目标: 接收系统发送的通知消息
前提条件: 用户已登录
主要流程:系统向用户发送通知消息,如拉黑通知、解除拉黑通知等。
用户接收到通知,可以在系统中查看相应的通知内容。
ChatGPT
软件需求说明
概述
本文档是关于双向拉黑系统的补充细则,特别是解除拉黑功能的特殊情况下的规定。在用户进行拉黑和解除拉黑操作时,系统需要考虑到特殊情况,并作出相应的处理和提示,以确保用户体验和系统运行的顺畅性。功能需求
解除拉黑特殊情况处理
解除拉黑后特别条款提醒如果用户在拉黑某用户不到3小时后解除拉黑,系统应提示用户注意谨慎使用拉黑功能,并提醒其注意相应的特别条款。
解除拉黑后冷静期延长当用户解除拉黑后,系统应设定一个额外的冷静期,即24小时,用户在此期间内不得再次对该用户进行拉黑操作。
非功能需求
安全性解除拉黑特殊情况的处理需要保证系统数据的安全性,避免出现漏洞或数据泄露问题。
易用性系统对解除拉黑特殊情况的处理应提供清晰的提示和说明,以便用户理解并正确操作。
用例
解除拉黑特殊情况处理
用户在拉黑某用户不到3小时后解除拉黑
用户在解除拉黑后24小时内再次对同一用户进行拉黑
测试计划
解除拉黑特殊情况处理测试:验证系统对解除拉黑特殊情况的处理是否符合要求,包括提醒内容、冷静期设定等。
内容来自网友分享,若违规或者侵犯您的权益,请联系我们
所有跟帖: ( 主贴楼主有权删除不文明回复,拉黑不受欢迎的用户 )
楼主前期社区热帖:
>>>>查看更多楼主社区动态...