LingxinMeng hace 2 años
padre
commit
1d87a8903d

+ 1 - 1
simulation-resource-server/src/main/java/com/css/simulation/resource/home/controller/HomePageController.java

@@ -51,7 +51,7 @@ public class HomePageController {
         map.put("SySceneNum", sceneNaturalService.querySceneNumBySy() + "");//私有场景数量
         map.put("GySceneNum", sceneNaturalService.querySceneNumByGy() + "");//共有场景数量
         map.put("ConfigTotal", configService.getConfigTotal() + "");             //车辆配置数量
-        final int licenseNum = clusterService.getLicenseNum();
+        int licenseNum = clusterService.getLicenseNum();
         if (licenseNum == -1) {
             map.put("maxConcurrency", "无限");          //最大并发数量
         }

+ 42 - 38
simulation-resource-server/src/main/java/com/css/simulation/resource/system/service/ClusterService.java

@@ -119,50 +119,54 @@ public class ClusterService {
 
     @SneakyThrows
     public int getLicenseNum() {
-        //1 获取当前用户信息
-        String roleCode = AuthUtil.getCurrentUserRoleCode();
-        String userType = AuthUtil.getCurrentUseType();
-        String userId = AuthUtil.getCurrentUserId();
-        log.info("当前用户信息为:roleCode - " + roleCode + ",userType - " + userType + ",userId - " + userId);
+        try {
+            //1 获取当前用户信息
+            String roleCode = AuthUtil.getCurrentUserRoleCode();
+            String userType = AuthUtil.getCurrentUseType();
+            String userId = AuthUtil.getCurrentUserId();
+            log.info("当前用户信息为:roleCode - " + roleCode + ",userType - " + userType + ",userId - " + userId);
+
+            //2 获取当前用户使用的集群账户 id
+            if (DictConstants.ROLE_CODE_ADMIN.equals(roleCode) || DictConstants.ROLE_CODE_SYSADMIN.equals(roleCode)) { // 管理
+                return -1;
+            } else if (DictConstants.ROLE_CODE_UESR.equals(roleCode)) { //普通
+                ClusterParam clusterParam = new ClusterParam();
+                clusterParam.setCreateUserId(userId);
+                Integer licenseTotal = clusterMapper.getSimulationLicenseNum(userId);   // 拥有节点
+                if (DictConstants.USER_TYPE_EXCLUSIVE.equals(userType)) { // 普通独占
+                    if (licenseTotal == null || licenseTotal == 0) {
+                        return 0;
+                    } else {
+                        Integer licenseAssigned = clusterMapper.getAssignedSimLicenseNum(clusterParam);    // 已分配节点
+                        return licenseTotal - licenseAssigned;
+                    }
+                } else if (DictConstants.USER_TYPE_PUBLIC.equals(userType)) {
+                    return licenseTotal;
+                } else {
+                    throw new RuntimeException("普通用户占用类型获取失败。");
+                }
 
-        //2 获取当前用户使用的集群账户 id
-        if (DictConstants.ROLE_CODE_ADMIN.equals(roleCode) || DictConstants.ROLE_CODE_SYSADMIN.equals(roleCode)) { // 管理
-            return -1;
-        } else if (DictConstants.ROLE_CODE_UESR.equals(roleCode)) { //普通
-            ClusterParam clusterParam = new ClusterParam();
-            clusterParam.setCreateUserId(userId);
-            Integer licenseTotal = clusterMapper.getSimulationLicenseNum(userId);   // 拥有节点
-            if (DictConstants.USER_TYPE_EXCLUSIVE.equals(userType)) { // 普通独占
-                if (licenseTotal == null || licenseTotal == 0) {
-                    return 0;
+            } else if (DictConstants.ROLE_CODE_SUBUESR.equals(roleCode)) {
+                int licenseTotal;
+                if (DictConstants.USER_TYPE_EXCLUSIVE.equals(userType)) {
+                    ClusterParam clusterParam = new ClusterParam();
+                    clusterParam.setCreateUserId(userId);
+                    licenseTotal = clusterMapper.getSimulationLicenseNum(userId);   // 拥有节点
+                } else if (DictConstants.USER_TYPE_PUBLIC.equals(userType)) {
+                    //查询父账户
+                    userId = AuthUtil.getCreateUserId();
+                    ClusterParam clusterParam = new ClusterParam();
+                    clusterParam.setCreateUserId(userId);
+                    licenseTotal = clusterMapper.getSimulationLicenseNum(userId);   // 拥有节点
                 } else {
-                    Integer licenseAssigned = clusterMapper.getAssignedSimLicenseNum(clusterParam);    // 已分配节点
-                    return licenseTotal - licenseAssigned;
+                    throw new RuntimeException("普通用户子账户占用类型获取失败。");
                 }
-            } else if (DictConstants.USER_TYPE_PUBLIC.equals(userType)) {
                 return licenseTotal;
             } else {
-                throw new RuntimeException("普通用户占用类型获取失败。");
-            }
-
-        } else if (DictConstants.ROLE_CODE_SUBUESR.equals(roleCode)) {
-            int licenseTotal;
-            if (DictConstants.USER_TYPE_EXCLUSIVE.equals(userType)) {
-                ClusterParam clusterParam = new ClusterParam();
-                clusterParam.setCreateUserId(userId);
-                licenseTotal = clusterMapper.getSimulationLicenseNum(userId);   // 拥有节点
-            } else if (DictConstants.USER_TYPE_PUBLIC.equals(userType)) {
-                //查询父账户
-                userId = AuthUtil.getCreateUserId();
-                ClusterParam clusterParam = new ClusterParam();
-                clusterParam.setCreateUserId(userId);
-                licenseTotal = clusterMapper.getSimulationLicenseNum(userId);   // 拥有节点
-            } else {
-                throw new RuntimeException("普通用户子账户占用类型获取失败。");
+                throw new RuntimeException("用户类型获取失败。");
             }
-            return licenseTotal;
-        } else {
-            throw new RuntimeException("用户类型获取失败。");
+        } catch (Exception e) {
+            throw new RuntimeException("此用户暂未分配集群");
         }
     }
 

+ 14 - 19
simulation-resource-server/src/main/java/com/css/simulation/resource/system/service/SceneImportService.java

@@ -108,53 +108,48 @@ public class SceneImportService {
 
     @Transactional
     public void deleteTask(String taskId) {
-        //1 根据任务 id 查询场景类型
-        // String sceneType = sceneImportMapper.selectSceneTypeByTaskId(taskId);
-        //根据任务id查询类型和场景ids
+        // 查询任务相关的场景类型和场景列表
         SceneImportPO sceneImportPO = sceneImportMapper.querySceneImportByTaskId(taskId);
-        sceneImportPO.setId(taskId);
         sceneImportPO.setModifyTime(TimeUtil.getNowForMysql());
         sceneImportPO.setModifyUserId(AuthUtil.getCreateUserId());
-        //获取场景类型
-        String sceneType = sceneImportPO.getSceneType();
-        //获取场景id的list集合
-        String sceneNames = sceneImportPO.getSceneNames();
-        if (ObjectUtil.isNull(sceneNames)) {
-            sceneImportMapper.deleteImportTask(sceneImportPO);
-        } else {
-            String[] listIds = sceneNames.split(",");
+        // 获取各个参数
+        String sceneType = sceneImportPO.getSceneType();    // 场景类型
+        String sceneNames = sceneImportPO.getSceneNames(); // 场景名称
+        sceneImportMapper.deleteImportTask(sceneImportPO);
+        if (StringUtil.isNotEmpty(sceneNames)) {
+            String[] sceneNameArray = sceneNames.split(",");
             sceneImportMapper.deleteImportTask(sceneImportPO);
             //2 根据任务id删除相关联的所有同名任务
             if (DictConstants.SCENE_NATURAL.equals(sceneType)) {
                 sceneImportMapper.deleteNaturalByTaskId(sceneImportPO);
                 SceneNaturalPO sceneNaturalPO = new SceneNaturalPO();
-                for (String id : listIds) {
-                    sceneNaturalPO.setNaturalName(id);
+                for (String sceneName : sceneNameArray) {
+                    sceneNaturalPO.setNaturalName(sceneName);
                     sceneNaturalService.deleteSceneNatural(sceneNaturalPO);
                 }
             } else if (DictConstants.SCENE_STANDARD.equals(sceneType)) {
                 sceneImportMapper.deleteStandardsByTaskId(sceneImportPO);
                 StandardsRegulationsPO standardsRegulationsPO = new StandardsRegulationsPO();
-                for (String id : listIds) {
-                    standardsRegulationsPO.setSceneName(id);
+                for (String sceneName : sceneNameArray) {
+                    standardsRegulationsPO.setSceneName(sceneName);
                     sceneStandardsService.deleteStandardsRegulations(standardsRegulationsPO);
                 }
             } else if (DictConstants.SCENE_ACCIDENT.equals(sceneType)) {
                 sceneImportMapper.deleteAccidentByTaskId(sceneImportPO);
                 SceneAccidentPO sceneAccidentPO = new SceneAccidentPO();
-                for (String id : listIds) {
+                for (String id : sceneNameArray) {
                     sceneAccidentPO.setSceneName(id);
                     sceneAccidentService.deleteSceneAccidentList(sceneAccidentPO);
                 }
             } else if (DictConstants.SCENE_GENERAL.equals(sceneType)) {
 //            sceneImportMapper.deleteNaturalByTaskId(sceneImportPO);
                 SceneGeneralTemplatePO po = new SceneGeneralTemplatePO();
-                for (String id : listIds) {
+                for (String id : sceneNameArray) {
                     po.setSceneId(id);
                     sceneGeneralTemplateService.deleteSceneGeneralTemplateById(po);
                 }
             } else {
-                throw new RuntimeException("场景类型错误:" + sceneType);
+                throw new RuntimeException("未知场景类型:" + sceneType);
             }
         }
     }

+ 5 - 5
simulation-resource-server/src/main/resources/mapper/system/SceneImportMapper.xml

@@ -11,11 +11,11 @@
         and id <> #{id,jdbcType=VARCHAR}
     </select>
     <select id="querySceneImportByTaskId" parameterType="java.lang.String" resultType="api.common.pojo.po.system.SceneImportPO">
-        select
-      scene_type,scene_names
+        select id,
+            scene_type,
+               scene_names
         from scene_import_task
-        where is_deleted = '0'
-        and id =#{id}
+        where id = #{id}
     </select>
 
     <insert id="insert" parameterType="api.common.pojo.po.system.SceneImportPO">
@@ -113,4 +113,4 @@
           modify_user_id = #{modifyUserId,jdbcType=VARCHAR}
         where is_deleted = '0' and id = #{id,jdbcType=VARCHAR}
     </update>
-</mapper>
+</mapper>