瀏覽代碼

评分查询指标

root 2 年之前
父節點
當前提交
e14878bb83

+ 12 - 8
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/manager/TaskManager.java

@@ -213,14 +213,18 @@ public class TaskManager {
         indexMapper.deleteFirstByProjectId(projectId);
         indexMapper.deleteLastByProjectId(projectId);
         //1 查询场景包对应指标
-//        String allIndexTemplateListJson = stringRedisTemplate.opsForValue().get(redisPrefix.getProjectRunningKey() + ":package:" + packageId + ":all");
-        List<IndexTemplatePO> allIndexTemplateList = JsonUtil.jsonToList(
-                FileUtil.read(linuxTempPath + "project/" + projectId + "/all-index-list.json"), IndexTemplatePO.class);
-        String leafIndexTemplateListJson = stringRedisTemplate.opsForValue()
-                .get(redisPrefix.getProjectRunningKey() + ":package:" + packageId + ":leaf");
-//        List<IndexTemplatePO> leafIndexTemplateList = JsonUtil.jsonToList(leafIndexTemplateListJson, IndexTemplatePO.class);
-        List<IndexTemplatePO> leafIndexTemplateList = JsonUtil.jsonToList(
-                FileUtil.read(linuxTempPath + "project/" + projectId + "/leaf-index-list.json"), IndexTemplatePO.class);
+        String allIndexKey = "project:" + projectId + ":package:" + packageId + ":all";
+        String leafIndexKey = "project:" + projectId + ":package:" + packageId + ":leaf";
+        String allIndexTemplateListJson = stringRedisTemplate.opsForValue().get(allIndexKey);
+        String leafIndexTemplateListJson = stringRedisTemplate.opsForValue().get(leafIndexKey);
+        List<IndexTemplatePO> allIndexTemplateList = JsonUtil.jsonToList(allIndexTemplateListJson, IndexTemplatePO.class);
+        List<IndexTemplatePO> leafIndexTemplateList = JsonUtil.jsonToList(leafIndexTemplateListJson, IndexTemplatePO.class);
+//        List<IndexTemplatePO> allIndexTemplateList = JsonUtil.jsonToList(
+//                FileUtil.read(linuxTempPath + "project/" + projectId + "/all-index-list.json"),
+//                IndexTemplatePO.class);
+//        List<IndexTemplatePO> leafIndexTemplateList = JsonUtil.jsonToList(
+//                FileUtil.read(linuxTempPath + "project/" + projectId + "/leaf-index-list.json"),
+//                IndexTemplatePO.class);
         log.info("TaskManager--score 共有 " + leafIndexTemplateList.size() + "个叶子节点:" + leafIndexTemplateListJson);
         int maxLevel = 1; // 用于计算指标得分
         List<LeafIndexPO> leafIndexList = new ArrayList<>();

+ 8 - 3
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/service/ProjectService.java

@@ -128,14 +128,18 @@ public class ProjectService {
     @SneakyThrows
     @Transactional
     public List<ScenePO> getSceneList(String projectId, String packageId, String projectPath) {
+
+        String allIndexPrefix = "project:" + projectId + ":package:" + packageId + ":all";
+        String leafIndexPrefix = "project:" + projectId + ":package:" + packageId + ":leaf";
         //1 查询该场景包的所有指标列表,包删了无所谓,但要过滤删掉的指标。并保存成 json 文件。
         List<IndexTemplatePO> allIndexList = indexTemplateMapper.selectByPackageIdIncludeDeleted(packageId);
-        FileUtil.writeStringToLocalFile(JsonUtil.listToJson(allIndexList), projectPath + "all-index-list.json");
-
+//        FileUtil.writeStringToLocalFile(JsonUtil.listToJson(allIndexList), projectPath + "all-index-list.json");
+        stringRedisTemplate.opsForValue().set(allIndexPrefix, JsonUtil.listToJson(allIndexList));
         //2 查询场景包叶子指标
         List<IndexTemplatePO> leafIndexList = allIndexList.stream().filter(index -> StringUtil.isNotEmpty(index.getRuleId())).collect(Collectors.toList());
         log.info("ProjectService--handlePackage 项目 " + projectId + " 的叶子指标为:" + leafIndexList);
-        FileUtil.writeStringToLocalFile(JsonUtil.listToJson(allIndexList), projectPath + "leaf-index-list.json");
+//        FileUtil.writeStringToLocalFile(JsonUtil.listToJson(allIndexList), projectPath + "leaf-index-list.json");
+        stringRedisTemplate.opsForValue().set(leafIndexPrefix, JsonUtil.listToJson(leafIndexList));
         List<ScenePO> sceneList = new ArrayList<>();
         leafIndexList.forEach(leafIndex -> {
             String naturalIds = leafIndex.getSceneNaturalIds();
@@ -572,6 +576,7 @@ public class ProjectService {
 
         //3 其他 redis key
         PrefixTO redisPrefix = projectUtil.getRedisPrefixByProjectIdAndProjectType(projectId, projectType);
+        RedisUtil.deleteByPrefix(stringRedisTemplate, "project:" + projectId + ":package:");
         RedisUtil.deleteByPrefix(stringRedisTemplate, redisPrefix.getProjectRunningKey());
         RedisUtil.deleteByPrefix(stringRedisTemplate, redisPrefix.getProjectWaitingKey());