2021与蓝度共同重构项目,服务端
liuhaonan
2022-03-15 58ef959cca3a0a21c421efe9c16645aaeed3c4de
ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3ChargingService.java
@@ -1,14 +1,24 @@
package com.sandu.ximon.admin.service;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.PageHelper;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.ximon.admin.manager.iot.frame.A5Frame;
import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5C3HeartbeatReportInnerFrame;
import com.sandu.ximon.admin.manager.iot.frame.inner.request.C3FinishChargingReqInnerFrame;
import com.sandu.ximon.admin.manager.iot.frame.inner.request.C3RestartChargingReqInnerFrame;
import com.sandu.ximon.admin.manager.iot.frame.inner.request.C3StartChargingReqInnerFrame;
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.mainboard.MainBoardInvokeSyncService;
import com.sandu.ximon.admin.utils.RedisUtils;
import com.sandu.ximon.dao.domain.C3mCharging;
import com.sandu.ximon.dao.mapper.C3mChargingMapper;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * @author ZZQ
@@ -17,7 +27,41 @@
 */
@Service
@AllArgsConstructor
public class C3ChargingService {
public class C3ChargingService extends BaseServiceImpl<C3mChargingMapper, C3mCharging> {
    /**
     * 保存上报C3充电设备心跳数据
     *
     * @return 是否成功
     */
    public boolean saveReportData(String deviceName, A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage heartBeatDataPackage) {
        C3mCharging one = getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getMcuUdid, deviceName));
        if (one == null) {
            //将设备信息添加到充电桩设备表
            C3mCharging c3mCharging = new C3mCharging();
            c3mCharging.setMcuUdid(deviceName);
            c3mCharging.setC3Mac(heartBeatDataPackage.getC3Mac());
            c3mCharging.setStatusBit(Integer.valueOf(heartBeatDataPackage.getStatusBit()));
            c3mCharging.setDeviceTemperature(heartBeatDataPackage.getDeviceTemperature());
            return save(c3mCharging);
        } else {
            one.setStatusBit(Integer.valueOf(heartBeatDataPackage.getStatusBit()));
            one.setDeviceTemperature(heartBeatDataPackage.getDeviceTemperature());
            return updateById(one);
        }
    }
    /**
     * 查询C3充电桩设备列表
     *
     * @return
     */
    public List<C3mCharging> getC3ChargingList(BaseConditionVO baseConditionVO) {
        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        return list();
    }
    /**
     * 开始充电
     *