jiangping
2025-01-03 52401d48013a422dab5d45d976f89e01472abc79
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -588,25 +588,46 @@
    public    List<AlarmEventDataVO> fightingAdminAlertList(){
        List<AlarmEventDataVO> data = new ArrayList<>();
        //查询24小时内的
        List<FindHomeAlarmInfoPageResponse> allList = new ArrayList<>();
        boolean hasNext = true;
        int curTotal = 0;
        int curPage = 1;
        FindHomeAlarmInfoPageRequest param = new FindHomeAlarmInfoPageRequest();
        param.setHour(24);
        param.setPage(1);
        param.setUserId("admin");
        while (hasNext){
            //分页遍历循环查询所有门禁设备数据
            param.setPage(curPage);
//        param.setRegionIndexCodes("root000000");
        param.setAlarmStartTime(DateUtil.getFomartDate(new Date(),"yyyy-MM-dd") + " 00:00:00");
        param.setAlarmEndTime(DateUtil.getPlusTime2(new Date()));
        param.setPageSize(20);
        BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>> response = HKService.findHomeAlarmInfoPage(param);
        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)
                && response.getData()!=null
                &&response.getData().getList()!=null) {
            param.setAlarmStartTime(DateUtil.getFomartDate(new Date(),"yyyy-MM-dd") + " 00:00:00");
            param.setAlarmEndTime(DateUtil.getPlusTime2(new Date()));
            param.setPageSize(50);
            BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>> response = HKService.findHomeAlarmInfoPage(param);
            if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
                throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "对不起,海康同步数据失败~");
            }
            for(FindHomeAlarmInfoPageResponse r : response.getData().getList()){
                AlarmEventDataVO t = new AlarmEventDataVO();
                BeanUtils.copyProperties(r,t);
                data.add(t);
                try {
                    if(DateUtil.getDateFromString(t.getAlarmTime()).getTime() >= Utils.Date.getStart(new Date()).getTime()){
                        data.add(t);
                    }else{
                        hasNext =false;
                    }
                }catch (Exception e){
                }
            }
            curTotal += 50;
            if(curTotal >= response.getData().getTotal()){
                hasNext = false;
            }
            if(response.getData().getList() == null || response.getData().getList().size()==0){
                hasNext =false;
            }
            curPage++;
        }
        return data;
    }
@@ -1380,14 +1401,19 @@
        }
        if( data.getGasQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
            //计算用气同比环比
            data.getGasQuantity().setSameRate(
                    (data.getGasQuantity().getTotalNum().subtract(data.getGasQuantity().getSameNum())).divide(data.getGasQuantity().getSameNum()).doubleValue()*100 +""
            if(Constants.formatBigdecimal(data.getGasQuantity().getSameNum()).compareTo(new BigDecimal(0))!=0){
                data.getGasQuantity().setSameRate(
                        (data.getGasQuantity().getTotalNum().subtract(data.getGasQuantity().getSameNum())).divide(data.getGasQuantity().getSameNum(),4,BigDecimal.ROUND_HALF_UP).doubleValue()*100 +""
                    /*Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum()
                            .divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""*/);
            data.getGasQuantity().setRingRate(
                    (data.getGasQuantity().getTotalNum().subtract(data.getGasQuantity().getRingNum())).divide(data.getGasQuantity().getRingNum()).doubleValue()*100 +""
                    //Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""
            );
            }
           if(Constants.formatBigdecimal(data.getGasQuantity().getRingNum()).compareTo(new BigDecimal(0))!=0){
               data.getGasQuantity().setRingRate(
                       (data.getGasQuantity().getTotalNum().subtract(data.getGasQuantity().getRingNum())).divide(data.getGasQuantity().getRingNum(),4,BigDecimal.ROUND_HALF_UP).doubleValue()*100 +""
                       //Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""
               );
           }
        }
        if( data.getWaterQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
            // //计算用水同比环比