Initial commit

This commit is contained in:
2025-11-18 03:36:49 +08:00
commit d17c7efb3c
7078 changed files with 831480 additions and 0 deletions

View File

@@ -0,0 +1,273 @@
# NSUserPlanService
> 用户DNS套餐服务
---
## buyNSUserPlan
> 使用余额购买用户套餐
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/buyNSUserPlan`
- RPC`rpc buyNSUserPlan(BuyNSUserPlanRequest) returns (BuyNSUserPlanResponse);`
**请求对象 (`BuyNSUserPlanRequest`)**
```json
{
"userId": "int64 // 用户ID",
"planId": "int64",
"period": "string"
}
```
**响应对象 (`BuyNSUserPlanResponse`)**
```json
{
"userPlanId": "int64"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/buyNSUserPlan" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## countNSUserPlans
> 计算用户套餐数量
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/countNSUserPlans`
- RPC`rpc countNSUserPlans(CountNSUserPlansRequest) returns (RPCCountResponse);`
**请求对象 (`CountNSUserPlansRequest`)**
```json
{
"userId": "int64 // 用户ID",
"nsPlanId": "int64",
"periodUnit": "string",
"isExpired": "bool",
"expireDays": "int32"
}
```
**响应对象 (`RPCCountResponse`)**
```json
{
"count": "int64 // 数量"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/countNSUserPlans" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## createNSUserPlan
> 创建用户套餐
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/createNSUserPlan`
- RPC`rpc createNSUserPlan(CreateNSUserPlanRequest) returns (CreateNSUserPlanResponse);`
**请求对象 (`CreateNSUserPlanRequest`)**
```json
{
"userId": "int64 // 用户ID",
"nsPlanId": "int64",
"dayFrom": "string // YYYYMMDD",
"dayTo": "string // YYYYMMDD",
"periodUnit": "string // yearly|monthly"
}
```
**响应对象 (`CreateNSUserPlanResponse`)**
```json
{
"nsUserPlanId": "int64"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/createNSUserPlan" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## deleteNSUserPlan
> 删除用户套餐
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/deleteNSUserPlan`
- RPC`rpc deleteNSUserPlan(DeleteNSUserPlanRequest) returns (RPCSuccess);`
**请求对象 (`DeleteNSUserPlanRequest`)**
```json
{
"nsUserPlanId": "int64"
}
```
**响应对象 (`RPCSuccess`)**
```json
{}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/deleteNSUserPlan" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## findNSUserPlan
> 读取用户套餐
- 角色:`admin`, `user`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/findNSUserPlan`
- RPC`rpc findNSUserPlan(FindNSUserPlanRequest) returns (FindNSUserPlanResponse);`
**请求对象 (`FindNSUserPlanRequest`)**
```json
{
"userId": "int64 // 和 nsUserPlanId 二选一",
"nsUserPlanId": "int64"
}
```
**响应对象 (`FindNSUserPlanResponse`)**
```json
{
"nsUserPlan": "NSUserPlan"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/findNSUserPlan" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## listNSUserPlans
> 列出单页套餐
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/listNSUserPlans`
- RPC`rpc listNSUserPlans(ListNSUserPlansRequest) returns (ListNSUserPlansResponse);`
**请求对象 (`ListNSUserPlansRequest`)**
```json
{
"userId": "int64 // 用户ID",
"nsPlanId": "int64",
"periodUnit": "string",
"isExpired": "bool",
"expireDays": "int32",
"offset": "int64 // 读取位置",
"size": "int64 // 数量通常不能小于0"
}
```
**响应对象 (`ListNSUserPlansResponse`)**
```json
{
"nsUserPlans": "[]NSUserPlan"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/listNSUserPlans" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## updateNSUserPlan
> 修改用户套餐
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/NSUserPlanService/updateNSUserPlan`
- RPC`rpc updateNSUserPlan(UpdateNSUserPlanRequest) returns (RPCSuccess);`
**请求对象 (`UpdateNSUserPlanRequest`)**
```json
{
"nsUserPlanId": "int64",
"nsPlanId": "int64",
"dayFrom": "string // YYYYMMDD",
"dayTo": "string // YYYYMMDD",
"periodUnit": "string // yearly|monthly"
}
```
**响应对象 (`RPCSuccess`)**
```json
{}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/NSUserPlanService/updateNSUserPlan" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---