主要修改: 1. 在LinkController中新增按状态批量删除链接的接口,允许用户根据指定状态批量删除自己创建的链接。 2. 在LinkStatusService中实现批量删除逻辑,确保用户只能删除自己的链接,并进行状态验证。 3. 更新LinkTaskMapper和对应的XML文件,增加查询和删除链接任务的相关方法。 技术细节: - 通过新增的批量删除功能,提升了用户对链接的管理能力,确保操作的安全性和有效性,同时优化了数据库操作的灵活性。
83 lines
1.8 KiB
HTTP
83 lines
1.8 KiB
HTTP
### 按狀態批量刪除鏈接接口測試
|
||
|
||
# 需要先獲取JWT token
|
||
POST http://localhost:8080/api/auth/login
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"username": "admin",
|
||
"password": "admin"
|
||
}
|
||
|
||
### 使用獲取到的token進行按狀態批量刪除
|
||
|
||
# 1. 刪除已過期的鏈接
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": ["EXPIRED"],
|
||
"confirmDelete": true
|
||
}
|
||
|
||
### 2. 刪除已退款的鏈接
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": ["REFUNDED"],
|
||
"confirmDelete": true
|
||
}
|
||
|
||
### 3. 同時刪除多種狀態的鏈接(已過期和已退款)
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": ["EXPIRED", "REFUNDED"],
|
||
"confirmDelete": true
|
||
}
|
||
|
||
### 4. 測試錯誤情況:未確認刪除操作
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": ["EXPIRED"],
|
||
"confirmDelete": false
|
||
}
|
||
|
||
### 5. 測試錯誤情況:無效的狀態值
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": ["INVALID_STATUS"],
|
||
"confirmDelete": true
|
||
}
|
||
|
||
### 6. 測試錯誤情況:空狀態列表
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": [],
|
||
"confirmDelete": true
|
||
}
|
||
|
||
### 7. 刪除新建狀態的鏈接(謹慎使用)
|
||
POST http://localhost:8080/api/link/batch-delete-by-status
|
||
Content-Type: application/json
|
||
Authorization: Bearer {{token}}
|
||
|
||
{
|
||
"statusList": ["NEW"],
|
||
"confirmDelete": true
|
||
}
|