diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java index f847cee..534aad9 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java @@ -5,12 +5,9 @@ import com.casic.missiles.modular.system.dto.SatelliteSignalDTO; import com.casic.missiles.modular.system.model.Satellite; import com.casic.missiles.modular.system.service.ISatelliteService; +import com.casic.missiles.modular.system.utils.TimeUtil; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - /** * 卫星信号数据信息 服务实现类 * @@ -82,9 +79,7 @@ } satellite.setSmsStatus(smsStatus); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - satellite.setRespTime(dateFormat.format(date)); + satellite.setRespTime(TimeUtil.getCurrentTime()); save(satellite); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java index f847cee..534aad9 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java @@ -5,12 +5,9 @@ import com.casic.missiles.modular.system.dto.SatelliteSignalDTO; import com.casic.missiles.modular.system.model.Satellite; import com.casic.missiles.modular.system.service.ISatelliteService; +import com.casic.missiles.modular.system.utils.TimeUtil; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - /** * 卫星信号数据信息 服务实现类 * @@ -82,9 +79,7 @@ } satellite.setSmsStatus(smsStatus); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - satellite.setRespTime(dateFormat.format(date)); + satellite.setRespTime(TimeUtil.getCurrentTime()); save(satellite); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java index 3a5b132..9c27d7e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java @@ -6,8 +6,10 @@ import com.casic.missiles.modular.system.model.ShelterPosition; import lombok.extern.slf4j.Slf4j; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 西工大数据解析 @@ -24,6 +26,8 @@ robot.setRobotId((int) bytes[4]); + robot.setReceiveTime(TimeUtil.getCurrentTime()); + byte[] lngBytes = new byte[4]; System.arraycopy(bytes, 5, lngBytes, 0, 4); robot.setLng(covertLngLat(lngBytes)); @@ -350,9 +354,7 @@ System.arraycopy(bytes, 9, latBytes, 0, 4); shelter.setLat(covertLngLat(latBytes)); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - shelter.setCreateTime(dateFormat.format(date)); + shelter.setCreateTime(TimeUtil.getCurrentTime()); return shelter; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java index f847cee..534aad9 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java @@ -5,12 +5,9 @@ import com.casic.missiles.modular.system.dto.SatelliteSignalDTO; import com.casic.missiles.modular.system.model.Satellite; import com.casic.missiles.modular.system.service.ISatelliteService; +import com.casic.missiles.modular.system.utils.TimeUtil; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - /** * 卫星信号数据信息 服务实现类 * @@ -82,9 +79,7 @@ } satellite.setSmsStatus(smsStatus); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - satellite.setRespTime(dateFormat.format(date)); + satellite.setRespTime(TimeUtil.getCurrentTime()); save(satellite); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java index 3a5b132..9c27d7e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java @@ -6,8 +6,10 @@ import com.casic.missiles.modular.system.model.ShelterPosition; import lombok.extern.slf4j.Slf4j; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 西工大数据解析 @@ -24,6 +26,8 @@ robot.setRobotId((int) bytes[4]); + robot.setReceiveTime(TimeUtil.getCurrentTime()); + byte[] lngBytes = new byte[4]; System.arraycopy(bytes, 5, lngBytes, 0, 4); robot.setLng(covertLngLat(lngBytes)); @@ -350,9 +354,7 @@ System.arraycopy(bytes, 9, latBytes, 0, 4); shelter.setLat(covertLngLat(latBytes)); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - shelter.setCreateTime(dateFormat.format(date)); + shelter.setCreateTime(TimeUtil.getCurrentTime()); return shelter; } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java index e61d80e..94b3d79 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java @@ -7,8 +7,10 @@ import org.locationtech.spatial4j.distance.DistanceUtils; import java.text.DecimalFormat; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 203所数据编码 @@ -84,8 +86,7 @@ //船只纬度 ais.setLat(ship.getLat()); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - ais.setPositionTime(dateFormat.format(new Date())); + ais.setPositionTime(TimeUtil.getCurrentTime()); ais.setSpeed(ship.getSpeed()); positionBeans.add(ais); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java index f847cee..534aad9 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java @@ -5,12 +5,9 @@ import com.casic.missiles.modular.system.dto.SatelliteSignalDTO; import com.casic.missiles.modular.system.model.Satellite; import com.casic.missiles.modular.system.service.ISatelliteService; +import com.casic.missiles.modular.system.utils.TimeUtil; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - /** * 卫星信号数据信息 服务实现类 * @@ -82,9 +79,7 @@ } satellite.setSmsStatus(smsStatus); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - satellite.setRespTime(dateFormat.format(date)); + satellite.setRespTime(TimeUtil.getCurrentTime()); save(satellite); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java index 3a5b132..9c27d7e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java @@ -6,8 +6,10 @@ import com.casic.missiles.modular.system.model.ShelterPosition; import lombok.extern.slf4j.Slf4j; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 西工大数据解析 @@ -24,6 +26,8 @@ robot.setRobotId((int) bytes[4]); + robot.setReceiveTime(TimeUtil.getCurrentTime()); + byte[] lngBytes = new byte[4]; System.arraycopy(bytes, 5, lngBytes, 0, 4); robot.setLng(covertLngLat(lngBytes)); @@ -350,9 +354,7 @@ System.arraycopy(bytes, 9, latBytes, 0, 4); shelter.setLat(covertLngLat(latBytes)); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - shelter.setCreateTime(dateFormat.format(date)); + shelter.setCreateTime(TimeUtil.getCurrentTime()); return shelter; } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java index e61d80e..94b3d79 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java @@ -7,8 +7,10 @@ import org.locationtech.spatial4j.distance.DistanceUtils; import java.text.DecimalFormat; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 203所数据编码 @@ -84,8 +86,7 @@ //船只纬度 ais.setLat(ship.getLat()); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - ais.setPositionTime(dateFormat.format(new Date())); + ais.setPositionTime(TimeUtil.getCurrentTime()); ais.setSpeed(ship.getSpeed()); positionBeans.add(ais); diff --git a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java index f93bfba..8d6fc5e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java @@ -12,13 +12,16 @@ import com.casic.missiles.modular.system.utils.Constant; import com.casic.missiles.modular.system.utils.DecodeData; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.ISocketService; import io.netty.channel.ChannelHandlerContext; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.Arrays; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; /** * @author a203 @@ -27,18 +30,20 @@ @Service public class SocketServiceImpl implements ISocketService { - private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + private final IRobotService robotService; private final ITyphoonService typhoonService; private final IShipService shipService; private final IShelterPositionService shelterPositionService; private final IRegionPlanService regionPlanService; private final IRoutePlanService routePlanService; - public SocketServiceImpl(ITyphoonService typhoonService, + public SocketServiceImpl(IRobotService robotService, + ITyphoonService typhoonService, IShipService shipService, IShelterPositionService shelterPositionService, IRegionPlanService regionPlanService, IRoutePlanService routePlanService) { + this.robotService = robotService; this.typhoonService = typhoonService; this.shipService = shipService; this.shelterPositionService = shelterPositionService; @@ -89,6 +94,7 @@ //水下机器人信息 RobotInfo robotInfo = DecodeData.decodeRobotInfo(data); log.info("robotInfo ===> " + JSON.toJSONString(robotInfo)); + robotService.save(robotInfo); break; case 0x02: //算法结果 @@ -99,7 +105,7 @@ log.info("区域覆盖 ===> " + robotRegion); //区域覆盖 RegionPlan regionPlan = new RegionPlan(); - regionPlan.setPlanTime(dateFormat.format(new Date())); + regionPlan.setPlanTime(TimeUtil.getCurrentTime()); regionPlan.setRegionResult(robotRegion); regionPlanService.save(regionPlan); break; @@ -109,7 +115,7 @@ log.info("路径规划 ===> " + robotRoute); RoutePlan routePlan = new RoutePlan(); routePlan.setRobotId(robotId); - routePlan.setPlanTime(dateFormat.format(new Date())); + routePlan.setPlanTime(TimeUtil.getCurrentTime()); routePlan.setRouteResult(robotRoute); routePlanService.save(routePlan); break; @@ -152,8 +158,7 @@ List typhoonList = typhoonService.currentTyphoonList(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - String date = dateFormat.format(new Date()); + String date = TimeUtil.getCurrentTime(); Map objectMap; if (typhoonList.isEmpty()) { diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java index f847cee..534aad9 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java @@ -5,12 +5,9 @@ import com.casic.missiles.modular.system.dto.SatelliteSignalDTO; import com.casic.missiles.modular.system.model.Satellite; import com.casic.missiles.modular.system.service.ISatelliteService; +import com.casic.missiles.modular.system.utils.TimeUtil; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - /** * 卫星信号数据信息 服务实现类 * @@ -82,9 +79,7 @@ } satellite.setSmsStatus(smsStatus); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - satellite.setRespTime(dateFormat.format(date)); + satellite.setRespTime(TimeUtil.getCurrentTime()); save(satellite); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java index 3a5b132..9c27d7e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java @@ -6,8 +6,10 @@ import com.casic.missiles.modular.system.model.ShelterPosition; import lombok.extern.slf4j.Slf4j; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 西工大数据解析 @@ -24,6 +26,8 @@ robot.setRobotId((int) bytes[4]); + robot.setReceiveTime(TimeUtil.getCurrentTime()); + byte[] lngBytes = new byte[4]; System.arraycopy(bytes, 5, lngBytes, 0, 4); robot.setLng(covertLngLat(lngBytes)); @@ -350,9 +354,7 @@ System.arraycopy(bytes, 9, latBytes, 0, 4); shelter.setLat(covertLngLat(latBytes)); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - shelter.setCreateTime(dateFormat.format(date)); + shelter.setCreateTime(TimeUtil.getCurrentTime()); return shelter; } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java index e61d80e..94b3d79 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java @@ -7,8 +7,10 @@ import org.locationtech.spatial4j.distance.DistanceUtils; import java.text.DecimalFormat; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 203所数据编码 @@ -84,8 +86,7 @@ //船只纬度 ais.setLat(ship.getLat()); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - ais.setPositionTime(dateFormat.format(new Date())); + ais.setPositionTime(TimeUtil.getCurrentTime()); ais.setSpeed(ship.getSpeed()); positionBeans.add(ais); diff --git a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java index f93bfba..8d6fc5e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java @@ -12,13 +12,16 @@ import com.casic.missiles.modular.system.utils.Constant; import com.casic.missiles.modular.system.utils.DecodeData; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.ISocketService; import io.netty.channel.ChannelHandlerContext; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.Arrays; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; /** * @author a203 @@ -27,18 +30,20 @@ @Service public class SocketServiceImpl implements ISocketService { - private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + private final IRobotService robotService; private final ITyphoonService typhoonService; private final IShipService shipService; private final IShelterPositionService shelterPositionService; private final IRegionPlanService regionPlanService; private final IRoutePlanService routePlanService; - public SocketServiceImpl(ITyphoonService typhoonService, + public SocketServiceImpl(IRobotService robotService, + ITyphoonService typhoonService, IShipService shipService, IShelterPositionService shelterPositionService, IRegionPlanService regionPlanService, IRoutePlanService routePlanService) { + this.robotService = robotService; this.typhoonService = typhoonService; this.shipService = shipService; this.shelterPositionService = shelterPositionService; @@ -89,6 +94,7 @@ //水下机器人信息 RobotInfo robotInfo = DecodeData.decodeRobotInfo(data); log.info("robotInfo ===> " + JSON.toJSONString(robotInfo)); + robotService.save(robotInfo); break; case 0x02: //算法结果 @@ -99,7 +105,7 @@ log.info("区域覆盖 ===> " + robotRegion); //区域覆盖 RegionPlan regionPlan = new RegionPlan(); - regionPlan.setPlanTime(dateFormat.format(new Date())); + regionPlan.setPlanTime(TimeUtil.getCurrentTime()); regionPlan.setRegionResult(robotRegion); regionPlanService.save(regionPlan); break; @@ -109,7 +115,7 @@ log.info("路径规划 ===> " + robotRoute); RoutePlan routePlan = new RoutePlan(); routePlan.setRobotId(robotId); - routePlan.setPlanTime(dateFormat.format(new Date())); + routePlan.setPlanTime(TimeUtil.getCurrentTime()); routePlan.setRouteResult(robotRoute); routePlanService.save(routePlan); break; @@ -152,8 +158,7 @@ List typhoonList = typhoonService.currentTyphoonList(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - String date = dateFormat.format(new Date()); + String date = TimeUtil.getCurrentTime(); Map objectMap; if (typhoonList.isEmpty()) { diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java index 0e4b41b..34512f9 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java @@ -1,7 +1,7 @@ package com.casic.missiles.modular.system.dto; -import lombok.Data; import com.casic.missiles.modular.system.dto.remote.ShipRemoteData; +import lombok.Data; import java.text.SimpleDateFormat; import java.util.Date; @@ -99,7 +99,7 @@ private String formatUTC(int seconds) { long utc = seconds * 1000L; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINESE); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); format.setTimeZone(TimeZone.getTimeZone("GMT+08")); return format.format(new Date(utc)); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java index e062c1e..4d867ce 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmServiceImpl.java @@ -9,14 +9,12 @@ import com.casic.missiles.modular.system.model.Alarm; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.IWebSocketService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; -import java.util.Locale; import java.util.Map; /** @@ -142,9 +140,7 @@ alarm.setAlarmContent(alarmContent); alarm.setAlarmValue(alarmValue); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - alarm.setAlarmTime(dateFormat.format(date)); + alarm.setAlarmTime(TimeUtil.getCurrentTime()); //WebSocket发送报警信息给前端 webSocketService.sendMessage(JSON.toJSONString(alarm)); return alarm; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java index d861be5..eced22d 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/RobotInfo.java @@ -17,8 +17,8 @@ public class RobotInfo extends Model { private static final long serialVersionUID = 1L; - @TableId(value = "ID", type = IdType.AUTO) - private Integer id; + @TableId(value = "ID", type = IdType.ASSIGN_ID) + private Long id; /** * 机器人ID:3 @@ -26,6 +26,9 @@ @TableField(value = "ROBOT_ID") private Integer robotId; + @TableField(value = "RECEIVE_TIME") + private String receiveTime; + /** * 位置经度:109.322222 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java new file mode 100644 index 0000000..ae31c08 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/utils/TimeUtil.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +/** + * @author a203 + */ +public class TimeUtil { + + public static String getCurrentTime() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return dateFormat.format(new Date()); + } +} diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java index c9a1682..1f2ead8 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/controller/ShelterController.java @@ -59,6 +59,16 @@ } /** + * 查询机器人历史路线-上一次任务的路线 + */ + @GetMapping(value = "/routeHistory") + @ResponseBody + public Object history() { + List> lastRouteMap = robotService.lastRoute(); + return ResponseData.success(lastRouteMap); + } + + /** * 方舱位置 */ @GetMapping(value = "/position") diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java index b71e099..c2b8f81 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/RobotMapper.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.modular.system.model.RobotInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 水下机器人数据信息 Mapper 接口 @@ -9,5 +12,11 @@ * @author a203 */ public interface RobotMapper extends BaseMapper { - + /** + * 获取最新的卫星信号 + * + * @param robotId 机器人ID + * @return {@link RobotInfo} + */ + RobotInfo selectLastOne(@Param("robotId") String robotId); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml new file mode 100644 index 0000000..0e2414b --- /dev/null +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/dao/mapping/RobotMapper.xml @@ -0,0 +1,36 @@ + + + + + + + ID AS id, + ROBOT_ID AS robotId, + RECEIVE_TIME AS receiveTime, + LNG AS lng, + LAT AS lat, + NAVIGATE_STATE AS navigateState, + INSTRUMENT_V AS instrumentV, + POWER_V AS powerV, + INSTRUMENT_ELECTRIC AS instrumentE, + POWER_ELECTRIC AS powerE, + PITCH_ANGLE AS pitchAngle, + ROLL_ANGLE AS rollAngle, + HEADING_ANGLE AS headingAngle, + BUOYANCY AS buoyancy, + POSITION AS position, + DETECT_STATUS AS detectStatus, + TARGET_DISTANCE AS targetDistance, + TARGET_DIRECTION AS targetDirection, + TARGET_HERTZ AS targetHertz + + + + \ No newline at end of file diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java index 5cb895a..6189335 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/IRobotService.java @@ -12,14 +12,9 @@ */ public interface IRobotService extends IService { /** - * 保存机器人数据 - */ - void saveRobotInfo(); - - /** * 查询机器人列表 * - * @return List> + * @return {@link List} */ List> robotList(); @@ -27,7 +22,14 @@ * 查询机器人详情 * * @param robotId 机器人ID - * @return RobotInfoDTO + * @return {@link RobotInfoDTO} */ RobotInfoDTO robotDetail(String robotId); + + /** + * 查询机器人历史路线-上一次任务的路线 + * + * @return {@link List} + */ + List> lastRoute(); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java index 67f4ae5..c7215ba 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/RobotServiceImpl.java @@ -26,22 +26,6 @@ } /** - * 保存机器人数据信息 - */ - @Override - public void saveRobotInfo() { - //TODO 测试数据 -// RobotInfo robotInfo = DataParser.decodeRobotInfo(Constant.DATA); -// QueryWrapper query = new QueryWrapper<>(); -// query.eq("ROBOT_ID", robotInfo.getRobotId()); -// if (this.count(query) == 0) { -// save(robotInfo); -// } else { -// updateById(robotInfo); -// } - } - - /** * 查询机器人列表 * * @return {@link List} @@ -72,10 +56,23 @@ */ @Override public RobotInfoDTO robotDetail(String robotId) { - RobotInfo robotInfo = getById(robotId); + RobotInfo robotInfo = this.baseMapper.selectLastOne(robotId); if (robotInfo != null) { return new RobotInfoDTO(robotInfo); } return null; } + + @Override + public List> lastRoute() { + List> routeMap = new ArrayList<>(); + //先查所有库里机器人的ID + List> robotList = robotList(); + for (Map map : robotList) { + String robotId = map.get("robotId"); + + } + + return routeMap; + } } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java index f847cee..534aad9 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/service/impl/SatelliteServiceImpl.java @@ -5,12 +5,9 @@ import com.casic.missiles.modular.system.dto.SatelliteSignalDTO; import com.casic.missiles.modular.system.model.Satellite; import com.casic.missiles.modular.system.service.ISatelliteService; +import com.casic.missiles.modular.system.utils.TimeUtil; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - /** * 卫星信号数据信息 服务实现类 * @@ -82,9 +79,7 @@ } satellite.setSmsStatus(smsStatus); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - satellite.setRespTime(dateFormat.format(date)); + satellite.setRespTime(TimeUtil.getCurrentTime()); save(satellite); } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java index 3a5b132..9c27d7e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/DecodeData.java @@ -6,8 +6,10 @@ import com.casic.missiles.modular.system.model.ShelterPosition; import lombok.extern.slf4j.Slf4j; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 西工大数据解析 @@ -24,6 +26,8 @@ robot.setRobotId((int) bytes[4]); + robot.setReceiveTime(TimeUtil.getCurrentTime()); + byte[] lngBytes = new byte[4]; System.arraycopy(bytes, 5, lngBytes, 0, 4); robot.setLng(covertLngLat(lngBytes)); @@ -350,9 +354,7 @@ System.arraycopy(bytes, 9, latBytes, 0, 4); shelter.setLat(covertLngLat(latBytes)); - Date date = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - shelter.setCreateTime(dateFormat.format(date)); + shelter.setCreateTime(TimeUtil.getCurrentTime()); return shelter; } diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java index e61d80e..94b3d79 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/EncodeData.java @@ -7,8 +7,10 @@ import org.locationtech.spatial4j.distance.DistanceUtils; import java.text.DecimalFormat; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 203所数据编码 @@ -84,8 +86,7 @@ //船只纬度 ais.setLat(ship.getLat()); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - ais.setPositionTime(dateFormat.format(new Date())); + ais.setPositionTime(TimeUtil.getCurrentTime()); ais.setSpeed(ship.getSpeed()); positionBeans.add(ais); diff --git a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java index f93bfba..8d6fc5e 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java @@ -12,13 +12,16 @@ import com.casic.missiles.modular.system.utils.Constant; import com.casic.missiles.modular.system.utils.DecodeData; import com.casic.missiles.modular.system.utils.EncodeData; +import com.casic.missiles.modular.system.utils.TimeUtil; import com.casic.missiles.socket.service.ISocketService; import io.netty.channel.ChannelHandlerContext; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.Arrays; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; /** * @author a203 @@ -27,18 +30,20 @@ @Service public class SocketServiceImpl implements ISocketService { - private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + private final IRobotService robotService; private final ITyphoonService typhoonService; private final IShipService shipService; private final IShelterPositionService shelterPositionService; private final IRegionPlanService regionPlanService; private final IRoutePlanService routePlanService; - public SocketServiceImpl(ITyphoonService typhoonService, + public SocketServiceImpl(IRobotService robotService, + ITyphoonService typhoonService, IShipService shipService, IShelterPositionService shelterPositionService, IRegionPlanService regionPlanService, IRoutePlanService routePlanService) { + this.robotService = robotService; this.typhoonService = typhoonService; this.shipService = shipService; this.shelterPositionService = shelterPositionService; @@ -89,6 +94,7 @@ //水下机器人信息 RobotInfo robotInfo = DecodeData.decodeRobotInfo(data); log.info("robotInfo ===> " + JSON.toJSONString(robotInfo)); + robotService.save(robotInfo); break; case 0x02: //算法结果 @@ -99,7 +105,7 @@ log.info("区域覆盖 ===> " + robotRegion); //区域覆盖 RegionPlan regionPlan = new RegionPlan(); - regionPlan.setPlanTime(dateFormat.format(new Date())); + regionPlan.setPlanTime(TimeUtil.getCurrentTime()); regionPlan.setRegionResult(robotRegion); regionPlanService.save(regionPlan); break; @@ -109,7 +115,7 @@ log.info("路径规划 ===> " + robotRoute); RoutePlan routePlan = new RoutePlan(); routePlan.setRobotId(robotId); - routePlan.setPlanTime(dateFormat.format(new Date())); + routePlan.setPlanTime(TimeUtil.getCurrentTime()); routePlan.setRouteResult(robotRoute); routePlanService.save(routePlan); break; @@ -152,8 +158,7 @@ List typhoonList = typhoonService.currentTyphoonList(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - String date = dateFormat.format(new Date()); + String date = TimeUtil.getCurrentTime(); Map objectMap; if (typhoonList.isEmpty()) { diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java index 0e4b41b..34512f9 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/ShipDTO.java @@ -1,7 +1,7 @@ package com.casic.missiles.modular.system.dto; -import lombok.Data; import com.casic.missiles.modular.system.dto.remote.ShipRemoteData; +import lombok.Data; import java.text.SimpleDateFormat; import java.util.Date; @@ -99,7 +99,7 @@ private String formatUTC(int seconds) { long utc = seconds * 1000L; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINESE); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); format.setTimeZone(TimeZone.getTimeZone("GMT+08")); return format.format(new Date(utc)); } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/ShipServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/ShipServiceImpl.java index 8973572..c1a1873 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/ShipServiceImpl.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/ShipServiceImpl.java @@ -14,14 +14,12 @@ import com.casic.missiles.modular.system.service.IShipService; import com.casic.missiles.modular.system.utils.Constant; import com.casic.missiles.modular.system.utils.HttpRequestHelper; +import com.casic.missiles.modular.system.utils.TimeUtil; import okhttp3.Request; import org.springframework.stereotype.Service; -import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Date; import java.util.List; -import java.util.Locale; /** * 船舶数据信息 服务实现类 @@ -71,8 +69,7 @@ if (SUCCESS_CODE.equals(getResponseCode(res))) { //请求成功才保存ais访问记录 AisLog aisLog = new AisLog(); - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINESE); - aisLog.setTime(format.format(new Date())); + aisLog.setTime(TimeUtil.getCurrentTime()); logService.save(aisLog); ShipRemoteData remoteData = JSON.parseObject(res, new TypeReference() {