From d1ec716131a2b5734c19c5ffe1e96fbb5c3938c3 Mon Sep 17 00:00:00 2001 From: xjm Date: Tue, 28 May 2024 13:45:56 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E8=BF=87=E8=A1=8C=E6=94=BF=E5=8C=BA?= =?UTF-8?q?=E5=88=92=E4=B8=8B=E8=BD=BDexcel=E6=96=B0=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AddressBookController.java | 7 +++-- .../com/whdc/controller/AdinfoController.java | 28 +++++++++++++++++++ .../whdc/controller/WarningController.java | 26 +++++++++++++++-- 3 files changed, 56 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/whdc/controller/AddressBookController.java b/src/main/java/com/whdc/controller/AddressBookController.java index 0b08bc7..5ba37df 100644 --- a/src/main/java/com/whdc/controller/AddressBookController.java +++ b/src/main/java/com/whdc/controller/AddressBookController.java @@ -18,6 +18,7 @@ import com.whdc.utils.ExcelCommon; import com.whdc.utils.ResultJson; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.compress.utils.Lists; @@ -429,11 +430,13 @@ public class AddressBookController { @ApiOperation(value = "通过行政区划下载excel") @GetMapping(value = "getExcel/{adnm}") - public void getExcel(@PathVariable("adnm") String adnm, HttpServletResponse response) { + public void getExcel(@PathVariable("adnm") + @ApiParam(value = "名称,all: 查询全部") + String adnm, HttpServletResponse response) { // 查询全部标识 if ("all".equals(adnm)) { - adnm = null; + adnm = ""; } List tree = adinfoService.tree(null, null); diff --git a/src/main/java/com/whdc/controller/AdinfoController.java b/src/main/java/com/whdc/controller/AdinfoController.java index 2ab14a1..d468c0f 100644 --- a/src/main/java/com/whdc/controller/AdinfoController.java +++ b/src/main/java/com/whdc/controller/AdinfoController.java @@ -67,6 +67,34 @@ public class AdinfoController { } + @GetMapping("/getCountys/{adnm}") + @ApiOperation(value = "通过市名获取县") + public ResultJson> getCountys(@PathVariable("adnm") + @ApiParam(value = "名称,all: 查询全部") + String adnm) { + + // 查询全部标识 + if ("all".equals(adnm)) { + adnm = null; + } + + Adinfo one = service.lambdaQuery() + .like(Adinfo::getAdnm, adnm) + .one(); + if (Objects.isNull(one)){ + return ResultJson.error("当前行政区划不存在"); + } + String adcd = one.getAdcd(); + + // 确保查的是县 + List list = service.lambdaQuery() + .likeRight(Adinfo::getAdcd, adcd.replace("00000000000", "")) + .likeLeft(Adinfo::getAdcd, "000000000") + .list(); + return ResultJson.ok(list); + + } + @ApiOperation(value = "添加") @PostMapping(value = "save") diff --git a/src/main/java/com/whdc/controller/WarningController.java b/src/main/java/com/whdc/controller/WarningController.java index ca1d9c8..2da9961 100644 --- a/src/main/java/com/whdc/controller/WarningController.java +++ b/src/main/java/com/whdc/controller/WarningController.java @@ -27,7 +27,10 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; /** @@ -326,10 +329,27 @@ public class WarningController { .collect(Collectors .groupingBy(WarningHistoryListVo::getEffectArea, Collectors.toList())); - return getAdcdByWhlVo(tree, areaMap); + return setAll(getAdcdByWhlVo(tree, areaMap)); } - return voList; + return setAll(voList); + } + + private List setAll( List vos){ + if (CollectionUtils.isNotEmpty(vos)){ + WarningHistoryListVo vo = new WarningHistoryListVo(); + int oraSum = vos.stream().mapToInt(WarningHistoryListVo::getOraCount).sum(); + vo.setOraCount(oraSum); + int redSum = vos.stream().mapToInt(WarningHistoryListVo::getRedCount).sum(); + vo.setRedCount(redSum); + int bluSum = vos.stream().mapToInt(WarningHistoryListVo::getBluCount).sum(); + vo.setBluCount(bluSum); + int yelSum = vos.stream().mapToInt(WarningHistoryListVo::getYelCount).sum(); + vo.setYelCount(yelSum); + vo.setSumCount(oraSum + redSum + bluSum + yelSum); + vos.add(0,vo); + } + return vos; } private List getAdcdByWhlVo(List tree, Map> areaMap) {