package com.xy.xyaicpzs.service;

import com.xy.xyaicpzs.domain.entity.OperationHistory;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author XY003
* @description 针对表【operation_history(操作历史记录表)】的数据库操作Service
* @createDate 2025-06-19 14:51:51
*/
public interface OperationHistoryService extends IService<OperationHistory> {

    /**
     * 记录操作历史
     * @param userId 操作用户ID
     * @param operationType 操作类型
     * @param operationModule 操作模块（0-会员码管理/1-Excel导入管理等）
     * @param operationResult 操作结果（成功/失败）
     * @param resultMessage 结果消息
     */
    void recordOperation(Long userId, String operationType, Integer operationModule, 
                        String operationResult, String resultMessage);

    /**
     * 根据用户ID和操作模块获取操作历史列表
     * @param userId 用户ID
     * @param operationModule 操作模块（0-会员码管理/1-Excel导入管理等）
     * @return 操作历史列表，按操作时间倒序排列
     */
    List<OperationHistory> getOperationHistoryByUserIdAndModule(Long userId, Integer operationModule);
    
    /**
     * 根据操作模块获取操作历史列表
     * @param operationModule 操作模块（0-会员码管理/1-Excel导入管理等）
     * @return 操作历史列表，按操作时间倒序排列
     */
    List<OperationHistory> getOperationHistoryByModule(Integer operationModule);

}
