package com.docus.server.archivefile.service;

import com.docus.infrastructure.web.request.SearchRequest;
import com.docus.infrastructure.web.response.PageResult;
import com.docus.server.entity.TaskMessage;
import com.docus.server.enums.CollectTypeEnum;
import com.docus.server.enums.StateEnum;
import com.docus.server.vo.archivefile.TaskMessageVO;

import java.util.List;

public interface ITaskMessageService {

    Long insertTaskMessage(String json, String xml, CollectTypeEnum collectType, String retryKey);

    void updateTaskMessage(Long id, String json, String exMessageResult, StateEnum stateEnum);

    List<TaskMessage> findByState(StateEnum stateEnum);

    TaskMessageVO findById(String id);

    PageResult<TaskMessageVO> search(SearchRequest searchRequest);

    void searchRetry(SearchRequest searchRequest) throws Exception;

    void findRetry(List<Long> ids) throws Exception;
}
