Commit 7873c0aa by wqc

调整app数据接口

parent 024c8fae
package com.zq.api.feign;
import com.zq.api.config.FeignConfig;
import com.zq.common.vo.ResultVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
@FeignClient(name = "PORTAL-SERVER", configuration = FeignConfig.class) //指定调用哪个微服务
@RequestMapping("/portal/app")
public interface PortalFeign {
@GetMapping("/area/getChildAreaList")
ResultVo getChildAreaList(@RequestParam String areaCode);
@PostMapping("/stats/getMarriageStats")
ResultVo getMarriageStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getYearMarriedCouple")
ResultVo getYearMarriedCouple(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaUnderMarriageStatsList")
ResultVo getAreaUnderMarriageStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getFivesYearMarriageLine")
ResultVo getFivesYearMarriageLine(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaDisabledIssueStats")
ResultVo getAreaDisabledIssueStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getYearDisabledIssueStats")
ResultVo getYearDisabledIssueStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaShjzStats")
ResultVo getAreaShjzStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getFivesYearShjzAchieveStats")
ResultVo getFivesYearShjzAchieveStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getFivesYearShjzProvideStats")
ResultVo getFivesYearShjzProvideStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getSoorganStats")
ResultVo getSoorganStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaUnderSoorganStatsList")
ResultVo getAreaUnderSoorganStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAppMapStats")
ResultVo getAppMapStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/gatherSearch")
ResultVo gatherSearch(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAgencyChildStats")
ResultVo getAgencyChildStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAgencyChildStatsList")
ResultVo getAgencyChildStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getCremationStats")
ResultVo getCremationStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getCremationStatsList")
ResultVo getCremationStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getCremationStatsById")
ResultVo getCremationStatsById(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaUnderNumStats")
ResultVo getAreaUnderNumStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getEnjoySubsidyStats")
ResultVo getEnjoySubsidyStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getEnjoySumStatsData")
ResultVo getEnjoySumStatsData(@RequestBody Map<String, Object> paramsMap);
}
package com.zq.api.feign;
import com.zq.api.config.FeignConfig;
import com.zq.common.vo.ResultVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
@FeignClient(name = "PORTAL-SERVER", configuration = FeignConfig.class) //指定调用哪个微服务
@RequestMapping("/portal/app")
public interface PortalFeign {
@GetMapping("/area/getChildAreaList")
ResultVo getChildAreaList(@RequestParam String areaCode);
@PostMapping("/stats/getMarriageStats")
ResultVo getMarriageStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getYearMarriedCouple")
ResultVo getYearMarriedCouple(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaUnderMarriageStatsList")
ResultVo getAreaUnderMarriageStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getFivesYearMarriageLine")
ResultVo getFivesYearMarriageLine(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaDisabledIssueStats")
ResultVo getAreaDisabledIssueStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getYearDisabledIssueStats")
ResultVo getYearDisabledIssueStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaShjzStats")
ResultVo getAreaShjzStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAppShjzData")
ResultVo getAppShjzData(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAppEnjoyData")
ResultVo getAppEnjoyData(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getFivesYearShjzAchieveStats")
ResultVo getFivesYearShjzAchieveStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getFivesYearShjzProvideStats")
ResultVo getFivesYearShjzProvideStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getSoorganStats")
ResultVo getSoorganStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaUnderSoorganStatsList")
ResultVo getAreaUnderSoorganStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAppMapStats")
ResultVo getAppMapStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/gatherSearch")
ResultVo gatherSearch(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAgencyChildStats")
ResultVo getAgencyChildStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAgencyChildStatsList")
ResultVo getAgencyChildStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getCremationStats")
ResultVo getCremationStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getCremationStatsList")
ResultVo getCremationStatsList(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getCremationStatsById")
ResultVo getCremationStatsById(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getAreaUnderNumStats")
ResultVo getAreaUnderNumStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getEnjoySubsidyStats")
ResultVo getEnjoySubsidyStats(@RequestBody Map<String, Object> paramsMap);
@PostMapping("/stats/getEnjoySumStatsData")
ResultVo getEnjoySumStatsData(@RequestBody Map<String, Object> paramsMap);
}
......@@ -47,4 +47,10 @@ public class CjStatsController {
return ResultVo.success(cjStatsService.getEnjoySubsidyStats(vo));
}
@ApiOperation("区域在享发放统计")
@PostMapping(value = "/getAppEnjoyData")
public ResultVo getAppEnjoyData(@RequestBody StatsReqVo vo) {
return ResultVo.success(cjStatsService.getAppEnjoyData(vo));
}
}
......@@ -65,8 +65,13 @@ public class ShjzStatsController {
@ApiOperation("获取区域统计列表")
@PostMapping(value = "/getAreaShjzStats")
public ResultVo getAreaShjzStats(@RequestBody StatsReqVo vo) {
// AssertUtils.notNull(vo.getYear(), "年份不能为空");
return ResultVo.success(shjzStatsService.getCacheAreaShjzStats(vo));
}
@ApiOperation("获取app统计列表")
@PostMapping(value = "/getAppShjzData")
public ResultVo getAppShjzData(@RequestBody StatsReqVo vo) {
return ResultVo.success(shjzStatsService.getAppShjzData(vo));
}
}
......@@ -73,4 +73,8 @@ public interface CjStatsDao {
List<StatsVo> getAreaSubsidyStats(StatsReqVo vo);
StatsVo getEnjoySumStats(StatsReqVo vo);
List<StatsVo> getAppEnjoyData(StatsReqVo vo);
List<StatsVo> getAppEnjoyTotal(StatsReqVo vo);
}
......@@ -2,6 +2,7 @@ package com.zq.portal.dao;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.zq.common.constant.DBName;
import com.zq.portal.entity.AppData;
import com.zq.portal.vo.SearchReqVo;
import com.zq.portal.vo.StatsReqVo;
import com.zq.portal.vo.StatsVo;
......@@ -79,4 +80,8 @@ public interface ShjzStatsDao {
List<StatsVo> getMonyNumStats(StatsReqVo vo);
List<StatsVo> getAreaTotalNumStats(StatsReqVo vo);
List<StatsVo> getAppShjzData(StatsReqVo vo);
AppData getAppData();
}
package com.zq.portal.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@TableName(value = "app_data")
public class AppData {
/**
* id
*/
@TableId(type = IdType.AUTO)
private Long id;
/**
*
*/
@ApiModelProperty("临时救助人数(来源救助系统查询)")
private String temporaryHelp;
/**
*
*/
@ApiModelProperty("支出型困难(来源救助系统查询)")
private String expensesHu;
}
......@@ -180,7 +180,7 @@ public class CjStatsService {
issueStatsList.sort(Comparator.comparing(StatsVo::getYear));
for (StatsVo difficultStats : issueStatsList) {
numList.add(String.valueOf(difficultStats.getNum()));
amountList.add(difficultStats.getAmount());
amountList.add(difficultStats.getAmount().toString());
}
}
......@@ -229,7 +229,7 @@ public class CjStatsService {
}
areaList.add(area.getName());
severeIssueNumList.add(String.valueOf(severeAreaIssueStat.getNum()));
severeIssueAmountList.add(severeAreaIssueStat.getAmount());
severeIssueAmountList.add(severeAreaIssueStat.getAmount().toString());
vo.setSubAreaCode(severeAreaIssueStat.getCode());
Map<String, Object> data = new HashMap<>();
......@@ -250,7 +250,7 @@ public class CjStatsService {
Optional<Map<String, Object>> oData = areaPeopleNumList.stream().filter(m -> m.get("areaCode").toString().equals(statsVo.getCode())).findFirst();
oData.ifPresent(data -> {
difficultIssueNumList.add(String.valueOf(statsVo.getNum()));
difficultIssueAmountList.add(statsVo.getAmount());
difficultIssueAmountList.add(statsVo.getAmount().toString());
BigDecimal issueNum = new BigDecimal(data.get("issueNum").toString()).add(BigDecimal.valueOf(statsVo.getNum()));
BigDecimal issueAmount = new BigDecimal(data.get("issueAmount").toString()).add(new BigDecimal(statsVo.getAmount()));
data.put("issueNum", issueNum);
......@@ -328,4 +328,51 @@ public class CjStatsService {
return returnData;
}
public Object getAppEnjoyData(StatsReqVo vo) {
if (StringUtils.isBlank(vo.getAreaCode())) {
vo.setAreaCode("450000000000");
}
SystemArea systemArea = areaDao.selectById(vo.getAreaCode());
vo.setSubAreaCode(systemArea.subAreaCode());
vo.setSize(SystemArea.getNextLevelLength(systemArea.getType()));
List<StatsVo> peopleNumStats=cjStatsDao.getAppEnjoyData(vo);
List<StatsVo> stats= cjStatsDao.getAppEnjoyTotal(vo);
Map<String, Object> totalData = new HashMap<>();
for (StatsVo totalStat : stats) {
if ("1".equals(totalStat.getType())) {
totalData.put("severeTotal",BigDecimal.valueOf(totalStat.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
}else{
totalData.put("difficultTotal",BigDecimal.valueOf(totalStat.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
}
}
Map<String, Map<String, Object>> map = new HashMap<>();
// 添加重度残疾人护理补贴人数
List<StatsVo> severeCjNumStats = peopleNumStats.stream().filter(statsVo -> "1".equals(statsVo.getType())).collect(Collectors.toList());
severeCjNumStats.forEach(statsVo -> {
Map<String, Object> data = map.computeIfAbsent(statsVo.getCode(), k -> new HashMap<>());
data.put("severeCjNum", BigDecimal.valueOf(statsVo.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
});
// 添加困难残疾人生活补贴人数
List<StatsVo> difficultCjNumStats = peopleNumStats.stream().filter(statsVo -> "2".equals(statsVo.getType())).collect(Collectors.toList());
difficultCjNumStats.forEach(statsVo -> {
Map<String, Object> data = map.computeIfAbsent(statsVo.getCode(), k -> new HashMap<>());
data.put("difficultCjNum", BigDecimal.valueOf(statsVo.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
});
List<Map<String, Object>> dataList = new ArrayList<>();
// map数据转成list,提示添加key为区域码
map.forEach((k, v) -> {
SystemArea area = areaDao.selectById(SystemArea.patchZero(k));
v.put("areaCode", k);
v.put("city", area!=null?area.getName():"");
dataList.add(v);
});
List<Map<String,Object>> mapData = dataList.stream().sorted(Comparator.comparing(m -> m.get("areaCode").toString())).collect(Collectors.toList());
Map<String, Object> returnData = new HashMap<>();
returnData.put("map",mapData);
returnData.put("total",totalData);
return mapData;
}
}
......@@ -358,10 +358,10 @@ public class ShjzStatsService {
Map<String, Object> totalData = new HashMap<>();
for (StatsVo totalStat : stats) {
if ("0".equals(totalStat.getType())) {
totalData.put("villageTotal",totalStat.getNum());//农村低保
if ("农村低保".equals(totalStat.getType())) {
totalData.put("villageTotal",BigDecimal.valueOf(totalStat.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));//农村低保
} else {
totalData.put("cityTotal",totalStat.getNum());//城市低保
totalData.put("cityTotal",BigDecimal.valueOf(totalStat.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));//城市低保
}
}
......@@ -370,25 +370,25 @@ public class ShjzStatsService {
List<StatsVo> cityPeopleNumStats = peopleNumStats.stream().filter(statsVo -> "城市低保".equals(statsVo.getType())).collect(Collectors.toList());
cityPeopleNumStats.forEach(statsVo -> {
Map<String, Object> data = map.computeIfAbsent(statsVo.getCode(), k -> new HashMap<>());
data.put("cityPeopleNum", statsVo.getNum());
data.put("cityPeopleNum", BigDecimal.valueOf(statsVo.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
});
// 添加农村低保人数
List<StatsVo> villagePeopleNumStats = peopleNumStats.stream().filter(statsVo -> "农村低保".equals(statsVo.getType())).collect(Collectors.toList());
villagePeopleNumStats.forEach(statsVo -> {
Map<String, Object> data = map.computeIfAbsent(statsVo.getCode(), k -> new HashMap<>());
data.put("villagePeopleNum", statsVo.getNum());
data.put("villagePeopleNum", BigDecimal.valueOf(statsVo.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
});
// 添加城市发放金额
List<StatsVo> cityMonyStats = monyStats.stream().filter(statsVo -> "1".equals(statsVo.getType())).collect(Collectors.toList());
cityMonyStats.forEach(statsVo -> {
Map<String, Object> data = map.computeIfAbsent(statsVo.getCode(), k -> new HashMap<>());
data.put("cityMoney", statsVo.getAmount());
data.put("cityMoney", BigDecimal.valueOf(statsVo.getAmount()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
});
// 添加农村发放金额
List<StatsVo> villageMonyStats = monyStats.stream().filter(statsVo -> "0".equals(statsVo.getType())).collect(Collectors.toList());
villageMonyStats.forEach(statsVo -> {
Map<String, Object> data = map.computeIfAbsent(statsVo.getCode(), k -> new HashMap<>());
data.put("villageMoney", statsVo.getAmount());
data.put("villageMoney", BigDecimal.valueOf(statsVo.getAmount()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));
});
List<Map<String, Object>> dataList = new ArrayList<>();
......@@ -741,4 +741,37 @@ public class ShjzStatsService {
return returnData;
}
public Object getAppShjzData(StatsReqVo vo) {
// 人数
List<StatsVo> totalStat = shjzStatsDao.getAppShjzData(vo);
Map<String, Object> totalData = new HashMap<>();
BigDecimal country =null;
BigDecimal city =null;
BigDecimal nong=null;
BigDecimal cheng=null;
for (StatsVo stats : totalStat) {
if ("农村低保".equals(stats.getType())) {
totalData.put("villageTotal",BigDecimal.valueOf(stats.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));//农村低保
} else if("城市低保".equals(stats.getType())){
totalData.put("cityTotal",BigDecimal.valueOf(stats.getNum()).divide(BigDecimal.valueOf(10000),2,RoundingMode.HALF_UP));//城市低保
}else if("农村低收入".equals(stats.getType())){
country = BigDecimal.valueOf(stats.getNum()).divide(BigDecimal.valueOf(10000), 2, RoundingMode.HALF_UP);
}else if("城市低收入".equals(stats.getType())){
city = BigDecimal.valueOf(stats.getNum()).divide(BigDecimal.valueOf(10000), 2, RoundingMode.HALF_UP);
}else if("农村特困".equals(stats.getType())){
nong= BigDecimal.valueOf(stats.getNum()).divide(BigDecimal.valueOf(10000), 2, RoundingMode.HALF_UP);
}
else if("城市特困".equals(stats.getType())){
cheng= BigDecimal.valueOf(stats.getNum()).divide(BigDecimal.valueOf(10000), 2, RoundingMode.HALF_UP);
}
totalData.put("lowTotal",country.add(city));
totalData.put("destiTotal",nong.add(cheng));
}
Map<String, Object> returnData = new HashMap<>();
returnData.put("totalData",totalData);
returnData.put("temporaryHelp",shjzStatsDao.getAppData().getTemporaryHelp());
returnData.put("expensesHu",shjzStatsDao.getAppData().getExpensesHu());
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