package com.ruoyi.user.service; import java.util.List; import com.ruoyi.user.domain.dto.CompanyCertificationApplyDto; import com.ruoyi.user.domain.vo.AccountCertificationApplyDetailVo; import com.ruoyi.user.domain.vo.AccountCertificationApplyVo; import com.ruoyi.user.domain.vo.AccountCertificationStatusVo; import com.ruoyi.user.domain.vo.CompanyCertificationStatusVo; /** * 会员主体认证申请 业务层 * * @author ruoyi */ public interface IAccountCertificationApplyService { /** * 查询认证申请列表 */ public List selectCertificationApplyList(AccountCertificationApplyVo apply); /** * 查询认证申请审核详情(申请快照 + 会员信息) */ public AccountCertificationApplyDetailVo selectCertificationApplyDetail(Long id); /** * 审核认证申请 * * @param id 申请号 * @param auditStatus 审核结果(1通过 2驳回) * @param auditRemark 审核意见(驳回时必填) * @return 影响行数 */ public int auditCertificationApply(Long id, String auditStatus, String auditRemark); /** * C端会员提交个人主体认证申请 * * 只做基础校验(姓名非空、身份证号非空),不做三方实名核验;提交后落一条 * account_certification_apply(个人主体、待审核),并把会员认证状态联动为「审核中」。 * * @param userId 会员ID(取自登录态,非前端传入) * @param realName 姓名 * @param idCard 身份证号 */ public void submitPersonalCertification(Long userId, String realName, String idCard); /** * 查询该会员当前认证状态(C端进入认证页回填用) * * 取最近一次申请快照映射为出参;从未提交过申请时返回各字段为空的出参对象(不返回 null)。 * * @param userId 会员ID(取自登录态,非前端传入) * @return 认证状态出参(realName / idCard / auditStatus / auditRemark) */ public AccountCertificationStatusVo getCertificationStatus(Long userId); /** * C端会员提交企业/个体工商户认证申请 * * 只做基础必填校验(各字段非空 / 枚举取值合法),不做格式与三方核验;提交后落一条 * account_certification_apply(主体类型取入参 2/3、待审核),并把会员企业认证状态联动为「审核中」。 * * @param userId 会员ID(取自登录态,非前端传入) * @param dto 企业/个体认证资料(含基础必填校验) */ public void submitCompanyCertification(Long userId, CompanyCertificationApplyDto dto); /** * 查询该会员当前企业/个体认证状态(C端进入向导页回填用) * * 取最近一次企业/个体申请(subject_type ∈ {2,3})快照映射为出参;从未提交过时 * 返回各字段为空的出参对象(不返回 null),前端据此渲染空表单。 * * @param userId 会员ID(取自登录态,非前端传入) * @return 企业/个体认证状态出参(整份资料 + auditStatus + auditRemark) */ public CompanyCertificationStatusVo getCompanyCertificationStatus(Long userId); }