From 74f9b8bfe0b20a749677caaf5cff302701f45092 Mon Sep 17 00:00:00 2001 From: xjm Date: Tue, 25 Jun 2024 17:58:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E9=98=B2=E6=B1=9B=E6=8A=97?= =?UTF-8?q?=E6=97=B1=E9=80=9A=E8=AE=AF=E5=BD=95=E6=97=A7=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93,=E9=98=B2=E6=B1=9B=E9=80=9A?= =?UTF-8?q?=E8=AE=AF=E5=BD=95=E5=8E=86=E5=8F=B2=E9=A2=84=E8=AD=A6=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AddressBookOldController.java | 4 +++ .../whdc/controller/WarnMsgFBController.java | 33 +++++++++++++++++++ .../java/com/whdc/model/entity/WarnMsgFB.java | 15 +++++++++ src/main/resources/application.yml | 8 ++--- 4 files changed, 56 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/whdc/controller/AddressBookOldController.java b/src/main/java/com/whdc/controller/AddressBookOldController.java index 08d7932..8cb1aa6 100644 --- a/src/main/java/com/whdc/controller/AddressBookOldController.java +++ b/src/main/java/com/whdc/controller/AddressBookOldController.java @@ -17,6 +17,8 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.cache.annotation.Cacheable; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -59,6 +61,7 @@ public class AddressBookOldController { @ApiOperation(value = "查询所有联系人") @PostMapping(value = "find") + @Cacheable(value = ADDRESS_BOOK_REDIS_KEY, key = "#root.method.name+':'+#dto.toString()") public ResultJson> find(@RequestBody AddressBookOldDto dto) { LambdaQueryChainWrapper query = service.lambdaQuery(); @@ -116,6 +119,7 @@ public class AddressBookOldController { } @ApiOperation(value = "联系人导入") @PostMapping(value = "uploadExcel") + @CacheEvict(value = ADDRESS_BOOK_REDIS_KEY, allEntries = true) public ResultJson uploadExcel(@RequestBody ExcelDataVo data) { String s = redisTemplate.opsForValue().get(ADDRESS_BOOK_TEMP_REDIS_KEY + data.getKey()); diff --git a/src/main/java/com/whdc/controller/WarnMsgFBController.java b/src/main/java/com/whdc/controller/WarnMsgFBController.java index 99af26e..4b2a367 100644 --- a/src/main/java/com/whdc/controller/WarnMsgFBController.java +++ b/src/main/java/com/whdc/controller/WarnMsgFBController.java @@ -2,7 +2,9 @@ package com.whdc.controller; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.whdc.model.entity.WarnMsgFB; +import com.whdc.model.vo.ExcelOldDataVo; import com.whdc.service.IWarnMsgFBService; +import com.whdc.utils.ExcelCommon; import com.whdc.utils.ResultJson; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -13,6 +15,11 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; @Slf4j @Api(tags = "预警叫应 - Controller") @@ -49,4 +56,30 @@ public class WarnMsgFBController { return ResultJson.ok(service.find(dto)); } + + + @ApiOperation(value = "解析文件数据") + @PostMapping(value = "getExcelData") + public ResultJson getExcelData(MultipartFile file) { + + List appends = ExcelCommon.importExcel(file, 0, 1, WarnMsgFB.class); + + service.saveBatch(appends); + + List warns = appends.stream().map(WarnMsgFB::getWarnid).collect(Collectors.toList()); + + List list = service.lambdaQuery().in(WarnMsgFB::getWarnid, warns).list(); + + Map> map = list.stream().collect(Collectors.groupingBy(WarnMsgFB::getWarnid, Collectors.toList())); + + map.forEach((k,v) ->{ + if (CollectionUtils.isNotEmpty(v) && v.size() > 1){ + for (int i = 1; i < v.size(); i++) { + service.removeById(v.get(i)); + } + } + }); + + return ResultJson.ok(); + } } diff --git a/src/main/java/com/whdc/model/entity/WarnMsgFB.java b/src/main/java/com/whdc/model/entity/WarnMsgFB.java index ac79b1d..568a83b 100644 --- a/src/main/java/com/whdc/model/entity/WarnMsgFB.java +++ b/src/main/java/com/whdc/model/entity/WarnMsgFB.java @@ -1,6 +1,9 @@ package com.whdc.model.entity; +import cn.afterturn.easypoi.excel.annotation.Excel; +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.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; @@ -18,38 +21,50 @@ import java.util.Date; @TableName("FXKH_TXL.WARNMSG_FEEDBACK") public class WarnMsgFB { + @TableId(value = "ID",type = IdType.AUTO) + @ApiModelProperty(value = "id") + private Integer id; + @TableField("WARNID") @ApiModelProperty(value = "预警信息ID") + @Excel(name = "warnid") private Integer warnid; @TableField("PUBLISH_TIME") @ApiModelProperty(value = "预警信息发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @Excel(name = "publishTime") private Date publishTime; @TableField("HANDLE_TIME") @ApiModelProperty(value = "预警信息处理时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @Excel(name = "handleTime") private Date handleTime; @TableField("CALL_TIME") @ApiModelProperty(value = "预警信息呼叫时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @Excel(name = "callTime") private Date callTime; @TableField("CALLED_PERSON") @ApiModelProperty(value="被呼叫人姓名") + @Excel(name = "calledPerson") private String calledPerson; @TableField("CALLED_POSITION") @ApiModelProperty(value="被呼叫人职务") + @Excel(name = "calledPosition") private String calledPosition; @TableField("CALLED_PHONE") @ApiModelProperty(value="被呼叫人手机号") + @Excel(name = "calledPhone") private String calledPhone; @TableField("CALL_PERSON") @ApiModelProperty(value="呼叫人姓名") + @Excel(name = "callPerson") private String callPerson; } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index e3da52e..040aef2 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -40,10 +40,10 @@ spring: # Redis redis: database: 5 - host: 10.42.6.75 -# host: 127.0.0.1 -# password: - password: Whdc_890 +# host: 10.42.6.75 + host: 127.0.0.1 + password: +# password: Whdc_890 port: 6379 servlet: