From d1f854d741456292862c8b4a84f91c0f7f9a0be9 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Fri, 01 Nov 2024 15:15:13 +0800
Subject: [PATCH] 增加:航线开始/暂停/恢复/结束

---
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndReplyCmd.java    |   31 +++
 ard-work/src/main/java/com/ard/tianyu/controller/UavWayLineController.java             |   26 +++
 ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLinePauseDTO.java           |   20 ++
 ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java                  |   45 ++++
 ard-work/src/main/java/com/ard/tianyu/service/ITyService.java                          |   22 ++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndCmd.java         |   32 ++++
 ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineResumeDTO.java          |   20 ++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeCmd.java      |   30 +++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseCmd.java       |   32 ++++
 ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineBeginDTO.java           |   20 ++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginCmd.java       |   35 ++++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseReplyCmd.java  |   31 +++
 ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineEndDTO.java             |   20 ++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginReplyCmd.java  |   32 ++++
 ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeReplyCmd.java |   31 +++
 15 files changed, 419 insertions(+), 8 deletions(-)

diff --git a/ard-work/src/main/java/com/ard/tianyu/controller/UavWayLineController.java b/ard-work/src/main/java/com/ard/tianyu/controller/UavWayLineController.java
index 6f4f203..5fb7438 100644
--- a/ard-work/src/main/java/com/ard/tianyu/controller/UavWayLineController.java
+++ b/ard-work/src/main/java/com/ard/tianyu/controller/UavWayLineController.java
@@ -4,7 +4,7 @@
 import com.ard.tianyu.model.dto.speaker.SpeakModeSwitchDTO;
 import com.ard.tianyu.model.dto.speaker.StopSpeakDTO;
 import com.ard.tianyu.model.dto.speaker.TextSpeakDTO;
-import com.ard.tianyu.model.dto.wayline.WayLineUploadDTO;
+import com.ard.tianyu.model.dto.wayline.*;
 import com.ard.tianyu.service.ITyService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -35,5 +35,29 @@
         tyService.wayLineUpload(wayLineUploadDTO);
         return AjaxResult.success();
     }
+    @ApiOperation("上传航线")
+    @PostMapping("/wayLineBegin")
+    public AjaxResult wayLineBegin(@RequestBody WayLineBeginDTO wayLineBeginDTO) {
+        tyService.wayLineBegin(wayLineBeginDTO);
+        return AjaxResult.success();
+    }
+    @ApiOperation("暂停航线")
+    @PostMapping("/wayLinePause")
+    public AjaxResult wayLinePause(@RequestBody WayLinePauseDTO wayLinePauseDTO) {
+        tyService.wayLinePause(wayLinePauseDTO);
+        return AjaxResult.success();
+    }
+    @ApiOperation("恢复航线")
+    @PostMapping("/wayLineResume")
+    public AjaxResult wayLineResume(@RequestBody WayLineResumeDTO wayLineResumeDTO) {
+        tyService.wayLineResume(wayLineResumeDTO);
+        return AjaxResult.success();
+    }
+    @ApiOperation("结束航线")
+    @PostMapping("/wayLineEnd")
+    public AjaxResult wayLineEnd(@RequestBody WayLineEndDTO wayLineEndDTO) {
+        tyService.wayLineEnd(wayLineEndDTO);
+        return AjaxResult.success();
+    }
 
 }
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineBeginDTO.java b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineBeginDTO.java
new file mode 100644
index 0000000..a7915b9
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineBeginDTO.java
@@ -0,0 +1,20 @@
+package com.ard.tianyu.model.dto.wayline;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 开始航线实体对象
+ *
+ * @author liusuyi
+ * @date 2024年11月01日10:55
+ **/
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class WayLineBeginDTO {
+    private String boxSn;
+}
diff --git a/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineEndDTO.java b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineEndDTO.java
new file mode 100644
index 0000000..0fa86db
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineEndDTO.java
@@ -0,0 +1,20 @@
+package com.ard.tianyu.model.dto.wayline;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 结束航线实体对象
+ *
+ * @author liusuyi
+ * @date 2024年11月01日10:55
+ **/
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class WayLineEndDTO {
+    private String boxSn;
+}
diff --git a/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLinePauseDTO.java b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLinePauseDTO.java
new file mode 100644
index 0000000..807ea61
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLinePauseDTO.java
@@ -0,0 +1,20 @@
+package com.ard.tianyu.model.dto.wayline;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 暂停航线实体对象
+ *
+ * @author liusuyi
+ * @date 2024年11月01日10:55
+ **/
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class WayLinePauseDTO {
+    private String boxSn;
+}
diff --git a/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineResumeDTO.java b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineResumeDTO.java
new file mode 100644
index 0000000..0060532
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/model/dto/wayline/WayLineResumeDTO.java
@@ -0,0 +1,20 @@
+package com.ard.tianyu.model.dto.wayline;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 恢复航线实体对象
+ *
+ * @author liusuyi
+ * @date 2024年11月01日10:55
+ **/
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class WayLineResumeDTO {
+    private String boxSn;
+}
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginCmd.java
new file mode 100644
index 0000000..4235741
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginCmd.java
@@ -0,0 +1,35 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.model.dto.converter.wayline.PlanLineDataConverter;
+import com.ard.tianyu.model.dto.wayline.PlanLineData;
+import com.ard.tianyu.model.dto.wayline.WayLineBeginDTO;
+import com.ard.tianyu.model.dto.wayline.WayLineUploadDTO;
+import com.ard.tianyu.netty.command.BaseCmd;
+import com.ard.tianyu.netty.protobuf.TelemetryDataPB;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 开始航线指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLineBeginCmd extends BaseCmd {
+
+    public WayLineBeginCmd(WayLineBeginDTO wayLineBeginDTO) {
+        setDataHeader((short) 0x7479);
+        setDataLength((short) 18);
+        setBoxSn(wayLineBeginDTO.getBoxSn().getBytes());
+        setCmdCode((byte) 0xD1);
+
+    }
+
+    public void encode(ByteBuf out) {
+        out.writeShort(getDataHeader());    // 写入数据头
+        out.writeShort(getDataLength());    // 写入数据长度
+        out.writeBytes(getBoxSn());         // 写入盒子SN
+        out.writeByte(getCmdCode());        // 写入命令码
+        out.writeByte(0x00);          // 写入加密标志
+        out.writeByte(0x17);          // 写入动作编号
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginReplyCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginReplyCmd.java
new file mode 100644
index 0000000..73aeb7a
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineBeginReplyCmd.java
@@ -0,0 +1,32 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.model.dto.wayline.WayLineBeginDTO;
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 开始航线回复指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLineBeginReplyCmd extends BaseCmd {
+
+    private final byte encryptFlag = 0x00; // 加密标志
+    private final byte actionCode = 0x17;  // 动作编号
+    private final byte result;             // 执行结果
+    private final Integer errorCode;       // 错误码
+
+    public WayLineBeginReplyCmd(String boxSn, Byte result, Integer errorCode) {
+        setDataHeader((short) 0x6A77);
+        //setDataLength((short) 18);
+        setCmdCode((byte) 0xD1);
+        setBoxSn(boxSn.getBytes());
+        this.result = result;
+        this.errorCode = errorCode;
+    }
+
+    public void encode(ByteBuf out) {
+
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndCmd.java
new file mode 100644
index 0000000..6415338
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndCmd.java
@@ -0,0 +1,32 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.model.dto.wayline.WayLineBeginDTO;
+import com.ard.tianyu.model.dto.wayline.WayLineEndDTO;
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 结束航线指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLineEndCmd extends BaseCmd {
+
+    public WayLineEndCmd(WayLineEndDTO wayLineEndDTO) {
+        setDataHeader((short) 0x7479);
+        setDataLength((short) 18);
+        setBoxSn(wayLineEndDTO.getBoxSn().getBytes());
+        setCmdCode((byte) 0xD1);
+
+    }
+
+    public void encode(ByteBuf out) {
+        out.writeShort(getDataHeader());    // 写入数据头
+        out.writeShort(getDataLength());    // 写入数据长度
+        out.writeBytes(getBoxSn());         // 写入盒子SN
+        out.writeByte(getCmdCode());        // 写入命令码
+        out.writeByte(0x00);          // 写入加密标志
+        out.writeByte(0x20);          // 写入动作编号
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndReplyCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndReplyCmd.java
new file mode 100644
index 0000000..96cf448
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineEndReplyCmd.java
@@ -0,0 +1,31 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 结束航线回复指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLineEndReplyCmd extends BaseCmd {
+
+    private final byte encryptFlag = 0x00; // 加密标志
+    private final byte actionCode = 0x20;  // 动作编号
+    private final byte result;             // 执行结果
+    private final Integer errorCode;       // 错误码
+
+    public WayLineEndReplyCmd(String boxSn, Byte result, Integer errorCode) {
+        setDataHeader((short) 0x6A77);
+        //setDataLength((short) 18);
+        setCmdCode((byte) 0xD1);
+        setBoxSn(boxSn.getBytes());
+        this.result = result;
+        this.errorCode = errorCode;
+    }
+
+    public void encode(ByteBuf out) {
+
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseCmd.java
new file mode 100644
index 0000000..e157ff7
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseCmd.java
@@ -0,0 +1,32 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.model.dto.wayline.WayLineBeginDTO;
+import com.ard.tianyu.model.dto.wayline.WayLinePauseDTO;
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 暂停航线指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLinePauseCmd extends BaseCmd {
+
+    public WayLinePauseCmd(WayLinePauseDTO wayLinePauseDTO) {
+        setDataHeader((short) 0x7479);
+        setDataLength((short) 18);
+        setBoxSn(wayLinePauseDTO.getBoxSn().getBytes());
+        setCmdCode((byte) 0xD1);
+
+    }
+
+    public void encode(ByteBuf out) {
+        out.writeShort(getDataHeader());    // 写入数据头
+        out.writeShort(getDataLength());    // 写入数据长度
+        out.writeBytes(getBoxSn());         // 写入盒子SN
+        out.writeByte(getCmdCode());        // 写入命令码
+        out.writeByte(0x00);          // 写入加密标志
+        out.writeByte(0x18);          // 写入动作编号
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseReplyCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseReplyCmd.java
new file mode 100644
index 0000000..a3523a9
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLinePauseReplyCmd.java
@@ -0,0 +1,31 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 暂停航线回复指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLinePauseReplyCmd extends BaseCmd {
+
+    private final byte encryptFlag = 0x00; // 加密标志
+    private final byte actionCode = 0x18;  // 动作编号
+    private final byte result;             // 执行结果
+    private final Integer errorCode;       // 错误码
+
+    public WayLinePauseReplyCmd(String boxSn, Byte result, Integer errorCode) {
+        setDataHeader((short) 0x6A77);
+        //setDataLength((short) 18);
+        setCmdCode((byte) 0xD1);
+        setBoxSn(boxSn.getBytes());
+        this.result = result;
+        this.errorCode = errorCode;
+    }
+
+    public void encode(ByteBuf out) {
+
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeCmd.java
new file mode 100644
index 0000000..7207075
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeCmd.java
@@ -0,0 +1,30 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.model.dto.wayline.WayLineResumeDTO;
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 恢复航线指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLineResumeCmd extends BaseCmd {
+
+    public WayLineResumeCmd(WayLineResumeDTO wayLineResumeDTO) {
+        setDataHeader((short) 0x7479);
+        setDataLength((short) 18);
+        setBoxSn(wayLineResumeDTO.getBoxSn().getBytes());
+        setCmdCode((byte) 0xD1);
+    }
+
+    public void encode(ByteBuf out) {
+        out.writeShort(getDataHeader());    // 写入数据头
+        out.writeShort(getDataLength());    // 写入数据长度
+        out.writeBytes(getBoxSn());         // 写入盒子SN
+        out.writeByte(getCmdCode());        // 写入命令码
+        out.writeByte(0x00);          // 写入加密标志
+        out.writeByte(0x19);          // 写入动作编号
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeReplyCmd.java b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeReplyCmd.java
new file mode 100644
index 0000000..d226e47
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/netty/command/wayline/WayLineResumeReplyCmd.java
@@ -0,0 +1,31 @@
+package com.ard.tianyu.netty.command.wayline;
+
+import com.ard.tianyu.netty.command.BaseCmd;
+import io.netty.buffer.ByteBuf;
+
+/**
+ * 恢复航线回复指令
+ *
+ * @author liusuyi
+ * @date 2024年10月30日16:20
+ **/
+public class WayLineResumeReplyCmd extends BaseCmd {
+
+    private final byte encryptFlag = 0x00; // 加密标志
+    private final byte actionCode = 0x19;  // 动作编号
+    private final byte result;             // 执行结果
+    private final Integer errorCode;       // 错误码
+
+    public WayLineResumeReplyCmd(String boxSn, Byte result, Integer errorCode) {
+        setDataHeader((short) 0x6A77);
+        //setDataLength((short) 18);
+        setCmdCode((byte) 0xD1);
+        setBoxSn(boxSn.getBytes());
+        this.result = result;
+        this.errorCode = errorCode;
+    }
+
+    public void encode(ByteBuf out) {
+
+    }
+}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java b/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java
index edde53f..afcbad5 100644
--- a/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java
+++ b/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java
@@ -12,7 +12,7 @@
 import com.ard.tianyu.model.dto.speaker.*;
 import com.ard.tianyu.model.dto.state.UavState;
 import com.ard.tianyu.model.dto.telemetry.TelemetryData;
-import com.ard.tianyu.model.dto.wayline.WayLineUploadDTO;
+import com.ard.tianyu.model.dto.wayline.*;
 import com.ard.tianyu.model.receiver.*;
 import com.ard.tianyu.netty.command.BaseCmd;
 import com.dtflys.forest.annotation.Var;
@@ -235,6 +235,26 @@
     void wayLineUpload(WayLineUploadDTO wayLineUploadDTO);
 
     /**
+     * 开始航线
+     */
+    void wayLineBegin(WayLineBeginDTO wayLineBeginDTO);
+
+    /**
+     * 暂停航线
+     */
+    void wayLinePause(WayLinePauseDTO wayLinePauseDTO);
+
+    /**
+     * 恢复航线
+     */
+    void wayLineResume(WayLineResumeDTO wayLineResumeDTO);
+
+    /**
+     * 结束航线
+     */
+    void wayLineEnd(WayLineEndDTO wayLineEndDTO);
+
+    /**
      * 处理回复消息
      */
     void processReplyMessage(String key, BaseCmd tyMessage);
diff --git a/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
index 8132128..fd8ae57 100644
--- a/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
@@ -23,8 +23,7 @@
 import com.ard.tianyu.model.dto.speaker.*;
 import com.ard.tianyu.model.dto.state.UavState;
 import com.ard.tianyu.model.dto.telemetry.TelemetryData;
-import com.ard.tianyu.model.dto.wayline.PlanLineData;
-import com.ard.tianyu.model.dto.wayline.WayLineUploadDTO;
+import com.ard.tianyu.model.dto.wayline.*;
 import com.ard.tianyu.model.receiver.*;
 import com.ard.tianyu.netty.command.*;
 import com.ard.tianyu.netty.TyNettyTcpClient;
@@ -41,8 +40,7 @@
 import com.ard.tianyu.netty.command.real.UavTelemetryDataCmd;
 import com.ard.tianyu.netty.command.register.*;
 import com.ard.tianyu.netty.command.speaker.*;
-import com.ard.tianyu.netty.command.wayline.WayLineUploadCmd;
-import com.ard.tianyu.netty.command.wayline.WayLineUploadReplyCmd;
+import com.ard.tianyu.netty.command.wayline.*;
 import com.ard.tianyu.netty.handler.ErrorCodeEnum;
 import com.ard.tianyu.netty.protobuf.TelemetryDataPB;
 import com.ard.tianyu.service.ITyService;
@@ -501,6 +499,42 @@
     }
 
     /**
+     * 航线开始
+     */
+    @Override
+    public void wayLineBegin(WayLineBeginDTO wayLineBeginDTO) {
+        WayLineBeginCmd wayLineBeginCmd = new WayLineBeginCmd(wayLineBeginDTO);
+        this.sendMessage(tyConfiguration.getIpPort(), wayLineBeginCmd);
+    }
+
+    /**
+     * 航线暂停
+     */
+    @Override
+    public void wayLinePause(WayLinePauseDTO wayLinePauseDTO) {
+        WayLinePauseCmd wayLinePauseCmd = new WayLinePauseCmd(wayLinePauseDTO);
+        this.sendMessage(tyConfiguration.getIpPort(), wayLinePauseCmd);
+    }
+
+    /**
+     * 航线恢复
+     */
+    @Override
+    public void wayLineResume(WayLineResumeDTO wayLineResumeDTO) {
+        WayLineResumeCmd wayLineResumeCmd = new WayLineResumeCmd(wayLineResumeDTO);
+        this.sendMessage(tyConfiguration.getIpPort(), wayLineResumeCmd);
+    }
+
+    /**
+     * 航线结束
+     */
+    @Override
+    public void wayLineEnd(WayLineEndDTO wayLineEndDTO) {
+        WayLineEndCmd wayLineEndCmd = new WayLineEndCmd(wayLineEndDTO);
+        this.sendMessage(tyConfiguration.getIpPort(), wayLineEndCmd);
+    }
+
+    /**
      * 处理天宇服务器返回的消息
      */
     @Override
@@ -676,8 +710,7 @@
      */
     @Scheduled(fixedRate = 3000)
     public void sendHeartBeat() {
-        if(!TyTcpServerCache.getTcpServerCache(tyConfiguration.getTcpserver() + ":" + tyConfiguration.getTcpport()))
-        {
+        if (!TyTcpServerCache.getTcpServerCache(tyConfiguration.getTcpserver() + ":" + tyConfiguration.getTcpport())) {
             return;
         }
         long timestamp = System.currentTimeMillis();

--
Gitblit v1.9.3