package com.ruoyi.wgz.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.bgt.domain.dto.BgtDailyClockListDTO;
import com.ruoyi.bgt.domain.vo.BgtDailyClockListVO;
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
import com.ruoyi.wgz.bo.req.WgzAppDailyRecordReq;
import com.ruoyi.wgz.bo.res.WgzAppUserDailyRecordRes;
import com.ruoyi.wgz.domain.WgzDailyClock;
import org.apache.ibatis.annotations.CacheNamespace;
import org.apache.ibatis.annotations.Param;

/**
 * 日报打卡Mapper接口
 *
 * @author ruoyi
 * @date 2025-02-18
 */
// 如使需切换数据源 请勿使用缓存 会造成数据不一致现象
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
public interface WgzDailyClockMapper extends BaseMapperPlus<WgzDailyClock> {
	/**
	 * 查询关联数据并支持分页
	 * @param page 分页对象
	 * @return 分页查询结果
	 */
	Page<WgzAppUserDailyRecordRes> userDailyRecordListPage(Page<WgzAppDailyRecordReq> page);

	Page<BgtDailyClockListVO> appQueryPageList(@Param("page") Page<BgtDailyClockListDTO> page, @Param("dto") BgtDailyClockListDTO dto);
}
