package com.gs.dingtalk.service; import com.baomidou.mybatisplus.extension.service.IService; import com.gs.dingtalk.entity.QwHardwareCheckinData; import java.io.IOException; import java.util.List; /** * 企业微信设备打卡数据Service */ public interface QwHardwareCheckinDataService extends IService { /** * 将HardwareCheckinData转换为QwHardwareCheckinData实体 * * @param data 企业微信设备打卡数据 * @return QwHardwareCheckinData实体 */ QwHardwareCheckinData convertToEntity(WorkWXService.HardwareCheckinData data); /** * 批量保存设备打卡数据(自动去重,按userid+checkin_time+device_sn) * * @param dataList 设备打卡数据列表 * @return 新增记录数 */ int saveHardwareDataBatch(List dataList); /** * 同步指定时间范围的设备打卡数据到数据库 * * @param startTime 开始时间(Unix时间戳,秒) * @param endTime 结束时间(Unix时间戳,秒) * @return 新增记录数 * @throws IOException 获取设备打卡数据异常 */ int syncHardwareData(long startTime, long endTime) throws IOException; /** * 同步昨天的设备打卡数据到数据库 * * @return 新增记录数 * @throws IOException 获取设备打卡数据异常 */ int syncYesterdayHardwareData() throws IOException; }