parent
34462a418c
commit
49aadd12a3
|
@ -238,7 +238,7 @@ public class DisposeInfoController {
|
|||
|
||||
// 对返回的信息按照设备ID排序
|
||||
rspInfo.setItems(rspList.stream()
|
||||
.sorted(Comparator.comparing(DeviceDetail::getId))
|
||||
.sorted(Comparator.comparingLong((DeviceDetail v) -> Long.parseLong(v.getId())))
|
||||
.collect(Collectors.toList()));
|
||||
|
||||
return ProtocolRespDTO.result(ErrorCode.ERR_OK, rspInfo);
|
||||
|
|
|
@ -321,12 +321,6 @@ public class DisposeTaskController {
|
|||
return ProtocolRespDTO.result(ErrorCode.ERR_OK, rspList);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all dispose task.
|
||||
*
|
||||
* @param mr the mr
|
||||
* @return the all dispose task
|
||||
*/
|
||||
@PostMapping("/taskList")
|
||||
@ResponseBody
|
||||
@ApiOperation("获取处置任务")
|
||||
|
@ -334,78 +328,70 @@ public class DisposeTaskController {
|
|||
@Validated(ValidGroups.ProtocolCommonValid.class)
|
||||
@RequestBody ProtocolReqDTO<BasePagesGetReq> mr
|
||||
) {
|
||||
GetTaskRsp rspInfo = GetTaskRsp.builder().build();
|
||||
GetTaskRsp rspInfo = GetTaskRsp.builder()
|
||||
.items(new ArrayList<>())
|
||||
.build();
|
||||
List<GetTaskDetail> getTaskDetail = new ArrayList<>();
|
||||
|
||||
//获取TaskId列表
|
||||
List<Long> reqTaskIds = Arrays.stream(Optional.ofNullable(mr.getMsgContent().getTaskId())
|
||||
.orElse(new String[]{})).
|
||||
map(Long::parseLong).collect(Collectors.toList());
|
||||
.orElse(new String[]{}))
|
||||
.map(Long::parseLong)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
//获取所有可用处置任务
|
||||
List<DisposeTask> taskList = disposeTaskService.getAllDisposeTask();
|
||||
List<Long> idArray = taskList.stream().filter(v -> reqTaskIds.size() == 0 || reqTaskIds.contains(v.getId()))
|
||||
.map(DisposeTask::getId).collect(Collectors.toList());
|
||||
MulReturnType<PageInfo<DisposeTask>, List<DisposeTask>> ret =
|
||||
disposeTaskService.getPageDisposeTask(reqTaskIds,
|
||||
mr.getMsgContent().getStartPage(),
|
||||
mr.getMsgContent().getPageSize());
|
||||
|
||||
if (idArray.size() > 0) {
|
||||
MulReturnType<PageInfo<DisposeTask>, List<DisposeTask>> ret =
|
||||
disposeTaskService.getPageDisposeTask(idArray,
|
||||
mr.getMsgContent().getStartPage(),
|
||||
mr.getMsgContent().getPageSize());
|
||||
// 分页信息
|
||||
rspInfo.setCurPageNumber(ret.getFirstParam().getPageNum());
|
||||
rspInfo.setPageSize(ret.getFirstParam().getPageSize());
|
||||
rspInfo.setTotalItems((int) ret.getFirstParam().getTotal());
|
||||
rspInfo.setTotalPages(ret.getFirstParam().getPages());
|
||||
|
||||
// 分页信息
|
||||
rspInfo.setCurPageNumber(ret.getFirstParam().getPageNum());
|
||||
rspInfo.setPageSize(ret.getFirstParam().getPageSize());
|
||||
rspInfo.setTotalItems((int) ret.getFirstParam().getTotal());
|
||||
rspInfo.setTotalPages(ret.getFirstParam().getPages());
|
||||
|
||||
ret.getSecondParam().forEach(v -> {
|
||||
GetTaskDetail taskDetail = GetTaskDetail.builder()
|
||||
.taskId(String.valueOf(v.getId()))
|
||||
.accountId(String.valueOf(v.getAccountId()))
|
||||
.disposeCapacity(v.getDisposeCapacity().getValue())
|
||||
.disposeIp(v.getDisposeObject())
|
||||
.createTime(v.getCreateTime())
|
||||
.planEndTime(v.getPlanEndTime())
|
||||
.endTime(v.getEndTime())
|
||||
.flowDirection(v.getFlowDirection().getValue())
|
||||
.attackType(v.getAttackType().toString())
|
||||
.flowBandWidth(v.getFlowBandWidth())
|
||||
.currentStatus(v.getCurrentStatus().getValue())
|
||||
.deviceTask(new ArrayList<>())
|
||||
.build();
|
||||
taskDetail.setStatus(ErrorCode.ERR_OK.getCode());
|
||||
taskDetail.setMessage(new String[]{ErrorCode.ERR_OK.getMsg()});
|
||||
|
||||
v.getDeviceTask().forEach(k -> {
|
||||
GetDeviceTaskDetail deviceTaskDetail = GetDeviceTaskDetail.builder()
|
||||
.devTaskId(String.valueOf(k.getId()))
|
||||
.devId(String.valueOf(k.getDeviceId()))
|
||||
.externId(String.valueOf(k.getExternId()))
|
||||
.status(k.getStatus())
|
||||
.build();
|
||||
taskDetail.getDeviceTask().add(deviceTaskDetail);
|
||||
reqTaskIds.stream()
|
||||
.filter(v -> ret.getSecondParam().stream().noneMatch(k -> k.getId().equals(v)))
|
||||
.forEach(v -> {
|
||||
GetTaskDetail td = GetTaskDetail.builder().build();
|
||||
td.setTaskId(String.valueOf(v));
|
||||
td.setStatus(ErrorCode.ERR_NOSUCHTASK.getCode());
|
||||
td.setMessage(new String[]{ErrorCode.ERR_NOSUCHTASK.getMsg()});
|
||||
getTaskDetail.add(td);
|
||||
});
|
||||
|
||||
getTaskDetail.add(taskDetail);
|
||||
for (DisposeTask v : ret.getSecondParam()) {
|
||||
GetTaskDetail taskDetail = GetTaskDetail.builder()
|
||||
.taskId(String.valueOf(v.getId()))
|
||||
.accountId(String.valueOf(v.getAccountId()))
|
||||
.disposeCapacity(v.getDisposeCapacity().getValue())
|
||||
.disposeIp(v.getDisposeObject())
|
||||
.createTime(v.getCreateTime())
|
||||
.planEndTime(v.getPlanEndTime())
|
||||
.endTime(v.getEndTime())
|
||||
.flowDirection(v.getFlowDirection().getValue())
|
||||
.attackType(v.getAttackType().toString())
|
||||
.flowBandWidth(v.getFlowBandWidth())
|
||||
.currentStatus(v.getCurrentStatus().getValue())
|
||||
.deviceTask(new ArrayList<>())
|
||||
.build();
|
||||
taskDetail.setStatus(ErrorCode.ERR_OK.getCode());
|
||||
taskDetail.setMessage(new String[]{ErrorCode.ERR_OK.getMsg()});
|
||||
|
||||
v.getDeviceTask().forEach(k -> {
|
||||
GetDeviceTaskDetail deviceTaskDetail = GetDeviceTaskDetail.builder()
|
||||
.devTaskId(String.valueOf(k.getId()))
|
||||
.devId(String.valueOf(k.getDeviceId()))
|
||||
.externId(String.valueOf(k.getExternId()))
|
||||
.status(k.getStatus())
|
||||
.build();
|
||||
taskDetail.getDeviceTask().add(deviceTaskDetail);
|
||||
});
|
||||
|
||||
getTaskDetail.add(taskDetail);
|
||||
}
|
||||
|
||||
// 设置不存在taskId的错误码
|
||||
if (reqTaskIds.stream().anyMatch(v -> taskList.stream().noneMatch(k -> k.getId().equals(v)))) {
|
||||
reqTaskIds.stream()
|
||||
.filter(v -> taskList.stream().noneMatch(k -> k.getId().equals(v)))
|
||||
.forEach(v -> {
|
||||
GetTaskDetail td = GetTaskDetail.builder().build();
|
||||
td.setTaskId(String.valueOf(v));
|
||||
td.setStatus(ErrorCode.ERR_NOSUCHTASK.getCode());
|
||||
td.setMessage(new String[]{ErrorCode.ERR_NOSUCHTASK.getMsg()});
|
||||
getTaskDetail.add(td);
|
||||
});
|
||||
}
|
||||
|
||||
// 对返回的信息按照TaskID排序
|
||||
rspInfo.setItems(getTaskDetail.stream().sorted(Comparator.comparing(GetTaskDetail::getTaskId))
|
||||
rspInfo.getItems().addAll(getTaskDetail.stream().sorted(Comparator.comparingLong((GetTaskDetail v) -> Long.parseLong(v.getTaskId())))
|
||||
.collect(Collectors.toList()));
|
||||
|
||||
return ProtocolRespDTO.result(ErrorCode.ERR_OK, rspInfo);
|
||||
|
|
|
@ -16,7 +16,6 @@ import org.springframework.stereotype.Component;
|
|||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* The type Dispose task manager.
|
||||
|
@ -131,25 +130,20 @@ public class DisposeTaskManagerImpl implements DisposeTaskManager {
|
|||
public MulReturnType<PageInfo<DisposeTask>, List<DisposeTask>> getPagesOfTask(List<Long> taskId,
|
||||
Integer startPage,
|
||||
Integer pageSize) {
|
||||
List<DisposeTask> rspList = new ArrayList<>();
|
||||
List<DisposeTask> taskList = new ArrayList<>();
|
||||
|
||||
// 设置分页信息
|
||||
PageHelper.startPage(startPage, pageSize);
|
||||
|
||||
//获取所有可用处置任务
|
||||
List<DisposeTask> taskList = disposeTaskMapper.selectPageAll().stream().
|
||||
filter(v->taskId.size() == 0 || taskId.contains(v.getId())).collect(Collectors.toList());
|
||||
|
||||
if (taskList == null) {
|
||||
taskList = new ArrayList<>();
|
||||
if(taskId.size() > 0) {
|
||||
taskList.addAll(disposeTaskMapper.selectByIdSet(taskId));
|
||||
} else {
|
||||
taskList.addAll(disposeTaskMapper.selectPageAll());
|
||||
}
|
||||
|
||||
PageInfo<DisposeTask> pageInfo = new PageInfo<>(taskList);
|
||||
|
||||
if(taskList.size() > 0) {
|
||||
List<Long> idArray = taskList.stream().map(DisposeTask::getId).collect(Collectors.toList());
|
||||
rspList.addAll(disposeTaskMapper.selectByIdSet(idArray));
|
||||
}
|
||||
|
||||
return new MulReturnType<>(pageInfo, rspList);
|
||||
return new MulReturnType<>(pageInfo, taskList);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,11 +22,16 @@ import java.util.Map;
|
|||
*/
|
||||
@Slf4j
|
||||
public class RestfulInterface {
|
||||
private static int timeOutValue = 1000;
|
||||
/**
|
||||
* The constant OBJECT_MAPPER.
|
||||
*/
|
||||
private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper();
|
||||
|
||||
public static void initEnv(int timeout) {
|
||||
RestfulInterface.timeOutValue = timeout;
|
||||
}
|
||||
|
||||
/**
|
||||
* Post json string.
|
||||
*
|
||||
|
@ -36,6 +41,7 @@ public class RestfulInterface {
|
|||
* @return the string
|
||||
*/
|
||||
private static String postJson(String url, Map<String, String> header, String body) {
|
||||
HttpRequest.setGlobalTimeout(timeOutValue);
|
||||
return HttpRequest.post(url).header(Header.CONTENT_TYPE, "application/json").addHeaders(header).body(body)
|
||||
.execute().body();
|
||||
}
|
||||
|
@ -48,6 +54,7 @@ public class RestfulInterface {
|
|||
* @return the json
|
||||
*/
|
||||
private static String getJson(String url, Map<String, String> header) {
|
||||
HttpRequest.setGlobalTimeout(timeOutValue);
|
||||
return HttpRequest.get(url).header(Header.CONTENT_TYPE, "application/json").addHeaders(header)
|
||||
.execute().body();
|
||||
}
|
||||
|
|
|
@ -413,6 +413,10 @@ public class DeviceTaskManagerServiceImpl implements DeviceTaskManagerService {
|
|||
}
|
||||
}
|
||||
|
||||
private void yiYangDeviceTaskRun(AbilityInfo ai, DeviceTask deviceTask, DisposeTask disposeTask) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Dispose task manager schedule.
|
||||
*/
|
||||
|
@ -497,6 +501,10 @@ public class DeviceTaskManagerServiceImpl implements DeviceTaskManagerService {
|
|||
virtualDeviceTaskRun(ai, v, task);
|
||||
break;
|
||||
|
||||
case YIYANG_PLATFORM:
|
||||
yiYangDeviceTaskRun(ai, v, task);
|
||||
break;
|
||||
|
||||
default:
|
||||
log.error("Unknown dispose device type: {}", ai.getDev());
|
||||
break;
|
||||
|
|
|
@ -3,6 +3,7 @@ package com.dispose.setup;
|
|||
import com.dispose.common.ErrorCode;
|
||||
import com.dispose.pojo.po.MulReturnType;
|
||||
import com.dispose.pojo.vo.DeviceFirewareInfo;
|
||||
import com.dispose.restful.RestfulInterface;
|
||||
import com.dispose.service.DisposeAbilityRouterService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.CommandLineRunner;
|
||||
|
@ -49,5 +50,7 @@ public class SystemInitial implements CommandLineRunner {
|
|||
public void run(String... args) {
|
||||
// 初始化处置能力设备
|
||||
setupAbilityDevice();
|
||||
|
||||
RestfulInterface.initEnv(1000);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue