Commit 6b8b178e authored by 赵啸非's avatar 赵啸非

添加分类查询返回组

parent 8d2e1af0
...@@ -26,4 +26,8 @@ public class SiteVo extends BaseEntityLong { ...@@ -26,4 +26,8 @@ public class SiteVo extends BaseEntityLong {
private Integer areaLevel; private Integer areaLevel;
private Integer total =0;
private List<SiteEntity> subList=new ArrayList<>();
} }
\ No newline at end of file
...@@ -257,11 +257,12 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic ...@@ -257,11 +257,12 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic
public String getFlatSitesGroupByAreaCode(@RequestBody SiteQuery site) { public String getFlatSitesGroupByAreaCode(@RequestBody SiteQuery site) {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
String busiDesc = "根据区域编码查询站点列表" + this.getModuleDesc(); String busiDesc = "根据区域编码查询站点列表" + this.getModuleDesc();
List<SiteEntity> group = new ArrayList<>();
Map<String, List<SiteEntity>> collect = new HashMap<>(); Map<String, List<SiteEntity>> collect = new HashMap<>();
try { try {
if (ObjectUtils.isEmpty(site.getAreaName()) && ObjectUtils.isEmpty(site.getAreaCode())) { if (ObjectUtils.isEmpty(site.getAreaName()) && ObjectUtils.isEmpty(site.getAreaCode())) {
List<SiteEntity> siteEntities = this.service.find(new SiteQuery()); List<SiteEntity> siteEntities = this.service.find(new SiteQuery());
collect = siteEntities.stream().collect(Collectors.groupingBy(SiteEntity::getAreaName)); collect = siteEntities.stream().collect(Collectors.groupingBy(SiteEntity::getAreaCode));
} else { } else {
if (!ObjectUtils.isEmpty(site.getSiteName())) { if (!ObjectUtils.isEmpty(site.getSiteName())) {
List<SiteEntity> siteEntities = this.service.find(new SiteQuery().siteName(site.getSiteName())); List<SiteEntity> siteEntities = this.service.find(new SiteQuery().siteName(site.getSiteName()));
...@@ -283,12 +284,22 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic ...@@ -283,12 +284,22 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic
.flatMap(areaCode -> this.service.getFlatSitesByAreaCode(areaCode, getContext()).stream()) .flatMap(areaCode -> this.service.getFlatSitesByAreaCode(areaCode, getContext()).stream())
.distinct() .distinct()
.collect(Collectors.toList()); .collect(Collectors.toList());
collect = siteEntityList.stream().collect(Collectors.groupingBy(x -> x.getAreaName())); collect = siteEntityList.stream().collect(Collectors.groupingBy(x -> x.getAreaCode()));
} }
jsonObject.put(KEY_RESULT_DATA, collect);
group = collect.entrySet().stream().map(item -> {
AreaEntity areaEntity = areaService.getCache(item.getKey());
SiteEntity siteEntity = new SiteEntity();
siteEntity.setAreaName(areaEntity.getName());
siteEntity.setAreaCode(areaEntity.getAreaCode());
siteEntity.setSubList(item.getValue());
siteEntity.setTotal(item.getValue().size());
return siteEntity;
}).sorted(Comparator.comparing(SiteEntity::getAreaCode)).collect(Collectors.toList());
jsonObject.put(KEY_RESULT_DATA, group);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS);
jsonObject.put(KEY_RESULT_MSG, "查询站点列表成功!"); jsonObject.put(KEY_RESULT_MSG, "查询站点分组列表成功!");
if (!ObjectUtils.isEmpty(getContext()) && !ObjectUtils.isEmpty(getContext().getUser())) { if (!ObjectUtils.isEmpty(getContext()) && !ObjectUtils.isEmpty(getContext().getUser())) {
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
...@@ -374,26 +385,39 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic ...@@ -374,26 +385,39 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic
public String getSitesGroupByAreaLevel(@RequestBody SiteQuery site) { public String getSitesGroupByAreaLevel(@RequestBody SiteQuery site) {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
String busiDesc = "根据区域等级查询当前区域所有站点" + this.getModuleDesc(); String busiDesc = "根据区域等级查询当前区域所有站点" + this.getModuleDesc();
Map<String, List<SiteEntity>> collect = new HashMap<>(); Map<Integer, List<SiteEntity>> collect = new HashMap<>();
try { List<SiteEntity> groupList = new ArrayList<>();
try {
if (ObjectUtils.isEmpty(site.getAreaLevel())) { if (ObjectUtils.isEmpty(site.getAreaLevel())) {
//全部 //全部
for (int i = 1; i <= 5; i++) { for (int i = 1; i <= 5; i++) {
site.setAreaLevel(i); site.setAreaLevel(i);
Rest<List<SiteEntity>> rest = this.service.getAreaSitesByAreaLevel(site, getContext()); Rest<List<SiteEntity>> rest = this.service.getAreaSitesByAreaLevel(site, getContext());
String areaName = AreaLevelEnum.getByValue(i).getDesc(); // String areaName = AreaLevelEnum.getByValue(i).getDesc();
collect.put(areaName, rest.getData()); collect.put(i, rest.getData());
} }
} else { } else {
Rest<List<SiteEntity>> rest = this.service.getAreaSitesByAreaLevel(site, getContext()); Rest<List<SiteEntity>> rest = this.service.getAreaSitesByAreaLevel(site, getContext());
if (YesNoEnum.YES.getValue() == rest.getCode()) { if (YesNoEnum.YES.getValue() == rest.getCode()) {
collect = rest.getData().stream().collect(Collectors.groupingBy(x -> x.getAreaName())); collect = rest.getData().stream().collect(Collectors.groupingBy(x -> x.getAreaLevel()));
jsonObject.put(KEY_RESULT_DATA, collect); jsonObject.put(KEY_RESULT_DATA, collect);
} }
} }
//排序统计
for (int i = 1; i <= 5; i++) {
List<SiteEntity> siteEntities = collect.get(i);
SiteEntity siteEntity = new SiteEntity();
siteEntity.setAreaName(AreaLevelEnum.getByValue(i).getDesc());
if (!ObjectUtils.isEmpty(siteEntities)) {
siteEntity.setTotal(siteEntities.size());
siteEntity.setSubList(siteEntities);
}
groupList.add(siteEntity);
}
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
jsonObject.put(KEY_RESULT_DATA, collect); jsonObject.put(KEY_RESULT_DATA, groupList);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS);
jsonObject.put(KEY_RESULT_MSG, busiDesc + "成功!"); jsonObject.put(KEY_RESULT_MSG, busiDesc + "成功!");
} catch (Exception e) { } catch (Exception e) {
......
...@@ -128,16 +128,14 @@ Content-Type: application/json ...@@ -128,16 +128,14 @@ Content-Type: application/json
} }
###站点分组列表 ###站点分组列表
POST {{baseUrl}}/site/getFlatSitesGroupByAreaCode POST {{baseUrl}}/site/getFlatSitesGroupByAreaCode
Content-Type: application/json Content-Type: application/json
{ {"areaName":"象鼻街道"}
}
###站点分组列表 ###站点区域分组列表
POST {{baseUrl}}/site/getSitesGroupByAreaLevel POST {{baseUrl}}/site/getSitesGroupByAreaLevel
Content-Type: application/json Content-Type: application/json
{ {"areaLevel":2}
}
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