package cn.huge.module.cases.service; import cn.huge.module.cases.domain.dto.CaseModifyRecordGroupDTO; import cn.huge.module.cases.domain.po.CaseModifyRecord; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; import java.util.Date; /** * 修改记录表 服务接口 * * @author trae * @since 2024-02-14 */ public interface ICaseModifyRecordService extends IService { /** * 分页查询修改记录 * * @param page 分页参数 * @param record 查询条件 * @return 分页结果 */ Page pageQuery(Page page, CaseModifyRecord record); /** * 查询修改记录列表 * * @param record 查询条件 * @return 记录列表 */ List listCaseModifyRecords(CaseModifyRecord record); /** * 新增或更新修改记录 * * @param record 记录信息 */ void saveCaseModifyRecord(CaseModifyRecord record); /** * 更新修改记录 * * @param record 记录信息 */ void updateCaseModifyRecord(CaseModifyRecord record); /** * 删除修改记录 * * @param id 记录ID */ void deleteCaseModifyRecord(String id); /** * 按修改时间和修改人聚合查询修改记录 * * @param caseId 案件ID * @return 聚合后的记录列表 */ List listGroupByTimeAndUser(String caseId); /** * 查询同一时间同一人的修改记录明细 * * @param caseId 案件ID * @param modifyTime 修改时间 * @param modifyUser 修改人 * @return 修改记录明细列表 */ List listDetailByTimeAndUser(String caseId, String modifyTime, String modifyUser); int insertCaseModifyRecord(CaseModifyRecord caseModifyRecord); }