package com.liquidnet.service.adam.service;

import com.liquidnet.service.adam.dto.vo.AdamCaomeiPassportHomeVo;
import com.liquidnet.service.adam.dto.vo.AdamCaomeiPassportUserClaimedBadgeVo;
import com.liquidnet.service.base.ResponseDto;

import java.util.List;

/**
 * 草莓护照（用户端）
 */
public interface IAdamCaomeiPassportUserService {

    /**
     * 绑定实体护照：校验编号有效性、是否可绑；通过则写入并发放已上架护照纪念徽章（type=1）
     */
    ResponseDto<List<AdamCaomeiPassportUserClaimedBadgeVo>> bindPassport(String passportNo);

    /**
     * 护照首页：个人信息、实名状态、已认领墙、签证页（type=4）、上架徽章货架；
     * 末尾自动发放满足条件的 type=4 签证页，并在 {@link AdamCaomeiPassportHomeVo#getVisaBadges()} 返回。
     */
    ResponseDto<AdamCaomeiPassportHomeVo> getPassportHome();

    /**
     * 校验当前登录用户是否已绑定护照
     */
    ResponseDto<Boolean> checkPassportBound();
}
