package com.ruoyi.web.modules.entry.service;

import java.util.List;
import java.util.Map;
import com.ruoyi.web.modules.entry.domain.BizMerchantEntryApply;
import com.ruoyi.web.modules.entry.dto.EntryApplyApproveDTO;
import com.ruoyi.web.modules.entry.dto.EntryApplyRejectDTO;
import com.ruoyi.web.modules.entry.dto.EntryApplySubmitDTO;
import com.ruoyi.web.modules.entry.vo.EntryApplyDetailVO;
import com.ruoyi.web.modules.entry.vo.EntryApplyListVO;
import com.ruoyi.web.modules.entry.vo.EntryApplyMyVO;

/**
 * 商户入驻审核服务
 */
public interface IMerchantEntryApplyService
{
    Map<String, Object> submitApply(Long memberId, EntryApplySubmitDTO dto);

    List<EntryApplyMyVO> listMyApplies(Long memberId);

    List<EntryApplyListVO> selectList(BizMerchantEntryApply query);

    int countPlatformPending();

    EntryApplyDetailVO selectDetail(Long applyId);

    Map<String, Object> approve(Long applyId, EntryApplyApproveDTO dto, String operator);

    Map<String, Object> completePublicity(Long applyId, String operator);

    int processExpiredPublicity();

    void reject(EntryApplyRejectDTO dto, String operator);
}
