package com.ruoyi.ss.storeApply.service;

import com.ruoyi.ss.storeApply.domain.StoreApply;
import com.ruoyi.ss.storeApply.domain.StoreApplyQuery;
import com.ruoyi.ss.storeApply.domain.StoreApplyVO;
import com.ruoyi.ss.storeApply.domain.bo.StoreApplyApprovalBO;

import java.util.List;

/**
 * 店铺审核Service接口
 *
 * @author ruoyi
 * @date 2024-08-03
 */
public interface StoreApplyService
{
    /**
     * 查询店铺审核
     *
     * @param id 店铺审核主键
     * @return 店铺审核
     */
    public StoreApplyVO selectStoreApplyById(Long id);

    /**
     * 查询店铺审核列表
     *
     * @param storeApply 店铺审核
     * @return 店铺审核集合
     */
    public List<StoreApplyVO> selectStoreApplyList(StoreApplyQuery storeApply);

    /**
     * 新增店铺审核
     *
     * @param storeApply 店铺审核
     * @return 结果
     */
    public int insertStoreApply(StoreApply storeApply);

    /**
     * 修改店铺审核
     *
     * @param storeApply 店铺审核
     * @return 结果
     */
    public int updateStoreApply(StoreApply storeApply);

    /**
     * 批量删除店铺审核
     *
     * @param ids 需要删除的店铺审核主键集合
     * @return 结果
     */
    public int deleteStoreApplyByIds(Long[] ids);

    /**
     * 删除店铺审核信息
     *
     * @param id 店铺审核主键
     * @return 结果
     */
    public int deleteStoreApplyById(Long id);

    /**
     * 审核
     */
    int approval(StoreApplyApprovalBO bo);

    /**
     * 条件更新
     */
    int updateByQuery(StoreApply data, StoreApplyQuery query);

    /**
     * 查询一个
     */
    StoreApplyVO selectOne(StoreApplyQuery query);

    /**
     * 取消申请
     */
    int cancel(Long id);

    /**
     * 查询数量
     */
    int selectCount(StoreApplyQuery query);
}
