package cn.iocoder.yudao.module.mes.dal.mysql.trace.consumer;
|
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.trace.consumer.MesTraceConsumerScanEventDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* 消费者扫码访问统计 Mapper
|
* <p>
|
* 统计采用查明细 + Java 侧聚合,避免统计 SQL 与 MySQL/H2 方言差异,并消除动态列拼接注入面。
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface MesTraceConsumerScanStatisticsMapper extends BaseMapperX<MesTraceConsumerScanEventDO> {
|
|
/**
|
* 查询统计时间范围内(开始时间含、结束时间不含)的消费者扫码访问事件
|
*/
|
default List<MesTraceConsumerScanEventDO> selectListByTime(LocalDateTime startTime, LocalDateTime endTime) {
|
return selectList(new LambdaQueryWrapperX<MesTraceConsumerScanEventDO>()
|
.geIfPresent(MesTraceConsumerScanEventDO::getEventTime, startTime)
|
.ltIfPresent(MesTraceConsumerScanEventDO::getEventTime, endTime)
|
.orderByAsc(MesTraceConsumerScanEventDO::getEventTime));
|
}
|
|
}
|