package com.ruoyi.member.service;

import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.member.domain.MemberBusiCard;
import com.ruoyi.member.query.MemberBusiCardQuery;
import com.ruoyi.member.vo.MemberBusiCardVO;

import java.util.List;

/**
 * 博主名片Service接口
 *
 * @author pqz
 * @date 2025-03-21
 */
public interface IMemberBusiCardService extends IService<MemberBusiCard> {

    /**
     * 分页查询博主名片信息
     *
     * @param pageReqVO {@link MemberBusiCard}
     * @param page      分页参数
     * @return com.baomidou.mybatisplus.core.metadata.IPage<com.ruoyi.member.domain.MemberBusiCard>
     * @author PQZ
     * @date 21:46 2025/3/21
     **/
    IPage<MemberBusiCard> queryListPage(MemberBusiCard pageReqVO, Page<MemberBusiCard> page);

    /**
     * 通过id查询博主名片信息
     *
     * @param id 博主名片id
     * @return com.ruoyi.member.vo.MemberBusiCardVO
     * @author PQZ
     * @date 22:36 2025/3/21
     **/
    MemberBusiCardVO queryById(String id);

    /**
     * 通过用户id查询名片
     *
     * @param userId 用户表id
     * @return java.util.List<com.ruoyi.member.domain.MemberBusiCard>
     * @author PQZ
     * @date 10:49 2025/3/22
     **/
    List<MemberBusiCard> queryListByUserId(Long userId,String approvalStatus);

    /**
     * 审核博主名片信息
     *
     * @param card {@link MemberBusiCard}
     * @author PQZ
     * @date 23:17 2025/3/21
     **/
    void checkBusiCard(MemberBusiCard card);

    /**
     * 保存博主名片
     *
     * @param memberBusiCard {@link MemberBusiCard}
     * @author PQZ
     * @date 13:44 2025/4/3
     **/
    void saveBusiCard(MemberBusiCard memberBusiCard);

    JSONObject getSignCard(MemberBusiCardQuery req);



}
