
package com.tmerclub.cloud.multishop.mapper;

import com.tmerclub.cloud.multishop.dto.AuditingInfoDTO;
import com.tmerclub.cloud.multishop.model.ShopAuditing;
import com.tmerclub.cloud.multishop.vo.ShopAuditingInfoVO;
import com.tmerclub.cloud.multishop.vo.ShopAuditingVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 商家审核信息
 *
 * @author YXF
 * @date 2021-02-01 17:10:35
 */
public interface ShopAuditingMapper {

    /**
     * 获取商家审核信息列表
     *
     * @return 商家审核信息列表
     */
    List<ShopAuditingVO> list();

    /**
     * 根据商家审核信息id获取商家审核信息
     *
     * @param shopAuditingId 商家审核信息id
     * @return 商家审核信息
     */
    ShopAuditingVO getByShopAuditingId(@Param("shopAuditingId") Long shopAuditingId);

    /**
     * 保存商家审核信息
     *
     * @param shopAuditing 商家审核信息
     */
    void save(@Param("shopAuditing") ShopAuditing shopAuditing);

    /**
     * 更新商家审核信息
     *
     * @param shopAuditing 商家审核信息
     */
    void update(@Param("shopAuditing") ShopAuditing shopAuditing);

    /**
     * 根据商家审核信息id删除商家审核信息
     *
     * @param shopAuditingId
     */
    void deleteById(@Param("shopAuditingId") Long shopAuditingId);

    /**
     * 获取指定店铺的申请信息
     *
     * @param shopId
     * @return
     */
    ShopAuditingVO getByshopId(@Param("shopId") Long shopId);

    /**
     * 获取店铺申请列表
     * @param auditingInfoDTO
     * @return
     */
    List<ShopAuditingInfoVO> auditingInfoList(@Param("auditingInfo") AuditingInfoDTO auditingInfoDTO);

    /**
     * 更新商家申请开店为审核失败
     * @param shopIds
     */
    void updateToFail(@Param("shopIds") List<Long> shopIds);
}
