From b6f20e5b513af7d7423d124e73228f1a4e93df32 Mon Sep 17 00:00:00 2001 From: xjm Date: Wed, 17 Jul 2024 16:31:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B0=94=E8=B1=A1=E9=A2=84=E8=AD=A6=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/whdc/component/MyPostConstruct.java | 6 ++- .../com/whdc/controller/QXWarnController.java | 38 ++++++++++++++----- .../java/com/whdc/mapper/QXWarningMapper.java | 1 + .../java/com/whdc/model/entity/QXWarning.java | 22 +++++------ .../com/whdc/service/IQXWarningService.java | 2 + .../service/impl/QXWarningServiceImpl.java | 4 ++ .../resources/mapper/AddressBookOldMapper.xml | 2 +- 7 files changed, 52 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/whdc/component/MyPostConstruct.java b/src/main/java/com/whdc/component/MyPostConstruct.java index 721b4b4..10ca22c 100644 --- a/src/main/java/com/whdc/component/MyPostConstruct.java +++ b/src/main/java/com/whdc/component/MyPostConstruct.java @@ -61,9 +61,11 @@ public class MyPostConstruct { @Async @ApiOperation(value = "预警数据同步接口", notes = "预警数据同步接口") @GetMapping("/syncData") - @Scheduled(cron ="0 0/1 * * * ?") + @Scheduled(cron ="*/20 * * * * ?") public void syncData() { - sync(null,null); + LocalDateTime now = LocalDateTime.now(); + sync(DateUtils.dateToStr(now.minusHours(1)),DateUtils.dateToStr(now.plusHours(1))); +// sync(null,null); } /** diff --git a/src/main/java/com/whdc/controller/QXWarnController.java b/src/main/java/com/whdc/controller/QXWarnController.java index 99536e1..d69d7ef 100644 --- a/src/main/java/com/whdc/controller/QXWarnController.java +++ b/src/main/java/com/whdc/controller/QXWarnController.java @@ -12,6 +12,7 @@ import com.whdc.model.entity.WarnMsgFB; import com.whdc.model.vo.*; import com.whdc.service.*; import com.whdc.utils.DateUtils; +import com.whdc.utils.ExcelCommon; import com.whdc.utils.HttpUtil; import com.whdc.utils.ResultJson; import io.swagger.annotations.Api; @@ -29,6 +30,7 @@ import org.springframework.data.redis.core.RedisTemplate; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletResponse; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; @@ -252,6 +254,7 @@ public class QXWarnController { for (int i = 0; i < cnnms.length; i++) { String cnnm = cnnms[i]; String cnnm2 = cnnm.replace("县", "").replace("区", ""); + // String adcd = adinfoService.getAdcdByAdnm2(cnnm2);//根据区县的名字找到对应的adcd // System.out.println(adcd); if (StringUtils.isNotBlank(cnnm2)) { @@ -291,9 +294,9 @@ public class QXWarnController { return ResultJson.error("该名称或编码重复"); } - if (dto.getCallTime() == null) { - dto.setCallTime(dto.getHandleTime()); - } +// if (dto.getCallTime() == null) { +// dto.setCallTime(dto.getHandleTime()); +// } boolean save = warnMsgFBService.save(dto); @@ -513,6 +516,23 @@ public class QXWarnController { } + /** + * 历史气象预警统计 + * + * @param dto + * @return + */ + @ApiOperation(value = "历史气象预警导出") + @PostMapping("/getHistoryWarning/download") + public void getHistoryWarningDownload(@RequestBody GroupWarningDto dto, HttpServletResponse response) { + + List list = service.list(dto); + ExcelCommon.exportExcel(list, + null, "历史气象预警", QXWarning.class, "历史气象预警.xlsx", + response); + + } + /** * 历史7天暴雨预警叫应信息统计 * @@ -961,7 +981,7 @@ public class QXWarnController { } String str = HttpUtil.getBySetCookie("https://shdata.cloudowr.cn/shwarn/msg/totalquery?stm=" + stm.toLocalDate().toString() + "&etm=" + etm.toLocalDate().toString(), - "userobj="+ userobj); + "userobj=" + userobj); JSONObject json = JSON.parseObject(str); if (json != null && json.getInteger("ok") == 1) { TotalQueryVo data = json.getJSONObject("results").toJavaObject(TotalQueryVo.class); @@ -1028,7 +1048,7 @@ public class QXWarnController { List oraCnnms = Lists.newArrayList(); orangeList.forEach((k, v) -> { - warnStr.append(getCnnmStr(v,oraCnnms)); + warnStr.append(getCnnmStr(v, oraCnnms)); }); warnStr.setCharAt(warnStr.length() - 1, '等'); @@ -1039,7 +1059,7 @@ public class QXWarnController { List redCnnms = Lists.newArrayList(); redList.forEach((k, v) -> { - warnStr.append(getCnnmStr(v,redCnnms)); + warnStr.append(getCnnmStr(v, redCnnms)); }); warnStr.setCharAt(warnStr.length() - 1, '等'); warnStr.append(redCnnms.size()).append("个县市区,").append(red.stream().filter(o -> Objects.nonNull(o.getCallTime())).count()).append("次。"); @@ -1052,7 +1072,7 @@ public class QXWarnController { List oraCnnms = Lists.newArrayList(); orangeList.forEach((k, v) -> { - warnStr.append(getCnnmStr(v,oraCnnms)); + warnStr.append(getCnnmStr(v, oraCnnms)); }); warnStr.setCharAt(warnStr.length() - 1, '等'); @@ -1064,7 +1084,7 @@ public class QXWarnController { List redCnnms = Lists.newArrayList(); redList.forEach((k, v) -> { - warnStr.append(getCnnmStr(v,redCnnms)); + warnStr.append(getCnnmStr(v, redCnnms)); }); warnStr.setCharAt(warnStr.length() - 1, '等'); warnStr.append(redCnnms.size()).append("个县市区,").append(red.stream().filter(o -> Objects.nonNull(o.getCallTime())).count()).append("次。"); @@ -1077,7 +1097,7 @@ public class QXWarnController { } - private StringBuilder getCnnmStr(List list,List cnnms) { + private StringBuilder getCnnmStr(List list, List cnnms) { List lists = list.stream().map(QXWarning::getCnnm).distinct().collect(Collectors.toList()); HashSet cnnmSet = Sets.newHashSet(); diff --git a/src/main/java/com/whdc/mapper/QXWarningMapper.java b/src/main/java/com/whdc/mapper/QXWarningMapper.java index e03c29d..f625af5 100644 --- a/src/main/java/com/whdc/mapper/QXWarningMapper.java +++ b/src/main/java/com/whdc/mapper/QXWarningMapper.java @@ -14,6 +14,7 @@ public interface QXWarningMapper extends BaseMapper { List findByMsgIsNull(); IPage page(@Param("page") IPage page, @Param("dto") GroupWarningDto dto); + List list( @Param("dto") GroupWarningDto dto); List getWarnAndMsg(@Param("stm") String stm,@Param("etm") String etm); } diff --git a/src/main/java/com/whdc/model/entity/QXWarning.java b/src/main/java/com/whdc/model/entity/QXWarning.java index ce9b0b6..392e801 100644 --- a/src/main/java/com/whdc/model/entity/QXWarning.java +++ b/src/main/java/com/whdc/model/entity/QXWarning.java @@ -25,61 +25,61 @@ public class QXWarning { @ApiModelProperty(value = "id") private Integer id; - @Excel(name = "createTime") + @Excel(name = "预警信息生成时间") @TableField("CREATE_TIME") @ApiModelProperty(value = "预警信息生成时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; - @Excel(name = "publishTime") + @Excel(name = "预警信息发布时间") @TableField("PUBLISH_TIME") @ApiModelProperty(value = "预警信息发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date publishTime; - @Excel(name = "startTime") + @Excel(name = "预警信息开始时间") @TableField("START_TIME") @ApiModelProperty(value = "预警信息开始时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date startTime; - @Excel(name = "endTime") + @Excel(name = "预警信息结束时间") @TableField("END_TIME") @ApiModelProperty(value = "预警信息结束时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date endTime; - @Excel(name = "warnSignalType") + @Excel(name = "预警类型") @ApiParam(value = "预警类型") @ApiModelProperty(value = "预警类型", dataType = "java.lang.String") private String warnSignalType; - @Excel(name = "warnSignalLevel") + @Excel(name = "预警级别") @ApiParam(value = "预警级别") @ApiModelProperty(value = "预警级别", dataType = "java.lang.String") private String warnSignalLevel; - @Excel(name = "publishUnit") + @Excel(name = "发布单位") @ApiParam(value = "发布单位") @ApiModelProperty(value = "发布单位", dataType = "java.lang.String") private String publishUnit; - @Excel(name = "content") + @Excel(name = "预警内容") @ApiParam(value = "预警内容") @ApiModelProperty(value = "预警内容", dataType = "java.lang.String") private String content; - @Excel(name = "Qx_Id") + @Excel(name = "预警信息ID") @TableField("WARNID") @ApiModelProperty(value = "预警信息ID") private Integer warnid; - @Excel(name = "effectArea_Big") + @Excel(name = "预警市名称") @TableField("CTNM") @ApiModelProperty(value = "预警市名称", dataType = "java.lang.String") private String ctnm; - @Excel(name = "effectArea_Small") + @Excel(name = "预警县名称") @TableField("CNNM") @ApiModelProperty(value = "预警县名称", dataType = "java.lang.String") private String cnnm; diff --git a/src/main/java/com/whdc/service/IQXWarningService.java b/src/main/java/com/whdc/service/IQXWarningService.java index e082ac6..b9b5b85 100644 --- a/src/main/java/com/whdc/service/IQXWarningService.java +++ b/src/main/java/com/whdc/service/IQXWarningService.java @@ -12,5 +12,7 @@ public interface IQXWarningService extends IService { List find(); IPage page(GroupWarningDto dto); + List list(GroupWarningDto dto); + List getWarnAndMsg(String stm, String etm); } \ No newline at end of file diff --git a/src/main/java/com/whdc/service/impl/QXWarningServiceImpl.java b/src/main/java/com/whdc/service/impl/QXWarningServiceImpl.java index 86ca236..1fde9c0 100644 --- a/src/main/java/com/whdc/service/impl/QXWarningServiceImpl.java +++ b/src/main/java/com/whdc/service/impl/QXWarningServiceImpl.java @@ -24,6 +24,10 @@ public class QXWarningServiceImpl extends ServiceImpl page(GroupWarningDto dto) { return getBaseMapper().page(dto.getPage(),dto); } + @Override + public List list(GroupWarningDto dto) { + return getBaseMapper().list(dto); + } @Override public List getWarnAndMsg(String stm, String etm) { diff --git a/src/main/resources/mapper/AddressBookOldMapper.xml b/src/main/resources/mapper/AddressBookOldMapper.xml index d60a35e..d377491 100644 --- a/src/main/resources/mapper/AddressBookOldMapper.xml +++ b/src/main/resources/mapper/AddressBookOldMapper.xml @@ -93,7 +93,7 @@ select * from ADDRESS_BOOK_OLD A where 1=1 and - A.CNNM like CONCAT(#{adnm},'%') + A.CNNM like CONCAT('%',#{adnm},'%')