package org.dromara.demo.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.demo.domain.RsDangerInfo; import org.dromara.demo.domain.RsTrafficIndex; import org.dromara.demo.domain.vo.*; import org.dromara.demo.mapper.*; import org.dromara.demo.service.IDataDashboardService; import org.springframework.stereotype.Service; import java.util.List; /** * @author gonghl * @date 2024-3-8 */ @RequiredArgsConstructor @Service public class DataDashboardServiceImpl implements IDataDashboardService { private final RsTrafficIndexMapper trafficIndexMapper; private final RsPcrDataMapper pcrDataMapper; private final RsSceneryOperationDataMapper sceneryOperationDataMapper; private final RsDangerInfoMapper dangerInfoMapper; private final RsDangerTotalMapper dangerTotalMapper; @Override public RsTrafficIndexVo getTrafficIndex() { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); queryWrapper.eq(RsTrafficIndex::getStatus, 1).orderByDesc(RsTrafficIndex::getCreateTime).last("limit 1"); return trafficIndexMapper.selectVoOne(queryWrapper); } @Override public List getPcrData() { return pcrDataMapper.getPcrData(); } @Override public List getSceneryOperationData() { return sceneryOperationDataMapper.getSceneryOperationData(); } @Override public List getDangerInfo() { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); queryWrapper.eq(RsDangerInfo::getStatus, 1).orderByDesc(RsDangerInfo::getCreateTime); return dangerInfoMapper.selectVoList(queryWrapper); } @Override public RsDangerTotalDashboardVo getDangerTotal() { RsDangerTotalDashboardVo dangerTotalDashboardVo = dangerTotalMapper.getDangerTotalNums(); // dangerTotalMapper. return dangerTotalDashboardVo; } }