浏览代码

水利bigdata接口

lidongyu 1 年之前
父节点
当前提交
147d4daf76

+ 18 - 10
src/main/java/com/sooka/sponest/data/digitalwater/controller/WaterBigDataController.java

@@ -6,16 +6,15 @@ import com.sooka.sponest.data.app.domain.VisuForestCloudMapVO;
 import com.sooka.sponest.data.digitalforest.domain.CenterdataTForestGrid;
 import com.sooka.sponest.data.digitalwater.domain.*;
 import com.sooka.sponest.data.digitalwater.service.IWaterBigDataService;
+import com.sooka.sponest.data.other.hydroenergy.domain.CenterdataTResourcesHydroenergy;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.collections4.MapUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import springfox.documentation.annotations.ApiIgnore;
 
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -35,22 +34,31 @@ public class WaterBigDataController extends BaseController {
     @Autowired
     private IWaterBigDataService waterBigDataService;
 
+
     /**
      * 河道蓝线(按照类型统计河道蓝线面积)
      * @return
      */
     @ApiOperation(value = "河道蓝线(按照类型统计河道蓝线面积)", notes = "河道蓝线(按照类型统计河道蓝线面积)")
-    @PostMapping("/selectChannelBlueLine")
+    @GetMapping("/selectChannelBlueLine")
     public R selectChannelBlueLine(CenterdataTHydraulicChannelBlueline centerdataTHydraulicChannelBlueline) {
         return R.ok(waterBigDataService.selectChannelBlueLine(centerdataTHydraulicChannelBlueline));
     }
-
+    /**
+     * 水资源(市级用用户按区县,区县用户按乡镇统计地表水总量,地下河总量)
+     * @return
+     */
+    @ApiOperation(value = "水资源(市级用用户按区县,区县用户按乡镇统计地表水总量,地下河总量)", notes = "水资源(市级用用户按区县,区县用户按乡镇统计地表水总量,地下河总量)")
+    @GetMapping("/selectHydropowerResources")
+    public R selectHydropowerResources(CenterdataTResourcesHydroenergy centerdataTResourcesHydroenergy) throws IOException {
+        return R.ok(waterBigDataService.selectHydropowerResources(centerdataTResourcesHydroenergy));
+    }
     /**
      * 水库统计(按水库名称统计总容量)
      * @return
      */
     @ApiOperation(value = "水库统计(按水库名称统计总容量)", notes = "水库统计(按水库名称统计总容量)")
-    @PostMapping("/selectReservoirStatistics")
+    @GetMapping("/selectReservoirStatistics")
     public R selectReservoirStatistics(CenterdataTHydraulicReservoir centerdataTHydraulicReservoir) {
         return R.ok(waterBigDataService.selectReservoirStatistics(centerdataTHydraulicReservoir));
     }
@@ -59,8 +67,8 @@ public class WaterBigDataController extends BaseController {
      * 河流统计(河流名称、河长(公里)、河流面积(平方千米)、流经村数(暂无)!)
      * @return
      */
-    @ApiOperation(value = "河流统计(河流名称、河长(公里)、河流面积(平方千米)、流经村数(暂无)!)", notes = "河流统计(河流名称、河长(公里)、河流面积(平方千米)、流经村数(暂无)!)")
-    @PostMapping("/selectRiverStatistics")
+    @ApiOperation(value = "河流统计(河流名称、河长(公里)、河流面积(平方千米)、流经村数!)", notes = "河流统计(河流名称、河长(公里)、河流面积(平方千米)、流经村数!)")
+    @GetMapping("/selectRiverStatistics")
     public R selectRiverStatistics(CenterdataTHydraulicRiver centerdataTHydraulicRiver) {
         return R.ok(waterBigDataService.selectRiverStatistics(centerdataTHydraulicRiver));
     }
@@ -70,7 +78,7 @@ public class WaterBigDataController extends BaseController {
      * @return
      */
     @ApiOperation(value = "排污统计(按排污属性统计排污口数量)", notes = "排污统计(按排污属性统计排污口数量)")
-    @PostMapping("/selectPollutantDischargeStatistics")
+    @GetMapping("/selectPollutantDischargeStatistics")
     public R selectPollutantDischargeStatistics(CenterdataTHydraulicOutletSewage centerdataTHydraulicOutletSewage) {
         return R.ok(waterBigDataService.selectPollutantDischargeStatistics(centerdataTHydraulicOutletSewage));
     }

+ 6 - 1
src/main/java/com/sooka/sponest/data/digitalwater/mapper/WaterBigDataMapper.java

@@ -4,6 +4,7 @@ import com.sooka.sponest.data.app.domain.VisuForestCloudMapVO;
 import com.sooka.sponest.data.digitalforest.domain.CenterdataTForestGrid;
 import com.sooka.sponest.data.digitalforest.domain.bo.VisuForestCloudEventTypeBO;
 import com.sooka.sponest.data.digitalwater.domain.*;
+import com.sooka.sponest.data.other.hydroenergy.domain.CenterdataTResourcesHydroenergy;
 
 import java.util.List;
 import java.util.Map;
@@ -48,7 +49,11 @@ public interface WaterBigDataMapper {
 
     List<Map<String, Object>> selectReservoirStatistics(CenterdataTHydraulicReservoir centerdataTHydraulicReservoir);
 
-    List<CenterdataTHydraulicRiver> selectRiverStatistics(CenterdataTHydraulicRiver centerdataTHydraulicRiver);
+
 
     List<Map<String, Object>> selectPollutantDischargeStatistics(CenterdataTHydraulicOutletSewage centerdataTHydraulicOutletSewage);
+
+    List<Map<String, Object>> selectCenterdataTHydraulicRiverList(CenterdataTHydraulicRiver centerdataTHydraulicRiver);
+
+    List<Map<String,Object>> selectCenterdataTResourcesHydroenergyList(CenterdataTResourcesHydroenergy centerdataTResourcesHydroenergy);
 }

+ 6 - 1
src/main/java/com/sooka/sponest/data/digitalwater/service/IWaterBigDataService.java

@@ -4,7 +4,9 @@ import com.sooka.sponest.data.app.domain.VisuForestCloudMapVO;
 import com.sooka.sponest.data.digitalforest.domain.CenterdataTForestGrid;
 import com.sooka.sponest.data.digitalforest.domain.bo.VisuForestCloudEventTypeBO;
 import com.sooka.sponest.data.digitalwater.domain.*;
+import com.sooka.sponest.data.other.hydroenergy.domain.CenterdataTResourcesHydroenergy;
 
+import java.io.IOException;
 import java.util.List;
 import java.util.Map;
 
@@ -52,7 +54,10 @@ public interface IWaterBigDataService {
 
     List<Map<String,Object>> selectReservoirStatistics(CenterdataTHydraulicReservoir centerdataTHydraulicReservoir);
 
-    List<CenterdataTHydraulicRiver> selectRiverStatistics(CenterdataTHydraulicRiver centerdataTHydraulicRiver);
+    List<Map<String,Object>> selectRiverStatistics(CenterdataTHydraulicRiver centerdataTHydraulicRiver);
 
     List<Map<String,Object>> selectPollutantDischargeStatistics(CenterdataTHydraulicOutletSewage centerdataTHydraulicOutletSewage);
+
+
+    List<Map<String, Object>> selectHydropowerResources(CenterdataTResourcesHydroenergy centerdataTResourcesHydroenergy) throws IOException;
 }

+ 26 - 2
src/main/java/com/sooka/sponest/data/digitalwater/service/impl/WaterBigDataServiceImpl.java

@@ -1,5 +1,6 @@
 package com.sooka.sponest.data.digitalwater.service.impl;
 
+import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.datascope.annotation.DataScopeMutiDept;
 import com.sooka.sponest.data.app.domain.VisuForestCloudMapVO;
 import com.sooka.sponest.data.base.service.impl.BaseServiceImpl;
@@ -8,9 +9,13 @@ import com.sooka.sponest.data.digitalforest.domain.bo.VisuForestCloudEventTypeBO
 import com.sooka.sponest.data.digitalwater.domain.*;
 import com.sooka.sponest.data.digitalwater.mapper.WaterBigDataMapper;
 import com.sooka.sponest.data.digitalwater.service.IWaterBigDataService;
+import com.sooka.sponest.data.other.hydroenergy.domain.CenterdataTResourcesHydroenergy;
+import com.sooka.sponest.data.utils.DeptLevelUtil;
+import org.apache.commons.collections4.MapUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.io.IOException;
 import java.util.List;
 import java.util.Map;
 
@@ -25,6 +30,9 @@ public class WaterBigDataServiceImpl extends BaseServiceImpl implements IWaterBi
 
     @Autowired
     private WaterBigDataMapper waterBigDataMapper;
+
+    @Autowired
+    private DeptLevelUtil deptLevelUtil;
     @DataScopeMutiDept(deptAlias = "d")
     @Override
     public List<CenterdataTHydraulicBattlefield> selectBattlefieldWaterDeptCount(CenterdataTHydraulicBattlefield centerdataTHydraulicBattlefield) {
@@ -124,9 +132,15 @@ public class WaterBigDataServiceImpl extends BaseServiceImpl implements IWaterBi
     }
     @DataScopeMutiDept(deptAlias = "d")
     @Override
-    public List<CenterdataTHydraulicRiver> selectRiverStatistics(CenterdataTHydraulicRiver centerdataTHydraulicRiver) {
+    public List<Map<String,Object>> selectRiverStatistics(CenterdataTHydraulicRiver centerdataTHydraulicRiver) {
         setSookaDataBase(centerdataTHydraulicRiver);
-        return waterBigDataMapper.selectRiverStatistics(centerdataTHydraulicRiver);
+        List<Map<String,Object>> list = waterBigDataMapper.selectCenterdataTHydraulicRiverList(centerdataTHydraulicRiver);
+        for (Map<String, Object> map : list) {
+            if (StringUtils.isNotEmpty(MapUtils.getString(map,"hamlet"))){
+                map.put("num",MapUtils.getString(map,"hamlet").split(",").length);
+            }
+        }
+        return list;
     }
     @DataScopeMutiDept(deptAlias = "d")
     @Override
@@ -136,4 +150,14 @@ public class WaterBigDataServiceImpl extends BaseServiceImpl implements IWaterBi
         return waterBigDataMapper.selectPollutantDischargeStatistics(centerdataTHydraulicOutletSewage);
     }
 
+
+    @Override
+    public List<Map<String, Object>> selectHydropowerResources(CenterdataTResourcesHydroenergy centerdataTResourcesHydroenergy) throws IOException {
+        setSookaDataBase(centerdataTResourcesHydroenergy);
+        List<Map<String,Object>> list = waterBigDataMapper.selectCenterdataTResourcesHydroenergyList(centerdataTResourcesHydroenergy);
+        return deptLevelUtil.getDeptLevel(list);
+    }
+
+
+
 }

+ 24 - 11
src/main/resources/mapper/digitalwater/WaterBigDataMapper.xml

@@ -160,7 +160,7 @@
     </select>
     <select id="selectChannelBlueLine" resultType="java.util.Map">
         SELECT
-            a.dict_label NAME,
+            a.dict_label name,
             ifnull( sum( b.area ), 0 ) area
         FROM
         ${database_system}.sys_dict_data a
@@ -193,18 +193,10 @@
         GROUP BY a.name
         order by ifnull(sum(a.capacity),0) desc
     </select>
-    <select id="selectRiverStatistics"
-            resultType="com.sooka.sponest.data.digitalwater.domain.CenterdataTHydraulicRiver">
-        select name,riverway_length,basin_area from centerdata_t_hydraulic_river a
-        left join ${database_system}.sys_dept d on d.dept_id = a.dept_id
-        <where>
-            ${params.dataScope}
-        </where>
-        order by cast(a.riverway_length as DECIMAL) desc,cast(a.basin_area as DECIMAL)
-    </select>
+
     <select id="selectPollutantDischargeStatistics" resultType="java.util.Map">
         SELECT
-            a.dict_label NAME,
+            a.dict_label name,
             count( b.id ) num
         FROM
         ${database_system}.sys_dict_data a
@@ -227,4 +219,25 @@
         ORDER BY
             count( b.id ) DESC
     </select>
+    <select id="selectCenterdataTHydraulicRiverList" resultType="java.util.Map">
+        select a.id,a.name,a.riverway_length as riverwayLength,a.basin_area as basinArea,group_concat(b.hamlet_id) hamlet from centerdata_t_hydraulic_river a
+        left join centerdata_t_hydraulic_river_bind_hamlet b ON b.river_id = a.id
+        left join ${database_system}.sys_dept d on d.dept_id = a.dept_id
+        <where>
+            ${params.dataScope}
+        </where>
+        GROUP BY b.river_id
+        order by a.create_time desc
+    </select>
+    <select id="selectCenterdataTResourcesHydroenergyList" resultType="java.util.Map">
+        select d.ancestors ancestors,a.dept_id deptId,a.river_total riverTotal, a.water_volume waterVolume
+        from centerdata_t_resources_hydroenergy a
+        left join ${database_system}.sys_dept d on a.dept_id = d.dept_id
+        <where>
+            ${params.dataScope}
+        </where>
+        GROUP BY a.dept_id
+        order by a.create_time desc
+
+    </select>
 </mapper>