夜得朦胧 1 rok pred
rodič
commit
d644991298

+ 13 - 6
simulation-resource-server/src/main/java/com/css/simulation/resource/server/app/impl/MultiSimulationProjectServiceImpl.java

@@ -515,17 +515,24 @@ public class MultiSimulationProjectServiceImpl implements MultiSimulationProject
         }
         param.setSceneId(sceneId);
         List<MultiSimulationSceneCarVO> multiSimulationSceneCarVOS = sceneCarMapper.selectSceneCarList(param);
+        boolean isLast = false;
         for (MultiSimulationSceneCarVO car : multiSimulationSceneCarVOS) {
             Integer isSimulationCar = car.getIsSimulationCar();
-            if (isSimulationCar == 1 && !StringUtils.equals(car.getId(), param.getSceneCarId())) {
-                sceneCarMapper.updateMultiSimulationSceneCarView(car.getId(), 0);
+            if (isSimulationCar == 1){
+                if (!StringUtils.equals(car.getId(), param.getSceneCarId())){
+                    sceneCarMapper.updateMultiSimulationSceneCarView(car.getId(), 0);
+                } else {
+                    isLast = true;
+                }
             }
         }
-        int i = sceneCarMapper.updateMultiSimulationSceneCarView(param.getSceneCarId(), 1);
-        if (i > 0) {
-            return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
+        if (!isLast){
+            int i = sceneCarMapper.updateMultiSimulationSceneCarView(param.getSceneCarId(), 1);
+            if (i <= 0) {
+                return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
+            }
         }
-        return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
+        return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
     }
 
     @Override

+ 2 - 2
simulation-resource-server/src/main/java/com/css/simulation/resource/server/infra/db/mysql/mapper/MultiSimulationSceneCarMapper.java

@@ -36,8 +36,8 @@ public interface MultiSimulationSceneCarMapper {
     int deleteMultiSimulationSceneCar(MultiSimulationSceneCarParam param);
 //
     @Select("<script>" +
-        "select id,scene_id,car_id,algorithm_id,algorithm_type,path_id,path_start,path_end,car_sort,create_time from multi_simulation_scene_car where deleted = 0 " +
-        "and scene_id = #{sceneId}" +
+        "select id,scene_id,car_id,algorithm_id,algorithm_type,path_id,path_start,path_end,car_sort,is_simulation_car,create_time from multi_simulation_scene_car where deleted = 0 " +
+        "and scene_id = #{sceneId} " +
         "order by car_sort, create_time desc" +
         "</script>")
     List<MultiSimulationSceneCarVO> selectSceneCarList(MultiSimulationSceneCarParam param);