소스 검색

通信质量第一版

zlSun 3 달 전
부모
커밋
7ea0385334
25개의 변경된 파일380개의 추가작업 그리고 52개의 파일을 삭제
  1. 39 7
      src/main/java/com/dc/datachange/communication/controller/CommunicationController.java
  2. 0 19
      src/main/java/com/dc/datachange/communication/entity/PlatformVo.java
  3. 3 0
      src/main/java/com/dc/datachange/core/common/MsgConstants.java
  4. 1 1
      src/main/java/com/dc/datachange/core/connection/DDSStatusManger.java
  5. 44 0
      src/main/java/com/dc/datachange/core/entity/message/receivedMessage/GroupParamsCtrl.java
  6. 21 0
      src/main/java/com/dc/datachange/core/entity/message/receivedMessage/GroupParamsReq.java
  7. 31 0
      src/main/java/com/dc/datachange/core/entity/message/sendMessage/GroupParamsCtrl.java
  8. 56 0
      src/main/java/com/dc/datachange/core/entity/message/sendMessage/GroupParamsInitial.java
  9. 5 12
      src/main/java/com/dc/datachange/core/entity/message/sendMessage/NetGroupMsg.java
  10. 1 0
      src/main/java/com/dc/datachange/core/entity/platformInfo/InterferPlatform.java
  11. 4 0
      src/main/java/com/dc/datachange/core/entity/platformInfo/Platform.java
  12. 47 0
      src/main/java/com/dc/datachange/core/entity/platformInfo/PlatformParams.java
  13. 1 0
      src/main/java/com/dc/datachange/core/entity/platformInfo/RadarPlatform.java
  14. 3 3
      src/main/java/com/dc/datachange/core/exchange/SendExecutor.java
  15. 1 1
      src/main/java/com/dc/datachange/core/exchange/strategy/CompIntStrategy.java
  16. 1 1
      src/main/java/com/dc/datachange/core/exchange/strategy/DaoTiaoStrategy.java
  17. 1 1
      src/main/java/com/dc/datachange/core/exchange/strategy/EleInterStrategy.java
  18. 2 3
      src/main/java/com/dc/datachange/core/exchange/strategy/GeneralDataStrategy.java
  19. 63 0
      src/main/java/com/dc/datachange/core/exchange/strategy/GroupParamsCtrlStrategy.java
  20. 39 0
      src/main/java/com/dc/datachange/core/exchange/strategy/GroupParamsReqStrategy.java
  21. 1 1
      src/main/java/com/dc/datachange/core/exchange/strategy/InitialMsgStrategy.java
  22. 1 1
      src/main/java/com/dc/datachange/core/exchange/strategy/NetGroupReqStrategy.java
  23. 1 1
      src/main/java/com/dc/datachange/core/exchange/strategy/RadarPulseStrategy.java
  24. 6 1
      src/main/java/com/dc/datachange/utils/MessageUtils.java
  25. 8 0
      src/main/resources/application.yml

+ 39 - 7
src/main/java/com/dc/datachange/communication/controller/CommunicationController.java

@@ -1,22 +1,23 @@
 package com.dc.datachange.communication.controller;
 
 import com.dc.datachange.communication.entity.NetworkGroupVo;
-import com.dc.datachange.communication.entity.PlatformVo;
 import com.dc.datachange.core.entity.graph.EdgeVo;
 import com.dc.datachange.core.entity.graph.NodeVo;
 import com.dc.datachange.core.entity.networkGroup.NetworkGroup;
+import com.dc.datachange.core.entity.platformInfo.InterferPlatform;
 import com.dc.datachange.core.entity.platformInfo.Platform;
+import com.dc.datachange.core.entity.platformInfo.PlatformParams;
+import com.dc.datachange.core.entity.platformInfo.RadarPlatform;
 import com.dc.datachange.core.exchange.DataManager;
+import com.dc.datachange.core.exchange.SendExecutor;
 import com.dc.datachange.utils.R;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.stream.Collectors;
 
@@ -28,6 +29,8 @@ import static com.dc.datachange.utils.MessageUtils.getEdgesFromPlatform;
 public class CommunicationController {
     @Autowired
     private DataManager dataManager;
+    @Autowired
+    private SendExecutor sendExecutor;
 
     @GetMapping("/getNetworkGroups")
     public R getNetworkGroups(){
@@ -53,11 +56,40 @@ public class CommunicationController {
     @GetMapping("/getSendMessage")
     public R getSendMessage(@RequestParam Integer id){
         NetworkGroup networkGroup = dataManager.getData(NetworkGroup.class,id);
-        return R.ok().put("data",networkGroup.getHistoryMsg());
+        return R.ok().put("data",networkGroup==null?null:networkGroup.getHistoryMsg());
     }
     @GetMapping("/getMembers")
     public R getMembers(@RequestParam Integer id){
         NetworkGroup networkGroup = dataManager.getData(NetworkGroup.class,id);
-        return R.ok().put("data",networkGroup.getPlatformSet().stream().map(PlatformVo::new).collect(Collectors.toList()));
+        return R.ok().put("data",networkGroup==null?null:networkGroup.getPlatformSet().stream().map(Platform::getParams).collect(Collectors.toList()));
+    }
+
+    @PostMapping("/updateParams")
+    public R updateParams(@RequestBody PlatformParams platformParams){
+        Integer id =platformParams.getId();
+        Map<Integer, InterferPlatform> interferPlatformMap = dataManager.getMap(InterferPlatform.class);
+        Map<Integer, RadarPlatform> radarPlatformMap = dataManager.getMap(RadarPlatform.class);
+        if(interferPlatformMap.containsKey(id)){
+            interferPlatformMap.get(id).setParams(platformParams);
+            sendExecutor.sendDDS(platformParams.toMessage());
+        }else if(radarPlatformMap.containsKey(id)){
+            radarPlatformMap.get(id).setParams(platformParams);
+            sendExecutor.sendDDS(platformParams.toMessage());
+        }else {
+            return R.error("平台Id不存在");
+        }
+        return R.ok();
+    }
+    @GetMapping("/getParams")
+    public R listParams(@RequestParam Integer id){
+        Map<Integer, InterferPlatform> interferPlatformMap = dataManager.getMap(InterferPlatform.class);
+        Map<Integer, RadarPlatform> radarPlatformMap = dataManager.getMap(RadarPlatform.class);
+        if(interferPlatformMap.containsKey(id)){
+            return R.ok().put("data",interferPlatformMap.get(id).getParams());
+        }else if(radarPlatformMap.containsKey(id)){
+            return R.ok().put("data",radarPlatformMap.get(id).getParams());
+        }else {
+            return R.error("平台Id不存在");
+        }
     }
 }

+ 0 - 19
src/main/java/com/dc/datachange/communication/entity/PlatformVo.java

@@ -1,19 +0,0 @@
-package com.dc.datachange.communication.entity;
-
-import com.dc.datachange.core.entity.platformInfo.Platform;
-import lombok.Data;
-
-@Data
-public class PlatformVo {
-    private Integer id;
-    private String isOnline;
-    private String status;
-    private String linkModel;
-
-    public PlatformVo(Platform platform){
-        this.id =platform.getId();
-        this.isOnline="是";
-        this.status="非静默";
-        this.linkModel="CAN";
-    }
-}

+ 3 - 0
src/main/java/com/dc/datachange/core/common/MsgConstants.java

@@ -18,6 +18,9 @@ public class MsgConstants {
     public static final String ELECTRIC_INTERFERE="6";
     public static final String COMPREHEN_INTELL="7";
     public static final String HEART_BEAT="8";
+    public static final String GROUP_PARAMS_CTRL= "9";
+    public static final String GROUP_PARAMS_INI= "10";
+    public static final String GROUP_PARAMS_REQ = "101";
     public static final HashMap<String,String > MSG_MAP = new HashMap<>();
 
     static {

+ 1 - 1
src/main/java/com/dc/datachange/core/connection/DDSStatusManger.java

@@ -61,7 +61,7 @@ public class DDSStatusManger {
 //        running();
     }
 
-    public boolean stateChecker(ReceivedMessage message){
+    public boolean statusChecker(ReceivedMessage message){
         if (InitialMessage.class.equals(message.getClass())) {
             return isInitialed();
         } else if (message.isRunningMsg()) {

+ 44 - 0
src/main/java/com/dc/datachange/core/entity/message/receivedMessage/GroupParamsCtrl.java

@@ -0,0 +1,44 @@
+package com.dc.datachange.core.entity.message.receivedMessage;
+
+import Messenger.Message;
+import com.dc.datachange.core.common.MsgConstants;
+import com.dc.datachange.core.common.PlatConstants;
+import com.dc.datachange.core.entity.message.ReceivedMessage;
+import com.dc.datachange.core.entity.platformInfo.PlatformParams;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+@Data
+public class GroupParamsCtrl extends ReceivedMessage implements RunningMessage{
+    private static final String msgType= MsgConstants.GROUP_PARAMS_CTRL;
+
+    private PlatformParams params;
+
+    public GroupParamsCtrl(Message message){
+        this.setDDSMessage(message);
+        try {
+            String[] value=message.text.split(" ");
+            params=new PlatformParams(Integer.valueOf(value[0]));
+            params.setIsOnline(value[1]);
+            params.setStatus(value[2]);
+            params.setLinkModel(value[3]);
+            super.from = message.from;
+
+            if((from.equals(PlatConstants.INTERFER_TASKSYS)
+                    || from.equals(PlatConstants.RADAR_TASKSYS))
+                    && value.length==4){
+                validate=true;
+            }
+        }catch (Exception e){
+            log.error(e.getMessage());
+            e.printStackTrace();
+        }
+    }
+
+
+    @Override
+    public String getMsgType() {
+        return msgType;
+    }
+}

+ 21 - 0
src/main/java/com/dc/datachange/core/entity/message/receivedMessage/GroupParamsReq.java

@@ -0,0 +1,21 @@
+package com.dc.datachange.core.entity.message.receivedMessage;
+
+import com.dc.datachange.core.common.MsgConstants;
+import com.dc.datachange.core.entity.message.ReceivedMessage;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+@Data
+@Slf4j
+@AllArgsConstructor
+@Component
+public class GroupParamsReq extends ReceivedMessage implements RunningMessage {
+    private static final String msgType= MsgConstants.GROUP_PARAMS_REQ;
+
+    @Override
+    public String getMsgType() {
+        return msgType;
+    }
+}

+ 31 - 0
src/main/java/com/dc/datachange/core/entity/message/sendMessage/GroupParamsCtrl.java

@@ -0,0 +1,31 @@
+package com.dc.datachange.core.entity.message.sendMessage;
+
+import Messenger.Message;
+import com.dc.datachange.core.common.MsgConstants;
+import com.dc.datachange.core.common.PlatConstants;
+import com.dc.datachange.core.entity.message.SendMessage;
+import com.dc.datachange.core.entity.platformInfo.PlatformParams;
+
+public class GroupParamsCtrl extends SendMessage implements SelfMsg{
+    private static final String subject = MsgConstants.GROUP_PARAMS_CTRL;
+    private static final String from = PlatConstants.EXCHANGE_PLATFORM;
+    private final PlatformParams params;
+
+    public GroupParamsCtrl(PlatformParams params){
+        this.params=params;
+    }
+
+    @Override
+    public String getMsgType() {
+        return subject;
+    }
+
+    @Override
+    public Message toMessage() {
+        Message message=new Message();
+        message.from=from;
+        message.subject=subject;
+        message.text=params.toString();
+        return message;
+    }
+}

+ 56 - 0
src/main/java/com/dc/datachange/core/entity/message/sendMessage/GroupParamsInitial.java

@@ -0,0 +1,56 @@
+package com.dc.datachange.core.entity.message.sendMessage;
+
+import Messenger.Message;
+import com.dc.datachange.core.common.MsgConstants;
+import com.dc.datachange.core.common.PlatConstants;
+import com.dc.datachange.core.entity.message.ReceivedMessage;
+import com.dc.datachange.core.entity.message.SendMessage;
+import com.dc.datachange.core.entity.platformInfo.InterferPlatform;
+import com.dc.datachange.core.entity.platformInfo.RadarPlatform;
+import com.dc.datachange.core.exchange.DataManager;
+import com.dc.datachange.utils.MessageUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+@Component
+public class GroupParamsInitial extends SendMessage implements ReactiveMsg{
+    private static final String from = PlatConstants.EXCHANGE_PLATFORM;
+    private static final String subject = MsgConstants.GROUP_PARAMS_INI;
+    @Autowired
+    private DataManager dataManager;
+    //私有化构造方法防止其被手动创建
+    private GroupParamsInitial(){}
+
+    @Override
+    public String getMsgType() {
+        return subject;
+    }
+
+    @Override
+    public Message toMessage(ReceivedMessage receivedMessage) {
+        Message message=new Message();
+        message.from=from;
+        message.subject=subject;
+        StringBuilder stringBuilder=new StringBuilder();
+        List<InterferPlatform> interferPlatforms = dataManager.getAllData(InterferPlatform.class);
+        List<RadarPlatform> radarPlatforms = dataManager.getAllData(RadarPlatform.class);
+        //第一行
+        stringBuilder.append(interferPlatforms.size()).append(" ")
+                .append(radarPlatforms.size()).append(" ");
+        for(InterferPlatform interferPlatform: interferPlatforms){
+            stringBuilder.append("\n").append(MessageUtils.GetLineFromPlatFrom(interferPlatform));
+        }
+        for(RadarPlatform radarPlatform: radarPlatforms){
+            stringBuilder.append("\n").append(MessageUtils.GetLineFromPlatFrom(radarPlatform));
+        }
+        message.text=stringBuilder.toString();
+        return message;
+    }
+
+    @Override
+    public String getSourceMsgType() {
+        return MsgConstants.GROUP_PARAMS_REQ;
+    }
+}

+ 5 - 12
src/main/java/com/dc/datachange/core/entity/message/sendMessage/NetGroupMsg.java

@@ -11,7 +11,6 @@ import com.dc.datachange.utils.MessageUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.PostConstruct;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -22,17 +21,10 @@ public class NetGroupMsg extends SendMessage implements ReactiveMsg, SelfMsg {
     private static Integer version=1;
     @Autowired
     private DataManager dataManager;
-    private static DataManager dataManagerStatic;
-
 
     //私有化构造方法防止其被手动创建
     private NetGroupMsg(){}
 
-    @PostConstruct
-    public void init(){
-        dataManagerStatic=dataManager;
-    }
-
     public String getMsgType() {
         return subject;
     }
@@ -53,7 +45,7 @@ public class NetGroupMsg extends SendMessage implements ReactiveMsg, SelfMsg {
         message.from=from;
         message.subject=subject;
         StringBuilder stringBuilder=new StringBuilder();
-        List<NetworkGroup> networkGroups = dataManagerStatic.getAllData(NetworkGroup.class);
+        List<NetworkGroup> networkGroups = dataManager.getAllData(NetworkGroup.class);
         List<NetworkGroup> interferGroups=networkGroups.stream().filter(NetworkGroup::isInterfer).collect(Collectors.toList());
         List<NetworkGroup> radarGroups=networkGroups.stream().filter(NetworkGroup::isRadar).collect(Collectors.toList());
         //第一行
@@ -61,11 +53,12 @@ public class NetGroupMsg extends SendMessage implements ReactiveMsg, SelfMsg {
                 .append(radarGroups.size()).append(" ")
                 .append(version++);
         for(NetworkGroup interferGroup: interferGroups){
-            stringBuilder.append("\n").append(MessageUtils.getLineStr(interferGroup));
+            stringBuilder.append("\n").append(MessageUtils.getLineFromNetworkGroup(interferGroup));
         }
         for(NetworkGroup radarGroup: radarGroups){
-            stringBuilder.append("\n").append(MessageUtils.getLineStr(radarGroup));
+            stringBuilder.append("\n").append(MessageUtils.getLineFromNetworkGroup(radarGroup));
         }
         message.text=stringBuilder.toString();
-        return message;    }
+        return message;
+    }
 }

+ 1 - 0
src/main/java/com/dc/datachange/core/entity/platformInfo/InterferPlatform.java

@@ -58,6 +58,7 @@ public class InterferPlatform extends Platform {
             this.longitude = value[5];
             this.height = value[6];
             this.groupId=null;
+            this.params=new PlatformParams(id);
         }catch (Exception e){
             log.error(e.getMessage());
             e.printStackTrace();

+ 4 - 0
src/main/java/com/dc/datachange/core/entity/platformInfo/Platform.java

@@ -8,6 +8,10 @@ public abstract class Platform{
      * 组别信息
      */
     protected Integer groupId;
+    /**
+     * 平台参数
+     */
+    protected PlatformParams params;
     public abstract Integer getId();
     public abstract boolean isGrouped();
     public abstract void grouped(Integer groupId);

+ 47 - 0
src/main/java/com/dc/datachange/core/entity/platformInfo/PlatformParams.java

@@ -0,0 +1,47 @@
+package com.dc.datachange.core.entity.platformInfo;
+
+import com.dc.datachange.core.entity.message.sendMessage.GroupParamsCtrl;
+import com.dc.datachange.core.entity.message.sendMessage.SelfMsg;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PlatformParams {
+    /**
+     * 平台Id
+     */
+    private Integer id;
+    /**
+     * 是否在网
+     */
+    private String isOnline;
+    /**
+     * 静默状态
+     */
+    private String status;
+    /**
+     * 传输模式
+     */
+    private String linkModel;
+
+    public PlatformParams(Integer id){
+        this.id=id;
+        this.isOnline="开";
+        this.status="非静默";
+        this.linkModel="实时性";
+    }
+    @Override
+    public String toString(){
+        return id + " " +
+                isOnline + " " +
+                status + " " +
+                linkModel;
+    }
+
+    public SelfMsg toMessage() {
+        return new GroupParamsCtrl(this);
+    }
+}

+ 1 - 0
src/main/java/com/dc/datachange/core/entity/platformInfo/RadarPlatform.java

@@ -57,6 +57,7 @@ public class RadarPlatform extends Platform {
             this.longitude = value[5];
             this.height = value[6];
             this.groupId = null;
+            this.params=new PlatformParams(id);
         }catch (Exception e){
             log.error(e.getMessage());
             e.printStackTrace();

+ 3 - 3
src/main/java/com/dc/datachange/core/exchange/SendExecutor.java

@@ -35,12 +35,12 @@ public class SendExecutor {
     }
 
     public void sendHeartBeat(){
-        ddsPublisher.sendMessage(heartBeatMsg.toMessage());
+        sendDDS(heartBeatMsg);
     }
     public void sendInitialReq(){
-        ddsPublisher.sendMessage(initialRequest.toMessage());
+        sendDDS(initialRequest);
     }
     public void sendNetGroupMsg(){
-        ddsPublisher.sendMessage(netGroupMsg.toMessage());
+        sendDDS(netGroupMsg);
     }
 }

+ 1 - 1
src/main/java/com/dc/datachange/core/exchange/strategy/CompIntStrategy.java

@@ -7,7 +7,7 @@ import com.dc.datachange.core.entity.message.receivedMessage.CompIntelMsg;
 import org.springframework.stereotype.Component;
 
 @Component
-public class CompIntStrategy extends RunningMsgStrategy {
+public class CompIntStrategy extends GeneralDataStrategy {
 
     @Override
     public ReceivedMessage generate(Message message) {

+ 1 - 1
src/main/java/com/dc/datachange/core/exchange/strategy/DaoTiaoStrategy.java

@@ -26,7 +26,7 @@ public class DaoTiaoStrategy implements MessageStrategy {
     @Override
     public boolean validate(ReceivedMessage message) {
         DaoTiaoMsg daoTiaoMsg = (DaoTiaoMsg) message;
-        if (stateManger.stateChecker(daoTiaoMsg)) {
+        if (stateManger.statusChecker(daoTiaoMsg)) {
             return daoTiaoMsg.isValidate();
         }
         return false;

+ 1 - 1
src/main/java/com/dc/datachange/core/exchange/strategy/EleInterStrategy.java

@@ -7,7 +7,7 @@ import com.dc.datachange.core.entity.message.receivedMessage.EleInterMsg;
 import org.springframework.stereotype.Component;
 
 @Component
-public class EleInterStrategy extends RunningMsgStrategy {
+public class EleInterStrategy extends GeneralDataStrategy {
     @Override
     public ReceivedMessage generate(Message message) {
         return new EleInterMsg(message);

+ 2 - 3
src/main/java/com/dc/datachange/core/exchange/strategy/RunningMsgStrategy.java → src/main/java/com/dc/datachange/core/exchange/strategy/GeneralDataStrategy.java

@@ -15,7 +15,7 @@ import java.util.Map;
 
 @Component
 @Slf4j
-public abstract class RunningMsgStrategy implements MessageStrategy {
+public abstract class GeneralDataStrategy implements MessageStrategy {
     @Autowired
     private DDSStatusManger stateManger;
     @Autowired
@@ -23,8 +23,7 @@ public abstract class RunningMsgStrategy implements MessageStrategy {
 
     @Override
     public boolean validate(ReceivedMessage message) {
-        if (stateManger.stateChecker(message) && message.isValidate()) {
-            log.info(message.getClass().toString());
+        if (stateManger.statusChecker(message) && message.isValidate()) {
             Integer from = Integer.valueOf(message.getFrom());
             Integer to = Integer.valueOf(message.getTo());
             Class<? extends Platform> clazz;

+ 63 - 0
src/main/java/com/dc/datachange/core/exchange/strategy/GroupParamsCtrlStrategy.java

@@ -0,0 +1,63 @@
+package com.dc.datachange.core.exchange.strategy;
+
+import Messenger.Message;
+import com.dc.datachange.core.common.MsgConstants;
+import com.dc.datachange.core.connection.DDSStatusManger;
+import com.dc.datachange.core.entity.message.ReceivedMessage;
+import com.dc.datachange.core.entity.message.receivedMessage.GroupParamsCtrl;
+import com.dc.datachange.core.entity.platformInfo.InterferPlatform;
+import com.dc.datachange.core.entity.platformInfo.RadarPlatform;
+import com.dc.datachange.core.exchange.DataManager;
+import com.dc.datachange.exception.UnknownMsgException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+@Component
+public class GroupParamsCtrlStrategy implements MessageStrategy{
+    @Autowired
+    private DDSStatusManger stateManger;
+    @Autowired
+    private DataManager dataManager;
+
+    @Override
+    public GroupParamsCtrl generate(Message message) {
+        return new GroupParamsCtrl(message);
+    }
+
+    @Override
+    public boolean validate(ReceivedMessage message) {
+        GroupParamsCtrl groupParamsCtrl=(GroupParamsCtrl) message;
+        if(stateManger.statusChecker(groupParamsCtrl)){
+            Map<Integer, InterferPlatform> InterferMap = dataManager.getMap(InterferPlatform.class);
+            Map<Integer, RadarPlatform> radarMap = dataManager.getMap(RadarPlatform.class);
+            Integer id = groupParamsCtrl.getParams().getId();
+            if(InterferMap.containsKey(id) || radarMap.containsKey(id))
+                return groupParamsCtrl.isValidate();
+        }
+        return false;
+    }
+
+    @Override
+    public void invoke(ReceivedMessage message) {
+        GroupParamsCtrl groupParamsCtrl = (GroupParamsCtrl) message;
+        Integer id = groupParamsCtrl.getParams().getId();
+        Map<Integer, InterferPlatform> InterferMap = dataManager.getMap(InterferPlatform.class);
+        Map<Integer, RadarPlatform> radarMap = dataManager.getMap(RadarPlatform.class);
+        if(InterferMap.containsKey(id)){
+            InterferPlatform data = dataManager.getData(InterferPlatform.class, id);
+            data.setParams(groupParamsCtrl.getParams());
+        }else if(radarMap.containsKey(id)){
+            RadarPlatform data = dataManager.getData(RadarPlatform.class,id);
+            data.setParams(groupParamsCtrl.getParams());
+        }else {
+            throw new UnknownMsgException();
+        }
+    }
+
+    @Override
+    public String getMsgType() {
+        return MsgConstants.GROUP_PARAMS_CTRL;
+    }
+}

+ 39 - 0
src/main/java/com/dc/datachange/core/exchange/strategy/GroupParamsReqStrategy.java

@@ -0,0 +1,39 @@
+package com.dc.datachange.core.exchange.strategy;
+
+import Messenger.Message;
+import com.dc.datachange.core.connection.DDSStatusManger;
+import com.dc.datachange.core.entity.message.ReceivedMessage;
+import com.dc.datachange.core.entity.message.receivedMessage.GroupParamsReq;
+import com.dc.datachange.core.exchange.SendExecutor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class GroupParamsReqStrategy implements MessageStrategy{
+    @Autowired
+    private DDSStatusManger statusManager;
+    @Autowired
+    private SendExecutor sendExecutor;
+    @Autowired
+    private GroupParamsReq groupParamsReq;
+
+    @Override
+    public GroupParamsReq generate(Message message) {
+        return groupParamsReq;
+    }
+
+    @Override
+    public boolean validate(ReceivedMessage message) {
+        return statusManager.statusChecker(message);
+    }
+
+    @Override
+    public void invoke(ReceivedMessage message) {
+        sendExecutor.sendDDS(message);
+    }
+
+    @Override
+    public String getMsgType() {
+        return null;
+    }
+}

+ 1 - 1
src/main/java/com/dc/datachange/core/exchange/strategy/InitialMsgStrategy.java

@@ -29,7 +29,7 @@ public class InitialMsgStrategy implements MessageStrategy {
     @Override
     public boolean validate(ReceivedMessage message) {
         InitialMessage initialMessage = (InitialMessage) message;
-        if (stateManger.stateChecker(initialMessage)) {
+        if (stateManger.statusChecker(initialMessage)) {
             return initialMessage.isValidate();
         }
         return false;

+ 1 - 1
src/main/java/com/dc/datachange/core/exchange/strategy/NetGroupReqStrategy.java

@@ -26,7 +26,7 @@ public class NetGroupReqStrategy implements MessageStrategy {
     @Override
     public boolean validate(ReceivedMessage message) {
         NetGroupReq netGroupReq=(NetGroupReq) message;
-        if(stateManger.stateChecker(netGroupReq)){
+        if(stateManger.statusChecker(netGroupReq)){
             return netGroupReq.isValidate();
         }
         return false;

+ 1 - 1
src/main/java/com/dc/datachange/core/exchange/strategy/RadarPulseStrategy.java

@@ -7,7 +7,7 @@ import com.dc.datachange.core.entity.message.receivedMessage.RadarPulseMsg;
 import org.springframework.stereotype.Component;
 
 @Component
-public class RadarPulseStrategy extends RunningMsgStrategy {
+public class RadarPulseStrategy extends GeneralDataStrategy {
 
     @Override
     public ReceivedMessage generate(Message message) {

+ 6 - 1
src/main/java/com/dc/datachange/utils/MessageUtils.java

@@ -6,6 +6,7 @@ import com.dc.datachange.core.common.PlatConstants;
 import com.dc.datachange.core.entity.graph.EdgeVo;
 import com.dc.datachange.core.entity.networkGroup.NetworkGroup;
 import com.dc.datachange.core.entity.platformInfo.Platform;
+import com.dc.datachange.core.entity.platformInfo.PlatformParams;
 
 import java.time.LocalTime;
 import java.time.format.DateTimeFormatter;
@@ -14,7 +15,7 @@ import java.util.List;
 import java.util.Set;
 
 public class MessageUtils {
-    public static String getLineStr(NetworkGroup networkGroup){
+    public static String getLineFromNetworkGroup(NetworkGroup networkGroup){
         Set<Platform> platformSet = networkGroup.getPlatformSet();
         StringBuilder stringBuilder=new StringBuilder();
         stringBuilder.append(networkGroup.getId()).append(" ")
@@ -24,6 +25,10 @@ public class MessageUtils {
         }
         return stringBuilder.toString();
     }
+    public static String GetLineFromPlatFrom(Platform platform){
+        PlatformParams params =platform.getParams();
+        return params.toString();
+    }
 
     public static void getEdgesFromPlatform(List<EdgeVo> edgeList, Set<Platform> platformSet) {
         List<Platform> list = new ArrayList<>(platformSet);

+ 8 - 0
src/main/resources/application.yml

@@ -28,9 +28,17 @@ dds:
     printMsgType:
       - "0" #错误消息
       - "1" #初始化消息,包含平台信息
+      - "11" #初始化应答
+      - "12" #初始化请求
       - "2" #导调控制信息
+      - "21" #导调应答
+#      - "3" #平台位置信息
+      - "4" #分组信息
       - "41" #分组请求
       - "5" #雷达脉冲信息
       - "6" #电子干扰信息
       - "7" #综合情报信息
       - "8" #心跳
+      - "9" #平台参数单条数据
+      - "10" #平台参数集合数据
+      - "101" #平台参数集合请求