2021与蓝度共同重构项目,服务端
liuhaonan
2022-04-19 7e2175df8ed913a858296d4fde0d268879a91daf
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -28,12 +28,13 @@
import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5OrderEnum;
import com.sandu.ximon.admin.manager.iot.rrpc.enums.DeviceStateEnum;
import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService;
import com.sandu.ximon.admin.param.PoleBindingParam;
import com.sandu.ximon.admin.param.PoleParam;
import com.sandu.ximon.admin.param.PoleStatesParam;
import com.sandu.ximon.admin.param.*;
import com.sandu.ximon.admin.redis.LightKey;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.vo.PoleBindVO;
import com.sandu.ximon.dao.bo.BroadcastTerminalV2EntityBo;
import com.sandu.ximon.dao.bo.MonitorBo;
import com.sandu.ximon.dao.domain.LedPlayerEntity;
import com.sandu.ximon.dao.domain.Pole;
import com.sandu.ximon.dao.domain.PoleBinding;
import com.sandu.ximon.dao.domain.PoleGroupRelation;
@@ -115,10 +116,11 @@
    /**
     * 统计在线灯杆数量
     *
     * @return
     */
    public Map<String,Integer> poleCount() {
        Map<String,Integer> result = new HashMap<>();
    public Map<String, Integer> poleCount() {
        Map<String, Integer> result = new HashMap<>();
        List<Pole> list = new ArrayList<>();
        LambdaQueryWrapper<Pole> wrapper = new LambdaQueryWrapper<>();
        if (SecurityUtils.getClientId() == null) {
@@ -129,10 +131,52 @@
                        w.eq(Pole::getUserId, SecurityUtils.getUserId());
                    });
        }
        //灯杆
        list = list(wrapper);
        List<Pole> poles = isOnLine(list);
        result.put("onlineCount",poles.size());
        result.put("totalCount",list.size());
        result.put("poleOnlineCount", poles.size());
        result.put("poleTotalCount", list.size());
        //诺瓦
        List<LedPlayerEntity> ledPlayerEntities = SpringContextHolder.getBean(LedPlayerEntityService.class).ledPlayerEntityList(null, null);
        int number = 0;
        for (LedPlayerEntity bean : ledPlayerEntities) {
            if (bean.getOnlineStatus() == 1) {
                number++;
            }
        }
        result.put("novaOnlineCount", number);
        result.put("novaTotalCount", ledPlayerEntities.size());
        //ip音柱
        BroadcastTerminalV2Param broadcastTerminalV2Param = new BroadcastTerminalV2Param();
        broadcastTerminalV2Param.setBindingState(2);
        broadcastTerminalV2Param.setWorkState(-1);
        List<BroadcastTerminalV2EntityBo> broadcastTerminalList = SpringContextHolder.getBean(IpVolumeService.class).getBroadcastTerminalList(null, broadcastTerminalV2Param);
        number = 0;
        for (BroadcastTerminalV2EntityBo bean : broadcastTerminalList) {
            if (bean.getStatus() == 1 || bean.getStatus() == 0) {
                number++;
            }
        }
        result.put("broadcastOnlineCount", number);
        result.put("broadcastTotalCount", broadcastTerminalList.size());
        number = 0;
        //摄像头
        MonitorParam monitorParam = new MonitorParam();
        monitorParam.setEquipmentState(2);
        monitorParam.setBindingState(2);
        List<MonitorBo> monitorBos = SpringContextHolder.getBean(MonitorService.class).listMonitorByKeyword(null, monitorParam);
        monitorParam.setEquipmentState(1);
        List<MonitorBo> online = SpringContextHolder.getBean(MonitorService.class).listMonitorByKeyword(null, monitorParam);
        result.put("monitorOnlineCount", online.size());
        result.put("monitorTotalCount", monitorBos.size());
        //单灯
        return result;
    }
@@ -147,7 +191,7 @@
                        w.eq(Pole::getUserId, SecurityUtils.getUserId());
                    });
        }
        if (!param.getKeyword().isEmpty()) {
        if (param.getKeyword() != null && !param.getKeyword().isEmpty()) {
            wrapper.like(Pole::getPoleCode, param.getKeyword()).or(
                    wrappers -> {
                        wrappers.like(Pole::getPoleName, param.getKeyword());
@@ -155,6 +199,7 @@
            );
        }
        PageHelper.startPage(pageNo, pageSize);
        list = list(wrapper);
        if (param.getGroupid() != null) {
            //  List<Long> poleIds = new ArrayList<>();
@@ -730,4 +775,15 @@
        }
        return one;
    }
//    /**
//     * 用户总单灯节能率
//     */
//    public Double getPoleEnergy() {
//        Double energy = 0.0;
//
//
//        return energy;
//    }
}