2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-05-13 2fcbb888e5f38baca1ab09c8f43efd709c044b2e
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
@@ -23,7 +23,9 @@
import com.sandu.ximon.admin.param.LightRemarkParam;
import com.sandu.ximon.admin.redis.LightKey;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
import com.sandu.ximon.admin.vo.ControlLightCommandVO;
import com.sandu.ximon.admin.vo.EquipmentInfomation;
import com.sandu.ximon.dao.bo.LightBo;
import com.sandu.ximon.dao.bo.PoleTaskLightPowerBo;
import com.sandu.ximon.dao.domain.Light;
@@ -146,6 +148,33 @@
        return one;
    }
    /**
     * 首页灯杆绑定信息
     *
     * @param deviceCode
     * @return
     */
    public EquipmentInfomation getLightInfo(String deviceCode) {
        EquipmentInfomation equipmentInfo = new EquipmentInfomation();
        equipmentInfo.setEquipmentType("单灯");
        if (deviceCode == null || deviceCode.trim().length() == 0) {
            return equipmentInfo;
        }
        Light one = getOne(Wrappers.<Light>lambdaQuery().eq(Light::getDeviceCode, deviceCode));
        if (one != null) {
            equipmentInfo.setEquipmentMac(one.getDeviceCode());
            equipmentInfo.setEquipmentCreateTime(one.getCreateTime());
        }
        Object o = redisService.get(LightKey.REPORT_MAC.key(deviceCode));
        if (o != null) {
            equipmentInfo.setEquipmentState("在线");
        } else {
            equipmentInfo.setEquipmentState("离线");
        }
        return equipmentInfo;
    }
    public boolean addRemark(LightRemarkParam param) {
        Light light = getById(param.getLightId());
        if (light == null) {
@@ -174,7 +203,9 @@
            Map<String, Object> map = new HashMap<>();
            try {
                map.put("deviceCode", param.getDeviceCode());
                WrapResponseCommonFrame<A5LightBrightnessRespInnerFrame> frame = MainBoardInvokeSyncService.getInstance().sendRRPC(param.getDeviceCode(), a5Frame, A5LightBrightnessRespInnerFrame.class);
                WrapResponseCommonFrame<A5LightBrightnessRespInnerFrame> frame
                        = MainBoardInvokeSyncService.getInstance().sendRRPC(param.getDeviceCode(), a5Frame, A5LightBrightnessRespInnerFrame.class);
                StoreOperationRecordsUtils.storeInnerFrameData(param.getDeviceCode(), "单灯帧-亮度控制", a5Frame, frame);
                if (frame == null) {
                    map.put("status", DeviceRespStatusEnums.OTHER_ERROR.getCode());
                    resultList.add(map);