Ver Fonte

Merge branch 'v20' of http://47.101.159.18:3000/Muchinfo/MTP20_WEB_GLOBAL into v20

li.shaoyi há 1 ano atrás
pai
commit
924fec1404

+ 91 - 1
src/business/user/account.ts

@@ -1,6 +1,6 @@
 import { shallowRef, reactive } from 'vue'
 import { useLoginStore, useAccountStore, useUserStore } from '@/stores'
-import { investorDel, modifyPassword, requestAddAuth, requestAddUser, requestCreateContractAndAddSigner, requestCreateFlowByTemplateDirectly, requestSignCompleted, requestWillFace } from '@/services/api/account'
+import { investorDel, modifyPassword, requestAddAuth, requestAddUser, requestBankCard4, requestCaptcaResend, requestCaptchaVerify, requestCreateContractAndAddSigner, requestCreateFlowByTemplateDirectly, requestSignCompleted, requestWillFace } from '@/services/api/account'
 import cryptojs from 'crypto-js'
 
 const loginStore = useLoginStore()
@@ -229,4 +229,94 @@ export function useRequestCreateFlowByTemplateDirectly() {
         createTemplate,
         templateFormData
     }
+}
+
+/**
+ * 银行卡四要素认证
+ */
+export function useRequestBankCard4() {
+    const loading = shallowRef(false)
+    /// 四要素认证信息
+    const formData = reactive<Model.BankCard4Req>({
+        userId: loginStore.userId
+    })
+    // 发送请求
+    const onBankCard4 = async () => {
+        try {
+            loading.value = true
+            return await requestBankCard4({
+                data: {
+                    ...formData,
+                }
+            })
+        } finally {
+            loading.value = false
+        }
+    }
+
+    return {
+        loading,
+        onBankCard4,
+        formData
+    }
+}
+
+/**
+ * 通重新发送认证验证码
+ */
+export function useRequestCaptcaResend() {
+    const loading = shallowRef(false)
+
+    // 表单信息
+    const formData = reactive<Model.CaptcaResendReq>({})
+
+    const onCaptcaResend = async () => {
+        try {
+            loading.value = true
+            return await requestCaptcaResend({
+                data: {
+                    ...formData,
+                }
+            })
+        } finally {
+            loading.value = false
+        }
+    }
+
+    return {
+        loading,
+        onCaptcaResend,
+        formData
+    }
+}
+
+/**
+ * 通过合同名和模板 id 直接发起签署流程
+ */
+export function useRequestCaptchaVerify() {
+    const loading = shallowRef(false)
+
+    // 表单信息
+    const formData = reactive<Model.CaptchaVerifyReq>({
+        userId: loginStore.userId
+    })
+
+    const onCaptchaVerify = async () => {
+        try {
+            loading.value = true
+            return await requestCaptchaVerify({
+                data: {
+                    ...formData,
+                }
+            })
+        } finally {
+            loading.value = false
+        }
+    }
+
+    return {
+        loading,
+        onCaptchaVerify,
+        formData
+    }
 }

+ 36 - 0
src/services/api/account/index.ts

@@ -278,3 +278,39 @@ export function requestInitTencentESS(config: RequestConfig<Model.InitTencentESS
         data: config.data,
     })
 }
+
+/**
+ * 银行卡四要素认证
+ */
+export function requestBankCard4(config: RequestConfig<Model.BankCard4Req> = {}) {
+    return http.commonRequest<Model.BankCard4Rsp>({
+        method: 'post',
+        url: '/Asign/BankCard4',
+        data: config.data,
+    })
+}
+
+
+/**
+ * 重新发送认证验证码
+ * 在实名认证的过程中,因用户手机原因未收到短信验证码或原验证码超过15分钟有效期而过期时,可以调用此接口重新发送短信验证码。若1分钟内多次调用此接口,则仅会发送一次短信验证码,15分钟内重新发送短信验证码不会变化。
+ */
+export function requestCaptcaResend(config: RequestConfig<Model.CaptcaResendReq> = {}) {
+    return http.commonRequest<string>({
+        method: 'post',
+        url: '/Asign/CaptcaResend',
+        data: config.data,
+    })
+}
+
+/**
+ * 认证验证码校验
+ * 验证码认证成功后会调用爱签添加用户接口,同时调用交易系统JAVA实名认证接口
+ */
+export function requestCaptchaVerify(config: RequestConfig<Model.CaptchaVerifyReq> = {}) {
+    return http.commonRequest<string>({
+        method: 'post',
+        url: '/Asign/CaptchaVerify',
+        data: config.data,
+    })
+}

+ 0 - 94
src/types/model/bank.d.ts

@@ -205,36 +205,6 @@ declare namespace Model {
         userid: number
     }
 
-    interface AddAuthReq {
-        /// 用户姓名
-        username?: string,
-        /// 证件类型
-        cardtype?: number,
-        /// 证件号码
-        cardnum?: string,
-        /// 证件正面照
-        cardfrontphotourl?: string,
-        /// 证件反面照
-        cardbackphotourl?: string,
-        // 用户id
-        userid?: number;
-        // 半身照
-        halfbodyphotourl?: string;
-        /// 手机号码
-        mobile?: string
-        // 用户类型
-        userinfotype?: number;
-    }
-
-    interface AddAuthRsp {
-        // 返回码
-        code: string
-        // 返回信息
-        message: string
-        /// 是否实名
-        hasAuth: number
-    }
-
     /** 资金流水查询(当前) 请求 */
     interface AmountLogReq {
         // 页码
@@ -425,68 +395,4 @@ declare namespace Model {
         /// 可用类型 - 1:通用 2:机构专用 3:投资者专用
         usabletype: number
     }
-
-    /// 通过合同名和模板 id 直接发起签署流程 -请求
-    interface CreateFlowByTemplateDirectlyReq {
-        /// 用户类型 1-个人 2-企业
-        userType?: number
-        /// 用户电子签记录表ID
-        userESignRecordID?: number
-        /// 企业信息
-        organizationInfo?: OrganizationInfo
-        /// 个人信息
-        personInfo?: PersonInfo
-    }
-    interface PersonInfo {
-        /// 身份证号码,目前只支持身份证
-        idCardNumber?: string
-        /// 手机号码
-        mobile?: string
-        /// 姓名
-        name?: string
-    }
-
-    /// 通过合同名和模板 id 直接发起签署流程 - 请求
-    interface OrganizationInfo {
-        /// 企业签署方工商营业执照上的企业名称
-        name?: string
-    }
-
-    /// 通过合同名和模板 id 直接发起签署流程 - 回应
-    interface CreateFlowByTemplateDirectlyRsq {
-        /// 流程编号
-        flowId: string
-        /// 合同签署小程序URL
-        signUrl: string
-    }
-
-    /// 按用户 ID 和机构 ID 创建腾讯电子签业务信息 - 请求
-    interface InitTencentESSReq {
-        /// 所属会员ID
-        memberUserId?: number
-        /// 用户ID
-        userId?: number
-    }
-
-    /// 按用户 ID 和机构 ID 创建腾讯电子签业务信息 - 回应
-    interface InitTencentESSRsp {
-        /// code
-        code: string
-    }
-
-    /** 查询银行支行联行号信息表 请求 */
-    interface BankBranChnumInfoReq {
-        branchname?: string; // 支行名称(模糊查询)
-        page?: number; // 页码
-        pagesize?: number; // 每页条数
-    }
-
-    /** 查询银行支行联行号信息表 响应 */
-    interface BankBranChnumInfoRsp {
-        branchcity: string; // 市县
-        branchname: string; // 支行名称
-        branchnum: string; // 支行行号
-        branchprovince: string; // 省份
-        isexpired: string; // 是否过期
-    }
 }

+ 165 - 0
src/types/model/user.d.ts

@@ -204,4 +204,169 @@ declare namespace Model {
         marketid: number; // 市场ID
         tradetype: number; // 交易类型 - 1:投资者\自营 2:做市
     }
+
+    interface AddAuthReq {
+        /// 用户姓名
+        username?: string,
+        /// 证件类型
+        cardtype?: number,
+        /// 证件号码
+        cardnum?: string,
+        /// 证件正面照
+        cardfrontphotourl?: string,
+        /// 证件反面照
+        cardbackphotourl?: string,
+        // 用户id
+        userid?: number;
+        // 半身照
+        halfbodyphotourl?: string;
+        /// 手机号码
+        mobile?: string
+        // 用户类型
+        userinfotype?: number;
+    }
+
+    interface AddAuthRsp {
+        // 返回码
+        code: string
+        // 返回信息
+        message: string
+        /// 是否实名
+        hasAuth: number
+    }
+
+    /** 银行卡四要素认证 请求 */
+    interface BankCard4Req {
+        // 企业信息
+        company?: CompanyBankCard4
+        // 个人信息
+        person?: PersonBankCard4
+        // 实体类型 1:个人 2:企业
+        type?: number
+        // 用户ID
+        userId?: number
+    }
+
+    interface PersonBankCard4 {
+        // 银行卡号(仅限印有“银联”字样的银行卡)
+        bankCard?: string
+        // 身份证号
+        idCardNo?: string
+        // 证件照正面
+        idCardPhoto?: string
+        // 证件照背面
+        idCardPhotoBackURL?: string
+        // 手机号码(限中国大陆11位手机号)
+        mobile?: string
+        // 真实姓名
+        realName?: string
+    }
+
+    interface CompanyBankCard4 {
+        // 法人银行卡号(仅限印有“银联”字样的银行卡)
+        bankCard?: string
+        // 企业名称
+        companyName?: string
+        // 社会统一信用代码
+        creditCode?: string
+        // 法人身份证号
+        idCardNo?: string
+        // 营业执照
+        idCardPhoto?: string
+        // 法人手机号(限中国大陆11位手机号)
+        mobile?: string
+        // 法人姓名
+        realName?: string
+    }
+
+    /** 银行卡四要素认证 响应 */
+    interface BankCard4Rsp {
+        // 认证流水号
+        serialNo: string
+    }
+
+    /** 重新发送认证验证码 请求 */
+    interface CaptcaResendReq {
+        // 认证流水号
+        serialNo?: string
+        // 时间戳,可不传(S1016)
+        timeStamp?: string
+    }
+
+    /** 认证验证码校验 请求 */
+    interface CaptchaVerifyReq {
+        // 短信验证码
+        captcha?: string
+        // 认证流水号
+        serialNo?: string
+        // 实体类型 1:个人 2:企业
+        type?: number
+        // 用户ID
+        userId?: number
+    }
+
+     /// 通过合同名和模板 id 直接发起签署流程 -请求
+     interface CreateFlowByTemplateDirectlyReq {
+        /// 用户类型 1-个人 2-企业
+        userType?: number
+        /// 用户电子签记录表ID
+        userESignRecordID?: number
+        /// 企业信息
+        organizationInfo?: OrganizationInfo
+        /// 个人信息
+        personInfo?: PersonInfo
+    }
+    
+    interface PersonInfo {
+        /// 身份证号码,目前只支持身份证
+        idCardNumber?: string
+        /// 手机号码
+        mobile?: string
+        /// 姓名
+        name?: string
+    }
+
+    /// 通过合同名和模板 id 直接发起签署流程 - 请求
+    interface OrganizationInfo {
+        /// 企业签署方工商营业执照上的企业名称
+        name?: string
+    }
+
+    /// 通过合同名和模板 id 直接发起签署流程 - 回应
+    interface CreateFlowByTemplateDirectlyRsq {
+        /// 流程编号
+        flowId: string
+        /// 合同签署小程序URL
+        signUrl: string
+    }
+
+    /// 按用户 ID 和机构 ID 创建腾讯电子签业务信息 - 请求
+    interface InitTencentESSReq {
+        /// 所属会员ID
+        memberUserId?: number
+        /// 用户ID
+        userId?: number
+    }
+
+    /// 按用户 ID 和机构 ID 创建腾讯电子签业务信息 - 回应
+    interface InitTencentESSRsp {
+        /// code
+        code: string
+    }
+
+    /** 查询银行支行联行号信息表 请求 */
+    interface BankBranChnumInfoReq {
+        branchname?: string; // 支行名称(模糊查询)
+        page?: number; // 页码
+        pagesize?: number; // 每页条数
+    }
+
+    /** 查询银行支行联行号信息表 响应 */
+    interface BankBranChnumInfoRsp {
+        branchcity: string; // 市县
+        branchname: string; // 支行名称
+        branchnum: string; // 支行行号
+        branchprovince: string; // 省份
+        isexpired: string; // 是否过期
+    }
 }