Commit 3023ce05 by lilei

修改研判报告附件2

parent bbc8d244
......@@ -3,6 +3,7 @@ package org.springblade.founder.asj.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
/**
* @Author yanru
......@@ -10,6 +11,7 @@ import lombok.Setter;
*/
@Getter
@Setter
@ToString
public class Xqfpaxx {
private String dwCode;
private String dwName;
......@@ -23,5 +25,5 @@ public class Xqfpaxx {
private String zadjMc;
private String ryNum;
@ApiModelProperty(value = "每十万发案率")
private String falNum_sw;
private String falNumSw;
}
......@@ -21,6 +21,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.*;
......@@ -135,7 +136,7 @@ public class YpbgController {
matj.setUnitcode(levMap.get("unitcode"));
matj.setLev(levMap.get("lev"));
String bn_qssj=matj.getLarqQssj();
String bn_qssj=matj.getLarqQssj().substring(0,4)+"-01-01";;
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
Calendar ca = Calendar.getInstance();
......@@ -156,7 +157,7 @@ public class YpbgController {
//-------------------------一月至当月-------------------------------------
//辖区发破案并 根据发案数排序
matj.setLarqQssj(bn_qssj);
matj.setTypeFlag("");
matj.setTypeFlag(null);
matj.setPxzd("num");
List<Xqfpaxx> xqfpa_num_List=ypbgService.getYpbgXqFaPaCount(matj);
......@@ -184,7 +185,7 @@ public class YpbgController {
int col_6=i+1;
String col_7=xqfpa_fal_List.get(i).getDwName();
String col_8=xqfpa_fal_List.get(i).getFalNum_sw();
String col_8=xqfpa_fal_List.get(i).getFalNumSw();
int col_9=i+1;
String col_10=xqzdswfpa_num_List.get(i).getDwName();
......@@ -207,6 +208,7 @@ public class YpbgController {
//-----------------------当月---------------------------------
String col_1="合计";
matj.setLarqQssj(dy_qssj);
matj.setType("fa");
int col_2=matjService.getMaFaCount(matj);
int col_3=matjService.getMaZdswCountNew(matj);
......@@ -218,7 +220,11 @@ public class YpbgController {
String col_6="";
String col_7="合计";
String col_8=ypbgService.getQgrkCount("");//全国人口
//全国每十万人发案数
int qgrs = ypbgService.getRks("01000000000");//获取全国人口数
NumberFormat numberFormat = NumberFormat.getNumberInstance();
numberFormat.setMaximumFractionDigits(2);
String col_8 = numberFormat.format((double)col_2*100000/qgrs);
String col_9="";
String col_10="合计";
......@@ -247,6 +253,63 @@ public class YpbgController {
return R.ok().data(rtMap);
}
/**
* 本年区域发、破案统计
* @return
*/
@RequestMapping("/toFpaTj")
@ResponseBody
public R toFpaTj(@RequestBody Matj matj
){
LinkedHashMap resultMap= new LinkedHashMap<String,Object>() ;
//调用该方法,如果前端有传入unitcode,则用前端传入的(用于大屏上地图与统计做联动),如果没有则取系统登录用户的(统计分析中去当前登录用户)
String unitCode="";
String grade="";
if(null!=matj&& !StringUtils.isEmpty(matj.getUnitcode())){//前台传入的unitcode,用于在大屏上的地图上与统计分析做联动
unitCode=matj.getUnitcode();
grade=matjService.getCodeGxsLevByCode(unitCode);
}else{//首页的统计分析页面,不传入unitcode
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
unitCode=xzxtUser.getUnitcode();
grade = xzxtUser.getGrade();
if("B".equals(grade)){
unitCode = null;
}
}
Map<String, String> levMap = StringUtil.getDwLevCode(unitCode, grade);
matj.setCodeLevCol(levMap.get("codeLevCol"));
matj.setDscodeLevCol(levMap.get("dscodeLevCol"));
matj.setUnitcode(levMap.get("unitcode"));
matj.setLev(levMap.get("lev"));
List<Xqfpaxx> fpaList = matjService.getXqFaPaCount(matj);
int faNumHj = 0;
int paNumHj = 0;
for (Xqfpaxx xqfpaxx:fpaList) {
String palNum = xqfpaxx.getPalNum()+"%";
xqfpaxx.setPalNum(palNum);
faNumHj += Integer.valueOf(xqfpaxx.getFaNum());
paNumHj += Integer.valueOf(xqfpaxx.getPaNum());
}
NumberFormat numberFormat = NumberFormat.getPercentInstance();
numberFormat.setMaximumFractionDigits(2);
String palNum = numberFormat.format((double) paNumHj / (double) faNumHj);
Xqfpaxx xqfpaxx = new Xqfpaxx();
xqfpaxx.setDwName("合计");
xqfpaxx.setFaNum(faNumHj+"");
xqfpaxx.setPaNum(paNumHj+"");
xqfpaxx.setPalNum(palNum);
fpaList.add(xqfpaxx);
resultMap.put("data",fpaList);
return R.ok().data(resultMap);
}
/**
* 发案情况月度通报附件1
......@@ -267,4 +330,7 @@ public class YpbgController {
}
......@@ -59,4 +59,7 @@ public interface YpbgMapper {
//查询被害人姓名
List<TbXwRybh> getBhrList(String asjbh);
//根据省份代码获取该省份的人口数
int getRks(String sfdm);
}
......@@ -246,8 +246,8 @@
dw.lev,
(SELECT JD FROM SYS_DICTITEM_GL_JWD WHERE CODE= left(dw.dscode, 6) AND GROUPID='CODE_XZQH') jd,
(SELECT WD FROM SYS_DICTITEM_GL_JWD WHERE CODE= left(dw.dscode, 6) AND GROUPID='CODE_XZQH') wd,
format(paNum/faNum,2) palNum,
format(faNum/(SELECT RS FROM tb_yw_qgrk WHERE SFDM=dw.dscode)*100000,2) falNum_sw
IFNULL(format(paNum/faNum,2),0) as palNum,
IFNULL(format(faNum/(SELECT RS FROM tb_yw_qgrk WHERE SFDM=dw.dscode)*100000,2),0) as falNumSw
FROM
(select name_sj as dsname,code as dscode,lev from code_gxs where lev=#{lev}
<if test="codeLevCol != null and codeLevCol !=''">
......@@ -335,6 +335,7 @@
<if test="larqJssj!=null and larqJssj!=''">and DATE_FORMAT(asj.larq,'%Y-%m-%d %H:%i:%S') <![CDATA[<=]]>(str_to_date(#{larqJssj, jdbcType=VARCHAR},'%Y-%m-%d %H:%i:%S'))</if>
group by rybh.asjbh having count(*) >=3) zdsw on asj.asjbh=zdsw.asjbh
<include refid="common-condition"/>
order by asc
</select>
<select id="getXyrList" parameterType="java.lang.String" resultType="org.springblade.founder.asj.entity.TbXwZbfzxyr">
......@@ -354,5 +355,10 @@
WHERE asjbh = #{asjbh ,jdbcType=VARCHAR}
</select>
<!-- 根据省份代码获取该省份的人口数 -->
<select id="getRks" parameterType="java.lang.String" resultType="java.lang.Integer">
SELECT RS FROM tb_yw_qgrk WHERE SFDM= #{sfdm}
</select>
</mapper>
......@@ -41,4 +41,7 @@ public interface IYpbgService {
//命案发案月度报告--附件1
String getYpbgFja(Matj matj)throws Exception;
//根据省份代码获取该省份的人口数
int getRks(String sfdm);
}
......@@ -1159,7 +1159,7 @@ public class YpbgServiceImpl implements IYpbgService {
maFaBdl2 = NumberUtil.getPercent(Math.abs(bnmaFaCount - snmaFaCount2), snmaFaCount2);
}
//全国每十万人发案数
int qgrs = 1411778724;
int qgrs = ypbgMapper.getRks("01000000000");//获取全国人口数
NumberFormat numberFormat = NumberFormat.getNumberInstance();
numberFormat.setMaximumFractionDigits(2);
String swrFasQg = numberFormat.format((double)bnmaFaCount*100000/qgrs);
......@@ -1250,7 +1250,12 @@ public class YpbgServiceImpl implements IYpbgService {
String zadjStr="";
if(zdswZadjList!=null && zdswZadjList.size()>0){
for(Xqfpaxx faxx:zdswZadjList){
zadjStr=zadjStr+faxx.getFaNum()+"起因"+faxx.getZadjMc()+"引发,";
String zadjDm = faxx.getZadjDm();
String zadjMc = faxx.getZadjMc();
if ("0104".equals(zadjDm)){
zadjMc = "精神障碍患者";
}
zadjStr=zadjStr+faxx.getFaNum()+"起因"+zadjMc+"引发,";
}
zadjStr=zadjStr.substring(0,zadjStr.length()-1);
}
......@@ -1401,6 +1406,9 @@ public class YpbgServiceImpl implements IYpbgService {
return ypbgfj;
}
//根据省份代码获取该省份的人口数
public int getRks(String sfdm){
return ypbgMapper.getRks(sfdm);
}
}
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