diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java new file mode 100644 index 0000000..80e2765 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonPointService extends IService { + +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java new file mode 100644 index 0000000..80e2765 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonPointService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java index cad67ea..8216ae1 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java @@ -8,7 +8,7 @@ import java.util.List; /** - * 船舶数据信息 服务类 + * 台风列表数据信息 服务类 * * @author a203 */ @@ -20,6 +20,13 @@ void saveTyphoonList(); /** + * 更新台风详情 + */ + void updateTyphoonDetail(); + + /***上面接口从第三方存库,下面接口查库**********************/ + + /** * 查询台风列表 * * @return List diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java new file mode 100644 index 0000000..80e2765 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonPointService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java index cad67ea..8216ae1 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java @@ -8,7 +8,7 @@ import java.util.List; /** - * 船舶数据信息 服务类 + * 台风列表数据信息 服务类 * * @author a203 */ @@ -20,6 +20,13 @@ void saveTyphoonList(); /** + * 更新台风详情 + */ + void updateTyphoonDetail(); + + /***上面接口从第三方存库,下面接口查库**********************/ + + /** * 查询台风列表 * * @return List diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java new file mode 100644 index 0000000..1a054f9 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonDetailMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.service.ITyphoonDetailService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonDetailServiceImpl extends ServiceImpl implements ITyphoonDetailService { + + public TyphoonDetailServiceImpl() { + + } +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java new file mode 100644 index 0000000..80e2765 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonPointService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java index cad67ea..8216ae1 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java @@ -8,7 +8,7 @@ import java.util.List; /** - * 船舶数据信息 服务类 + * 台风列表数据信息 服务类 * * @author a203 */ @@ -20,6 +20,13 @@ void saveTyphoonList(); /** + * 更新台风详情 + */ + void updateTyphoonDetail(); + + /***上面接口从第三方存库,下面接口查库**********************/ + + /** * 查询台风列表 * * @return List diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java new file mode 100644 index 0000000..1a054f9 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonDetailMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.service.ITyphoonDetailService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonDetailServiceImpl extends ServiceImpl implements ITyphoonDetailService { + + public TyphoonDetailServiceImpl() { + + } +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java new file mode 100644 index 0000000..d1bf2c7 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonLandMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.service.ITyphoonLandService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonLandServiceImpl extends ServiceImpl implements ITyphoonLandService { + + public TyphoonLandServiceImpl() { + + } +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java new file mode 100644 index 0000000..80e2765 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonPointService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java index cad67ea..8216ae1 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java @@ -8,7 +8,7 @@ import java.util.List; /** - * 船舶数据信息 服务类 + * 台风列表数据信息 服务类 * * @author a203 */ @@ -20,6 +20,13 @@ void saveTyphoonList(); /** + * 更新台风详情 + */ + void updateTyphoonDetail(); + + /***上面接口从第三方存库,下面接口查库**********************/ + + /** * 查询台风列表 * * @return List diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java new file mode 100644 index 0000000..1a054f9 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonDetailMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.service.ITyphoonDetailService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonDetailServiceImpl extends ServiceImpl implements ITyphoonDetailService { + + public TyphoonDetailServiceImpl() { + + } +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java new file mode 100644 index 0000000..d1bf2c7 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonLandMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.service.ITyphoonLandService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonLandServiceImpl extends ServiceImpl implements ITyphoonLandService { + + public TyphoonLandServiceImpl() { + + } +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonPointServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonPointServiceImpl.java new file mode 100644 index 0000000..36815fa --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonPointServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonPointMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; +import com.casic.missiles.modular.system.service.ITyphoonPointService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonPointServiceImpl extends ServiceImpl implements ITyphoonPointService { + + public TyphoonPointServiceImpl() { + + } +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java new file mode 100644 index 0000000..ea3c29d --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonDetail.java @@ -0,0 +1,81 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风详情数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_detail") +public class TyphoonDetail extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风中文代号 + */ + @TableField("NAME") + private String name; + + /** + * 台风英文代号 + */ + @TableField("ENG_NAME") + private String engName; + + /** + * 台风告警级别 + */ + @TableField("WARN_LEVEL") + private String warnLevel; + + /** + * 台风中心经度 + */ + @TableField("CENTER_LNG") + private Double centerLng; + + /** + * 台风中心纬度 + */ + @TableField("CENTER_LAT") + private Double centerLat; + + /** + * 台风开始时间 + */ + @TableField("START_TIME") + private String startTime; + + /** + * 台风结束时间 + */ + @TableField("END_TIME") + private String endTime; + + /** + * 台风状态 + */ + @TableField("IS_ACTIVE") + private String isActive; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java new file mode 100644 index 0000000..ddc3d02 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonLand.java @@ -0,0 +1,69 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风登陆点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_land") +public class TyphoonLand extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 台风登陆点 + */ + @TableField("LAND_ADDRESS") + private String landAddress; + + /** + * 台风登陆时间 + */ + @TableField("LAND_TIME") + private String landTime; + + /** + * 台风类型-热带风暴/强台风... + */ + @TableField("TYPE") + private String type; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 台风登陆细节 + */ + @TableField("INFO") + private String info; +} diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java new file mode 100644 index 0000000..70a9703 --- /dev/null +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/TyphoonPoint.java @@ -0,0 +1,117 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; + +/** + * 台风移动点数据库模型 + * + * @author a203 + */ +@Data +@TableName("typhoon_point") +public class TyphoonPoint extends Model { + private static final long serialVersionUID = 1L; + + /** + * 台风数据库主键 + *

+ * type = IdType.AUTO 是数据库自增 + */ + @TableId(value = "ID", type = IdType.AUTO) + private Integer id; + + /** + * 台风ID + */ + @TableField("TYPHOON_ID") + private String typhoonId; + + /** + * 数据更新时间 + */ + @TableField("TIME") + private String time; + + /** + * 台风中心气压,单位【百帕】 + */ + @TableField("CENTER_PRESSURE") + private String centerPressure; + + /** + * 风速,单位【米/每秒】 + */ + @TableField("SPEED") + private String speed; + + /** + * 台风风力等级描述 + */ + @TableField("TYPHOON_TYPE") + private String typhoonType; + + /** + * 台风整体移动速度,单位【公里/小时】 + */ + @TableField("MOVE_SPEED") + private String moveSpeed; + + /** + * 风力,单位【级】 + */ + @TableField("POWER") + private Integer power; + + /** + * 台风未来移动方向 + */ + @TableField("MOVE_DIRECTION") + private String moveDirection; + + /** + * 经度 + */ + @TableField("LNG") + private Double lng; + + /** + * 纬度 + */ + @TableField("LAT") + private Double lat; + + /** + * 12级风力影响半径 + */ + @TableField("RADIUS_12") + private String radius12; + + /** + * 10级风力影响半径 + */ + @TableField("RADIUS_10") + private String radius10; + + /** + * 7级风力影响半径 + */ + @TableField("RADIUS_7") + private String radius7; + + /** + * 台风路线预测 + */ + @TableField("ROUTE_PREDICTION") + private String routePrediction; + + /** + * 中心位置 + */ + @TableField("CENTER_POSITION") + private String centerPosition; +} diff --git a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java index a582f9d..f4e7bf0 100644 --- a/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java +++ b/casic-ship/src/main/java/com/casic/missiles/Job/TyphoonQuartzJob.java @@ -22,5 +22,6 @@ @Scheduled(cron = "0 0 */1 * * ?") public void execute() { typhoonService.saveTyphoonList(); + typhoonService.updateTyphoonDetail(); } } diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java new file mode 100644 index 0000000..9788030 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonDetailMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonDetailMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java new file mode 100644 index 0000000..c60bfab --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonLandMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonLandMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java index 1b95cca..70ea807 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonMapper.java @@ -4,7 +4,7 @@ import com.casic.missiles.modular.system.model.Typhoon; /** - * 船舶数据信息 Mapper 接口 + * 台风数据信息 Mapper 接口 * * @author a203 */ diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java new file mode 100644 index 0000000..9745785 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dao/TyphoonPointMapper.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 Mapper 接口 + * + * @author a203 + */ +public interface TyphoonPointMapper extends BaseMapper { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java index 6a4ac02..a34da1b 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/dto/TyphoonDetailDTO.java @@ -1,5 +1,8 @@ package com.casic.missiles.modular.system.dto; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; import lombok.Data; import java.util.ArrayList; @@ -139,22 +142,22 @@ private String centerPosition; } - public TyphoonDetailDTO(TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean data) { - this.typhoonId = data.getTfid(); - this.name = data.getName(); - this.engName = data.getEnname(); - this.warnLevel = data.getWarnlevel(); - this.centerLng = Double.valueOf(data.getCenterlng()); - this.centerLat = Double.valueOf(data.getCenterlat()); - this.startTime = data.getStarttime(); - this.endTime = data.getEndtime(); - this.isActive = data.getIsactive(); + public TyphoonDetailDTO(TyphoonDetail detail, List landBeans, List pointBeans) { + this.typhoonId = detail.getTyphoonId(); + this.name = detail.getName(); + this.engName = detail.getEngName(); + this.warnLevel = detail.getWarnLevel(); + this.centerLng = detail.getCenterLng(); + this.centerLat = detail.getCenterLat(); + this.startTime = detail.getStartTime(); + this.endTime = detail.getEndTime(); + this.isActive = detail.getIsActive(); List lands = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBean : data.getLand()) { + for (TyphoonLand landBean : landBeans) { LandBan bean = new LandBan(); - bean.landAddress = landBean.getLandaddress(); - bean.landTime = landBean.getLandtime(); - bean.type = landBean.getStrong(); + bean.landAddress = landBean.getLandAddress(); + bean.landTime = landBean.getLandTime(); + bean.type = landBean.getType(); bean.lng = landBean.getLng(); bean.lat = landBean.getLat(); bean.info = landBean.getInfo(); @@ -162,22 +165,22 @@ } this.land = lands; List points = new ArrayList<>(); - for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : data.getPoints()) { + for (TyphoonPoint point : pointBeans) { PointBean pointBean = new PointBean(); pointBean.time = point.getTime(); - pointBean.centerPressure = point.getPressure(); + pointBean.centerPressure = point.getCenterPressure(); pointBean.speed = point.getSpeed(); - pointBean.typhoonType = point.getStrong(); - pointBean.moveSpeed = point.getMovespeed(); - pointBean.power = Integer.valueOf(point.getPower()); - pointBean.moveDirection = point.getMovedirection(); - pointBean.lng = Double.valueOf(point.getLng()); - pointBean.lat = Double.valueOf(point.getLat()); + pointBean.typhoonType = point.getTyphoonType(); + pointBean.moveSpeed = point.getMoveSpeed(); + pointBean.power = point.getPower(); + pointBean.moveDirection = point.getMoveDirection(); + pointBean.lng = point.getLng(); + pointBean.lat = point.getLat(); pointBean.radius12 = point.getRadius12(); pointBean.radius10 = point.getRadius10(); pointBean.radius7 = point.getRadius7(); - pointBean.routePrediction = point.getJl(); - pointBean.centerPosition = point.getCkposition(); + pointBean.routePrediction = point.getRoutePrediction(); + pointBean.centerPosition = point.getCenterPosition(); points.add(pointBean); } this.points = points; diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java new file mode 100644 index 0000000..15c757a --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonDetailService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonDetail; + +/** + * 台风详情数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonDetailService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java new file mode 100644 index 0000000..d16a48b --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonLandService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonLand; + +/** + * 台风登陆点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonLandService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java new file mode 100644 index 0000000..80e2765 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonPointService.java @@ -0,0 +1,13 @@ +package com.casic.missiles.modular.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.system.model.TyphoonPoint; + +/** + * 台风移动点数据信息 服务类 + * + * @author a203 + */ +public interface ITyphoonPointService extends IService { + +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java index cad67ea..8216ae1 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/ITyphoonService.java @@ -8,7 +8,7 @@ import java.util.List; /** - * 船舶数据信息 服务类 + * 台风列表数据信息 服务类 * * @author a203 */ @@ -20,6 +20,13 @@ void saveTyphoonList(); /** + * 更新台风详情 + */ + void updateTyphoonDetail(); + + /***上面接口从第三方存库,下面接口查库**********************/ + + /** * 查询台风列表 * * @return List diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java new file mode 100644 index 0000000..1a054f9 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonDetailServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonDetailMapper; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.service.ITyphoonDetailService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonDetailServiceImpl extends ServiceImpl implements ITyphoonDetailService { + + public TyphoonDetailServiceImpl() { + + } +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java new file mode 100644 index 0000000..d1bf2c7 --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonLandServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonLandMapper; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.service.ITyphoonLandService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonLandServiceImpl extends ServiceImpl implements ITyphoonLandService { + + public TyphoonLandServiceImpl() { + + } +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonPointServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonPointServiceImpl.java new file mode 100644 index 0000000..36815fa --- /dev/null +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonPointServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.modular.system.dao.TyphoonPointMapper; +import com.casic.missiles.modular.system.model.TyphoonPoint; +import com.casic.missiles.modular.system.service.ITyphoonPointService; +import org.springframework.stereotype.Service; + +/** + * 台风数据信息 服务实现类 + * + * @author a203 + */ + +@Service +public class TyphoonPointServiceImpl extends ServiceImpl implements ITyphoonPointService { + + public TyphoonPointServiceImpl() { + + } +} diff --git a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonServiceImpl.java b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonServiceImpl.java index b210e03..979ee78 100644 --- a/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonServiceImpl.java +++ b/casic-ship/src/main/java/com/casic/missiles/modular/system/service/impl/TyphoonServiceImpl.java @@ -12,6 +12,12 @@ import com.casic.missiles.modular.system.dto.TyphoonDetailRemoteData; import com.casic.missiles.modular.system.dto.TyphoonRemoteData; import com.casic.missiles.modular.system.model.Typhoon; +import com.casic.missiles.modular.system.model.TyphoonDetail; +import com.casic.missiles.modular.system.model.TyphoonLand; +import com.casic.missiles.modular.system.model.TyphoonPoint; +import com.casic.missiles.modular.system.service.ITyphoonDetailService; +import com.casic.missiles.modular.system.service.ITyphoonLandService; +import com.casic.missiles.modular.system.service.ITyphoonPointService; import com.casic.missiles.modular.system.service.ITyphoonService; import com.casic.missiles.modular.system.utils.HttpRequestHelper; import org.springframework.stereotype.Service; @@ -30,8 +36,15 @@ private static final String SUCCESS_CODE = "0"; - public TyphoonServiceImpl() { + private final ITyphoonDetailService typhoonDetailService; + private final ITyphoonLandService typhoonLandService; + private final ITyphoonPointService typhoonPointService; + public TyphoonServiceImpl(ITyphoonDetailService typhoonDetailService, + ITyphoonLandService typhoonLandService, ITyphoonPointService typhoonPointService) { + this.typhoonDetailService = typhoonDetailService; + this.typhoonLandService = typhoonLandService; + this.typhoonPointService = typhoonPointService; } /** @@ -46,9 +59,8 @@ if (SUCCESS_CODE.equals(getResponseCode(res))) { TyphoonRemoteData remoteData = JSON.parseObject(res, new TypeReference() { }); - QueryWrapper query = new QueryWrapper<>(); //先清空之前的台风表,再保存最新的台风 - remove(query); + remove(null); List beans = remoteData.getShowapi_res_body().getList(); for (TyphoonRemoteData.ShowapiResBodyBean.ListBean data : beans) { //将获取到台风数据存到数据库 @@ -72,6 +84,80 @@ } } + /** + * 更新台风详情 + */ + @Override + public void updateTyphoonDetail() { + for (Typhoon typhoon : list()) { + /** + * 获取台风接口数据 + * */ + String res = HttpRequestHelper.doGet( + TyphoonConstant.TYPHOON_DETAIL.replace("ID", typhoon.getTyphoonId()) + + System.currentTimeMillis()); + if (SUCCESS_CODE.equals(getResponseCode(res))) { + TyphoonDetailRemoteData remoteData = JSON.parseObject(res, new TypeReference() { + }); + TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean objBean = remoteData.getShowapi_res_body().getObj(); + //保存台风基本情况存到数据库 + TyphoonDetail detail = new TyphoonDetail(); + detail.setTyphoonId(objBean.getTfid()); + detail.setName(objBean.getName()); + detail.setEngName(objBean.getEnname()); + detail.setWarnLevel(objBean.getWarnlevel()); + detail.setCenterLng(Double.parseDouble(objBean.getCenterlng())); + detail.setCenterLat(Double.parseDouble(objBean.getCenterlat())); + detail.setStartTime(objBean.getStarttime()); + detail.setEndTime(objBean.getEndtime()); + detail.setIsActive(objBean.getIsactive()); + typhoonDetailService.saveOrUpdate(detail, new QueryWrapper().eq("TYPHOON_ID", objBean.getTfid())); + + //保存台风登陆情况存到数据库 + List land = objBean.getLand(); + typhoonLandService.remove(new QueryWrapper().eq("TYPHOON_ID", objBean.getTfid())); + for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.LandBan landBan : land) { + TyphoonLand typhoonLand = new TyphoonLand(); + + typhoonLand.setTyphoonId(objBean.getTfid()); + typhoonLand.setLandAddress(landBan.getLandaddress()); + typhoonLand.setLandTime(landBan.getLandtime()); + typhoonLand.setType(landBan.getStrong()); + typhoonLand.setLng(landBan.getLng()); + typhoonLand.setLat(landBan.getLat()); + typhoonLand.setInfo(landBan.getInfo()); + + typhoonLandService.save(typhoonLand); + } + + //保存台风移动路径存到数据库 + List points = objBean.getPoints(); + typhoonPointService.remove(new QueryWrapper().eq("TYPHOON_ID", objBean.getTfid())); + for (TyphoonDetailRemoteData.ShowapiResBodyBean.ObjBean.PointsBean point : points) { + TyphoonPoint typhoonPoint = new TyphoonPoint(); + + typhoonPoint.setTyphoonId(objBean.getTfid()); + typhoonPoint.setTime(point.getTime()); + typhoonPoint.setCenterPressure(point.getPressure()); + typhoonPoint.setSpeed(point.getSpeed()); + typhoonPoint.setTyphoonType(point.getStrong()); + typhoonPoint.setMoveSpeed(point.getMovespeed()); + typhoonPoint.setPower(Integer.parseInt(point.getPower())); + typhoonPoint.setMoveDirection(point.getMovedirection()); + typhoonPoint.setLng(point.getLng()); + typhoonPoint.setLat(point.getLat()); + typhoonPoint.setRadius12(point.getRadius12()); + typhoonPoint.setRadius10(point.getRadius10()); + typhoonPoint.setRadius7(point.getRadius7()); + typhoonPoint.setRoutePrediction(point.getJl()); + typhoonPoint.setCenterPosition(point.getCkposition()); + + typhoonPointService.save(typhoonPoint); + } + } + } + } + @Override public List currentTyphoonList() { List typhoonList = new ArrayList<>(); @@ -83,19 +169,16 @@ @Override public TyphoonDetailDTO typhoonDetail(String typhoonId) { - /** - * 获取台风接口数据 - * */ - String res = HttpRequestHelper.doGet( - TyphoonConstant.TYPHOON_DETAIL.replace("ID", typhoonId) - + System.currentTimeMillis()); - TyphoonDetailDTO detailDTO = null; - if (SUCCESS_CODE.equals(getResponseCode(res))) { - TyphoonDetailRemoteData remoteData = JSON.parseObject(res, new TypeReference() { - }); - detailDTO = new TyphoonDetailDTO(remoteData.getShowapi_res_body().getObj()); - } - return detailDTO; + TyphoonDetail detail = typhoonDetailService.getOne( + new QueryWrapper().eq("TYPHOON_ID", typhoonId) + ); + List landList = typhoonLandService.list( + new QueryWrapper().eq("TYPHOON_ID", typhoonId) + ); + List pointList = typhoonPointService.list( + new QueryWrapper().eq("TYPHOON_ID", typhoonId) + ); + return new TyphoonDetailDTO(detail, landList, pointList); } public String getResponseCode(String value) {