Commit 25071e5f by 宋珺琪

修改团伙人数bug

parent 2be0b916
......@@ -269,6 +269,123 @@ public class HnTbStRygxController {
}
}
/**
* 根据团伙ID返回可视化展示的格式
*
* @param id 团伙ID
* @param username 用户名
* @param taskId 任务ID
* @param rygx 人员关系
* @param lxrXm 联系人姓名
* @param lxrSfz 联系人身份证
* @param bLxrXm 被联系人姓名
* @param bLxrSfz 被联系人身份证
* @return
*/
@PostMapping("getRythInfoById")
public MapRestResult getRythInfoById(@RequestParam("id") String id,
@RequestParam("username") String username,
@RequestParam("taskId") String taskId,
@RequestParam(name = "rygx", required = false) String rygx,
@RequestParam(name = "lxrXm", required = false) String lxrXm,
@RequestParam(name = "lxrSfz", required = false) String lxrSfz,
@RequestParam(name = "bLxrXm", required = false) String bLxrXm,
@RequestParam(name = "bLxrSfz", required = false) String bLxrSfz) {
String teamNum ="1";
//团伙信息集合
List<Map<String, Object>> rythInfoList = (List<Map<String, Object>>) redisTemplate.opsForValue().get(username + ":" + taskId + ":" + TEAM_KEY + teamNum);
//指定团伙集合
List<Map<String, Object>> rythInfoByIdList = new ArrayList<>();
for (Map<String, Object> map : rythInfoList) {
if (id.equals(map.get("id").toString())) {
rythInfoByIdList.add(map);
break;
}
}
//根据人员关系过滤children的值
if (StringUtils.isNotBlank(rygx)) {
Map<String, Object> conditionMap = rythInfoByIdList.get(0);
Set<HnTbStRygx> lxrList = (Set<HnTbStRygx>) conditionMap.get("children");
Set<HnTbStRygx> childSet = new HashSet<>();
for (HnTbStRygx item : lxrList) {
if (strMatch(item.getValue(), rygx)) {
childSet.add(item);
}
}
conditionMap.put("children", childSet);
}
//查询出所有联系人的name
List<String> nameList = hnKshService.getGroupNameByRwid(taskId);
Hnkshresult hnTbStRygxDTOS = packingData(rythInfoByIdList, nameList, lxrXm, lxrSfz, bLxrXm, bLxrSfz);
ArrayList<Object> re = new ArrayList<>();
re.add(hnTbStRygxDTOS);
return new MapRestResult(200,"ok",re.size(),hnTbStRygxDTOS);
}
/**
* 按照可视化的格式返回
*
* @param data 团伙的信息
* @param nameList 联系人的身份证集合
* @param lxrXm 联系人姓名
* @param lxrSfz 联系人身份证
* @param bLxrXm 被联系姓名
* @param bLxrSfz 被联系人身份证
* @return
*/
public Hnkshresult packingData(List<Map<String, Object>> data, List<String> nameList, String lxrXm, String lxrSfz, String bLxrXm, String bLxrSfz) {
Hnkshresult hnkshresult = new Hnkshresult();
kshdata kshdata = new kshdata();
List<HnTbStRygxDTO> resultList = new ArrayList<>();
for (Map<String, Object> team : data) {
//h获取指定团伙里的xm 和sfzh
Set<Map<String, String>> nameSet = (Set<Map<String, String>>) team.get("name");
//拿出children
Set<HnTbStRygx> childrenList = (Set<HnTbStRygx>) team.get("children");
List<kshlinks> re =new ArrayList<>();
for (Map<String, String> stringMap : nameSet) {
String sfzh = stringMap.get("sfzh");
String xm = stringMap.get("xm");
//去children找出被联系人所有的联系人
for (HnTbStRygx rygx : childrenList) {
if (sfzh.equals(rygx.getSfzh())) {
kshlinks ks= new kshlinks();
String name = rygx.getName();
String value = rygx.getValue();
//links
kshlinks kshlink = new kshlinks();
kshlink.setSource(name);
kshlink.setTarget(xm+"\n"+sfzh);
kshlink.setLabel(value);
ks.setSource(name);
ks.setTarget(xm+"\n"+sfzh);
ks.setLabel(value);
ks.setProperties(kshlink);
re.add(ks);
}
}
//组装 nodes
HnTbStRygxDTO mergeDTO = new HnTbStRygxDTO();
mergeDTO.setId(sfzh);
mergeDTO.setLabel(xm+"\n"+sfzh);
Kshpropertice kshpropertice = new Kshpropertice();
kshpropertice.setId(sfzh);
kshpropertice.setLabel(xm+"\n"+sfzh);
kshpropertice.setImgType("idcard");
kshpropertice.setBorderColor(null);
mergeDTO.setProperties(kshpropertice);
resultList.add(mergeDTO);
//添加到kshadata
kshdata.setNodes(resultList);
kshdata.setLinks(re);
hnkshresult.setKshData(kshdata);
}
}
return hnkshresult;
}
......@@ -683,126 +800,5 @@ public class HnTbStRygxController {
/**
* 根据团伙ID返回可视化展示的格式
*
* @param id 团伙ID
* @param username 用户名
* @param taskId 任务ID
* @param rygx 人员关系
* @param lxrXm 联系人姓名
* @param lxrSfz 联系人身份证
* @param bLxrXm 被联系人姓名
* @param bLxrSfz 被联系人身份证
* @return
*/
@PostMapping("getRythInfoById")
public MapRestResult getRythInfoById(@RequestParam("id") String id,
@RequestParam("username") String username,
@RequestParam("taskId") String taskId,
@RequestParam(name = "rygx", required = false) String rygx,
@RequestParam(name = "lxrXm", required = false) String lxrXm,
@RequestParam(name = "lxrSfz", required = false) String lxrSfz,
@RequestParam(name = "bLxrXm", required = false) String bLxrXm,
@RequestParam(name = "bLxrSfz", required = false) String bLxrSfz) {
String teamNum ="1";
//团伙信息集合
List<Map<String, Object>> rythInfoList = (List<Map<String, Object>>) redisTemplate.opsForValue().get(username + ":" + taskId + ":" + TEAM_KEY + teamNum);
//指定团伙集合
List<Map<String, Object>> rythInfoByIdList = new ArrayList<>();
for (Map<String, Object> map : rythInfoList) {
if (id.equals(map.get("id").toString())) {
rythInfoByIdList.add(map);
break;
}
}
//根据人员关系过滤children的值
if (StringUtils.isNotBlank(rygx)) {
Map<String, Object> conditionMap = rythInfoByIdList.get(0);
Set<HnTbStRygx> lxrList = (Set<HnTbStRygx>) conditionMap.get("children");
Set<HnTbStRygx> childSet = new HashSet<>();
for (HnTbStRygx item : lxrList) {
if (strMatch(item.getValue(), rygx)) {
childSet.add(item);
}
}
conditionMap.put("children", childSet);
}
//查询出所有联系人的name
List<String> nameList = hnKshService.getGroupNameByRwid(taskId);
Hnkshresult hnTbStRygxDTOS = packingData(rythInfoByIdList, nameList, lxrXm, lxrSfz, bLxrXm, bLxrSfz);
ArrayList<Object> re = new ArrayList<>();
re.add(hnTbStRygxDTOS);
return new MapRestResult(200,"ok",re.size(),hnTbStRygxDTOS);
}
/**
* 按照可视化的格式返回
*
* @param data 团伙的信息
* @param nameList 联系人的身份证集合
* @param lxrXm 联系人姓名
* @param lxrSfz 联系人身份证
* @param bLxrXm 被联系姓名
* @param bLxrSfz 被联系人身份证
* @return
*/
public Hnkshresult packingData(List<Map<String, Object>> data, List<String> nameList, String lxrXm, String lxrSfz, String bLxrXm, String bLxrSfz) {
Hnkshresult hnkshresult = new Hnkshresult();
kshdata kshdata = new kshdata();
List<HnTbStRygxDTO> resultList = new ArrayList<>();
for (Map<String, Object> team : data) {
//h获取指定团伙里的name 和sfzh
Set<Map<String, String>> nameSet = (Set<Map<String, String>>) team.get("name");
//拿出children
Set<HnTbStRygx> childrenList = (Set<HnTbStRygx>) team.get("children");
for (Map<String, String> stringMap : nameSet) {
String sfzh = stringMap.get("sfzh");
String xm = stringMap.get("xm");
//去children找出被联系人所有的联系人
List<kshlinks> re =new ArrayList<>();
for (HnTbStRygx rygx : childrenList) {
if (sfzh.equals(rygx.getSfzh())) {
kshlinks ks= new kshlinks();
String description = rygx.getDescription();
String sfzh1 = rygx.getSfzh();
String xm1 = rygx.getXm();
String name = rygx.getName();
String value = rygx.getValue();
kshlinks kshlink = new kshlinks();
kshlink.setSource(sfzh);
kshlink.setTarget(xm+"\n"+sfzh);
kshlink.setLabel(value);
ks.setSource(sfzh);
ks.setTarget(xm+"\n"+sfzh);
ks.setLabel(value);
ks.setProperties(kshlink);
re.add(ks);
}
}
//组装 nodes
HnTbStRygxDTO mergeDTO = new HnTbStRygxDTO();
mergeDTO.setId(sfzh);
mergeDTO.setLabel(xm+"\n"+sfzh);
Kshpropertice kshpropertice = new Kshpropertice();
kshpropertice.setId(sfzh);
kshpropertice.setLabel(xm+"\n"+sfzh);
kshpropertice.setImgType("idcard");
kshpropertice.setBorderColor(null);
mergeDTO.setProperties(kshpropertice);
resultList.add(mergeDTO);
//添加到kshadata
kshdata.setNodes(resultList);
kshdata.setLinks(re);
hnkshresult.setKshData(kshdata);
}
}
return hnkshresult;
}
}
......@@ -3,7 +3,7 @@
<mapper namespace="com.founder.publicapi.mapper.mysqlMapper.HnTbStRygxMapper">
<!-- select xmlagg(xmlparse(content name or ',' wellformed) order by name).getclobval() as name, sfzh-->
<select id="getSfzhList" resultType="com.founder.commonutils.model.newPublicEntity.hnkshEntity.HnTbStRygx">
select GROUP_CONCAT( NAME order by name , ',' ) as name, sfzh
select concat(group_concat(name order by name),',')name,sfzh
from hn_tb_st_rygx
where rwid = #{taskId}
and sfzh in (select sfzh
......
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