package com.ruoyi.fuzhou.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.fuzhou.domain.ReceiveCarValueFinal;
import com.ruoyi.fuzhou.domain.ReceiveSlmValueFinal;
import com.ruoyi.fuzhou.domain.vo.ReceiveValueListVo;
import com.ruoyi.fuzhou.mapper.ReceiveCarValueFinalMapper;
import com.ruoyi.fuzhou.mapper.ReceiveSlmValueFinalMapper;
import com.ruoyi.fuzhou.service.ReceiveSlmValueFinalService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
*
* 雷达设备实时数据 服务实现类
*
*
* @author sunjiawei
* @since 2025-05-23
*/
@Service
@DataSource(value = DataSourceType.SLAVE)
public class ReceiveSlmValueFinalServiceImpl extends ServiceImpl implements ReceiveSlmValueFinalService {
@Autowired
private ReceiveSlmValueFinalMapper receiveSlmValueFinalMapper;
//查询所有数据列表
@Override
public List listAll(){
return receiveSlmValueFinalMapper.selectList(null);
}
//批量插入
@Override
public Integer saveBatchNew(List carValueFinals){
int i = 0;
for (ReceiveSlmValueFinal receiveCarValueFinal : carValueFinals){
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("ID",receiveCarValueFinal.getId());
if(!receiveSlmValueFinalMapper.exists(queryWrapper)){
receiveSlmValueFinalMapper.insert(receiveCarValueFinal);
i++;
}
}
return i;
}
//条件查询
@Override
public List queryData(ReceiveValueListVo vo){
LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(ReceiveSlmValueFinal::getDeviceName, String.valueOf(vo.getId()))
.ge(vo.getStartTime() != null, ReceiveSlmValueFinal::getCreateTime, vo.getStartTime())
.lt(vo.getEndTime() != null, ReceiveSlmValueFinal::getCreateTime, vo.getEndTime())
.orderByDesc(ReceiveSlmValueFinal::getCreateTime);
return receiveSlmValueFinalMapper.selectList(lambdaQueryWrapper);
}
//批量删除
@Override
public Integer deleteBatch(List ids){
return receiveSlmValueFinalMapper.deleteBatchIds(ids);
}
//修改更新
@Override
public Integer updateDate(ReceiveSlmValueFinal receiveCarValueFinal){
return receiveSlmValueFinalMapper.updateById(receiveCarValueFinal);
}
//查询总数
@Override
public Long queryCount(){
return receiveSlmValueFinalMapper.selectCount(null);
}
}