Commit 5319d412 by 王雷

更新api-doc

parent ff6c4be9
# partner-mp 接口说明文档 # partner-mp 接口说明文档
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
> 说明:四份原型是**交互原型**,不是视觉设计稿;本文档只关心页面需要什么数据、什么接口,不涉及颜色/间距等视觉内容。 > 说明:四份原型是**交互原型**,不是视觉设计稿;本文档只关心页面需要什么数据、什么接口,不涉及颜色/间距等视觉内容。
> 更新日期:2026-07-06(追加 P5-P8 审核流程接口、合伙人搜索接口) > 更新日期:2026-07-06(追加 P5-P8 审核流程接口、合伙人搜索接口)
> 更新日期:2026-07-07(02 原型 P8/P9 字段级复核,新增合伙人线索列表/提交接口,`customer_collect_list`/`get_deal_settlement` 新增字段与分页需求,详见下方【本次更新汇总】) > 更新日期:2026-07-07(02 原型 P8/P9 字段级复核,新增合伙人线索列表/提交接口,`customer_collect_list`/`get_deal_settlement` 新增字段与分页需求,详见下方【本次更新汇总】)
> 更新日期:2026-07-07(对接后端 `api-doc-第四点新增接口.md` 「四、20260706补充接口」,`get_partner_users`/`opportunity_create.user_type` 已接入前端,详见下方【本次更新汇总】)
> 更新日期:2026-07-07(对接后端 `api-doc-第四点新增接口.md` 「五、20260707补充接口」,`partner_opportunity_list`/`partner_lead_create` 按后端最终字段调整前端实现,详见下方【本次更新汇总】)
--- ---
...@@ -20,6 +22,27 @@ ...@@ -20,6 +22,27 @@
| ✏️ 修改接口 | `customer_order_list` | 需新增 `page`/`page_size` 分页支持 + 响应总数字段(单客户订单已超 200 条) | §3.3 | | ✏️ 修改接口 | `customer_order_list` | 需新增 `page`/`page_size` 分页支持 + 响应总数字段(单客户订单已超 200 条) | §3.3 |
| ✏️ 修改接口 | `get_deal_settlement` | 需新增 `page`/`page_size` 分页支持 + 响应总数字段(合伙人佣金明细已超 200 条) | §3.5 | | ✏️ 修改接口 | `get_deal_settlement` | 需新增 `page`/`page_size` 分页支持 + 响应总数字段(合伙人佣金明细已超 200 条) | §3.5 |
| ⚠️ 旧接口保留 | `create_lead_suggestion` / `referral-clue.vue` | 前端已不再引用此入口,但代码和接口暂不下线 | §3.4 | | ⚠️ 旧接口保留 | `create_lead_suggestion` / `referral-clue.vue` | 前端已不再引用此入口,但代码和接口暂不下线 | §3.4 |
| ✅ 已对接 | `get_partner_users` | 04·P6b 关联合伙人搜索,`partner-drawer.vue` 已从 mock 切换为真实接口,固定传 `type:"all"` | 见下方新增小节 |
| ✅ 已对接 | `opportunity_create` 新增 `user_type` | 表单 `customer_type`(企业客户/个人客户)已映射为 `user_type`(1/2) 随请求提交,`partner_id` 同步补提交(此前引入但漏提交) | 见下方新增小节 |
| 📝 待办(不阻塞) | `partner_info.review_remark` | 合伙人审核备注字段,随审核状态查询接口一起对接(该接口本身尚未接入,见 §4.3) | 见下方新增小节 |
---
## 【本次更新汇总】2026-07-07(对接后端「五、20260707补充接口」)
后端已给出 `partner_opportunity_list`/`partner_lead_create` 正式字段(`api-doc-第四点新增接口.md` 「五」),与前端此前的占位实现有几处不一致,已按后端口径改造:
| 类型 | 接口 | 内容 | 详情章节 |
| --- | --- | --- | --- |
| ✏️ 已按后端口径改造 | `partner_opportunity_list` | `status` 参数由前端占位的数字码(3/4/5/6,4 个 tab)改为后端要求的字符串(`""`/`"all"`全部、`in_progress`进行中=待审核+待分配+跟进中+暂时挂起合并、`"5"`已成单、`"6"`已作废),`lead-list.vue` tab 结构同步改为"全部/进行中/已成单/已作废" | §3.4 |
| ✏️ 已按后端口径改造 | `partner_opportunity_list` | 响应新增 `partner_name`(=本人)字段,`LeadListItem` 类型定义同步补充 | §3.4 |
| ✏️ 已按后端口径改造 | `partner_lead_create` | `customer_type` 由前端占位的字符串改为后端要求的 `int`(1企业/2个人),`lead-create.vue` 补充映射表后随请求提交(此前完全没做这层映射) | §3.4 |
| 📝 文档口径更新 | `partner_lead_create` 去重逻辑 | 去重维度由此前记录的"客户+产品"二维更新为后端明确的"客户名称+联系人手机号+产品"三维 | §3.4 |
| 📝 新增约束,前端暂不处理 | `partner_lead_create` | 后端明确"仅审核通过的合伙人可提交",前端不加前置拦截,未通过时交给后端报错提示 | §3.4 |
| ✏️ 已优化(非阻塞) | `customer_order_list` | 分页 `hasMore` 判断由 `data.length >= pageSize` 的近似判断改为读取响应 `total`/`rc_count` 精确判断,避免多翻一页空请求 | §3.3 |
| ✅ 确认无需改动 | `customer_collect_list.first_deal_status` | 后端补充取值口径(已成单/已注册/已创建/已留资),前端展示逻辑已就绪,无需改代码 | §3.3 |
| ✅ 确认无需改动 | `customer_order_list`/`get_deal_settlement` 分页 | 前端分页传参已与后端一致 | §3.3/§3.5 |
| ✅ 确认无需改动 | 介绍人身份判定收紧("审核通过的合伙人"口径) | 后端明确纯后端口径调整,前端无需改动 | §一 |
--- ---
...@@ -118,15 +141,15 @@ sdk.domainServicePost("接口名", { data, params }, isAnonymous, subProjectName ...@@ -118,15 +141,15 @@ sdk.domainServicePost("接口名", { data, params }, isAnonymous, subProjectName
| 接口名 | 形式 | 代码位置 | 请求字段 | 响应字段 | 用途 | | 接口名 | 形式 | 代码位置 | 请求字段 | 响应字段 | 用途 |
| ----------------------- | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ----------------------------------- | | ----------------------- | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ----------------------------------- |
| `customer_collect_list` | domain service | [my-customers.vue:139](../src/pages/subpackages/customer/my-customers.vue#L139)[customer-detail.vue:252](../src/pages/subpackages/customer/customer-detail.vue#L252) | `user_combo`(搜索)、`deal_date`(成交时间筛选)、`page``page_size` | `data_list[]`(含 `order_amount`, `order_commission`)、`rc_count`**✏️修改:详情场景建议新增 `first_deal_status`**) | 合伙人"我的客户"列表 + 客户详情汇总 | | `customer_collect_list` | domain service | [my-customers.vue:139](../src/pages/subpackages/customer/my-customers.vue#L139)[customer-detail.vue:252](../src/pages/subpackages/customer/customer-detail.vue#L252) | `user_combo`(搜索)、`deal_date`(成交时间筛选)、`page``page_size` | `data_list[]`(含 `order_amount`, `order_commission`)、`rc_count`**✅ 详情场景已新增 `first_deal_status`**) | 合伙人"我的客户"列表 + 客户详情汇总 |
| `customer_order_list` | domain service | [customer-detail.vue:278](../src/pages/subpackages/customer/customer-detail.vue#L278) | `UserMemberId`**✏️修改:需新增 `page, page_size`**) | `orders[]``order_amount, order_commission, order_fee_amount, product_type`)(**✏️修改:需新增总数字段**) | 客户详情页的订单明细 | | `customer_order_list` | domain service | [customer-detail.vue:278](../src/pages/subpackages/customer/customer-detail.vue#L278) | `UserMemberId`**✅ 已支持 `page, page_size`**) | `orders[]``order_amount, order_commission, order_fee_amount, product_type`)(**✅ 已支持 `total`/`rc_count` 总数字段**) | 客户详情页的订单明细 |
**⚠️ 本次新需求是否需要改动** **⚠️ 本次新需求是否需要改动**
1. 02 原型 P2 逻辑注释要求客户列表能区分归属来源(本人直推成交 / 本人提交商机成单 / 落地页扫码绑定),当前响应字段里没有看到来源标记,建议补充 `source_type` 字段。 1. 02 原型 P2 逻辑注释要求客户列表能区分归属来源(本人直推成交 / 本人提交商机成单 / 落地页扫码绑定),当前响应字段里没有看到来源标记,建议补充 `source_type` 字段。
2. 02 原型 P3 客户详情要求展示"来源渠道"、"意向产品"、"首次成单"状态、"邀请合伙人"字段,当前 `customer_collect_list` 详情场景返回的字段需要核对是否已覆盖这些。 2. 02 原型 P3 客户详情要求展示"来源渠道"、"意向产品"、"首次成单"状态、"邀请合伙人"字段,当前 `customer_collect_list` 详情场景返回的字段需要核对是否已覆盖这些。
3. **【新增】`customer_collect_list` 详情场景(`UserMemberId` 精确查询)建议补充 `first_deal_status` 字段**(首次成单状态,如"已成单"/"待成单"),前端 [customer-detail.vue](../src/pages/subpackages/customer/customer-detail.vue) 头部卡片已加好展示位(`v-if="detail.first_deal_status"`),字段没有值时不显示,等接口补充后自动生效 3. **✅ 已实现:`customer_collect_list` 详情场景(`UserMemberId` 精确查询)新增 `first_deal_status` 字段**(首次成单状态;取值口径:该客户对该合伙人存在非取消结算单="已成单",否则按客户类型返回"已注册"(个人)/"已创建"(企业)/"已留资"),前端 [customer-detail.vue](../src/pages/subpackages/customer/customer-detail.vue) 头部卡片已展示(`v-if="detail.first_deal_status"`
4. **【新增】`customer_order_list` 需要支持分页**:客户单个详情页订单已达 200+ 条,当前接口调用只传 `UserMemberId`,一次性拉全量;前端已按 `page`/`page_size` 参数传参([customer-detail.vue:283](../src/pages/subpackages/customer/customer-detail.vue#L283)),需要后端确认接口是否已支持这两个参数、以及响应里是否有 `rc_count`/`total` 之类的总数字段供前端判断是否还有更多 4. **✅ 已实现:`customer_order_list` 支持分页**:客户单个详情页订单已达 200+ 条,前端已按 `page`/`page_size` 参数传参并读取响应 `total`/`rc_count` 精确判断是否还有更多([customer-detail.vue:283](../src/pages/subpackages/customer/customer-detail.vue#L283)
### 3.4 推荐线索 / 商机(对应 02 · P8/P9,合伙人视角) ### 3.4 推荐线索 / 商机(对应 02 · P8/P9,合伙人视角)
...@@ -141,12 +164,12 @@ sdk.domainServicePost("接口名", { data, params }, isAnonymous, subProjectName ...@@ -141,12 +164,12 @@ sdk.domainServicePost("接口名", { data, params }, isAnonymous, subProjectName
2. 02 P9 逻辑注释要求的"去重检测"(同客户+同产品+进行中状态 → 不新建,只刷新更新时间并提示)需要后端在 `create_lead_suggestion` 里实现,或者前端调用前先查询判断。 2. 02 P9 逻辑注释要求的"去重检测"(同客户+同产品+进行中状态 → 不新建,只刷新更新时间并提示)需要后端在 `create_lead_suggestion` 里实现,或者前端调用前先查询判断。
3. **这里的"商机"和 04 对接人视角的"商机"是同一份数据的两个查看角度**,建议后端只建一套商机表,通过角色权限控制查询范围,具体见「四、当前完全没有的接口」的商机模块说明。 3. **这里的"商机"和 04 对接人视角的"商机"是同一份数据的两个查看角度**,建议后端只建一套商机表,通过角色权限控制查询范围,具体见「四、当前完全没有的接口」的商机模块说明。
**🆕【新增】合伙人线索列表 + 提交线索(前端已实现页面,等待后端接口)** **✅ 已实现:合伙人线索列表 + 提交线索(对应后端「五、20260707补充接口」①②)**
- 新增页面:[lead-list.vue](../src/pages/subpackages/other/lead-list.vue)(列表,tabs:跟进中/暂时挂起/已成单/已作废)、[lead-create.vue](../src/pages/subpackages/other/lead-create.vue)(提交表单:客户类型/企业名称/联系人/联系电话/可能的产品多选)。首页统计三宫格"推荐记录"入口、首页"推荐线索"banner 均已改为跳转 `lead-list.vue` - 页面:[lead-list.vue](../src/pages/subpackages/other/lead-list.vue)(列表,tabs:全部/进行中/已成单/已作废)、[lead-create.vue](../src/pages/subpackages/other/lead-create.vue)(提交表单:客户类型/企业名称/联系人/联系电话/可能的产品多选)。首页统计三宫格"推荐记录"入口、首页"推荐线索"banner 均已改为跳转 `lead-list.vue`
- 新增接口(占位接口名 `partner_opportunity_list`,需后端确认最终命名):请求字段 `status`(3跟进中/4暂时挂起/5已成单/6已作废)、`search_key`(客户/产品搜索)、`page``page_size`;响应字段参考对接人视角 `opportunity_list` 的结构(`opportunity_id, code, customer_name, product_name, contactor_name, channel_admin_name, source, create_time, update_time, status, status_code`),区别只是按"我提交的"(合伙人=当前登录用户)过滤,建议复用同一张商机表 - `partner_opportunity_list`[lead-request.ts](../src/pages/subpackages/other/lead-request.ts)):请求字段 `status`(字符串,`""`/`"all"`全部、`in_progress`进行中=待审核+待分配+跟进中+暂时挂起合并、`"5"`已成单、`"6"`已作废)、`search_key`(客户名称模糊搜索)、`page``page_size`;响应字段 `opportunity_id, code, customer_name, customer_attr, product_name, partner_name, contactor_name, channel_admin_name, source, source_code, create_time, update_time, status, status_code`,与对接人视角 `opportunity_list` 同一张商机表,按"我提交的"(`partner_id`=当前登录用户)过滤
- 新增接口(占位接口名 `partner_lead_create`,需后端确认最终命名):请求字段 `customer_type, customer_name, product_ids[], contact_name, contact_mobile`;用于替代旧的 `create_lead_suggestion`,需要实现「三、3.4」第2条提到的去重检测逻辑 - `partner_lead_create`[lead-request.ts](../src/pages/subpackages/other/lead-request.ts)):请求字段 `customer_type`(1企业/2个人,[lead-create.vue](../src/pages/subpackages/other/lead-create.vue) 已做文案→数字映射)、`customer_name, contact_name?, contact_mobile, product_ids[], description?`;替代旧的 `create_lead_suggestion`;去重口径为"客户名称+联系人手机号+产品+进行中"三维匹配;**仅审核通过的合伙人可提交**,前端不做前置拦截,交由后端报错提示
- 旧的 `referral-clue.vue` 页面和 `create_lead_suggestion` 接口**保留代码但不再被任何入口引用**,待新接口落地验证后再决定是否彻底下线 - 旧的 `referral-clue.vue` 页面和 `create_lead_suggestion` 接口**保留代码但不再被任何入口引用**
### 3.5 我的佣金(对应 02 · P4) ### 3.5 我的佣金(对应 02 · P4)
...@@ -161,11 +184,11 @@ sdk.domainServicePost("接口名", { data, params }, isAnonymous, subProjectName ...@@ -161,11 +184,11 @@ sdk.domainServicePost("接口名", { data, params }, isAnonymous, subProjectName
| `apply_record_list` | `page_index, page_size` | `list[]``cash_type_name, amount, create_time`) | 提现记录列表 | | `apply_record_list` | `page_index, page_size` | `list[]``cash_type_name, amount, create_time`) | 提现记录列表 |
| `apply_payee_info` | — | — | 收款账户信息 | | `apply_payee_info` | — | — | 收款账户信息 |
| `apply_record_detail` | `id`(apply_id) | — | 提现记录详情 | | `apply_record_detail` | `id`(apply_id) | — | 提现记录详情 |
| `get_deal_settlement` | `status, type`**【修改】需新增 `page, page_size`**) | `balance, settled_commission, pending_commission, total_commission, list[]``ID, DocNo, ProductName, ServiceTypeName, UserName, CreateDate, CheckDate, Status, StatusName, Amount, Commission, RuleSnapshot`)(**【修改】需新增总数字段如 `total`/`rc_count`**) | 我的佣金余额+明细(02 原型 P4 的主要数据源) | | `get_deal_settlement` | `status, type`**✅ 已支持 `page, page_size`**) | `balance, settled_commission, pending_commission, total_commission, list[]``ID, DocNo, ProductName, ServiceTypeName, UserName, CreateDate, CheckDate, Status, StatusName, Amount, Commission, RuleSnapshot`)(**✅ `list` 已分页返回,新增 `total`/`page`;金额统计字段仍按全量计算**) | 我的佣金余额+明细(02 原型 P4 的主要数据源) |
**⚠️ 本次新需求是否需要改动**`get_deal_settlement` 的结构是"可提现余额"模型(合伙人专用),04 原型的对接人佣金是"次月工资发放,无提现"模型,字段维度也不同(对接人要看"已结算订单数",合伙人模型里没有这个字段)。这两种模型是否共用一张结算表、只是展示口径不同,还是完全独立的两套逻辑,需要和后端确认(详见「四」中的商机/订单模块说明)。 **⚠️ 本次新需求是否需要改动**`get_deal_settlement` 的结构是"可提现余额"模型(合伙人专用),04 原型的对接人佣金是"次月工资发放,无提现"模型,字段维度也不同(对接人要看"已结算订单数",合伙人模型里没有这个字段)。这两种模型是否共用一张结算表、只是展示口径不同,还是完全独立的两套逻辑,需要和后端确认(详见「四」中的商机/订单模块说明)。
**【修改】需要支持分页**:合伙人佣金明细已积累 200+ 条,当前接口一次性返回全量列表,前端已改造为按 `page`/`page_size` 分页加载([commission/request.ts](../src/pages/subpackages/commission/request.ts)[my-commission.vue](../src/pages/subpackages/commission/my-commission.vue),滚动到底部触发加载下一页),需要后端确认接口支持这两个参数,并在响应里补充总数字段(`total` 或类似)供前端判断是否还有更多数据 **✅ 已支持分页**:合伙人佣金明细已积累 200+ 条,前端已按 `page`/`page_size` 分页加载并读取响应 `total` 判断是否还有更多([commission/request.ts](../src/pages/subpackages/commission/request.ts)[my-commission.vue](../src/pages/subpackages/commission/my-commission.vue),滚动到底部触发加载下一页)
### 3.6 产品(对应 01 首页 + 02 · P5/P6) ### 3.6 产品(对应 01 首页 + 02 · P5/P6)
...@@ -264,10 +287,11 @@ contactor_poster_template, partner_land_page, customer_land_page ...@@ -264,10 +287,11 @@ contactor_poster_template, partner_land_page, customer_land_page
- 作废:`{opportunity_id, reason, remark}`,reason 单选(客户已选择竞品/客户失联无意向/预算不足/客户资质不符/重复商机/无法提供对应服务/其他),选"其他"时 remark 必填 - 作废:`{opportunity_id, reason, remark}`,reason 单选(客户已选择竞品/客户失联无意向/预算不足/客户资质不符/重复商机/无法提供对应服务/其他),选"其他"时 remark 必填
- 标记成单:`{opportunity_id}` → 生成对应订单记录(需要后端定义"商机成单"和"订单创建"的事务关系) - 标记成单:`{opportunity_id}` → 生成对应订单记录(需要后端定义"商机成单"和"订单创建"的事务关系)
#### 【建议新增】新增商机(对接人代录入) #### ✅ 已实现:新增商机(对接人代录入)
- 参考 mock:[opportunity-create.vue:118](../src/pages/subpackages/opportunity/opportunity-create.vue#L118) - 实现位置:[opportunity-create.vue](../src/pages/subpackages/opportunity/opportunity-create.vue)[opportunity/request.ts](../src/pages/subpackages/opportunity/request.ts)
- 建议请求字段:`customer_type, customer_name, contact_name, contact_mobile, product_names[], remark, partner_id?` - 请求字段:`customer_name, product_ids[], contact_name?, contact_mobile?, partner_id?, description?`
- **✏️【修改】20260706 补充接口②**:新增 `user_type`(1企业、2个人),对应表单 `customer_type` 显示文案本地映射提交,已接入([opportunity-create.vue](../src/pages/subpackages/opportunity/opportunity-create.vue)
- **需要后端实现去重检测**:同客户+同产品已有进行中商机 → 不新建,只提示并刷新原商机更新时间(04 原型逻辑注释明确要求) - **需要后端实现去重检测**:同客户+同产品已有进行中商机 → 不新建,只提示并刷新原商机更新时间(04 原型逻辑注释明确要求)
- 来源固定标记为"后台添加",区别于合伙人小程序提交的"合伙人添加" - 来源固定标记为"后台添加",区别于合伙人小程序提交的"合伙人添加"
...@@ -301,13 +325,14 @@ contactor_poster_template, partner_land_page, customer_land_page ...@@ -301,13 +325,14 @@ contactor_poster_template, partner_land_page, customer_land_page
- `role_kind`:身份类别(逗号分隔,如 `"HR,财务"` - `role_kind`:身份类别(逗号分隔,如 `"HR,财务"`
- `reject_reason`:驳回原因(仅审核不通过时有值,字符串或数组) - `reject_reason`:驳回原因(仅审核不通过时有值,字符串或数组)
- **是否可复用**:与「三、3.2」`join_partner` 提交接口关联,建议在 `partner_users` 表上增加 `audit_status` / `audit_time` / `reject_reason` 字段,查询时直接读取 - **是否可复用**:与「三、3.2」`join_partner` 提交接口关联,建议在 `partner_users` 表上增加 `audit_status` / `audit_time` / `reject_reason` 字段,查询时直接读取
- **📝【待办】20260706 补充接口③**`partner_info` 将新增 `review_remark`(合伙人审核备注)字段,随此接口一起返回。**本条待办不阻塞**——该查询接口本身仍未接入([audit-pending.vue](../src/pages/subpackages/more/audit-pending.vue)[audit-failed.vue](../src/pages/subpackages/more/audit-failed.vue) 目前仍是硬编码 mock),`review_remark` 留到该接口正式对接时一并处理,暂不单独动前端代码。
#### 【建议新增】搜索合伙人列表 #### ✅ 已实现:搜索合伙人列表
- 用途:P6b 新增商机页面,关联合伙人搜索抽屉 - 用途:P6b 新增商机页面,关联合伙人搜索抽屉
- 建议请求字段:`search_key`(姓名/手机号模糊搜索)、`page``page_size` - 实现位置:[partner-drawer.vue](../src/components/common/partner-drawer.vue),已从 mock 切换为真实接口 `get_partner_users`
- 建议响应字段:`partner_id, name, mobile, create_type` - 请求字段:`type`(前端固定传 `"all"`)、`partner_key`(姓名/手机号模糊搜索)
- **是否可复用**`partner_users` 表查询,过滤 `is_partner=true``create_type IN (1,2,3)` 的用户 - 响应字段:`id`(字符串)、`name``mobile`(原"建议响应字段"里的 `partner_id`/`create_type` 未在实际接口中出现,`create_type` 暂未用到)
--- ---
......
```markdown ```markdown
...@@ -182,4 +182,60 @@ api文档:《api-doc.md》 ...@@ -182,4 +182,60 @@ api文档:《api-doc.md》
描述:合伙人佣金明细已积累 200+ 条,`get_deal_settlement` 当前一次性返回全量列表,前端已改造为按 `page`/`page_size` 分页加载、滚动到底部触发下一页([commission/request.ts](../../../packages/partner-mp/src/pages/subpackages/commission/request.ts)[my-commission.vue](../../../packages/partner-mp/src/pages/subpackages/commission/my-commission.vue)),**缺后端确认接口支持这两个参数、并在响应里补充总数字段** 描述:合伙人佣金明细已积累 200+ 条,`get_deal_settlement` 当前一次性返回全量列表,前端已改造为按 `page`/`page_size` 分页加载、滚动到底部触发下一页([commission/request.ts](../../../packages/partner-mp/src/pages/subpackages/commission/request.ts)[my-commission.vue](../../../packages/partner-mp/src/pages/subpackages/commission/my-commission.vue)),**缺后端确认接口支持这两个参数、并在响应里补充总数字段**
### 改动18
api文档:《api-doc-第四点新增接口.md》
接口:四、① get_partner_users — 根据手机号/姓名搜索合伙人
描述:[partner-drawer.vue](../../../packages/partner-mp/src/components/common/partner-drawer.vue)(04·P6b 新增商机页面"关联合伙人"抽屉)原为 `// TODO: 调用合伙人搜索 API` 的 mock 数据,已接入真实接口,`type` 固定传 `"all"``partner_key` 传搜索框内容;返参字段由 mock 的 `partner_id`(number) 改为接口实际返回的 `id`(string),模板与选中态逻辑同步更新。
### 改动19
api文档:《api-doc-第四点新增接口.md》
接口:四、② 修改接口:opportunity_create(入参增加 user_type)
描述:[opportunity-create.vue](../../../packages/partner-mp/src/pages/subpackages/opportunity/opportunity-create.vue) 表单里原本就有的"客户类型"(企业客户/个人客户)字段此前只是本地 UI 状态、未随请求提交(见原代码注释"customer_type 字段接口文档未提供,暂保留 UI");现已映射为 `user_type`(1企业/2个人) 随 `createOpportunity` 提交。顺带修复了"关联合伙人"选中后 `partner_id` 一直没有被提交的遗留问题([opportunity/request.ts](../../../packages/partner-mp/src/pages/subpackages/opportunity/request.ts) 补充 `user_type` 字段类型定义)。
### 改动20
api文档:《api-doc-第四点新增接口.md》
接口:四、③ 合伙人审核添加审核备注(partner_info 新增 review_remark)
描述:确认后不动代码——`review_remark` 是给"合伙人审核状态查询"接口新增的字段,但该接口本身仍未接入([audit-pending.vue](../../../packages/partner-mp/src/pages/subpackages/more/audit-pending.vue)[audit-failed.vue](../../../packages/partner-mp/src/pages/subpackages/more/audit-failed.vue) 目前仍是硬编码 mock,属于 api-doc.md「四、4.3」更早就存在的缺口)。已把 `review_remark` 记入 api-doc.md 对应待办小节,等该接口正式排期对接时一并处理。
### 改动21
api文档:《api-doc-第四点新增接口.md》
接口:五、① partner_opportunity_list — 合伙人线索(商机)列表【新增】
描述:改动15 新建 [lead-list.vue](../../../packages/partner-mp/src/pages/subpackages/other/lead-list.vue)`status` 参数用的是前端占位的数字码(3跟进中/4暂时挂起/5已成单/6已作废,四个 tab);后端正式给出的字段是字符串(`""`/`"all"`全部、`in_progress`进行中=待审核+待分配+跟进中+暂时挂起合并、`"5"`已成单、`"6"`已作废),已按此改造:[lead-list.vue](../../../packages/partner-mp/src/pages/subpackages/other/lead-list.vue) tab 结构改为"全部/进行中/已成单/已作废",[lead-request.ts](../../../packages/partner-mp/src/pages/subpackages/other/lead-request.ts)`LeadListParams.status` 类型同步更新;响应新增 `partner_name` 字段,`LeadListItem` 类型定义同步补充。
### 改动22
api文档:《api-doc-第四点新增接口.md》
接口:五、② partner_lead_create — 合伙人提交新线索【新增】
描述:改动15 新建 [lead-create.vue](../../../packages/partner-mp/src/pages/subpackages/other/lead-create.vue)`customer_type` 是前端占位的字符串直传;后端正式给出的字段要求是 `int`(1企业/2个人),已补充映射表(同 [opportunity-create.vue](../../../packages/partner-mp/src/pages/subpackages/opportunity/opportunity-create.vue)`CUSTOMER_TYPE_CODE` 做法)后随请求提交。去重口径按后端明确改为"客户名称+联系人手机号+产品+进行中"三维(此前 api-doc.md 记录的是"客户+产品"二维,纯文档口径更新,逻辑在后端实现)。后端另说明"仅审核通过的合伙人可提交",前端不做前置拦截,未通过时交给后端报错提示。
### 改动23
api文档:《api-doc-第四点新增接口.md》
接口:五、④⑤ customer_order_list / get_deal_settlement 分页确认 + hasMore 判断优化
描述:改动16、17 里 `customer_order_list``get_deal_settlement` 的分页传参已提前做好;后端正式确认接口已支持 `page`/`page_size` 并返回总数字段(`total`/`rc_count`)。顺带把 [customer-detail.vue](../../../packages/partner-mp/src/pages/subpackages/customer/customer-detail.vue)`hasMore` 的判断从"本页返回条数是否达到 pageSize"的近似判断,改为直接读取响应 `total`/`rc_count` 精确判断,避免多翻一页空请求;`get_deal_settlement` 侧([my-commission.vue](../../../packages/partner-mp/src/pages/subpackages/commission/my-commission.vue))此前已经是用 `total` 判断,未改动。
### 改动24
api文档:《api-doc-第四点新增接口.md》
接口:五、③⑥ customer_collect_list.first_deal_status 取值口径 / 介绍人身份判定收紧
描述:均为确认无需改动——③ 后端补充了 `first_deal_status` 的取值口径说明(已成单/已注册/已创建/已留资),前端 [customer-detail.vue](../../../packages/partner-mp/src/pages/subpackages/customer/customer-detail.vue) 展示逻辑早已就绪;⑥ 介绍人身份判定收紧为"仅统计审核通过的合伙人",后端明确纯后端口径调整、前端无需改动。
# 后端 # 后端
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment