package com.usky.vpp.service;

import com.usky.common.core.bean.CommonPage;
import com.usky.vpp.service.vo.VppFileArchiveRequestVO;
import com.usky.vpp.service.vo.VppFileArchiveResponseVO;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * VppArchiveService 业务接口
 */
public interface VppArchiveService {

    default Object stub(String action, Map<String, Object> params) {
        return null;
    }

    Boolean create(VppFileArchiveRequestVO vo);

    CommonPage<VppFileArchiveResponseVO> page(Long id, String archiveName, Integer archiveType, Long siteId, String bizType, Long bizId, Integer pageNum, Integer pageSize);

    Boolean upload(VppFileArchiveRequestVO vo);

    Boolean delete(Long id);

    /**
     * 批量导出电子档案，根据主键ID列表下载文件并打包为ZIP
     * @param ids 主键ID列表
     * @return ResponseEntity 包装的 ZIP 字节数组
     */
    void export(List<Long> ids, HttpServletResponse response);
}
