Commit 958f88e7 by 袁伟铭

添加婚姻统计接口

parent 1c649d28
package com.zq.portal.controller.app; package com.zq.portal.controller.app;
import com.zq.common.vo.ResultVo; import com.zq.common.vo.ResultVo;
import com.zq.portal.manager.CacheKeys;
import com.zq.portal.manager.PortalCacheManager;
import com.zq.portal.service.StatsService; import com.zq.portal.service.StatsService;
import com.zq.portal.vo.StatsReqVo; import com.zq.portal.vo.StatsReqVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -18,6 +20,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -18,6 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
public class HyStatsController { public class HyStatsController {
public final StatsService statsService; public final StatsService statsService;
public final PortalCacheManager cacheManager;
@ApiOperation("获取结婚离婚人数") @ApiOperation("获取结婚离婚人数")
@PostMapping(value = "/getTotalMarryDivorce") @PostMapping(value = "/getTotalMarryDivorce")
...@@ -28,6 +31,10 @@ public class HyStatsController { ...@@ -28,6 +31,10 @@ public class HyStatsController {
@ApiOperation("获取地区结婚离婚人数列表") @ApiOperation("获取地区结婚离婚人数列表")
@PostMapping(value = "/getAreaMarryDivorceList") @PostMapping(value = "/getAreaMarryDivorceList")
public ResultVo getAreaMarryDivorceList(@RequestBody StatsReqVo vo) { public ResultVo getAreaMarryDivorceList(@RequestBody StatsReqVo vo) {
Object obj = cacheManager.getObj(CacheKeys.getAreaHyListKey(vo.getAreaCode()));
if (obj != null) {
return ResultVo.success(obj);
}
return ResultVo.success(statsService.getAreaMarryDivorceList(vo)); return ResultVo.success(statsService.getAreaMarryDivorceList(vo));
} }
......
...@@ -8,5 +8,9 @@ public abstract class CacheKeys { ...@@ -8,5 +8,9 @@ public abstract class CacheKeys {
return PREFIX + "map." + areaCode; return PREFIX + "map." + areaCode;
} }
public static String getAreaHyListKey(String areaCode) {
return PREFIX + "areaHyList." + areaCode;
}
} }
...@@ -28,7 +28,7 @@ public class StatsService { ...@@ -28,7 +28,7 @@ public class StatsService {
private final HyStatsDao hyStatsDao; private final HyStatsDao hyStatsDao;
private final ShzzStatsDao shzzStatsDao; private final ShzzStatsDao shzzStatsDao;
private final AreaDao areaDao; private final AreaDao areaDao;
private final PortalCacheManager portalCacheManager; private final PortalCacheManager cacheManager;
public Object getMapStatsData(StatsReqVo vo) { public Object getMapStatsData(StatsReqVo vo) {
List<Map<String, Object>> returnData = new ArrayList<>(); List<Map<String, Object>> returnData = new ArrayList<>();
...@@ -55,7 +55,7 @@ public class StatsService { ...@@ -55,7 +55,7 @@ public class StatsService {
} }
if (returnData.size() > 0) { if (returnData.size() > 0) {
portalCacheManager.setObj(CacheKeys.getMapDataKey(vo.getAreaCode()), returnData); cacheManager.setObj(CacheKeys.getMapDataKey(vo.getAreaCode()), returnData);
} }
return returnData; return returnData;
...@@ -94,13 +94,17 @@ public class StatsService { ...@@ -94,13 +94,17 @@ public class StatsService {
List<SystemArea> systemAreaList = areaDao.selectList(Wrappers.lambdaQuery(SystemArea.builder().parentId(area.getCode()).build())); List<SystemArea> systemAreaList = areaDao.selectList(Wrappers.lambdaQuery(SystemArea.builder().parentId(area.getCode()).build()));
for (SystemArea systemArea : systemAreaList) { for (SystemArea systemArea : systemAreaList) {
Map<String, Object> areaData = new HashMap<>(); Map<String, Object> areaData = new HashMap<>();
// 按结婚离婚分类统计
List<StatsVo> totalMarryDivorce = hyStatsDao.getTotalMarryDivorce(StatsReqVo.builder().areaCode(systemArea.subAreaCode()).build()); List<StatsVo> totalMarryDivorce = hyStatsDao.getTotalMarryDivorce(StatsReqVo.builder().areaCode(systemArea.subAreaCode()).build());
areaData.put("data", totalMarryDivorce); for (StatsVo statsVo : totalMarryDivorce) {
areaData.put(statsVo.getType(), statsVo.getNum());
}
areaData.put("areaName", systemArea.getName()); areaData.put("areaName", systemArea.getName());
areaData.put("areaCode", systemArea.getCode()); areaData.put("areaCode", systemArea.getCode());
returnData.add(areaData); returnData.add(areaData);
} }
cacheManager.setObj(CacheKeys.getAreaHyListKey(vo.getAreaCode()), returnData);
return returnData; return returnData;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment