package org.dromara.mp.service;

import org.dromara.mp.domain.bo.UserWorkerBo;
import org.dromara.mp.domain.vo.UserWorkerVo;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.multipart.MultipartFile;

import java.util.Map;

/**
 * @author sunzexing
 * @version 1.0
 * @title ICardIdService
 * @description 身份证信息
 * @create 2024-04-01 17:32
 */
public interface ICardIdService {



    /*
     * @Param
     * @Return
     * @Author sunzexing
     * @Date 2024-04-07 19:24
     * 说明：
     **/

    public Map idCardOcr(MultipartFile file, String type, String code) throws Exception;




    /**
     * @Param
     * @Return
     * @Author sunzexing
     * @Date 2024-04-08 11:15
     * 说明：
     **/

    public Map bankUploadOcr(@RequestPart("file") MultipartFile file, String type, String code )throws Exception;



    /**
     * @Param
     * @Return
     * @Author sunzexing
     * @Date 2024-04-07 19:20
     * 说明： 身份认证结果，成功-生成人身核验连接
     **/
    Map submitIdCardInfo(UserWorkerBo userWorkerBo,String code) throws Exception;




    /*
     * @Param
     * @Return
     * @Author sunzexing
     * @Date 2024-04-17 14:57
     * 说明：银行卡3要素认证
     **/

    public Map bankAuth4(String cardNo,String code,String bankImg,
                         String bankInfo,String cardType,String cardName,String phone,String channelName)throws Exception;


    /***
     * 修改银行卡信息
     * @param cardNo
     * @param code
     * @param bankImg
     * @param bankInfo
     * @param cardType
     * @param cardName
     * @param phone
     * @param id
     * @return
     */
    public Boolean mdyBank(String cardNo,String code,String bankImg,
                           String bankInfo,String cardType,String cardName,String phone,Long id)throws Exception;

    /***
     * 获取用户信息
     * @return
     */
    Map getUserInfo();


    /***
     * 获取人身核验地址
     * @param code
     * @return
     */
    Map  getFaceAuth(String code)throws Exception;


    /****
     * 获取人脸核验的结果
     * @param bizToken
     * @param code 唯一码
     * @return
     */
    String getFaceAuthResult(String bizToken,String code)throws Exception;



    Map getUserCardInfo();
}
