From f489540d161f4212fb9c8d3e19089c7556b21e9a Mon Sep 17 00:00:00 2001 From: halo Date: Thu, 9 Jul 2026 21:41:27 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E8=A1=A5=E5=85=85=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E6=A8=A1=E5=9D=97=E6=8E=A5=E5=8F=A3=E5=A5=91?= =?UTF-8?q?=E7=BA=A6=E4=B8=8E=E8=83=BD=E5=8A=9B=E7=BC=BA=E5=8F=A3=E8=AE=B0?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 缺失的后端接口.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/缺失的后端接口.md b/缺失的后端接口.md index 027f98b..312bb7e 100644 --- a/缺失的后端接口.md +++ b/缺失的后端接口.md @@ -96,6 +96,26 @@ 核心企业、客户经理模型均**不含** `organizationName`,前端本地通过 `organization/list-all` 建 id→name 映射 展示所属机构列。 +### 1.7 客户管理 —— 个人客户 + +| 接口 | 说明 | +| --- | --- | +| `POST /api/customer-info/personal/list` | `{organizationIdEq,customerCodeEq,customerNameLike,certificateNumberEq,page,pageSize}`,响应 `records: IndividualCustomerListVo[]`(仅 `id,organizationId,customerName,certificateType,certificateNumber,mobilePhone,ocrStatus,customerCode`,不含性别/创建人/创建时间) | +| `POST /api/customer-info/personal/detail` | `{id}` 或 `{customerCode}`,响应 `IndividualCustomerDetailVo` | +| `POST /api/customer-info/personal/create` | `CreateIndividualCustomerBto`,响应 `data`=新建id | +| `POST /api/customer-info/personal/update` | `UpdateIndividualCustomerBto` | +| `POST /api/customer-info/personal/ocr-idcard` | `{fileBase64,channelNo,fileType('01'\|'02')}`,响应 `OcrIdCardResultVo` | +| `POST /api/customer-info/personal/upload-file` | `{fileBase64,channelNo}`,响应 `{fileNo}`,个人身份证与企业营业执照图片均调用此通用接口 | + +### 1.8 客户管理 —— 企业客户 + +| 接口 | 说明 | +| --- | --- | +| `POST /api/enterprise-customer/page` | `{page,pageSize,enterpriseName,businessLicense,mobilePhone}`,响应 `records: EnterpriseCustomerVo[]` | +| `POST /api/enterprise-customer/detail` | `{id}`,响应 `EnterpriseCustomerDetailVo` | +| `POST /api/enterprise-customer/create` | `{createEnterpriseCustomerBto,enableOcr}` | +| `POST /api/enterprise-customer/update` | `UpdateEnterpriseCustomerBto` | + --- ## Part 2:待后端确认 / 建议补充事项 @@ -127,3 +147,16 @@ 菜单。当前 `MainLayout.vue` 菜单渲染只支持两级,初始化菜单节点时层级需控制在 2 级以内。 11. **`/api/auth/reset-password`(找回密码)与登录页暂未接入**:当前登录页仅实现"账号密码"与"手机验证码" 两种登录方式,找回密码入口未在本次范围内开发,契约已在 Part 1-1 登记备查。 +12. **个人客户/企业客户均无删除接口**:列表页暂不提供删除入口。 +13. **营业执照无同步OCR识别接口**:`enterprise-customer/create` 的 `enableOcr` 参数用途/时序未文档化, + 前端按"手动填写+提交时告知后端可异步识别"实现。 +14. **企业客户股东高管信息(`enterpriseRelatedPersonBtoList`)只能在新增时一次性提交**:`update`/`detail` + 接口均不支持读取或修改,编辑模式下该区块前端替换为提示文案,不可编辑。 +15. **企业客户 `businessLicenseFileNo` 编辑/详情接口读取不到**:编辑模式无法回显已上传的营业执照图片。 +16. **企业客户分页查询不支持按所属机构/企业编号过滤**:仅支持企业名称/营业执照号/手机号三项。 +17. **个人客户 `customerCode`(客户编号)生成机制未文档化**:前端创建时不传该字段,交由后端生成。 +18. **身份证/营业执照 OCR 结果字段命名未在 swagger 明确标注**(`OcrIdCardResultVo` 具体字段以实测为准), + 前端 `mapOcrIdCardResult` 按常见字段名(`name/sex/nation/idcard/address/authority/birth/validDate`) + 做防御性映射,识别失败或字段缺失时不阻断提交,允许手动填写。 +19. **移动端确认页(个人开户 `mobile/*`、企业开户 confirm、贷款申请确认扫码后续)不属于本项目范围**: + 相关接口已在后端提供但本次前端管理后台不实现对应移动端页面,登记备查。