package com.yanzuoguang.util.sfz;

/**
 * 身份证处理
 *
 * @author 颜佐光
 */
public interface SfzHandle {
    /**
     * 是否属于该类型的身份证
     *
     * @param idCard 是否属于合法身份证
     * @return 验证是否完成
     */
    boolean validate(String idCard);
    /**
     * 身份证号码修复,修复结果等于原结果,则代表不修复。
     *
     * @param idCard 身份证号码修复
     * @return 修复后的身份证号码
     */
    String repair(String idCard);

    /**
     * 获取身份证性别,当没有获取到时,返回空字符串
     *
     * @param idCard 身份证
     * @return 身份证对应的性别,如:男、女
     */
    String getGender(String idCard);

    /**
     * 获取身份证对应的生日,当没有获取到时,返回空字符串
     *
     * @param idCard 身份证
     * @return 生日
     */
    String getBirthday(String idCard);

    /**
     * 获取国家3位编码
     *
     * @param idCard 身份证
     * @return 国家编号
     */
    String getCountry(String idCard);

    /**
     * 获取地区6位编码,不包含国家信息
     *
     * @param idCard 身份证
     * @return 地区编号
     */
    String getAreaId(String idCard);
    /**
     * 获取中国的省份
     *
     * @param idCard 身份证
     * @return 地区编号
     */
    String getProvinceName(String idCard);
}