package com.chinaweal.aiccs.aiccs.expelled.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.chinaweal.aiccs.aiccs.expelled.entity.EntBaseExpelledInfo;
import com.chinaweal.youfool.framework.springboot.base.query.BaseQuery;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * @Description: 市场主体拟除名名单信息表接口类
 * @Author: TiAmo-cc
 * @Email: 1049976610@qq.com
 * @Date: 2026/1/3 18:08
 */
public interface IEntBaseExpelledInfoService extends IService<EntBaseExpelledInfo> {

    /**
     * 分页查询市场主体拟除名名单信息
     */
    IPage<EntBaseExpelledInfo> listEntBaseExpelledInfo(BaseQuery<EntBaseExpelledInfo> query);

    /**
     * 保存更新市场主体拟除名名单信息
     */
    void saveEntBaseExpelledInfo(EntBaseExpelledInfo query);

    /**
     * 根据统一社会信用代码查询市场主体拟除名名单信息
     */
    EntBaseExpelledInfo getEntBaseExpelledInfoByUscc(String uscc);

    /**
     * 下载批量导入excel模板
     */
    void downloadTemplate(HttpServletResponse response);

    /**
     * 批量导入市场主体拟除名名单信息
     */
    void batchImportExpelledInfo(MultipartFile annex) throws IOException;

    /**
     * 除名申请通过（修复、复议、撤销）时同步更新拟除名名单库状态
     */
    void syncEntBaseExpelledInfo(String resultId, String state);
}
