|
@@ -1,216 +0,0 @@
|
|
|
-### 1. 用户认证,相关控制器`MemberAuthController`
|
|
|
-
|
|
|
-* 获取所有的认证信息 `getAuthInfo`
|
|
|
-* 个人运营商三要素认证 `threeElementAuth`
|
|
|
-* OCR身份证识别 `uploadOcr`
|
|
|
-* 请求个人人脸活体认证 `personFace`
|
|
|
-
|
|
|
-* 个人银行卡四要素比对 `fourElementAuth`
|
|
|
-* 保存资质证书 `checkCertificate`
|
|
|
-* 上传文件 `upload`
|
|
|
-
|
|
|
-#### 数据表
|
|
|
-
|
|
|
-* 用户表 `ums_member`
|
|
|
-
|
|
|
- ```sql
|
|
|
- CREATE TABLE `ums_member` (
|
|
|
- `id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID(即member_id)',
|
|
|
- `phone` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'phone',
|
|
|
- `is_three_auth` tinyint DEFAULT '0' COMMENT '三要素认证 0-未认证 1-已认证',
|
|
|
- `is_four_auth` tinyint DEFAULT '0' COMMENT '四要素认证 0-未认证 1-已认证',
|
|
|
- `is_ocr_auth` tinyint DEFAULT '0' COMMENT 'OCR认证 0-未认证 1-已认证',
|
|
|
- `is_liveness_auth` tinyint DEFAULT '0' COMMENT '活体认证 0-未认证 1-已认证',
|
|
|
- `is_esign_auth` tinyint DEFAULT '0' COMMENT '电子签认证 0-未认证 1-已认证',
|
|
|
- `three_auth_info` json DEFAULT NULL COMMENT '三要素认证数据(姓名/身份证/手机号)',
|
|
|
- `four_auth_info` json DEFAULT NULL COMMENT '四要素认证数据(+银行卡号)',
|
|
|
- `ocr_info` json DEFAULT NULL COMMENT 'OCR识别数据(身份证正反面/有效期)',
|
|
|
- `liveness_info` json DEFAULT NULL COMMENT '活体检测数据(视频/分数)',
|
|
|
- `user_seal_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '生成默认印章编号',
|
|
|
- `certificate_info` json DEFAULT NULL COMMENT '证书',
|
|
|
- `esign_info` json DEFAULT NULL COMMENT '电子签数据(合同/签章位置)',
|
|
|
- `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人',
|
|
|
- `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新人',
|
|
|
- `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
- `del_flag` tinyint DEFAULT '0' COMMENT '删除标记 0-正常 1-已删除',
|
|
|
- `lock_flag` tinyint DEFAULT '0' COMMENT '锁定标记 0-可编辑 1-只读',
|
|
|
- PRIMARY KEY (`id`) USING BTREE,
|
|
|
- KEY `idx_auth_status` (`is_three_auth`,`is_four_auth`,`is_esign_auth`) USING BTREE,
|
|
|
- KEY `idx_update` (`update_time`) USING BTREE
|
|
|
- ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='统一用户认证信息表'
|
|
|
- ```
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-### 2. 报告/协议相关控制器
|
|
|
-
|
|
|
-* 获取签约列表 `getList`
|
|
|
-* 签约 `signContract`
|
|
|
-* 查看合同信息(同步合同信息和状态) `signCheck`
|
|
|
-* 获取报告列表 `getReportList`
|
|
|
-* 下载报告 `getReportDown`
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-#### 数据表
|
|
|
-
|
|
|
-* 报告、协议配置表
|
|
|
-
|
|
|
- ```sql
|
|
|
- CREATE TABLE `gig_config` (
|
|
|
- `config_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
|
|
|
- `ent_code` varchar(18) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '企业三合一码',
|
|
|
- `protocol` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '协议',
|
|
|
- `gateway_host` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '网关域名',
|
|
|
- `subject_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '结算主体名称',
|
|
|
- `subject_type` int NOT NULL COMMENT '结算主体',
|
|
|
- `subject_location` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '结算税源地',
|
|
|
- `subject_channel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
|
|
|
- `app_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主体id',
|
|
|
- `merchant_private_key` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '私钥',
|
|
|
- `public_key` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '公钥',
|
|
|
- `location_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '所属地id',
|
|
|
- `sign_type` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签名算法类型',
|
|
|
- `opt_flag` int NOT NULL DEFAULT '1' COMMENT '启用标记',
|
|
|
- `def_flag` tinyint(1) NOT NULL DEFAULT '0' COMMENT '默认标记',
|
|
|
- `end_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '端类型',
|
|
|
- `created_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modified_time` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
|
|
- `is_sign` tinyint DEFAULT '0' COMMENT '需要签约',
|
|
|
- `agreement_url` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '需要签约的协议',
|
|
|
- `agreement_template` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '协议对应的模板编号',
|
|
|
- `enterprise_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '企业在爱签的account',
|
|
|
- `platform_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '平台在爱签的account',
|
|
|
- `is_file_type` tinyint DEFAULT '0' COMMENT '文件类型 0 是协议 1是报告',
|
|
|
- `reception_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '接包方企业在爱签的account (报告才有)',
|
|
|
- PRIMARY KEY (`config_id`) USING BTREE,
|
|
|
- KEY `gig_config_ent_code` (`ent_code`) USING BTREE
|
|
|
- ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='结算主体配置信息表';
|
|
|
- ```
|
|
|
-
|
|
|
-* 用户已签约表
|
|
|
-
|
|
|
- ```sql
|
|
|
- CREATE TABLE `smart_contract` (
|
|
|
- `contract_id` bigint NOT NULL AUTO_INCREMENT COMMENT '协议唯一标识,自增主键',
|
|
|
- `config_id` bigint NOT NULL,
|
|
|
- `contract_no` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '唯一协议编号(如:SC_年月日+流水号)',
|
|
|
- `contract_title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '协议标题(前端展示用)',
|
|
|
- `preview_url` text CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '签约协议预览地址',
|
|
|
- `contract_content` text CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '协议的文件地址',
|
|
|
- `contract_status` tinyint NOT NULL DEFAULT '1' COMMENT '协议状态:1-待签署 2-签署中 3-已完成 4-已终止',
|
|
|
- `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '协议创建时间',
|
|
|
- `expire_time` datetime NOT NULL COMMENT '签署截止时间',
|
|
|
- `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
|
|
|
- `user_id` bigint NOT NULL COMMENT '发起用户',
|
|
|
- `user_account` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '用户在爱签ID',
|
|
|
- `enterprise_account` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '企业在爱签ID',
|
|
|
- `platform_account` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '平台在爱签的ID',
|
|
|
- `complete_time` datetime DEFAULT NULL COMMENT '完成时间',
|
|
|
- `sign_info` json DEFAULT NULL,
|
|
|
- PRIMARY KEY (`contract_id`) USING BTREE,
|
|
|
- UNIQUE KEY `contract_no` (`contract_no`) USING BTREE,
|
|
|
- KEY `idx_status` (`contract_status`) USING BTREE,
|
|
|
- KEY `idx_expire` (`expire_time`) USING BTREE
|
|
|
- ) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='智能合约主表,集成签约方预置与状态跟踪';
|
|
|
- ```
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-### 3. 其他数据表
|
|
|
-
|
|
|
-* 爱签配置表
|
|
|
-
|
|
|
- ```
|
|
|
- CREATE TABLE `gig_config` (
|
|
|
- `config_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
|
|
|
- `ent_code` varchar(18) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '企业三合一码',
|
|
|
- `protocol` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '协议',
|
|
|
- `gateway_host` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '网关域名',
|
|
|
- `subject_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '结算主体名称',
|
|
|
- `subject_type` int NOT NULL COMMENT '结算主体',
|
|
|
- `subject_location` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '结算税源地',
|
|
|
- `subject_channel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
|
|
|
- `app_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主体id',
|
|
|
- `merchant_private_key` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '私钥',
|
|
|
- `public_key` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '公钥',
|
|
|
- `location_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '所属地id',
|
|
|
- `sign_type` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签名算法类型',
|
|
|
- `opt_flag` int NOT NULL DEFAULT '1' COMMENT '启用标记',
|
|
|
- `def_flag` tinyint(1) NOT NULL DEFAULT '0' COMMENT '默认标记',
|
|
|
- `end_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '端类型',
|
|
|
- `created_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modified_time` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
|
|
- `is_sign` tinyint DEFAULT '0' COMMENT '需要签约',
|
|
|
- `agreement_url` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '需要签约的协议',
|
|
|
- `agreement_template` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '协议对应的模板编号',
|
|
|
- `enterprise_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '企业在爱签的account',
|
|
|
- `platform_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '平台在爱签的account',
|
|
|
- `is_file_type` tinyint DEFAULT '0' COMMENT '文件类型 0 是协议 1是报告',
|
|
|
- `reception_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '接包方企业在爱签的account (报告才有)',
|
|
|
- PRIMARY KEY (`config_id`) USING BTREE,
|
|
|
- KEY `gig_config_ent_code` (`ent_code`) USING BTREE
|
|
|
- ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='结算主体配置信息表';
|
|
|
- ```
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-* 爱签api调用历史表
|
|
|
-
|
|
|
- ```
|
|
|
- CREATE TABLE `ums_ext_api_his` (
|
|
|
- `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
|
|
- `ext_id` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '第三方接口ID',
|
|
|
- `user_id` bigint NOT NULL COMMENT '用户ID',
|
|
|
- `api_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL COMMENT '接口名称',
|
|
|
- `request_data` json DEFAULT NULL COMMENT '请求数据',
|
|
|
- `response_data` json DEFAULT NULL COMMENT '响应数据',
|
|
|
- `status` tinyint DEFAULT '1' COMMENT '状态:0-失败,1-成功',
|
|
|
- `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- PRIMARY KEY (`id`) USING BTREE
|
|
|
- ) ENGINE=MyISAM AUTO_INCREMENT=94 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='接口调用历史表';
|
|
|
- ```
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- 数据表参考原有代码里的数据表,并增加了一些字段上去
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-### 4. 需要注意的地方
|
|
|
-
|
|
|
-* 4.1 没有登录功能,因此在控制器里固定了用户ID,并传递用户ID到服务层、数据层
|
|
|
-
|
|
|
-* 4.2 活体认证通过后爱签是直接在小程序的webview组件中返回成功/失败结果,根据此结果再调用后台其他逻辑(保存认证结果、添加实名人到爱签)
|
|
|
-
|
|
|
-* 4.3 报告、协议配置表`gig_config`新增字段说明:
|
|
|
-
|
|
|
- * agreement_url 协议或报告URL
|
|
|
- * is_sign 为是否需要签约 若不需要,用户则调用税地(调用代码在签约功能中,已注释)
|
|
|
-
|
|
|
- * 企业在爱签的account (报告和协议需要)
|
|
|
-
|
|
|
- * 平台在爱签的account (报告需要)
|
|
|
-
|
|
|
- * 接包方企业在爱签的account (报告需要)
|
|
|
-
|
|
|
- * is_file_type 文件类型 0 是协议 1是报告
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-* 4.4 报告的骑缝章需要指定加盖的页码,因此每个报告可能不一致,需要在配置表中配置
|
|
|
-
|
|
|
- ### 现在的demo六里,各个配置是手动添加到数据库的
|
|
|
-
|
|
|
-
|