优化查询分析项库,通过节点类型节点名称过滤分析项
This commit is contained in:
@@ -113,9 +113,9 @@ public class SimuluationTaskPoolController implements ISimuluationTaskPoolFeignC
|
||||
|
||||
@GetMapping(value = "/getTaskPoolLoadcases")
|
||||
@ResponseBody
|
||||
SdmResponse getTaskPoolLoadcases(@RequestParam("poolName") String poolName,@RequestParam("version")String version)
|
||||
SdmResponse getTaskPoolLoadcases(@RequestParam("poolName") String poolName,@RequestParam("version")String version,@RequestParam(name = "nodeType",required = false)String nodeType,@RequestParam(name = "nodeName",required = false)String nodeName)
|
||||
{
|
||||
return service.getSimulationPoolTasks(poolName,version);
|
||||
return service.getSimulationPoolTasks(poolName,version,nodeType,nodeName);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/getTaskPoolTaskMap")
|
||||
|
||||
@@ -36,7 +36,7 @@ public interface ISimulationTaskPoolService {
|
||||
|
||||
SdmResponse<List<TaskPoolPerformance>> getTaskPoolPerformanceWithVersion(String poolName, String version);
|
||||
|
||||
SdmResponse getSimulationPoolTasks(String poolName,String version);
|
||||
SdmResponse getSimulationPoolTasks(String poolName,String version,String nodeLevel,String nodeName);
|
||||
|
||||
SdmResponse<Map<String, TaskBaseInfo>> getSimulationTasksByPoolId(long poolId);
|
||||
|
||||
|
||||
@@ -1939,10 +1939,12 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
* @param nodeObject
|
||||
* @return
|
||||
*/
|
||||
private List<TaskPoolItem> getTaskPoolNodeItem(JSONObject nodeObject)
|
||||
private List<TaskPoolItem> getTaskPoolNodeItem(JSONObject nodeObject,String nodeType,String nodeName)
|
||||
{
|
||||
List<TaskPoolItem> tasks = new ArrayList<>();
|
||||
JSONArray children = nodeObject.getJSONArray("children");
|
||||
String currentNodeType = nodeObject.getString("nodeType");
|
||||
String currentNodeName = nodeObject.getString("nodeName");
|
||||
if(children != null)
|
||||
{
|
||||
for(int index=0; index<children.size(); index++)
|
||||
@@ -1951,11 +1953,23 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
String childType = childObj.getString("levelType");
|
||||
if(childType.equals("node"))
|
||||
{
|
||||
List<TaskPoolItem> childNodeTasks = getTaskPoolNodeItem(childObj);
|
||||
List<TaskPoolItem> childNodeTasks = getTaskPoolNodeItem(childObj,nodeType,nodeName);
|
||||
tasks.addAll(childNodeTasks);
|
||||
}
|
||||
else if(childType.equals("task"))
|
||||
{
|
||||
//如果节点类型有过滤限制,节点类型不匹配直接返回
|
||||
if(nodeType != null && !nodeType.isEmpty() && !nodeType.equals(currentNodeType))
|
||||
{
|
||||
return tasks;
|
||||
}
|
||||
//如果节点名称有过滤限制,节点名称不匹配直接返回
|
||||
if(nodeName != null && !nodeName.isEmpty() && !nodeName.equals(currentNodeName))
|
||||
{
|
||||
return tasks;
|
||||
}
|
||||
|
||||
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
try {
|
||||
TaskPoolItem poolItem = objectMapper.readValue(childObj.toJSONString(),TaskPoolItem.class);
|
||||
@@ -1974,7 +1988,7 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
@Override
|
||||
public SdmResponse getSimulationPoolTasksByUuids(String poolName,String version,List<String> uuids)
|
||||
{
|
||||
SdmResponse taskResponse = getSimulationPoolTasks(poolName,version);
|
||||
SdmResponse taskResponse = getSimulationPoolTasks(poolName,version,"","");
|
||||
if(!taskResponse.isSuccess())
|
||||
return taskResponse;
|
||||
SdmResponse response = SdmResponse.success();
|
||||
@@ -2007,7 +2021,7 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
}
|
||||
else
|
||||
{
|
||||
SdmResponse taskResponse = getSimulationPoolTasks(poolVersion.poolName,poolVersion.poolVersion);
|
||||
SdmResponse taskResponse = getSimulationPoolTasks(poolVersion.poolName,poolVersion.poolVersion,"","");
|
||||
if(taskResponse.isSuccess())
|
||||
{
|
||||
List<TaskPoolItem> tasks = (List<TaskPoolItem>)taskResponse.getData();
|
||||
@@ -2029,7 +2043,7 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
}
|
||||
|
||||
@Override
|
||||
public SdmResponse getSimulationPoolTasks(String poolName,String version)
|
||||
public SdmResponse getSimulationPoolTasks(String poolName,String version,String nodeType,String nodeName)
|
||||
{
|
||||
SdmResponse response = SdmResponse.success();
|
||||
JSONObject poolJson = null;
|
||||
@@ -2067,7 +2081,7 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
for(int index=0; index<nodeArray.size(); index++)
|
||||
{
|
||||
JSONObject nodeObj = nodeArray.getJSONObject(index);
|
||||
List<TaskPoolItem> nodeTasks = getTaskPoolNodeItem(nodeObj);
|
||||
List<TaskPoolItem> nodeTasks = getTaskPoolNodeItem(nodeObj,nodeType,nodeName);
|
||||
tasks.addAll(nodeTasks);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user