Explorar o código

车辆配置端口校验

WXF %!s(int64=3) %!d(string=hai) anos
pai
achega
3cdbff7f47

+ 15 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/ctrl/ConfigCtrl.java

@@ -4,6 +4,7 @@ package com.css.simulation.resource.model.ctrl;
 import api.common.pojo.common.ResponseBodyVO;
 import api.common.pojo.param.model.ConfigPageParam;
 import api.common.pojo.po.model.ConfigPO;
+import api.common.pojo.vo.model.ConfigSensorVO;
 import api.common.pojo.vo.model.ConfigVO;
 import api.common.util.ObjectUtil;
 import com.css.simulation.resource.model.service.ConfigService;
@@ -15,6 +16,9 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import java.util.List;
+import java.util.Map;
+
 @Controller
 @RequestMapping("/config")
 public class ConfigCtrl {
@@ -54,6 +58,17 @@ public class ConfigCtrl {
         if(ObjectUtil.isNull(configVO)){
             return new ResponseBodyVO(false, 500, "参数必传!",null);
         }
+        //端口重复校验
+        Map<String, List<ConfigSensorVO>> configSensors = configVO.getConfigSensors();
+        if(ObjectUtil.isNotNull(configSensors)){
+            List<ConfigSensorVO> configSensorVOS = configSensors.get("ogt");//完美传感器
+            if(ObjectUtil.isNotNull(configSensorVOS)){
+                long count = configSensorVOS.stream().mapToInt(ConfigSensorVO::getSensorPort).distinct().count();
+                if(configSensorVOS.size() != count){
+                    return new ResponseBodyVO(false, 500, "端口重复!",null);
+                }
+            }
+        }
         ResponseBodyVO<ConfigPO> response = new ResponseBodyVO<ConfigPO>(ResponseBodyVO.Response.SUCCESS);
         ConfigPO po = configService.saveConfig(configVO);
         if(ObjectUtil.isNull(po.getId())){

+ 3 - 3
simulation-resource-server/src/main/java/com/css/simulation/resource/model/service/VehicleTempService.java

@@ -17,7 +17,7 @@ public class VehicleTempService {
     @Autowired
     VehicleTempMapper vehicleTempMapper;
 
-    public Object getVehicleTempTree() {
+    public List getVehicleTempTree() {
         List<VehicleTempVO> list = vehicleTempMapper.getVehicleTempTree();
         List<Map> treeList = new ArrayList<>();
         Map<String, List<VehicleTempVO>> typeCollect = list.stream().collect(Collectors.groupingBy(VehicleTempVO::getVehicleType,LinkedHashMap::new, Collectors.toList()));
@@ -25,13 +25,13 @@ public class VehicleTempService {
             Map typeMap = new HashMap();
             typeMap.put("code",typeKey);
             typeMap.put("name",typeValue.get(0).getVehicleName());
-            List<Object> modelList = new LinkedList();
+            List<Map> modelList = new LinkedList();
             Map<String, List<VehicleTempVO>> modelCollect = typeValue.stream().collect(Collectors.groupingBy(VehicleTempVO::getVehicleModel,LinkedHashMap::new, Collectors.toList()));
             modelCollect.forEach((modelKey,modelValue)->{
                 Map modelMap = new HashMap();
                 modelMap.put("code",modelKey);
                 modelMap.put("name",modelKey);
-                List<Object> colourList = new LinkedList();
+                List<Map> colourList = new LinkedList();
                 modelValue.forEach(vo->{
                     Map colourMap = new HashMap();
                     colourMap.put("code",vo.getVehicleColour());