package com.jwipc.finance.logic;

import com.jwipc.finance.dto.CustomsDeclarationDTO;
import com.jwipc.finance.dto.CustomsDeclarationDetailImportDTO;
import com.jwipc.finance.dto.CustomsDeclarationParamDTO;
import com.jwipc.finance.model.query.CustomsDeclarationQuery;
import com.jwipc.page.PageView;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author shenyang.ou
 * @date 2025/10/22 15:29
 * @desc
 */
public interface CustomsDeclarationLogic {
    PageView findByPage(CustomsDeclarationQuery query);

    void saveOrUpdate(CustomsDeclarationParamDTO param);

    void toImg(Long id);
    void deleteImg(Long id);

    void remove(Long id);

    void pushConfirm(Long id);

    CustomsDeclarationDTO getById(Long id);

    List<CustomsDeclarationDetailImportDTO> importData(MultipartFile file);

    void financeConfirm(CustomsDeclarationParamDTO param);
    List<String> financeConfirmCheck(CustomsDeclarationParamDTO param);

    void revokeFinConfirmed(Long id, String revokeReason);
}
