Browse Source

'优化网格基础信息统计表-网格基础信息统计接口,新增网格区域和测绘院地图网格名称刷选条件及相关逻辑'

james 1 year ago
parent
commit
f8ef95192f

+ 5 - 3
service-fire/service-fire-biz/src/main/java/com/usky/fire/controller/web/DemGridMemderStatisticController.java

@@ -31,14 +31,16 @@ public class DemGridMemderStatisticController {
 
     /**
      * 网格基础信息统计
-     * @param id 网格员管理表主键ID
+     * @param gridArea      网格区域
+     * @param mapGridName    测绘院地图网格名称
      * @param gridGrade  网格等级(2、中网格 3、小网格)
      * @return
      */
     @GetMapping("gridMemderStatistic")
-    public ApiResult<DemGridMemderStatistic> gridMemderStatistic(@RequestParam(value = "id",required = false) Integer id,
+    public ApiResult<DemGridMemderStatistic> gridMemderStatistic(@RequestParam(value = "gridArea", required = false) String gridArea,
+                                                                 @RequestParam(value = "mapGridName",required = false) String mapGridName,
                                                                        @RequestParam(value = "gridGrade",required = false) Integer gridGrade){
-        return ApiResult.success(demGridMemderStatisticService.gridMemderStatistic(id,gridGrade));
+        return ApiResult.success(demGridMemderStatisticService.gridMemderStatistic(gridArea,mapGridName,gridGrade));
     }
 
 }

+ 1 - 1
service-fire/service-fire-biz/src/main/java/com/usky/fire/service/DemGridMemderStatisticService.java

@@ -15,5 +15,5 @@ import java.util.List;
  */
 public interface DemGridMemderStatisticService extends CrudService<DemGridMemderStatistic> {
 
-    DemGridMemderStatistic gridMemderStatistic(Integer id, Integer gridGrade);
+    DemGridMemderStatistic gridMemderStatistic(String gridArea, String mapGridName, Integer gridGrade);
 }

+ 39 - 23
service-fire/service-fire-biz/src/main/java/com/usky/fire/service/impl/DemGridMemderStatisticServiceImpl.java

@@ -2,6 +2,8 @@ package com.usky.fire.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.usky.fire.domain.DemGridMember;
 import com.usky.fire.domain.DemGridMemderStatistic;
@@ -32,7 +34,7 @@ public class DemGridMemderStatisticServiceImpl extends AbstractCrudService<DemGr
     private DemGridMemberService demGridMemberService;
 
     @Override
-    public DemGridMemderStatistic gridMemderStatistic(Integer id, Integer gridGrade){
+    public DemGridMemderStatistic gridMemderStatistic(String gridArea, String mapGridName, Integer gridGrade){
         DemGridMemderStatistic gridMemderStatistic = new DemGridMemderStatistic();
 
         QueryWrapper<DemGridMemderStatistic> queryWrapper = Wrappers.query();
@@ -40,31 +42,45 @@ public class DemGridMemderStatisticServiceImpl extends AbstractCrudService<DemGr
             queryWrapper.select("SUM(personnel_num) as personnelNum","SUM(village_num) as villageNum","SUM(high_rise_num) as highRiseNum","SUM(office_buildings_num) as officeBuildingsNum","SUM(street_front_num) as streetFrontNum","SUM(key_company_num) as keyCompanyNum","SUM(factory_store_num) as factoryStoreNum","SUM(medical_institution_num) as medicalInstitutionNum","SUM(school_num) as schoolNum","SUM(elder_care_num) as elderCareNum","SUM(large_build_num) as largeBuildNum","SUM(dealer_market_num) as dealerMarketNum","SUM(pulic_entertainment_num) as pulicEntertainmentNum","SUM(religious_places_num) as religiousPlacesNum","SUM(hotel_num) as hotelNum","SUM(scale_rent_num) as scaleRentNum","SUM(gas_station_num) as gasStationNum","SUM(subway_station_num) as subwayStationNum","SUM(construction_site_num) as constructionSiteNum","SUM(community_num) as communityNum","SUM(other_num) as otherNum");
 
         }else{
-            if(gridGrade == 2){
-                LambdaQueryWrapper<DemGridMember> queryWrapper1 = Wrappers.lambdaQuery();
-                queryWrapper1.eq(DemGridMember::getSeniorGrid,id);
-                List<Integer> idList = new ArrayList<>();
-                List<DemGridMember> queryList = demGridMemberService.list(queryWrapper1);
-                if(queryList.size() > 0){
-                    for (int i = 0; i < queryList.size(); i++) {
-                        idList.add(queryList.get(i).getId());
-                    }
+            List<DemGridMember> list = new ArrayList<>();
+            LambdaQueryWrapper<DemGridMember> queryWrapperList = Wrappers.lambdaQuery();
+            queryWrapperList.eq(DemGridMember::getDeleteFlag, 0)
+                    .eq(StringUtils.isNotBlank(gridArea),DemGridMember::getGridArea, gridArea)
+                    .eq(StringUtils.isNotBlank(mapGridName),DemGridMember::getMapGridName, mapGridName)
+                    .eq(gridGrade != null,DemGridMember::getGridGrade, gridGrade);
+            list = demGridMemberService.list(queryWrapperList);
+            if (CollectionUtils.isNotEmpty(list)) {
+                List<Integer> id = new ArrayList<>();
+                for (int i = 0; i < list.size(); i++) {
+                    id.add(list.get(i).getId());
                 }
+                if(gridGrade == 2){
+                    LambdaQueryWrapper<DemGridMember> queryWrapper1 = Wrappers.lambdaQuery();
+                    queryWrapper1.in(DemGridMember::getSeniorGrid,id);
+                    List<Integer> idList = new ArrayList<>();
+                    List<DemGridMember> queryList = demGridMemberService.list(queryWrapper1);
+                    if(queryList.size() > 0){
+                        for (int i = 0; i < queryList.size(); i++) {
+                            idList.add(queryList.get(i).getId());
+                        }
+                    }
+
+                    if(idList.size() > 0){
+                        queryWrapper.select("SUM(personnel_num) as personnelNum","SUM(village_num) as villageNum","SUM(high_rise_num) as highRiseNum","SUM(office_buildings_num) as officeBuildingsNum","SUM(street_front_num) as streetFrontNum","SUM(key_company_num) as keyCompanyNum","SUM(factory_store_num) as factoryStoreNum","SUM(medical_institution_num) as medicalInstitutionNum","SUM(school_num) as schoolNum","SUM(elder_care_num) as elderCareNum","SUM(large_build_num) as largeBuildNum","SUM(dealer_market_num) as dealerMarketNum","SUM(pulic_entertainment_num) as pulicEntertainmentNum","SUM(religious_places_num) as religiousPlacesNum","SUM(hotel_num) as hotelNum","SUM(scale_rent_num) as scaleRentNum","SUM(gas_station_num) as gasStationNum","SUM(subway_station_num) as subwayStationNum","SUM(construction_site_num) as constructionSiteNum","SUM(community_num) as communityNum","SUM(other_num) as otherNum")
+                                .in("grid_member_id",idList);
+                    }
 
-                if(idList.size() > 0){
-                    queryWrapper.select("SUM(personnel_num) as personnelNum","SUM(village_num) as villageNum","SUM(high_rise_num) as highRiseNum","SUM(office_buildings_num) as officeBuildingsNum","SUM(street_front_num) as streetFrontNum","SUM(key_company_num) as keyCompanyNum","SUM(factory_store_num) as factoryStoreNum","SUM(medical_institution_num) as medicalInstitutionNum","SUM(school_num) as schoolNum","SUM(elder_care_num) as elderCareNum","SUM(large_build_num) as largeBuildNum","SUM(dealer_market_num) as dealerMarketNum","SUM(pulic_entertainment_num) as pulicEntertainmentNum","SUM(religious_places_num) as religiousPlacesNum","SUM(hotel_num) as hotelNum","SUM(scale_rent_num) as scaleRentNum","SUM(gas_station_num) as gasStationNum","SUM(subway_station_num) as subwayStationNum","SUM(construction_site_num) as constructionSiteNum","SUM(community_num) as communityNum","SUM(other_num) as otherNum")
-                            .in("grid_member_id",idList);
-                }
 
-            }else if(gridGrade == 3){
-                queryWrapper.select("SUM(personnel_num) as personnelNum","SUM(village_num) as villageNum","SUM(high_rise_num) as highRiseNum","SUM(office_buildings_num) as officeBuildingsNum"
-                        ,"SUM(street_front_num) as streetFrontNum","SUM(key_company_num) as keyCompanyNum","SUM(factory_store_num) as factoryStoreNum"
-                        ,"SUM(medical_institution_num) as medicalInstitutionNum","SUM(school_num) as schoolNum","SUM(elder_care_num) as elderCareNum"
-                        ,"SUM(large_build_num) as largeBuildNum","SUM(dealer_market_num) as dealerMarketNum","SUM(pulic_entertainment_num) as pulicEntertainmentNum"
-                        ,"SUM(religious_places_num) as religiousPlacesNum","SUM(hotel_num) as hotelNum","SUM(scale_rent_num) as scaleRentNum"
-                        ,"SUM(gas_station_num) as gasStationNum","SUM(subway_station_num) as subwayStationNum","SUM(construction_site_num) as constructionSiteNum"
-                        ,"SUM(community_num) as communityNum","SUM(other_num) as otherNum")
-                        .eq("grid_member_id",id);
+                }else if(gridGrade == 3){
+                    queryWrapper.select("SUM(personnel_num) as personnelNum","SUM(village_num) as villageNum","SUM(high_rise_num) as highRiseNum","SUM(office_buildings_num) as officeBuildingsNum"
+                            ,"SUM(street_front_num) as streetFrontNum","SUM(key_company_num) as keyCompanyNum","SUM(factory_store_num) as factoryStoreNum"
+                            ,"SUM(medical_institution_num) as medicalInstitutionNum","SUM(school_num) as schoolNum","SUM(elder_care_num) as elderCareNum"
+                            ,"SUM(large_build_num) as largeBuildNum","SUM(dealer_market_num) as dealerMarketNum","SUM(pulic_entertainment_num) as pulicEntertainmentNum"
+                            ,"SUM(religious_places_num) as religiousPlacesNum","SUM(hotel_num) as hotelNum","SUM(scale_rent_num) as scaleRentNum"
+                            ,"SUM(gas_station_num) as gasStationNum","SUM(subway_station_num) as subwayStationNum","SUM(construction_site_num) as constructionSiteNum"
+                            ,"SUM(community_num) as communityNum","SUM(other_num) as otherNum")
+                            .in("grid_member_id",id);
+                }
             }
 
         }