Commit 0b6f772f by chentian

区域碰撞分类导航开发

parent f341d09a
package com.founder.interservice.mapper.xzxt; package com.founder.interservice.mapper.xzxt;
import com.founder.interservice.regionalanalysis.model.QueryRegionalTaskResult; import com.founder.interservice.regionalanalysis.VO.RegionalTaskResultVO;
import com.founder.interservice.regionalanalysis.model.RegionalTaskResult;
import com.founder.interservice.regionalanalysis.model.RegionalTaskResultDetail; import com.founder.interservice.regionalanalysis.model.RegionalTaskResultDetail;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
...@@ -29,6 +27,7 @@ public interface RegionalTaskResultDetailMapper { ...@@ -29,6 +27,7 @@ public interface RegionalTaskResultDetailMapper {
public int findRegionalTaskResultNewDetailListTotalCount(RegionalTaskResultDetail param) throws Exception; public int findRegionalTaskResultNewDetailListTotalCount(RegionalTaskResultDetail param) throws Exception;
public List<RegionalTaskResultDetail> getRegionalTaskResultNewDetailExcelList(RegionalTaskResultDetail param)throws Exception; public List<RegionalTaskResultDetail> getRegionalTaskResultNewDetailExcelList(RegionalTaskResultDetail param)throws Exception;
//获取分类总数 //获取分类总数
public List<Object[]> getFlCountList(@Param("sqlStr") String sqlStr); public List<Object[]> getFlCountList(RegionalTaskResultVO vo);
public List<Object[]> getFldhCountList(RegionalTaskResultVO vo);
public List<Object[]> getFldhBzhCountList(RegionalTaskResultVO vo);
} }
...@@ -34,4 +34,9 @@ public class RegionalTaskResultVO { ...@@ -34,4 +34,9 @@ public class RegionalTaskResultVO {
private String sjhm;//手机号码 private String sjhm;//手机号码
private int age; //年龄 private int age; //年龄
private String checkVal;
private String sqlStr;
private String isNullField;
private String groupByField;
} }
...@@ -610,15 +610,15 @@ public class RegionalAnalysisController { ...@@ -610,15 +610,15 @@ public class RegionalAnalysisController {
*/ */
@RequestMapping("/getFlCountList") @RequestMapping("/getFlCountList")
@ResponseBody @ResponseBody
public Map<String,Object> getFlCountList(String checkVal){ public Map<String,Object> getFlCountList(String checkVal,RegionalTaskResultVO vo){
Map<String, Object> resultMap = new HashMap<>(); Map<String, Object> resultMap = new HashMap<>();
//循环checkVal,获取总数 //循环checkVal,获取总数
String[] checkVals=checkVal.split(","); String[] checkVals=checkVal.split(",");
for(int i=0;i<checkVals.length;i++){ for(int i=0;i<checkVals.length;i++){
if("BZHLX".equals(checkVals[i])){ //if("BZHLX".equals(checkVals[i])||"XB".equals(checkVals[i])){
List<Object[]> list= regionalAnalysisService.getFlCountList(checkVals[i]); List<Object[]> list= regionalAnalysisService.getFlCountList(checkVals[i],vo);
resultMap.put("BZHLX",list); resultMap.put(checkVals[i],list);
} //}
} }
return resultMap; return resultMap;
} }
......
package com.founder.interservice.regionalanalysis.service; package com.founder.interservice.regionalanalysis.service;
import com.founder.interservice.exception.InterServiceException; import com.founder.interservice.exception.InterServiceException;
import com.founder.interservice.regionalanalysis.VO.RegionalTaskResultVO;
import com.founder.interservice.regionalanalysis.model.*; import com.founder.interservice.regionalanalysis.model.*;
import com.founder.interservice.tracktraveltogether.model.TogetherTaskResult;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import java.io.EOFException;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -64,5 +63,5 @@ public interface RegionalAnalysisService { ...@@ -64,5 +63,5 @@ public interface RegionalAnalysisService {
List<RegionalTaskResultDetail> findRegionalTaskResultNewDetailList(RegionalTaskResultDetail param)throws Exception; List<RegionalTaskResultDetail> findRegionalTaskResultNewDetailList(RegionalTaskResultDetail param)throws Exception;
int findRegionalTaskResultNewDetailListTotalCount(RegionalTaskResultDetail param) throws Exception; int findRegionalTaskResultNewDetailListTotalCount(RegionalTaskResultDetail param) throws Exception;
List<RegionalTaskResultDetail> getRegionalTaskResultNewDetailExcelList(RegionalTaskResultDetail param)throws Exception; List<RegionalTaskResultDetail> getRegionalTaskResultNewDetailExcelList(RegionalTaskResultDetail param)throws Exception;
public List<Object[]> getFlCountList(String checkVal); public List<Object[]> getFlCountList(String checkVal,RegionalTaskResultVO vo);
} }
package com.founder.interservice.regionalanalysis.service.impl; package com.founder.interservice.regionalanalysis.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.founder.interservice.exception.InterServiceException; import com.founder.interservice.exception.InterServiceException;
import com.founder.interservice.mapper.xzxt.RegionalTaskMapper; import com.founder.interservice.mapper.xzxt.RegionalTaskMapper;
import com.founder.interservice.mapper.xzxt.RegionalTaskResultDetailMapper; import com.founder.interservice.mapper.xzxt.RegionalTaskResultDetailMapper;
import com.founder.interservice.mapper.xzxt.RegionalTaskResultMapper; import com.founder.interservice.mapper.xzxt.RegionalTaskResultMapper;
import com.founder.interservice.regionalanalysis.VO.RegionalTaskResultVO;
import com.founder.interservice.regionalanalysis.model.*; import com.founder.interservice.regionalanalysis.model.*;
import com.founder.interservice.regionalanalysis.repository.RegionalRepository; import com.founder.interservice.regionalanalysis.repository.RegionalRepository;
import com.founder.interservice.regionalanalysis.repository.RegionalTaskRepository; import com.founder.interservice.regionalanalysis.repository.RegionalTaskRepository;
import com.founder.interservice.regionalanalysis.repository.RegionalTaskResultRepository; import com.founder.interservice.regionalanalysis.repository.RegionalTaskResultRepository;
import com.founder.interservice.regionalanalysis.repository.RegionalsTaskRepository; import com.founder.interservice.regionalanalysis.repository.RegionalsTaskRepository;
import com.founder.interservice.regionalanalysis.service.RegionalAnalysisService; import com.founder.interservice.regionalanalysis.service.RegionalAnalysisService;
import com.founder.interservice.tracktraveltogether.model.TogetherTaskResult;
import com.founder.interservice.util.JsonUtil;
import com.founder.interservice.util.StringUtil; import com.founder.interservice.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.*; import org.springframework.data.domain.*;
...@@ -271,13 +269,48 @@ public class RegionalAnalysisServiceImpl implements RegionalAnalysisService { ...@@ -271,13 +269,48 @@ public class RegionalAnalysisServiceImpl implements RegionalAnalysisService {
regionalTaskResultMapper.updateRegionalTaskResultDetail(regionalTaskResultDetail); regionalTaskResultMapper.updateRegionalTaskResultDetail(regionalTaskResultDetail);
} }
@Override @Override
public List<Object[]> getFlCountList(String checkVal){ public List<Object[]> getFlCountList(String checkVal,RegionalTaskResultVO vo){
//读取json文件,获取分类配置信息 //读取json文件,获取分类配置信息
String filePath=JsonUtil.path+"qypzfl.json"; /* String filePath=JsonUtil.path+"qypzfl.json";
String jsonData=JsonUtil.ReadFile(filePath); String jsonData=JsonUtil.ReadFile(filePath);
JSONObject jsonObject = JSONObject.parseObject(jsonData); JSONObject jsonObject = JSONObject.parseObject(jsonData);*/
String sqlStr=""; List<Object[]> list=new ArrayList<Object[]>();
if (jsonObject != null) { if("XB".equals(checkVal)){
vo.setSqlStr("count(b.sex) counts," +
" CASE WHEN b.sex =1 THEN '男'" +
" WHEN b.sex =2 THEN '女'" +
" WHEN b.sex =9 THEN '未说明的性别'" +
" WHEN b.sex =0 THEN '未知的性别'" +
" END as names ,b.sex vals");
vo.setIsNullField(" b.sex is not null ");
vo.setGroupByField(" b.sex ");
list=regionalTaskResultDetailMapper.getFldhCountList(vo);
}else if("SFBS".equals(checkVal)){
//本市非两种情况,本市,和非本市
vo.setSqlStr(" count(*) counts,'本市人员' names,1 vals ");
vo.setIsNullField(" b.zjhm is not null ");
vo.setGroupByField("");
list=regionalTaskResultDetailMapper.getFldhCountList(vo);
vo.setSqlStr(" count(*) counts,'非本市人员' names,0 vals ");
vo.setIsNullField(" b.zjhm is null ");
vo.setGroupByField("");
list.addAll(regionalTaskResultDetailMapper.getFldhCountList(vo));
}else if("BZHLX".equals(checkVal)){
list=regionalTaskResultDetailMapper.getFldhBzhCountList(vo);
}else if("CSRQ".equals(checkVal)){
int[] subStr=new int[3];
subStr[0]=4;
subStr[1]=7;
subStr[2]=10;
for(int i=0;i<subStr.length;i++){
vo.setSqlStr(" count(substr(birthday,1,"+subStr[i]+")) counts,substr(birthday,1,"+subStr[i]+") names,substr(birthday,1,"+subStr[i]+") vals ");
vo.setIsNullField(" b.birthday is not null ");
vo.setGroupByField(" substr(birthday,1,"+subStr[i]+") ");
list.addAll(regionalTaskResultDetailMapper.getFldhCountList(vo));
}
}
/*if (jsonObject != null) {
Object obj = jsonObject .get(checkVal); Object obj = jsonObject .get(checkVal);
Map<String, String> map=(Map<String, String>)obj; Map<String, String> map=(Map<String, String>)obj;
...@@ -294,8 +327,9 @@ public class RegionalAnalysisServiceImpl implements RegionalAnalysisService { ...@@ -294,8 +327,9 @@ public class RegionalAnalysisServiceImpl implements RegionalAnalysisService {
sqlStr=dynamicRegionSql.toString(); sqlStr=dynamicRegionSql.toString();
sqlStr=sqlStr.substring(0,sqlStr.length()-5); sqlStr=sqlStr.substring(0,sqlStr.length()-5);
sqlStr+=" ) t LEFT JOIN TB_ST_REGIONALSTASKRESULT h on t.object_type = h.object_type GROUP BY t.object_type"; sqlStr+=" ) t LEFT JOIN TB_ST_REGIONALSTASKRESULT h on t.object_type = h.object_type GROUP BY t.object_type";
System.out.println(sqlStr); System.out.println(sqlStr);
} }*/
return regionalTaskResultDetailMapper.getFlCountList(sqlStr); return list;
} }
} }
...@@ -281,4 +281,31 @@ ...@@ -281,4 +281,31 @@
<select id="getFlCountList" resultType="java.util.Map"> <select id="getFlCountList" resultType="java.util.Map">
${sqlStr} ${sqlStr}
</select> </select>
<select id="getFldhCountList" parameterType="com.founder.interservice.regionalanalysis.VO.RegionalTaskResultVO" resultType="java.util.Map" >
select ${sqlStr} from REGIONALTASKRESULTDETAIL b
left join TB_ST_REGIONALSTASKRESULT a on a.object_type=b.object_type and a.OBJECT_VALUE = b.OBJECT_VALUE
where a.task_id=#{taskId}
<if test="isNullField!= null and isNullField!= ''">
and ${isNullField}
</if>
<if test="objectValue!= null and objectValue!= ''">
AND a.object_value LIKE '%'|| #{objectValue} || '%'
</if>
<if test="groupByField!= null and groupByField!= ''">
group by ${groupByField}
</if>
</select>
<select id="getFldhBzhCountList" parameterType="com.founder.interservice.regionalanalysis.VO.RegionalTaskResultVO" resultType="java.util.Map" >
select count(a.object_type) counts,max(a.object_type_name) names,a.object_type vals from TB_ST_REGIONALSTASKRESULT a
where a.task_id=#{taskId}
<if test="objectValue!= null and objectValue!= ''">
AND a.object_value LIKE '%'|| #{objectValue} || '%'
</if>
group by a.object_type
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -123,23 +123,31 @@ function doQueryFL(){ ...@@ -123,23 +123,31 @@ function doQueryFL(){
} }
}); });
if(checkVal.length>0){ if(checkVal.length>0){
$("#checkVal").val(checkVal);
$.ajax({ $.ajax({
method: 'post', method: 'post',
url: 'getFlCountList', url: 'getFlCountList',
dateType: 'json', dateType: 'json',
data: {yhCate:00,projectName:00,checkVal:checkVal}, data: serializeObject($("form[name='qypzjgxsForm']")),
success: function (data) { success: function (data) {
//alert(JSON.stringify(data)); //alert(JSON.stringify(data));
$("#fldh").empty();
var i=0;
$.each(data,function (index2,value2){ $.each(data,function (index2,value2){
$("#fldh").show(); $("#fldh").show();
$("#fldh").empty();
var flStr=""; var flStr="";
if(index2=='BZHLX'){ if(index2=='BZHLX'){
flStr="标识号类型"; flStr="标识号类型";
}else if(index2=='XB'){
flStr="性别";
}else if(index2=='SFBS'){
flStr="是否本市";
}else if(index2=='CSRQ'){
flStr="出生日期";
} }
$("#fldh").append( $("#fldh").append(
"<div class='newNav'>" + "<div class='newNav'>" +
"<div class='newNavTop' style='top:24px;'>"+flStr+"分类</div>" + "<div class='newNavTop' id='newNavTop' style='top:24px;'>"+flStr+"分类</div>" +
"<div class='newNavbody'>" + "<div class='newNavbody'>" +
"<div class='newLayoutDiv pull-clear'>" + "<div class='newLayoutDiv pull-clear'>" +
"<a onclick='' href='javascript:void(0)' class='newNavA pull-left'>"+flStr+"导航</a>" + "<a onclick='' href='javascript:void(0)' class='newNavA pull-left'>"+flStr+"导航</a>" +
...@@ -151,11 +159,15 @@ function doQueryFL(){ ...@@ -151,11 +159,15 @@ function doQueryFL(){
"<div class='newNavInfo' isshowed='false' id='flnr"+index2+"'>" + "<div class='newNavInfo' isshowed='false' id='flnr"+index2+"'>" +
"<div class='newClear'></div>" "<div class='newClear'></div>"
); );
//var css={top:'24px'};
//alert($("newNavTop0").length);
// $("newNavTop0").css(css);
i++;
$.each(data[index2], function(i, item) { $.each(data[index2], function(i, item) {
// alert(item.COUNT+":"+item.OBJECT_TYPE+":"+item.OBJECT_NAME); // alert(item.COUNT+":"+item.OBJECT_TYPE+":"+item.OBJECT_NAME);
var str=item.OBJECT_NAME+"("+item.COUNT+")"; var str=item.NAMES+"("+item.COUNTS+")";
$("#flnr"+index2).append( $("#flnr"+index2).append(
"<a class='newNavA' style='text-decoration:none;' href='javascript:void(0)' onclick=flclick('"+index2+"','"+item.OBJECT_TYPE+"')>"+str+"</a>" "<a class='newNavA' style='text-decoration:none;' href='javascript:void(0)' onclick=flclick('"+index2+"','"+item.VALS+"')>"+str+"</a>"
); );
}); });
$("#fldh").append( $("#fldh").append(
...@@ -310,7 +322,7 @@ function exportExcel(){ ...@@ -310,7 +322,7 @@ function exportExcel(){
$.messager.confirm('确认', "确定导出excel附件吗?", function (r) { $.messager.confirm('确认', "确定导出excel附件吗?", function (r) {
if (r) { if (r) {
window.open ("/exportTaskResultNewDetailExcel?projectName=00&yhCate=00&taskId="+params.taskId +"&csrqStart="+params.csrqStart+"&csrqEnd="+params.csrqEnd+"&objectValue="+params.objectValue); window.open ("/exportTaskResultNewDetailExcel?projectName=00&yhCate=00&taskId="+params.taskId +"&objectValue="+params.objectValue);
} }
}); });
......
...@@ -122,6 +122,8 @@ ...@@ -122,6 +122,8 @@
<input type="hidden" id = "yhCate" name="yhCate" value="00" /> <input type="hidden" id = "yhCate" name="yhCate" value="00" />
<input type="hidden" id = "projectName" name="projectName" value="刑专智慧侦查脑图" /> <input type="hidden" id = "projectName" name="projectName" value="刑专智慧侦查脑图" />
<input type="hidden" id = "objectType" name="objectType" value="" /> <input type="hidden" id = "objectType" name="objectType" value="" />
<input type="hidden" id = "checkVal" name="checkVal" value="" />
<table style="display: none" class="cxtj-table sp_table"> <table style="display: none" class="cxtj-table sp_table">
<tbody> <tbody>
<input type="hidden" name="taskId" value="${taskId}"> <input type="hidden" name="taskId" value="${taskId}">
...@@ -136,7 +138,7 @@ ...@@ -136,7 +138,7 @@
</span> </span>
</td> </td>
</tr> </tr>
<%--<tr> <%-- <tr>
<td class="ar" width="13.3%">出生日期:</td> <td class="ar" width="13.3%">出生日期:</td>
<td width="20%"> <td width="20%">
<span class="textbox" style="border:none;"> <span class="textbox" style="border:none;">
...@@ -192,6 +194,11 @@ ...@@ -192,6 +194,11 @@
<li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="RY_CSRQ_RQGZXX" id="searchConfig2"><label for="searchConfig2">出生日期分类</label></li> <li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="RY_CSRQ_RQGZXX" id="searchConfig2"><label for="searchConfig2">出生日期分类</label></li>
--%> --%>
<li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="BZHLX" id="searchConfig1"><label for="searchConfig1">标识号分类</label></li> <li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="BZHLX" id="searchConfig1"><label for="searchConfig1">标识号分类</label></li>
<li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="CSRQ" id="searchConfig4"><label for="searchConfig4">出生日期</label></li>
<li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="SFBS" id="searchConfig3"><label for="searchConfig3">是否本市分类</label></li>
<li class="searchConfigCheck pull-left"><input type="checkbox" showtype="minCheck" name="navOption" value="XB" id="searchConfig2"><label for="searchConfig2">性别分类</label></li>
</ul> </ul>
<div style="text-align: right;height: 32px;"> <div style="text-align: right;height: 32px;">
......
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