Просмотр исходного кода

新增 获取测报灯害虫排名列表

zhaiyifei 8 месяцев назад
Родитель
Сommit
905e63ac15

+ 16 - 0
src/main/java/com/yunfeiyun/agmp/iotm/web/controller/IotScreenController.java

@@ -262,4 +262,20 @@ public class IotScreenController extends BaseController {
         return getDataTable(iIotScreenService.cbdRecogImgList(reqVo));
     }
 
+    /**
+     * 获取测报灯虫情趋势矩阵折线图
+     */
+    @GetMapping("/device/cbd/pest/chart/list")
+    public AjaxResult cbdPestChartList(IotDeviceDataListReqVo reqVo) {
+        return AjaxResult.success(iIotScreenService.cbdPestChartList(reqVo));
+    }
+
+    /**
+     * 获取测报灯害虫排名列表
+     */
+    @GetMapping("/device/cbd/pest/rank/list")
+    public AjaxResult cbdPestRankList(IotDeviceDataListReqVo reqVo) {
+        return AjaxResult.success(iIotScreenService.cbdPestRankList(reqVo));
+    }
+
 }

+ 16 - 0
src/main/java/com/yunfeiyun/agmp/iotm/web/service/IIotScreenService.java

@@ -11,6 +11,8 @@ import com.yunfeiyun.agmp.iotm.device.monitor.domin.IotMonitorAddressGetReqVo;
 import com.yunfeiyun.agmp.iotm.device.monitor.domin.IotMonitorCaptureReqVo;
 import com.yunfeiyun.agmp.iotm.device.monitor.domin.IotMonitorPtzReqVo;
 import com.yunfeiyun.agmp.iotm.device.pest.domain.IotPestRecogPeriodReqVo;
+import com.yunfeiyun.agmp.iotm.device.pest.domain.IotPestrecogGroupByNameListResVo;
+import com.yunfeiyun.agmp.iotm.device.pest.domain.IotPestrecogGroupByNameResVo;
 import com.yunfeiyun.agmp.iotm.web.domain.reqvo.IotDeviceListReqVo;
 import com.yunfeiyun.agmp.iotm.web.domain.reqvo.IotHomeDeviceListReqVo;
 import com.yunfeiyun.agmp.iotm.web.domain.reqvo.IotScreenStatReqVo;
@@ -105,4 +107,18 @@ public interface IIotScreenService {
      * @return
      */
     public IPage cbdRecogImgList(IotPestRecogPeriodReqVo reqVo);
+
+    /**
+     * 获取测报灯虫情趋势矩阵折线图
+     * @param reqVo
+     * @return
+     */
+    public List<IotPestrecogGroupByNameListResVo> cbdPestChartList(IotDeviceDataListReqVo reqVo);
+
+    /**
+     * 获取测报灯害虫排名列表
+     * @param reqVo
+     * @return
+     */
+    public List<IotPestrecogGroupByNameResVo> cbdPestRankList(IotDeviceDataListReqVo reqVo);
 }

+ 33 - 4
src/main/java/com/yunfeiyun/agmp/iotm/web/service/impl/IotScreenServiceImpl.java

@@ -25,9 +25,7 @@ import com.yunfeiyun.agmp.iotm.device.monitor.domin.IotMonitorAddressGetReqVo;
 import com.yunfeiyun.agmp.iotm.device.monitor.domin.IotMonitorCaptureReqVo;
 import com.yunfeiyun.agmp.iotm.device.monitor.domin.IotMonitorPtzReqVo;
 import com.yunfeiyun.agmp.iotm.device.monitor.service.IotMonitorService;
-import com.yunfeiyun.agmp.iotm.device.pest.domain.IotCbdimgListResVo;
-import com.yunfeiyun.agmp.iotm.device.pest.domain.IotPestRecogPeriodReqVo;
-import com.yunfeiyun.agmp.iotm.device.pest.domain.IotPestrecogListResVo;
+import com.yunfeiyun.agmp.iotm.device.pest.domain.*;
 import com.yunfeiyun.agmp.iotm.device.pest.service.IIotPestrecogService;
 import com.yunfeiyun.agmp.iotm.device.ybq.domain.IotYbqPredictIntoDto;
 import com.yunfeiyun.agmp.iotm.util.ValidateUtil;
@@ -320,7 +318,7 @@ public class IotScreenServiceImpl implements IIotScreenService {
         resVo.setCbdrecogPestnum(0);
         resVo.setImgAddrList(null);
 
-        if(resVoList != null){
+        if(resVoList != null && !resVoList.isEmpty()){
             resVo = resVoList.get(0);
         }
         return resVo;
@@ -548,5 +546,36 @@ public class IotScreenServiceImpl implements IIotScreenService {
         return listPage;
     }
 
+    /**
+     * 获取测报灯虫情趋势矩阵折线图
+     *
+     * @param reqVo
+     * @return
+     */
+    @Override
+    public List<IotPestrecogGroupByNameListResVo> cbdPestChartList(IotDeviceDataListReqVo reqVo) {
+        if (StringUtils.isEmpty(reqVo.getStartTime()) || StringUtils.isEmpty(reqVo.getEndTime())) {
+            throw new IotBizException(ErrorCode.INVALID_PARAMETER.getCode(), "时间不能为空");
+        }
+        return iIotPestrecogService.groupByDateName(reqVo);
+    }
+
+    /**
+     * 获取测报灯害虫排名列表
+     *
+     * @param reqVo
+     * @return
+     */
+    @Override
+    public List<IotPestrecogGroupByNameResVo> cbdPestRankList(IotDeviceDataListReqVo reqVo) {
+        String startTime = reqVo.getStartTime();
+        String endTime = reqVo.getEndTime();
+
+        if (StringUtils.isEmpty(startTime) || StringUtils.isEmpty(endTime)) {
+            throw new IotBizException(ErrorCode.INVALID_PARAMETER.getCode(), "时间不能为空");
+        }
+        return iIotPestrecogService.groupByName(reqVo);
+    }
+
 
 }