2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-04-28 bfce748e37a753c729e15dd233600379f504d019
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightPoleHeelingService.java
@@ -11,10 +11,14 @@
import com.sandu.ximon.admin.manager.iot.frame.inner.request.*;
import com.sandu.ximon.admin.manager.iot.rrpc.dto.CommonFrame;
import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5OrderEnum;
import com.sandu.ximon.admin.manager.iot.rrpc.enums.LightPoleHeelingEnum;
import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService;
import com.sandu.ximon.admin.param.LightPoleHeelingListParam;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.RedisUtils;
import com.sandu.ximon.dao.domain.Light;
import com.sandu.ximon.dao.domain.LightPoleHeeling;
import com.sandu.ximon.dao.domain.LightPoleHeelingEquipment;
import com.sandu.ximon.dao.domain.PoleBinding;
import com.sandu.ximon.dao.mapper.LightPoleHeelingMapper;
import lombok.AllArgsConstructor;
@@ -26,14 +30,15 @@
@AllArgsConstructor
public class LightPoleHeelingService extends BaseServiceImpl<LightPoleHeelingMapper, LightPoleHeeling> {
    private LightPoleHeelingMapper lightPoleHeelingMapper;
//    private PoleBindingService poleBindingService;
//    private PoleService poleService;
    private LightPoleHeelingEquipmentService lightPoleHeelingEquipmentService;
    /**
     * 模糊查询
     */
    public List<LightPoleHeeling> listLightPoleHeelingByKeyword(BaseConditionVO baseConditionVO, LightPoleHeelingListParam lightPoleHeelingListParam) {
        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        if (baseConditionVO != null) {
            PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        }
        if (lightPoleHeelingListParam == null) {
            lightPoleHeelingListParam = new LightPoleHeelingListParam();
        }
@@ -43,10 +48,23 @@
            lightPoleHeelingListParam.setKeyword(lightPoleHeelingListParam.getKeyword().trim());
        }
        List<LightPoleHeeling> lightPoleHeelings
                = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword(), lightPoleHeelingListParam.getProcessingState());
        List<LightPoleHeeling> lightPoleHeelings;
        if (SecurityUtils.getClientId() == null) {
            lightPoleHeelings = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword()
                    , lightPoleHeelingListParam.getProcessingState(), null);
        } else {
            lightPoleHeelings = lightPoleHeelingMapper.listLightPoleHeeling(lightPoleHeelingListParam.getKeyword()
                    , lightPoleHeelingListParam.getProcessingState(), SecurityUtils.getUserId());
        }
        return lightPoleHeelings;
    }
    /**
     * 根据Mac获取最新数据
     */
    public LightPoleHeeling getLightPoleHeelingByMac(String mac) {
        return getOne(Wrappers.lambdaQuery(LightPoleHeeling.class).eq(LightPoleHeeling::getMac, mac));
    }
    /**
@@ -141,7 +159,7 @@
        LightPoleHeelingSetHeartbeatPacketTimeReqInnerFrame setHeartbeatPacketTimeReqInnerFrame =
                new LightPoleHeelingSetHeartbeatPacketTimeReqInnerFrame(setTime);
        A5Frame a5Frame = new A5Frame(A5OrderEnum.REQUEST_C3_DATA.getCode(), setHeartbeatPacketTimeReqInnerFrame);
        A5Frame a5Frame = new A5Frame(A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode(), setHeartbeatPacketTimeReqInnerFrame);
        System.out.println(a5Frame + "            -----a5Frame");
        CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(devicesName, a5Frame);
@@ -165,7 +183,7 @@
        LightPoleHeelingSetSensorStateReqInnerFrame setSensorStateReqInnerFrame =
                new LightPoleHeelingSetSensorStateReqInnerFrame();
        A5Frame a5Frame = new A5Frame(A5OrderEnum.REQUEST_C3_DATA.getCode(), setSensorStateReqInnerFrame);
        A5Frame a5Frame = new A5Frame(A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode(), setSensorStateReqInnerFrame);
        System.out.println(a5Frame + "            -----a5Frame");
        CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(devicesName, a5Frame);
@@ -203,6 +221,18 @@
            lightPoleHeeling.setWarningLevel(0);//正常
        }
        //存储设备状态到缓存
        RedisUtils.getBean().set(LightPoleHeelingEnum.LIGHT_POLE_HEELING_STATE.getCode() + deviceName
                , heartBeatDataPackage, 300L);
        /**
         * 将灯杆倾斜硬件添加到硬件表
         */
        LightPoleHeelingEquipment one = lightPoleHeelingEquipmentService.getOne(Wrappers.lambdaQuery(LightPoleHeelingEquipment.class).eq(LightPoleHeelingEquipment::getMac, deviceName));
        if (one == null) {
            LightPoleHeelingEquipment equipment = new LightPoleHeelingEquipment();
            equipment.setMac(deviceName);
        }
        return save(lightPoleHeeling);
    }
}