Commit 52ce9420 by 袁伟铭

修改区域低保数据接口

parent 49e12980
......@@ -5,7 +5,6 @@ import com.zq.common.vo.ResultVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.management.relation.RelationSupport;
import java.util.Map;
@FeignClient(name = "PORTAL-SERVER", configuration = FeignConfig.class) //指定调用哪个微服务
......
......@@ -61,4 +61,20 @@ public interface ShjzStatsDao {
* @return
*/
StatsVo getBorderNumStats(StatsReqVo vo);
/**
* 获取人数统计
*
* @param vo
* @return
*/
List<StatsVo> getPeopleNumStats(StatsReqVo vo);
/**
* 获取金额统计
*
* @param vo
* @return
*/
List<StatsVo> getMonyNumStats(StatsReqVo vo);
}
......@@ -336,20 +336,81 @@ public class ShjzStatsService {
if (StringUtils.isBlank(vo.getAreaCode())) {
vo.setAreaCode("450000000000");
}
List<Map<String, Object>> achieveStats = vShjzAchieveDao.getStatsByYear(vo.getYear());
List<Map<String, Object>> provideStats = vShjzProvideDao.getStatsByYear(vo.getYear());
for (Map<String, Object> achieveStat : achieveStats) {
String city = achieveStat.get("city").toString();
SystemArea systemArea = areaDao.selectById(vo.getAreaCode());
vo.setSubAreaCode(systemArea.subAreaCode());
vo.setSize(SystemArea.getNextLevelLength(systemArea.getType()));
for (Map<String, Object> provideStat : provideStats) {
if (provideStat.get("city").toString().equals(city)) {
achieveStat.put("provideNum", provideStat.get("provideNum"));
}
// 人数
vo.setType("农村低保");// 城市
List<StatsVo> cityPeopleNumStats = shjzStatsDao.getPeopleNumStats(vo);
vo.setType("城市低保");// 农村
List<StatsVo> villagePeopleNumStats = shjzStatsDao.getPeopleNumStats(vo);
vo.setType("1");// 城市
List<StatsVo> cityMonyStats = shjzStatsDao.getMonyNumStats(vo);
vo.setType("0");// 农村
List<StatsVo> villageMonyStats = shjzStatsDao.getMonyNumStats(vo);
Map<String, Map<String, Object>> map = new HashMap<>();
// 添加城市低保人数
cityPeopleNumStats.forEach(statsVo -> {
Map<String, Object> data = map.get(statsVo.getCode());
if (data == null) {
data = new HashMap<>();
}
}
data.put("cityPeopleNum", statsVo.getNum());
});
// 添加农村低保人数
villagePeopleNumStats.forEach(statsVo -> {
Map<String, Object> data = map.get(statsVo.getCode());
if (data == null) {
data = new HashMap<>();
}
data.put("villagePeopleNum", statsVo.getNum());
});
// 添加城市发放金额
cityMonyStats.forEach(statsVo -> {
Map<String, Object> data = map.get(statsVo.getCode());
if (data == null) {
data = new HashMap<>();
}
data.put("cityMony", statsVo.getAmount());
});
// 添加农村发放金额
villageMonyStats.forEach(statsVo -> {
Map<String, Object> data = map.get(statsVo.getCode());
if (data == null) {
data = new HashMap<>();
}
data.put("villageMony", statsVo.getAmount());
});
return achieveStats;
List<Map<String, Object>> returnData = new ArrayList<>();
// map数据转成list,提示添加key为区域码
map.forEach((k, v) -> {
v.put("areaCode", k);
returnData.add(v);
});
return returnData;
// // 人数
// List<Map<String, Object>> achieveStats = vShjzAchieveDao.getStatsByYear(vo.getYear());
//
// // 金额
// List<Map<String, Object>> provideStats = vShjzProvideDao.getStatsByYear(vo.getYear());
//
// for (Map<String, Object> achieveStat : achieveStats) {
// String city = achieveStat.get("city").toString();
//
// for (Map<String, Object> provideStat : provideStats) {
// if (provideStat.get("city").toString().equals(city)) {
// achieveStat.put("provideNum", provideStat.get("provideNum"));
// }
// }
// }
//
// return achieveStats;
}
/**
......@@ -591,20 +652,6 @@ public class ShjzStatsService {
returnData.put("villageNumList", villageNumList);
returnData.put("villageNumRateList", villageNumRateList);
List<Map<String, Object>> data = new ArrayList<>();
for (Map<String, Object> map : data) {
Map<String, Object> numMap = new HashMap<>();
// numMap.put("areaCode","");
numMap.put("city", "");
numMap.put("provideNum", "");
numMap.put("achieveNum", "");
data.add(numMap);
}
returnData.put("data", data);
redisUtils.setObj(PortalCacheKeys.getAreaUnderEnbuzNumStatsKey(vo), returnData);
return returnData;
}
......
......@@ -186,4 +186,44 @@
type
</select>
<select id="getPeopleNumStats" resultType="com.zq.portal.vo.StatsVo">
SELECT
LEFT ( a.area_code, #{size} ) 'code',
SUM(a.people_num) 'num'
FROM city_coutry_all a
WHERE
CHAR_LENGTH (LEFT ( a.area_code, #{size} )) = #{size}
<if test="subAreaCode != null and subAreaCode != ''">
AND a.area_code LIKE CONCAT(#{subAreaCode}, '%')
</if>
<if test="type != null and type != ''">
AND a.type = #{type}
</if>
GROUP BY
LEFT ( a.area_code, #{size} )
</select>
<!-- iscity = 1 是城市 0是农村 -->
<select id="getMonyNumStats" resultType="com.zq.portal.vo.StatsVo">
SELECT
LEFT(p.unit_id, #{size}) 'code',
SUM( p.money ) 'amount'
FROM
mon_pay p
WHERE
p.pmonth >= CONCAT(DATE_FORMAT( NOW(), '%Y' ), '-01-01')
AND p.pmonth &lt;= DATE_FORMAT( NOW(), '%Y%m%d' )
AND p.vp_state = 4
AND p.pay_state = 2
AND CHAR_LENGTH (LEFT ( a.area_code, #{size} )) = #{size}
<if test="subAreaCode != null and subAreaCode != ''">
AND p.unit_id LIKE CONCAT(#{subAreaCode}, '%')
</if>
<if test="type != null and type != ''">
AND p.iscity = #{type}
</if>
GROUP BY
LEFT(p.unit_id, #{size})
</select>
</mapper>
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