diff --git a/renren-admin/src/main/java/io/renren/modules/resource/controller/ResourceController.java b/renren-admin/src/main/java/io/renren/modules/resource/controller/ResourceController.java index 1aac21a3..67df43b3 100644 --- a/renren-admin/src/main/java/io/renren/modules/resource/controller/ResourceController.java +++ b/renren-admin/src/main/java/io/renren/modules/resource/controller/ResourceController.java @@ -604,5 +604,12 @@ public class ResourceController { return new Result<>().ok(resourceService.selectAppList(params)); } + @GetMapping("/getCountByFuzzyQuery") + @ApiOperation("获取各类资源模糊查询总数") + @LogOperation("获取各类资源模糊查询总数") + public Result getCountByFuzzyQuery(@RequestParam String keyWorld) { + return new Result<>().ok(resourceService.getCountByFuzzyQuery(keyWorld)); + } + } \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java b/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java index 756d246c..3c8dc8b1 100644 --- a/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java +++ b/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java @@ -174,4 +174,6 @@ public interface ResourceDao extends BaseDao { List selectAppList(@Param("pageNum") int pageNum, @Param("type") Integer type); String selectPicByResId(@Param("id") String id); + + List selectTypeCountByName(@Param("keyWorld") String keyWorld); } \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/resource/service/ResourceService.java b/renren-admin/src/main/java/io/renren/modules/resource/service/ResourceService.java index bd182f8c..aaaae736 100644 --- a/renren-admin/src/main/java/io/renren/modules/resource/service/ResourceService.java +++ b/renren-admin/src/main/java/io/renren/modules/resource/service/ResourceService.java @@ -136,4 +136,6 @@ public interface ResourceService extends CrudService> resourceInstallationOrDataResourceDetails(Map params); Object selectAppList(Map params); + + Object getCountByFuzzyQuery(String keyWorld); } \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/resource/service/impl/ResourceServiceImpl.java b/renren-admin/src/main/java/io/renren/modules/resource/service/impl/ResourceServiceImpl.java index 4e84e4ac..502f5e20 100644 --- a/renren-admin/src/main/java/io/renren/modules/resource/service/impl/ResourceServiceImpl.java +++ b/renren-admin/src/main/java/io/renren/modules/resource/service/impl/ResourceServiceImpl.java @@ -1996,7 +1996,64 @@ public class ResourceServiceImpl extends CrudServiceImpl resultList = new ArrayList<>(); + CompletableFuture DBresourceCount = CompletableFuture.runAsync(() -> resultList.addAll(resourceDao.selectTypeCountByName(keyWorld))); + + switch (Constant.ProjectPlace.getByFlag(projectPlace)) { + case TSINGTAO_XHA: + break; + case TSINGTAO: { + CompletableFuture dataResourceCount = CompletableFuture.runAsync(() -> { //数据资源 + //青岛市局数据资源 + TsingtaoDataResourceService tsingtaoDataResourceService = new TsingtaoDataResourceService(); + GetDataResourceListDto getDataResourceListDto = new GetDataResourceListDto().setPageNum(1).setPageSize(5).setServiceName(keyWorld); + HashMap dataResource = (HashMap) tsingtaoDataResourceService.getDataResource(getDataResourceListDto); + resultList.add(new HashMap() { + { + put("count", null == dataResource ? "0" : dataResource.get("rows") + ""); + put("type", "数据资源"); + } + }); + }, executor); + + CompletableFuture infrastructureCount = CompletableFuture.runAsync(() -> { //基础设施 + HashMap queryMap = new HashMap<>(); + queryMap.put("cameraName",keyWorld); + Integer countNew = cameraChannelMapper.selectByParentIdCountNew(queryMap, null, ""); + resultList.add(new HashMap() { + { + put("count", countNew + ""); + put("type", "基础设施"); + } + }); + + }, executor); + + CompletableFuture all = CompletableFuture.allOf(DBresourceCount, dataResourceCount, infrastructureCount); + all.join(); + + } + break; + default: + break; + } + //未查到的类型返回数量0 + List temp = new ArrayList<>(); + resultList.forEach(map -> temp.add(map.get("type").toString())); + Arrays.stream(censusTypes).filter(index -> !temp.contains(index)).forEach(index -> { + Map nullMap = new HashMap() { + { + put("count", "0"); + put("type", index); + } + }; + resultList.add(nullMap); + }); + return resultList; } } \ No newline at end of file diff --git a/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml b/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml index 9214e59f..807dcd6c 100644 --- a/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml +++ b/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml @@ -605,7 +605,7 @@ GROUP BY dept_id ) tdr ON sd.id = tdr.dept_id LEFT JOIN sys_region sr ON sd.district = sr.id - ORDER BY sd.type, sr.sort + ORDER BY sd.type, sr.sort, sd.sort ) temp1 WHERE 1 = 1 @@ -1531,4 +1531,18 @@ AND tdr.id = #{id} AND tda.del_flag = 0 + \ No newline at end of file