1. 修改防护对象、策略模板和任务的Swagger文档

2. 修改任务和指令部分逻辑
This commit is contained in:
EnderByEndera
2024-01-22 15:40:03 +08:00
parent 63e7270c92
commit 3d50cb9493
18 changed files with 790 additions and 81 deletions

View File

@@ -7,6 +7,7 @@ import com.realtime.protection.configuration.response.ResponseResult;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.ExampleObject;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
@@ -27,7 +28,28 @@ public interface TaskControllerApi {
description = "返回任务添加结果信息",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"task_name": "静态任务",
"success": true,
"task_id": 1939
}
}
""",
description = """
"task_name": 任务名称
"success": 任务添加是否成功
"task_id": 新建任务ID
"""
)
),
responseCode = "200"
)
@@ -46,7 +68,27 @@ public interface TaskControllerApi {
description = "返回外部任务推送结果",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"success": true,
"taskId": 1940
}
}
""",
description = """
"task_name": 任务名称
"success": 任务添加是否成功
"task_id": 新建任务ID
"""
)
)
)
},
@@ -63,7 +105,74 @@ public interface TaskControllerApi {
description = "返回查询到的所有任务",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"total_num": 1902,
"task_list": [
{
"task_id": 37,
"task_name": "静态任务",
"task_start_time": "2025-01-19T08:46:36",
"task_end_time": "2027-01-19T08:46:36",
"task_type": 1,
"task_create_username": "xxx",
"task_create_depart": "xxx",
"static_rule_ids": [
112
],
"dynamic_rule_ids": [],
"task_status": 4,
"task_audit_status": 0
},
{
"task_id": 38,
"task_name": "修改测试",
"task_start_time": "2024-02-29T15:16:11",
"task_end_time": "2024-03-15T04:30:18",
"task_type": 1,
"task_create_username": "xxx",
"task_create_depart": "xxx",
"static_rule_ids": [],
"dynamic_rule_ids": [],
"task_status": 4,
"task_audit_status": 2
}
]
}
}
""",
description = """
"task_id": 任务ID
"task_name": 任务名称
"task_start_time": 任务开始时间
"task_end_time": 任务结束时间
"task_type": 任务类型静态、动态、研判后对应123
"task_create_username": 任务创建人名称
"task_create_depart": 任务创建人处室
"static_rule_ids": 静态规则ID列表
"dynamic_rule_ids": 动态规则ID列表
"task_status": 任务当前运行状态
"task_audit_status": 任务当前审核状态
"total_num": 任务总数
"""
)
)
)
},
@@ -92,7 +201,54 @@ public interface TaskControllerApi {
description = "返回查询到的单个任务",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"task": {
"task_id": 38,
"task_name": "修改测试",
"task_start_time": "2024-02-29T15:16:11",
"task_end_time": "2024-03-15T04:30:18",
"task_type": 1,
"task_create_username": "xxx",
"task_create_depart": "xxx",
"static_rule_ids": [],
"dynamic_rule_ids": [],
"task_status": 4,
"task_audit_status": 2
}
}
}
""",
description = """
"task_id": 任务ID
"task_name": 任务名称
"task_start_time": 任务开始时间
"task_end_time": 任务结束时间
"task_type": 任务类型静态、动态、研判后对应123
"task_create_username": 任务创建人名称
"task_create_depart": 任务创建人处室
"static_rule_ids": 静态规则ID列表
"dynamic_rule_ids": 动态规则ID列表
"task_status": 任务当前运行状态
"task_audit_status": 任务当前审核状态
"""
)
)
)
},
@@ -109,7 +265,25 @@ public interface TaskControllerApi {
description = "返回任务更新结果信息",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"success": true,
"task_id": 637
}
}
""",
description = """
"success": 更新是否成功
"task_id": 更新任务ID
"""
)
)
)
},
@@ -131,7 +305,28 @@ public interface TaskControllerApi {
description = "返回任务审核状态修改的信息",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"success": true,
"task_id": 38,
"audit_status": 2
}
}
""",
description = """
"success": 任务审核状态修改是否成功
"task_id": 任务ID
"audit_status": 任务当前审核状态
"""
)
)
)
},
@@ -152,7 +347,25 @@ public interface TaskControllerApi {
description = "返回任务删除结果信息",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"success": true,
"task_id": 889
}
}
""",
description = """
"success": 任务删除是否成功
"task_id": 删除的任务ID
"""
)
)
)
},
@@ -171,7 +384,28 @@ public interface TaskControllerApi {
description = "返回任务运行状态修改结果",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"status_now": 2,
"success": true,
"task_id": 1012
}
}
""",
description = """
"status_now": 当前任务状态
"success": 任务状态更新是否成功
"task_id": 任务ID
"""
)
)
)
},
@@ -192,7 +426,45 @@ public interface TaskControllerApi {
description = "返回任务已推送指令的相关数据",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class)
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"success": true,
"commands": [
{
"taskAct": "篡改",
"isValid": true,
"fiveTupleWithMask": {
"sourceIP": "1.1.2.3",
"sourcePort": "80"
},
"commandSentTimes": 0,
"commandSuccessTimes": 0,
"uuid": "3b42ca64-282f-4040-bd8f-8f895fa82d23"
}
]
}
}
""",
description = """
"taskAct": 任务行为
"isValid": 指令是否生效
"fiveTupleWithMask": 指令五元组信息
"commandSentTimes": 指令下发次数
"commandSuccessTimes": 指令下发成功次数
"uuid": 指令UUID
"""
)
)
)
},
@@ -201,4 +473,38 @@ public interface TaskControllerApi {
}
)
ResponseResult queryCommandInfoByTaskId(@PathVariable Long taskId);
@Operation(
summary = "下发/取消指令下发",
description = "下发或取消下发一条指令",
responses = @ApiResponse(
description = "返回指令是否成功下发",
content = @Content(
mediaType = "application/json",
schema = @Schema(implementation = ResponseResult.class),
examples = @ExampleObject(
name = "example",
value = """
{
"code": 200,
"message": "request succeed",
"data": {
"success": true,
"command_uuid": "85f4115b-f9ac-4489-89bc-42ee261d6cd1"
}
}
""",
description = """
"success": 指令下发是否成功
"command_uuid": 指令UUID
"""
)
)
)
)
@GetMapping("/{commandId}/valid/{isValid}")
ResponseResult setCommandValid(@PathVariable Boolean isValid,
@PathVariable String commandId);
}