Browse Source

commit

master
luoweijian 1 week ago
parent
commit
d8cd74b0d6
  1. 16
      .scratch/api-docs-reorg/issues/04-execute-reorg.md
  2. 3
      .scratch/api-docs-reorg/map.md
  3. BIN
      .scratch/api-docs-reorg/tmp_app_run.log
  4. 56
      .scratch/api-docs-reorg/tmp_close_ticket.py
  5. 43
      .scratch/api-docs-reorg/tmp_knife4j_check.py
  6. BIN
      .scratch/api-docs-reorg/tmp_mvn_test.log
  7. 29
      .scratch/api-docs-reorg/tmp_patch_adr0024.py
  8. 4
      .scratch/api-docs-reorg/tmp_reorg_audit.py
  9. 20
      .scratch/api-docs-reorg/tmp_tree_dump.py
  10. 57
      .scratch/api-docs-reorg/tmp_verify_tree.py
  11. 205
      .scratch/api-docs-reorg/tmp_write_readmes.py
  12. 41
      .scratch/lanhu-latest/dump-2-4-selects.mjs
  13. 33
      .scratch/lanhu-latest/dump-form-section.mjs
  14. 17
      .scratch/lanhu-latest/extract-2-4-annotations.mjs
  15. 22
      .scratch/lanhu-latest/extract-annotations.mjs
  16. 75
      .scratch/lanhu-latest/fetch-v29-customer-pages.mjs
  17. 8
      .scratch/lanhu-latest/list-a3-pages.mjs
  18. 18
      .scratch/lanhu-latest/list-customer-pages.mjs
  19. 19
      .scratch/lanhu-latest/list-u665-fields.mjs
  20. 343
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-1_(个人)商机详情_概览.txt
  21. 198
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-2(个人)商机详情_客户信息.txt
  22. 403
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-3-1______.txt
  23. 297
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-3(个人)商机详情_方案卡.txt
  24. 302
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1__新增_编辑商机.txt
  25. BIN
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_form-dump.txt
  26. 6583
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_raw.html
  27. 397
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-2_____.txt
  28. 343
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-3_______.txt
  29. 252
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4________.txt
  30. 3832
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4_raw.html
  31. 334
      .scratch/lanhu-latest/v29-customer-pages/a3-1-1_销售机会列表.txt
  32. 223
      .scratch/lanhu-latest/v29-customer-pages/a4-4-1_客户详情(客户信息).txt
  33. 205
      .scratch/opp-customer-dependency/商机模块前置客户接口依赖分析报告.md
  34. 11
      docs/adr/0024-bruno-docs-grouping-by-menu.md
  35. 181
      logs/crm-app.log
  36. 1
      logs/t04-run.log

16
.scratch/api-docs-reorg/issues/04-execute-reorg.md

@ -1,7 +1,7 @@
# 04 文档仓重排执行落地
Type: task
Status: claimed
Status: resolved
Blocked by: 01, 03
## Question
@ -17,4 +17,16 @@ Blocked by: 01, 03
## Answer
<!-- 解决时填写 -->
## Answer
**(2026-08-31 解决;t1-t9 旧机会话完成,t10-t12 换机后续跑收尾,全绿关票。)**
1. **源码 tags 重构(完成)**:25 个 Controller 按映射表 §2 逐行落地(类级 @Tag 改全路径 / 方法级 @Operation(tags) 深路径 / LeadPool 5 端点双值 tags / SystemController 10 端点补显式 tag / Query 收敛 6→3 / Collab+Sub 分挂),Grep 复核旧前缀零残留。回归:`mvn test` 全仓 **873 测试 0 失败 0 错误**(base 38 / file 84 / auth 210 / dict 51 / rule 134 / preference 16 / lead 131 / opportunity 209),BUILD SUCCESS。
2. **文档仓重建(完成)**:§4 git-mv 清单全部落地;空分区 A1 / A1X / A4 / A5 / A6 folder.bru 占位(seq 2/3/6/7/8);公共依赖合并(文件 + 行政区划);调试(验证专用) 保留顶层。全量对账(tmp_reorg_audit.py,本机复跑):**src keys 196 / doc keys 196,双向差集均 0**。
3. **分区索引 README(完成)**:生成方式落地裁决 = **手写**(叙述性导航,bruno-sync 不生成 README,人工维护)。11 个分区 README.md 已落盘:已落地 .bru 清单按二级目录列 + 空缺标注 + 对接工程师示位,空分区只写占位说明。文档仓 git status = 恰 11 个 untracked README。
4. **ADR-0024 修订(完成)**:文末追加「修订(2026-08-31,api-docs-reorg effort)」段——一级对齐 v29 权威树(引用 lanhu-tree-v29.md)、深 tag 纪律、商机规则归 A7 与线索规则双归属、URL 回退关闭、双归属 = 方法级多值 tags、新接口挂载纪律,另记机制联动(生成器家族退役 / menuBindings 前缀 / 文档仓换机路径)。回读逐字一致、无 BOM。
5. **机制联动(完成)**:bruno-sync.config.json menuBindings 四键前缀换 `A2 线索管理/…`(viewType/scopeKey 未动);手工生成器家族(gen_bruno.py / gen_opp_*.py / gen_v2_*.py / bru_lib.py)退役留档;bruno-sync 注解驱动通道为唯一权威机制。
6. **验收(通过)**:§6 基线目录树逐目录对照全 OK(38 目录计数一致 + 5 空分区 folder.bru/README 齐 + 接口 .bru 总数 196 = 191 + 5 LeadPool 副本);knife4j 抽查(起 crm-app 取 /v3/api-docs):`A0 登录界面` / `A3 商机管理/商机详情/客户` / `A7 后台管理/权限管理/角色管理` / `公共依赖/文件` 4 组 + LeadPool 5 端点双归属 tags 全部命中;按分区索引 README 即可确认各分区接口全集与空缺状态(A7 分区空缺:客户规则 / 项目规则 / 日志管理)。
遗留提醒(不阻塞关票):`A7 后台管理/权限点管理/资源树列表.bru` url 行为历史绝对地址,对账脚本已归一化识别;下次 bruno-sync 真跑时按「结构听源码」patch 为 `{{baseUrl}}` 形式。换机注记:对账脚本 REPO/DOCS 常量已改本机路径;bruno-sync.local.json = `{"docsRepoPath": "e:/code/crm-api-docs"}`;两仓改动均未提交,由用户审查后自行 commit。

3
.scratch/api-docs-reorg/map.md

@ -38,10 +38,11 @@ Label: wayfinder:map
- [线索规则接口归属裁决](issues/02-lead-rule-home.md) — 线索公海池接口(LeadPoolController,/api/rule/pool/*)**双归属**:A2 线索管理/线索设置(主本)+ A7 后台管理/线索规则(副本);两份必须由生成器从同一 tag 幂等双输出。依据:A7-3-1 原型页是 A2-1-5 的引用副本(面包屑与数据逐字相同),两页消费同一组接口。
- [一级目录改造机制选型](issues/01-mechanism-choice.md) — **候选 1:A 区路径进源码 tags**。tag = 完整页面路径(深 tag,最深 4 级);双归属用方法级多值 `@Operation(tags)` 原生表达(票内「@Tag 单值无法双归属」断言经勘误不成立);类级 `@Tag` 与方法级 tags 互斥使用;URL 回退通道关闭(无 tag 端点全补显式深 tag,`system/` 游离目录消灭);bruno-sync 身份映射为唯一权威通道,swagger 同步 A 区分组;手工生成器家族退役;现有 .bru 表述经「git-mv 先行 + bruno-sync 对账」保留。
- [蓝湖一级目录树冻结与全量接口映射表](issues/03-mapping-table.md) — 两工件落盘:[lanhu-tree-v29.md](lanhu-tree-v29.md)(A0-A7 权威树 + v20→v29 差异 7 条)与 [mapping-table.md](mapping-table.md)(161 端点 ↔ 191 .bru **双向零孤儿**;25 控制器 tag 重构表、端点级明细、git-mv 清单、menuBindings 改名、验收基线目录树、判断点 7 条)。部门管理归属为判断行,执行时可调整。
- [04 文档仓重排执行落地](issues/04-execute-reorg.md) — **resolved(2026-08-31,换机续跑 t10-t12 收尾)**:25 Controller 深 tag 重构 + menuBindings 四键换前缀;文档仓 A 区一级重排(git-mv / 空分区占位 / LeadPool 双归属副本);11 分区索引 README(手写人工维护);ADR-0024 追加 2026-08-31 修订段。验收:对账 196/196 双向零差、§6 基线 38 目录逐项一致、knife4j 抽查 4 组 + LeadPool 双归属全 OK、全仓 873 单测 0 失败。文档仓路径换机后为 `E:\code\crm-api-docs`
## Not yet specified
- 分区索引 README 的生成方式与更新纪律(手写 vs 小脚本幂等产出;bruno-sync 本身不生成 README)——执行票落地时定
- (已随票 04 落地解决,2026-08-31)分区索引 README:11 个分区手写落盘、人工维护,bruno-sync 不生成;更新纪律 = 分区接口落地/变化后人工同步 README 清单与空缺标注
(原雾区三项随票 01 毕业并入执行票 04 清单:menuBindings 四键前缀同步、空分区占位形态 = folder.bru + README 手工放置、swagger 验收口径 = knife4j 分组即深 tag 原文。)

BIN
.scratch/api-docs-reorg/tmp_app_run.log

Binary file not shown.

56
.scratch/api-docs-reorg/tmp_close_ticket.py

@ -0,0 +1,56 @@
# -*- coding: utf-8 -*-
# 票 04 / t12 关票:填 Answer + Status resolved;map.md 加 Decisions 指针行 + Not yet specified 收口
import sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
TICKET = r'E:\code\crm-backend-matt\.scratch\api-docs-reorg\issues\04-execute-reorg.md'
MAP = r'E:\code\crm-backend-matt\.scratch\api-docs-reorg\map.md'
ANSWER = """## Answer
**2026-08-31 解决t1-t9 旧机会话完成t10-t12 换机后续跑收尾全绿关票**
1. **源码 tags 重构完成**25 Controller 按映射表 §2 逐行落地类级 @Tag 改全路径 / 方法级 @Operation(tags) 深路径 / LeadPool 5 端点双值 tags / SystemController 10 端点补显式 tag / Query 收敛 63 / Collab+Sub 分挂Grep 复核旧前缀零残留回归`mvn test` 全仓 **873 测试 0 失败 0 错误**base 38 / file 84 / auth 210 / dict 51 / rule 134 / preference 16 / lead 131 / opportunity 209BUILD SUCCESS
2. **文档仓重建完成**§4 git-mv 清单全部落地空分区 A1 / A1X / A4 / A5 / A6 folder.bru 占位seq 2/3/6/7/8公共依赖合并文件 + 行政区划调试(验证专用) 保留顶层全量对账tmp_reorg_audit.py本机复跑**src keys 196 / doc keys 196双向差集均 0**
3. **分区索引 README完成**生成方式落地裁决 = **手写**叙述性导航bruno-sync 不生成 README人工维护11 个分区 README.md 已落盘已落地 .bru 清单按二级目录列 + 空缺标注 + 对接工程师示位空分区只写占位说明文档仓 git status = 11 untracked README
4. **ADR-0024 修订完成**文末追加修订2026-08-31api-docs-reorg effort一级对齐 v29 权威树引用 lanhu-tree-v29.md tag 纪律商机规则归 A7 与线索规则双归属URL 回退关闭双归属 = 方法级多值 tags新接口挂载纪律另记机制联动生成器家族退役 / menuBindings 前缀 / 文档仓换机路径回读逐字一致 BOM
5. **机制联动完成**bruno-sync.config.json menuBindings 四键前缀换 `A2 线索管理/`viewType/scopeKey 未动手工生成器家族gen_bruno.py / gen_opp_*.py / gen_v2_*.py / bru_lib.py退役留档bruno-sync 注解驱动通道为唯一权威机制
6. **验收通过**§6 基线目录树逐目录对照全 OK38 目录计数一致 + 5 空分区 folder.bru/README + 接口 .bru 总数 196 = 191 + 5 LeadPool 副本knife4j 抽查 crm-app /v3/api-docs`A0 登录界面` / `A3 商机管理/商机详情/客户` / `A7 后台管理/权限管理/角色管理` / `公共依赖/文件` 4 + LeadPool 5 端点双归属 tags 全部命中按分区索引 README 即可确认各分区接口全集与空缺状态A7 分区空缺客户规则 / 项目规则 / 日志管理
遗留提醒不阻塞关票`A7 后台管理/权限点管理/资源树列表.bru` url 行为历史绝对地址对账脚本已归一化识别下次 bruno-sync 真跑时按结构听源码patch `{{baseUrl}}` 形式换机注记对账脚本 REPO/DOCS 常量已改本机路径bruno-sync.local.json = `{"docsRepoPath": "e:/code/crm-api-docs"}`两仓改动均未提交由用户审查后自行 commit
"""
MAP_DECISION_LINE = "- [04 文档仓重排执行落地](issues/04-execute-reorg.md) — **resolved(2026-08-31,换机续跑 t10-t12 收尾)**:25 Controller 深 tag 重构 + menuBindings 四键换前缀;文档仓 A 区一级重排(git-mv / 空分区占位 / LeadPool 双归属副本);11 分区索引 README(手写人工维护);ADR-0024 追加 2026-08-31 修订段。验收:对账 196/196 双向零差、§6 基线 38 目录逐项一致、knife4j 抽查 4 组 + LeadPool 双归属全 OK、全仓 873 单测 0 失败。文档仓路径换机后为 `E:\\code\\crm-api-docs`。\n"
MAP_OLD_BULLET = "- 分区索引 README 的生成方式与更新纪律(手写 vs 小脚本幂等产出;bruno-sync 本身不生成 README)——执行票落地时定。"
MAP_NEW_BULLET = "- (已随票 04 落地解决,2026-08-31)分区索引 README:11 个分区手写落盘、人工维护,bruno-sync 不生成;更新纪律 = 分区接口落地/变化后人工同步 README 清单与空缺标注。"
# --- 票 04 ---
t = open(TICKET, encoding='utf-8').read()
assert t.count('Status: claimed') == 1, 'ticket status anchor not unique'
t = t.replace('Status: claimed', 'Status: resolved', 1)
anchor = '## Answer\n\n<!-- 解决时填写 -->'
assert anchor in t, 'ticket answer anchor missing'
t = t.replace(anchor, '## Answer\n\n' + ANSWER, 1)
with open(TICKET, 'w', encoding='utf-8', newline='\n') as f:
f.write(t)
# --- map.md ---
m = open(MAP, encoding='utf-8').read()
dec_anchor = '部门管理归属为判断行,执行时可调整。'
assert m.count(dec_anchor) == 1, 'map decisions anchor not unique'
m = m.replace(dec_anchor, dec_anchor + '\n' + MAP_DECISION_LINE.rstrip('\n'), 1)
assert MAP_OLD_BULLET in m, 'map not-yet bullet missing'
m = m.replace(MAP_OLD_BULLET, MAP_NEW_BULLET, 1)
with open(MAP, 'w', encoding='utf-8', newline='\n') as f:
f.write(m)
# --- 回读校验 ---
t2 = open(TICKET, encoding='utf-8').read()
m2 = open(MAP, encoding='utf-8').read()
ok = ('Status: resolved' in t2 and ANSWER in t2 and MAP_DECISION_LINE.rstrip('\n') in m2 and MAP_NEW_BULLET in m2)
print('CLOSE OUT:', 'OK' if ok else 'MISMATCH')
print('ticket chars=', len(t2), ' map chars=', len(m2))
for p in (TICKET, MAP):
raw = open(p, 'rb').read()
print(p.split('\\')[-1], 'BOM=', raw[:3] == b'\xef\xbb\xbf')

43
.scratch/api-docs-reorg/tmp_knife4j_check.py

@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
# 票 04 / t12 验收:knife4j/swagger 抽查 —— OpenAPI tags = 深路径 tag 原文
import json, sys, io, urllib.request
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
URL = 'http://localhost:8080/v3/api-docs'
try:
with urllib.request.urlopen(URL, timeout=15) as r:
spec = json.loads(r.read().decode('utf-8'))
except Exception as e:
print('FETCH FAILED:', e)
raise SystemExit(1)
tags = sorted(t.get('name', '') for t in spec.get('tags', []))
print(f'openapi={spec.get("openapi")} tags={len(tags)}')
for t in tags:
print(' TAG:', t)
# 抽查:(路径, method, 期望 tag)
CHECKS = [
('/api/auth/login/dingtalk', 'post', 'A0 登录界面'),
('/api/opportunity/customer/list', 'get', 'A3 商机管理/商机详情/客户'),
('/api/roles/page', 'post', 'A7 后台管理/权限管理/角色管理'),
('/api/file/upload', 'post', '公共依赖/文件'),
]
ok = True
paths = spec.get('paths', {})
for p, m, expect in CHECKS:
node = paths.get(p, {}).get(m)
got = (node or {}).get('tags', [])
hit = expect in got
ok = ok and hit
print(f'{"OK " if hit else "DIFF"} {m.upper()} {p} -> {got} (期望 {expect})')
# 双归属抽查:LeadPool 5 端点应同时挂两个 tag
pool = [p for p in paths if p.startswith('/api/rule/pool/')]
for p in sorted(pool):
for m, node in paths[p].items():
if m in ('get', 'post', 'put', 'delete', 'patch'):
got = node.get('tags', [])
hit = ('A2 线索管理/线索设置' in got) and ('A7 后台管理/线索规则' in got)
ok = ok and hit
print(f'{"OK " if hit else "DIFF"} {m.upper()} {p} -> {got}')
print('RESULT:', 'ALL MATCH' if ok else 'HAS DIFF')

BIN
.scratch/api-docs-reorg/tmp_mvn_test.log

Binary file not shown.

29
.scratch/api-docs-reorg/tmp_patch_adr0024.py

@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
# 票 04 / t11:ADR-0024 文末追加 2026-08-31 修订段(六要点 + 机制联动),回读校验
import sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
TARGET = r'E:\code\crm-backend-matt\docs\adr\0024-bruno-docs-grouping-by-menu.md'
SECTION = """## 修订(2026-08-31,api-docs-reorg effort)
**一级目录对齐蓝湖原型 A **v29 快照2026-08-31冻结为权威树`.scratch/api-docs-reorg/lanhu-tree-v29.md`文档仓一级目录改为 A0 登录界面 / A1 销售工作台首页/ A1X 工作计划 / A2 线索管理 / A3 商机管理 / A4 客户管理 / A5 项目管理 / A6 数据看板 / A7 后台管理 / 公共依赖 / 调试(验证专用)与原型 A 区分区一一对应二级及更深目录不做重排
1. ** tag 纪律**tag = 完整页面路径一级 = 分区原文二级 = 页面更深 = 页面内分组最深 4 `A7 后台管理/商机规则/公海规则`tag 原文即文档目录路径bruno-sync 身份映射swagger/knife4j 分组同构决策 2 `menuBindings`viewType/scopeKey 绑定不变四键前缀随本修订换为 `A2 线索管理/`
2. **商机规则归 A7**决策 1 页面归属修正v29 A3-4 商机管理设置整体迁至 A7-3-2 商机规则后台为唯一入口阶段模板 / 方案卡模板 / 公海规则三组接口改挂 `A7 后台管理/商机规则/{阶段模板,方案卡模板,公海规则}`线索规则接口LeadPoolController对称裁决为**双归属**`A2 线索管理/线索设置`主本功能页所在+ `A7 后台管理/线索规则`副本A7-3-1 A2-1-5 的引用页
3. **双归属 = 方法级多值 `@Operation(tags)`**单接口挂 N tag 即在 N 个页面文件夹各有一份副本 bruno-sync多值全取幂等输出无需生成器特判
4. **URL 回退通道关闭** tag 端点不再按 URL 兜底分组全部端点必须显式挂深 tagSystemController 10 端点已补挂`system/` 游离顶级目录消灭进集合的端点必挂 tag成为一眼可审纪律
5. **新接口挂载纪律** Controller 一律按页面全路径挂 tag1:1 页面控制器可用类级 `@Tag`跨页 / 双归属用方法级多值 tags类级 `@Tag` 与方法级 `@Operation(tags)` 互斥并存会因多值全取产生双份副本无真实页面入口的接口不挂页签2026-08-17 修订纪律延续
6. **机制联动**bruno-sync 注解驱动通道为唯一权威机制手工生成器家族`gen_bruno.py` / `gen_opp_*.py` / `gen_v2_*.py` / `bru_lib.py`退役留档不再运行 `MENUS` 常量同源义务随之作废分区索引 README 为人工维护件bruno-sync 不生成 README文档仓现路径 `E:\\code\\crm-api-docs`2026-08-31 换机记录前值 `D:\\code\\crm-api-docs` 作废
"""
txt = open(TARGET, encoding='utf-8').read()
txt = txt.rstrip()
new = txt + '\n\n' + SECTION
with open(TARGET, 'w', encoding='utf-8', newline='\n') as f:
f.write(new)
back = open(TARGET, encoding='utf-8').read()
assert back == new, 'MISMATCH after append'
raw = open(TARGET, 'rb').read()
print('OK appended; total chars=', len(back), ' BOM=', raw[:3] == b'\xef\xbb\xbf')
print('--- tail ---')
print('\n'.join(back.splitlines()[-6:]))

4
.scratch/api-docs-reorg/tmp_reorg_audit.py

@ -5,8 +5,8 @@
# @PreAuthorize 嵌套括号 / 裸字符串 tags / 无括号 @PostMapping / @Operation 在 @PostMapping 之后
import os, sys, io, re
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
REPO = r'D:\code\crm-backend-matt'
DOCS = r'D:\code\crm-api-docs'
REPO = r'E:\code\crm-backend-matt'
DOCS = r'E:\code\crm-api-docs'
MODS = ['crm-auth','crm-file','crm-lead','crm-opportunity','crm-rule','crm-preference','crm-dict']
BT = chr(96)
src = {}

20
.scratch/api-docs-reorg/tmp_tree_dump.py

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# t10 前置:导出文档仓明细树(目录 → folder.bru 有无 → .bru 名清单),供分区 README 撰写
import os, sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
DOCS = r'E:\code\crm-api-docs'
rows = []
for dp, dns, fns in os.walk(DOCS):
dns[:] = [d for d in dns if d.lower() != 'environments' and d != '.git']
rel = os.path.relpath(dp, DOCS).replace('\\', '/')
brus = sorted(fn for fn in fns if fn.endswith('.bru') and fn not in ('folder.bru', 'collection.bru'))
rows.append((rel, 'folder.bru' in fns, brus))
rows.sort()
for rel, has_folder, brus in rows:
depth = 0 if rel == '.' else rel.count('/') + 1
indent = '' if rel == '.' else ' ' * depth
print(f'{indent}{rel} [folder.bru={has_folder}] [n={len(brus)}]')
for b in brus:
print(f'{indent} {b}')

57
.scratch/api-docs-reorg/tmp_verify_tree.py

@ -0,0 +1,57 @@
# -*- coding: utf-8 -*-
# 票 04 / t12 验收:文档仓目录树 ↔ mapping-table §6 基线 逐目录 .bru 数对照
import os, sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
DOCS = r'E:\code\crm-api-docs'
BASELINE = {
'A0 登录界面': 5,
'A2 线索管理/我的关注': 10, 'A2 线索管理/我的线索': 14, 'A2 线索管理/线索公海': 12,
'A2 线索管理/线索管理': 15, 'A2 线索管理/线索设置': 5,
'A3 商机管理/商机公海': 1, 'A3 商机管理/商机公海/看板列表': 2,
'A3 商机管理/商机管理': 1, 'A3 商机管理/商机管理/看板列表': 2,
'A3 商机管理/商机详情/主体': 9, 'A3 商机管理/商机详情/勘察': 3,
'A3 商机管理/商机详情/团队': 4, 'A3 商机管理/商机详情/客户': 4,
'A3 商机管理/商机详情/工作计划': 4, 'A3 商机管理/商机详情/方案卡': 5,
'A3 商机管理/商机详情/日志': 1, 'A3 商机管理/商机详情/跟进': 3,
'A3 商机管理/商机详情/附件': 3, 'A3 商机管理/新建商机': 2,
'A3 商机管理/状态流转': 11, 'A3 商机管理/销售机会': 1,
'A3 商机管理/销售机会/看板列表': 2, 'A3 商机管理/销售机会/自定义视图': 4,
'A7 后台管理/商机规则/公海规则': 8, 'A7 后台管理/商机规则/方案卡模板': 9,
'A7 后台管理/商机规则/阶段模板': 8, 'A7 后台管理/数据字典-分组': 5,
'A7 后台管理/数据字典-字典项': 7, 'A7 后台管理/权限点管理': 4,
'A7 后台管理/权限管理/角色管理': 6, 'A7 后台管理/用户管理': 4,
'A7 后台管理/线索规则': 5, 'A7 后台管理/运维': 2, 'A7 后台管理/部门管理': 3,
'公共依赖/文件': 9, '公共依赖/行政区划': 2,
'调试(验证专用)': 1,
}
EMPTY = ['A1 销售工作台(首页)', 'A1X 工作计划', 'A4 客户管理', 'A5 项目管理', 'A6 数据看板']
actual = {}
for dp, dns, fns in os.walk(DOCS):
dns[:] = [d for d in dns if d.lower() != 'environments' and d != '.git']
rel = os.path.relpath(dp, DOCS).replace('\\', '/')
if rel == '.':
continue
n = sum(1 for fn in fns if fn.endswith('.bru') and fn not in ('folder.bru', 'collection.bru'))
if n or rel in BASELINE or rel in EMPTY:
actual[rel] = n
ok = True
for k in sorted(set(BASELINE) | set(actual)):
b, a = BASELINE.get(k), actual.get(k, 0)
flag = 'OK ' if b == a else 'DIFF'
if b != a:
ok = False
print(f'{flag} {k}: baseline={b} actual={a}')
for d in EMPTY:
p = os.path.join(DOCS, d, 'folder.bru')
r = os.path.join(DOCS, d, 'README.md')
print(f'{"OK " if os.path.isfile(p) and os.path.isfile(r) else "DIFF"} 空分区 {d}: folder.bru={os.path.isfile(p)} README={os.path.isfile(r)}')
if not (os.path.isfile(p) and os.path.isfile(r)):
ok = False
total = sum(actual.values())
print(f'total .bru (接口文件) = {total} (期望 196 = 191 + 5 LeadPool 副本)')
if total != 196:
ok = False
print('RESULT:', 'ALL MATCH' if ok else 'HAS DIFF')

205
.scratch/api-docs-reorg/tmp_write_readmes.py

@ -0,0 +1,205 @@
# -*- coding: utf-8 -*-
# 票 04 / t10:11 个分区索引 README 程序化落盘(文档仓在 workspace 外,Bash+python 写入)
# 自校验:写后回读逐字比对,任何丢载荷当场报错
import os, sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
DOCS = r'E:\code\crm-api-docs'
FOOTER = (
"\n---\n\n"
"> 维护纪律:本 README 为人工维护的分区索引;`.bru` 接口文件由 bruno-sync 依据后端 "
"Controller tag 自动同步(只动带 `generated` 标记的文件,结构听源码、表述听人),请勿手改。"
"新接口按页面全路径挂 tag 即自动归位对应目录;一级目录与蓝湖原型 A 区分区一一对应,"
"二级及更深目录不做重排。\n"
)
READMES = {}
READMES['A0 登录界面'] = """# A0 登录界面
> 对应蓝湖原型A0 登录界面分区A0-1 登录A0-3 个人信息
## 已落地接口(5 个,均在分区根目录)
- 钉钉登录 钉钉扫码登录
- 确认顶号登录 单设备登录顶号后的确认
- 注销 退出登录
- 获取当前用户信息 登录态下取当前用户
- 菜单树 登录后拉取前端菜单树随原登录分组整体并入本分区
## 空缺标注
- A0-1 登录页接口已齐
- A0-3 个人信息页暂无独立接口目录当前用户信息经获取当前用户信息获取
## 对接工程师示位
负责登录页与全局壳菜单 / 当前用户的前端工程师只对接本分区 5 个接口其余全部业务接口均需登录后携带 token 调用
"""
READMES['A1 销售工作台(首页)'] = """# A1 销售工作台(首页)
> 对应蓝湖原型A1 销售工作台首页分区A1-1 工作台A1-2 消息中心
**占位分区暂无接口落地** 原型两页对应的后端接口尚未开发接口落地后由 bruno-sync 按源码 tag 自动同步至本分区并同步更新本 README
"""
READMES['A1X 工作计划'] = """# A1X 工作计划
> 对应蓝湖原型A1X 工作计划分区v29 新增A1X-1 工作日历A1X-2 计划管理A1X-3 出差与拜访
**占位分区暂无接口落地** 原型页面为 v29 新增后端接口尚未开发
注意现有工作计划类接口新增 / 编辑 / 删除 / 列表当前归属商机详情页 `A3 商机管理/商机详情/工作计划/`A1X 页面联调如需独立的工作计划接口另行裁决挂载
"""
READMES['A2 线索管理'] = """# A2 线索管理
> 对应蓝湖原型A2 线索管理分区A2-1 线索公海 / 我的线索 / 我的关注 / 线索管理 / 线索设置
## 已落地接口(56 个 / 5 个页面目录)
- **我的线索/**14新建线索编辑线索删除线索转商机释放线索批量释放提交反馈保存反馈草稿线索分页线索详情历史记录视图统计卡片读取列偏好保存列偏好
- **线索公海/**12领取线索批量领取关注线索批量关注取消关注释放线索线索分页线索详情历史记录视图统计卡片读取列偏好保存列偏好
- **我的关注/**10领取线索批量领取取消关注批量取关线索分页线索详情历史记录视图统计卡片读取列偏好保存列偏好
- **线索管理/**15新建线索激活线索批量激活分配线索到池批量分配到池分配线索到销售批量分配到销售删除线索批量删除线索分页线索详情历史记录视图统计卡片读取列偏好保存列偏好
- **线索设置/**5公海池分页列表公海池详情新建编辑公海池删除公海池批量删除公海池
## 空缺标注
原型 A2-1 下五个功能页均有接口落地
## 对接工程师示位
线索模块前端按页面目录联调列表页四选一我的线索 / 线索公海 / 我的关注 / 线索管理每个目录内含该页全集分页详情历史统计卡片与列偏好公海池配置页用线索设置同一接口出现在多个目录是按页面归属的多副本内容一致取所在页面那份联调即可线索设置 `A7 后台管理/线索规则/` 另有后台入口副本双归属同源自动同步
"""
READMES['A3 商机管理'] = """# A3 商机管理
> 对应蓝湖原型A3 商机管理分区A3-0 最近访问 / A3-1 销售机会 / A3-2 商机管理 / A3-3 商机公海 + 说明页
## 已落地接口(62 个)
- **新建商机/**2新建商机可关联线索下拉
- **销售机会/**1商机分页
- 销售机会/看板列表/2看板阶段卡片看板阶段汇总
- 销售机会/自定义视图/4自定义视图列表保存自定义视图删除自定义视图设为默认视图
- **商机管理/**1商机分页
- 商机管理/看板列表/2看板阶段卡片看板阶段汇总
- **商机公海/**1商机分页
- 商机公海/看板列表/2看板阶段卡片看板阶段汇总
- **状态流转/**11领取商机批量领取分配商机批量分配移交商机抛公海暂缓取消暂缓关闭商机批量关闭重启商机
- **商机详情/**根目录无文件接口全在子目录
- 主体/9商机详情编辑商机切换阶段阶段推进历史阶段推进指引关注商机批量关注取关商机上报访问
- 客户/4客户列表候选客户搜索添加关联客户设为主要意向客户
- 团队/4团队成员列表批量添加团队成员移除团队成员编辑团队成员
- 方案卡/5方案卡列表方案卡详情保存方案卡提交方案卡可选模板版本
- 跟进/3新增跟进删除跟进跟进分页
- 附件/3新增附件删除附件附件列表
- 日志/1操作日志分页
- 勘察/3新增勘察删除勘察勘察分页
- 工作计划/4新增工作计划编辑工作计划删除工作计划工作计划列表
## 空缺标注
原型 A3 各功能页均有接口落地说明原型A3-0 最近访问复用销售机会分页端点viewType=RECENT不设独立接口目录
## 对接工程师示位
商机模块前端按页面目录联调三个列表页销售机会 / 商机管理 / 商机公海各自含分页与看板子目录商机详情页接口集中在商机详情/下按页签分目录主体 / 客户 / 团队 / 方案卡 / 跟进 / 附件 / 日志 / 勘察 / 工作计划商机全生命周期操作领取 / 分配 / 移交 / 关闭等状态流转/
"""
READMES['A4 客户管理'] = """# A4 客户管理
> 对应蓝湖原型A4 客户管理分区A4-1 客户公海 / A4-2 客户总览 / A4-3 我的客户 / A4-4 客户详情 / A4-5 联系人 / A4-6 客户查重 / A4-7 客户交割
**占位分区暂无接口落地** 原型七个页面组对应的后端接口尚未开发接口落地后由 bruno-sync 按源码 tag 自动同步至本分区并同步更新本 README
"""
READMES['A5 项目管理'] = """# A5 项目管理
> 对应蓝湖原型A5 项目管理分区A5-1 项目管理看板 / 分屏 / 列表视图我的项目项目统计
**占位分区暂无接口落地** 原型页面对应的后端接口尚未开发接口落地后由 bruno-sync 按源码 tag 自动同步至本分区并同步更新本 README
"""
READMES['A6 数据看板'] = """# A6 数据看板
> 对应蓝湖原型A6 数据看板分区A6-1 数据看板运营看板 / 客户看板 / 营销看板
**占位分区暂无接口落地** 原型三个看板对应的后端接口尚未开发接口落地后由 bruno-sync 按源码 tag 自动同步至本分区并同步更新本 README
"""
READMES['A7 后台管理'] = """# A7 后台管理
> 对应蓝湖原型A7 后台管理分区A7-1 用户管理 / A7-2 权限管理 / A7-3 业务规则 / A7-4 日志管理 / A7-5 系统设置
## 已落地接口(61 个)
- **用户管理/**4用户分页用户统计分配用户角色分配用户部门
- **部门管理/**3部门树保存部门删除部门
- **权限管理/角色管理/**6角色分页角色详情新增编辑角色删除角色分配角色权限可配数据权限模块
- **权限点管理/**4资源树列表新增编辑资源节点删除资源节点上传图标
- **线索规则/**5公海池分页列表公海池详情新建编辑公海池删除公海池批量删除公海池`A2 线索管理/线索设置/` 的后台入口副本双归属同源同步
- **商机规则/公海规则/**8公海规则分页公海规则详情保存公海规则草稿发布公海规则停用公海规则删除公海规则复制公海规则公海规则版本列表
- **商机规则/方案卡模板/**9方案卡模板分页方案卡模板详情保存方案卡模板草稿发布方案卡模板停用方案卡模板删除方案卡模板复制方案卡模板方案卡模板版本列表系统字段库列表
- **商机规则/阶段模板/**8阶段模板分页阶段模板详情保存阶段模板草稿发布阶段模板停用阶段模板删除阶段模板复制阶段模板阶段模板版本列表
- **数据字典-分组/**5分组分页新建编辑分组分组启停删除分组启用分组列表
- **数据字典-字典项/**7字典项分页新建编辑字典项字典项启停设为默认项删除字典项强制删除字典项启用项列表
- **运维/**2管理员角色配置钉钉组织同步
## 空缺标注
- A7-3 业务规则的客户规则项目规则两页暂无接口
- A7-4 日志管理用户操作日志 / 登录日志 / 批量操作日志暂无接口
## 对接工程师示位
后台管理端前端按二级目录联调用户 / 部门 / 权限角色 + 权限点为账号权限体系商机规则三目录对应原型 A7-3-2 v29 起由 A3 迁入后台为唯一入口数据字典两目录对应 A7-5-1运维含管理员角色配置与钉钉组织同步对应 A7-1-2 同步任务部门管理无独立原型页接口供用户管理分配部门与数据权限配置消费
"""
READMES['公共依赖'] = """# 公共依赖
> 跨业务模块共用的基础资源接口文件行政区划供各分区页面组合调用
## 已落地接口(11 个)
- **文件/**9直传上传分片初始化上传分片完成分片删除文件下载文件文件详情预览地址缩略图
- **行政区划/**2按层级查区划按上级查子区划
## 空缺标注
文件与行政区划即当前全部公共资源
## 对接工程师示位
不需要单独对接本分区各业务页面附件上传 / 下载 / 预览地址选择等按需引用文件接口含直传与分片两条上传通路在线预览经预览地址接口取跳转地址
"""
READMES['调试(验证专用)'] = """# 调试(验证专用)
> 验证环境专用辅助接口不对应任何原型页面生产前端请勿调用
## 已落地接口(1 个)
- 签发调试token 为自动化验证 / 联调签发调试用 token仅在 verify 运行 profile 下开放
## 空缺标注
不适用
"""
count = 0
for d, body in READMES.items():
path = os.path.join(DOCS, d, 'README.md')
full = body + FOOTER
with open(path, 'w', encoding='utf-8', newline='\n') as f:
f.write(full)
back = open(path, encoding='utf-8-sig').read() # -sig 顺带暴露意外 BOM(BOM 会被读掉但不等于存在)
raw = open(path, 'rb').read()
bom = raw[:3] == b'\xef\xbb\xbf'
if back != full:
raise SystemExit('MISMATCH: ' + path)
print('OK ', d, ' chars=', len(full), ' BOM=', bom)
count += 1
print('total README files written:', count)

41
.scratch/lanhu-latest/dump-2-4-selects.mjs

@ -0,0 +1,41 @@
// 提取 a3-1-1-2-4 添加关联客户弹窗全部 select 选项 + 快速创建客户区结构
import fs from 'node:fs';
const OSS = 'https://lanhu-axure-file.oss-cn-beijing.aliyuncs.com/';
const manifest = JSON.parse(fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/axure-v29.json', 'utf8'));
const page = 'a3-1-1-2-4________.html';
const html = await (await fetch(OSS + manifest.pages[page].html.sign_md5, { headers: { 'User-Agent': 'Mozilla/5.0' } })).text();
fs.writeFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4_raw.html', html, 'utf8');
const decode = (s) => s
.replace(/&#x([0-9A-Fa-f]+);/g, (_, h) => String.fromCodePoint(parseInt(h, 16)))
.replace(/&#(\d+);/g, (_, d) => String.fromCodePoint(parseInt(d, 10)))
.replace(/&nbsp;/g, ' ');
// 1) 全部 select 及其选项
const sels = html.match(/<select id="(u\d+)_input"[\s\S]*?<\/select>/g) || [];
console.log('=== 全部下拉框(含选项)===');
for (const s of sels) {
const id = s.match(/id="(u\d+)_input"/)[1];
const opts = (s.match(/<option[^>]*>([\s\S]*?)<\/option>/g) || [])
.map(o => decode(o.replace(/<\/?option[^>]*>/g, '').trim()));
console.log(`${id}: ${opts.join(' / ')}`);
}
// 2) u418「快速创建客户」之后到需求批注表之前的控件(快速创建区结构)
console.log('\n=== u405-u465 控件文本(快速创建客户区)===');
const re = /<!--\s*(.*?)\s*-->\s*<div id="(u\d+)"[^>]*>/g;
const items = [];
let m;
while ((m = re.exec(html)) !== null) {
const after = html.slice(m.index, m.index + 1000);
const tr = after.match(new RegExp(`id="${m[2]}_text"[^>]*>[\\s\\S]*?</div>`));
let text = '';
if (tr) text = (tr[0].match(/<p><span>([\s\S]*?)<\/span><\/p>/g) || [])
.map(p => decode(p.replace(/<\/?p>/g, '').replace(/<\/?span>/g, ''))).join(' | ');
items.push({ id: m[2], text: text.trim() });
}
for (const i of items) {
const n = parseInt(i.id.slice(1));
if (n >= 405 && n <= 470 && i.text) console.log(`${i.id} | ${i.text.slice(0, 90)}`);
}

33
.scratch/lanhu-latest/dump-form-section.mjs

@ -0,0 +1,33 @@
// 下钻新增商机页原始 HTML:dump 表单客户信息区(u550-u600)与需求批注区(u650-u695)的控件原始片段
import fs from 'node:fs';
const OSS = 'https://lanhu-axure-file.oss-cn-beijing.aliyuncs.com/';
const manifest = JSON.parse(fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/axure-v29.json', 'utf8'));
const page = 'a3-1-1-2-1__新增_编辑商机.html';
const url = OSS + manifest.pages[page].html.sign_md5;
const html = await (await fetch(url, { headers: { 'User-Agent': 'Mozilla/5.0' } })).text();
fs.writeFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_raw.html', html, 'utf8');
console.log('saved raw html, size =', html.length);
// 提取所有控件注释块 <!-- 名称 (类型) --> + div id
const re = /<!--\s*(.*?)\s*-->\s*<div id="(u\d+)"[^>]*>/g;
const byId = new Map();
let m;
while ((m = re.exec(html)) !== null) byId.set(m[2], { comment: m[1], index: m.index });
// dump 指定 id 区间的控件:注释 + 后续 350 字符(截断)
const dump = (from, to) => {
for (let i = from; i <= to; i++) {
const id = 'u' + i;
const e = byId.get(id);
if (!e) continue;
const seg = html.slice(e.index, e.index + 350).replace(/\s+/g, ' ');
console.log(`\n--- ${id} :: ${e.comment}`);
console.log(seg);
}
};
console.log('\n===== 客户信息表单区 u560-u600 =====');
dump(560, 600);
console.log('\n===== 需求批注区 u645-u695 =====');
dump(645, 695);

17
.scratch/lanhu-latest/extract-2-4-annotations.mjs

@ -0,0 +1,17 @@
// 提取 a3-1-1-2-4 添加关联客户弹窗批注正文(内容单元格 u428/u431/u439/u447/u455/u463)
import fs from 'node:fs';
const html = fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4_raw.html', 'utf8');
const decode = (s) => s
.replace(/&#x([0-9A-Fa-f]+);/g, (_, h) => String.fromCodePoint(parseInt(h, 16)))
.replace(/&#(\d+);/g, (_, d) => String.fromCodePoint(parseInt(d, 10)))
.replace(/&nbsp;/g, ' ');
for (const id of ['u428', 'u431', 'u439', 'u447', 'u455', 'u463']) {
const m = html.match(new RegExp(`<div id="${id}"[\\s\\S]*?id="${id}_text"[\\s\\S]*?</div>\\s*</div>`));
if (!m) { console.log(`\n===== ${id}: NOT FOUND =====`); continue; }
const paras = (m[0].match(/<p><span[^>]*>[\s\S]*?<\/span><\/p>/g) || [])
.map(p => decode(p.replace(/<\/?p>/g, '').replace(/<\/?span[^>]*>/g, '')).trim())
.filter(p => p && p !== ' ');
console.log(`\n===== ${id} =====\n${paras.join('\n')}`);
}

22
.scratch/lanhu-latest/extract-annotations.mjs

@ -0,0 +1,22 @@
// 提取新增商机页需求批注区关键单元格的完整文本(解码实体)
import fs from 'node:fs';
const html = fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_raw.html', 'utf8');
const decode = (s) => s
.replace(/&#x([0-9A-Fa-f]+);/g, (_, h) => String.fromCodePoint(parseInt(h, 16)))
.replace(/&#(\d+);/g, (_, d) => String.fromCodePoint(parseInt(d, 10)))
.replace(/&nbsp;/g, ' ').replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&quot;/g, '"');
// 需求批注六个小节的内容单元格(新建商机皮肤)
const IDS = ['u654', 'u657', 'u665', 'u673', 'u681', 'u689'];
for (const id of IDS) {
// 匹配整个控件 div(含 _text 的嵌套 p),贪婪到该 div 结束前抓全部 <p>
const re = new RegExp(`<div id="${id}"[\\s\\S]*?id="${id}_text"[\\s\\S]*?</div>\\s*</div>`);
const m = html.match(re);
if (!m) { console.log(`\n### ${id}: NOT FOUND`); continue; }
const paras = (m[0].match(/<p><span[^>]*>[\s\S]*?<\/span><\/p>/g) || [])
.map(p => decode(p.replace(/<\/?p>/g, '').replace(/<\/?span[^>]*>/g, '')))
.join('\n');
console.log(`\n===== ${id} =====\n${paras}`);
}

75
.scratch/lanhu-latest/fetch-v29-customer-pages.mjs

@ -0,0 +1,75 @@
// 批量拉取 v29 商机模块客户触点页 HTML(OSS 公开直下)并提取文本
// 用法: node fetch-v29-customer-pages.mjs
// 产物: .scratch/lanhu-latest/v29-customer-pages/<page>.txt(id | 类型 | 名称 | 文本 全量)
import fs from 'node:fs';
import path from 'node:path';
const OSS = 'https://lanhu-axure-file.oss-cn-beijing.aliyuncs.com/';
const MANIFEST = 'e:/code/crm-backend-matt/.scratch/lanhu-latest/axure-v29.json';
const OUT_DIR = 'e:/code/crm-backend-matt/.scratch/lanhu-latest/v29-customer-pages';
// 商机侧客户触点页 + A4 详情(跳转目标证据)
const PAGES = [
'a3-1-1-2-4________.html', // 添加关联客户弹窗 ★
'a3-1-1-1-2(个人)商机详情_客户信息.html', // 客户信息 Tab ★
'a3-1-1-2-1__新增_编辑商机.html', // 新增商机表单(意向客户)
'a3-1-1-2-2_____.html', // 写跟进弹窗
'a3-1-1-2-3_______.html', // 新增方案卡弹窗
'a3-1-1-1-3(个人)商机详情_方案卡.html', // 方案卡列表
'a3-1-1-1-3-1______.html', // 编辑方案卡
'a3-1-1_销售机会列表.html', // 列表列头
'a3-1-1-1-1_(个人)商机详情_概览.html', // 详情概览
'a4-4-1_客户详情(客户信息).html', // A4 客户详情(跳转目标)
];
const decode = (s) => s
.replace(/&#x([0-9A-Fa-f]+);/g, (_, h) => String.fromCodePoint(parseInt(h, 16)))
.replace(/&#(\d+);/g, (_, d) => String.fromCodePoint(parseInt(d, 10)))
.replace(/&nbsp;/g, ' ').replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&quot;/g, '"');
// 与 extract-html-text.mjs 同算法,窗口放宽到 1000 字符(弹窗/表格控件文本较长)
function extract(html) {
const re = /<!--\s*(.*?)\s*-->\s*<div id="(u\d+)"[^>]*>/g;
const items = [];
let m;
while ((m = re.exec(html)) !== null) {
const [, comment, id] = m;
const tm = comment.match(/^(.*?)\s*[((](.+?)[))]$/);
const name = tm ? tm[1] : comment;
const type = tm ? tm[2] : '其他';
const after = html.slice(m.index, m.index + 1000);
const tr = after.match(new RegExp(`id="${id}_text"[^>]*>[\\s\\S]*?</div>`));
let text = '';
if (tr) {
text = (tr[0].match(/<p><span>([\s\S]*?)<\/span><\/p>/g) || [])
.map(p => decode(p.replace(/<\/?p>/g, '').replace(/<\/?span>/g, '')))
.join(' | ');
}
items.push({ id, name: decode(name), type: decode(type), text: text.trim() });
}
return items;
}
const manifest = JSON.parse(fs.readFileSync(MANIFEST, 'utf8'));
fs.mkdirSync(OUT_DIR, { recursive: true });
for (const page of PAGES) {
const entry = manifest.pages?.[page];
if (!entry?.html?.sign_md5) { console.log(`MISS ${page} (清单无条目)`); continue; }
const url = OSS + entry.html.sign_md5;
try {
const res = await fetch(url, { headers: { 'User-Agent': 'Mozilla/5.0' } });
if (!res.ok) { console.log(`FAIL ${page} HTTP ${res.status}`); continue; }
const html = await res.text();
const items = extract(html);
const out = items.filter(i => i.text)
.map(i => `${i.id} | ${i.type} | ${i.name} | ${i.text}`)
.join('\n');
const outFile = path.join(OUT_DIR, page.replace(/\.html$/, '.txt'));
fs.writeFileSync(outFile, `# ${page}\n# 控件 ${items.length},有文本 ${items.filter(i => i.text).length}\n\n${out}\n`, 'utf8');
console.log(`OK ${page} 控件=${items.length} 文本=${items.filter(i => i.text).length}`);
} catch (e) {
console.log(`ERR ${page} ${String(e).slice(0, 120)}`);
}
}
console.log('done ->', OUT_DIR);

8
.scratch/lanhu-latest/list-a3-pages.mjs

@ -0,0 +1,8 @@
// 列出 v29 清单全部 a3-* 页(商机模块全量),核对弹窗页(添加关联客户/写跟进等)去向
import fs from 'node:fs';
const manifest = JSON.parse(fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/axure-v29.json', 'utf8'));
const names = Object.keys(manifest.pages ?? {}).filter(n => n.startsWith('a3'));
for (const n of names.sort()) console.log(n);
console.log('--- total a3 pages:', names.length);

18
.scratch/lanhu-latest/list-customer-pages.mjs

@ -0,0 +1,18 @@
// 列出 v29 清单中商机模块客户相关页 + 全部 A3/A4 页名(供人工核对范围)
import fs from 'node:fs';
const manifest = JSON.parse(fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/axure-v29.json', 'utf8'));
const pages = manifest.pages ?? {};
const names = Object.keys(pages);
// 客户依赖关键词(商机侧触点)
const KW = ['客户', '商机', '跟进', '方案卡'];
const customerKw = ['客户'];
const hit = names.filter(n => KW.some(k => n.includes(k)));
const customerOnly = names.filter(n => customerKw.every(k => n.includes(k)));
console.log('=== 全部页数:', names.length, '===');
console.log('\n=== 含「客户」的页(全部)===');
for (const n of customerOnly.sort()) console.log(' ', n);
console.log('\n=== 商机/跟进/方案卡相关页(排除纯客户页)===');
for (const n of hit.filter(n => !customerOnly.includes(n)).sort()) console.log(' ', n);

19
.scratch/lanhu-latest/list-u665-fields.mjs

@ -0,0 +1,19 @@
// 列出 u665(字段说明)中全部字段编号+名称,核对省略段是否还有客户相关字段
import fs from 'node:fs';
const html = fs.readFileSync('e:/code/crm-backend-matt/.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_raw.html', 'utf8');
const decode = (s) => s.replace(/&#x([0-9A-Fa-f]+);/g, (_, h) => String.fromCodePoint(parseInt(h, 16)));
const m = html.match(/<div id="u665"[\s\S]*?id="u665_text"[\s\S]*?<\/div>\s*<\/div>/);
if (!m) { console.log('NOT FOUND'); process.exit(0); }
const paras = (m[0].match(/<p><span[^>]*>[\s\S]*?<\/span><\/p>/g) || [])
.map(p => decode(p.replace(/<\/?p>/g, '').replace(/<\/?span[^>]*>/g, '')).trim());
let cur = null;
for (const p of paras) {
const fm = p.match(/^(\d+)\.\s*(.+)$/);
if (fm) { cur = fm[1] + '. ' + fm[2]; console.log(cur); }
else if (cur && p.length > 0 && !p.startsWith(' ')) {
console.log(' ' + p.slice(0, 80));
}
}

343
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-1_(个人)商机详情_概览.txt

@ -0,0 +1,343 @@
# a3-1-1-1-1_(个人)商机详情_概览.html
# 控件 660,有文本 340
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u296 | 矩形 | Unnamed | 跟进记录
u297 | 矩形 | Unnamed | 查看更多  >
u304 | 矩形 | Unnamed | 查看更多  >
u305 | 矩形 | Unnamed | 近期工作计划
u307 | 单元格 | Unnamed | 项目名称
u308 | 单元格 | Unnamed | 金山谷智慧园区项目
u309 | 单元格 | Unnamed | 项目类型
u310 | 单元格 | Unnamed | 新建
u311 | 单元格 | Unnamed | 项目行业
u312 | 单元格 | Unnamed | 园区
u313 | 单元格 | Unnamed | 项目阶段
u314 | 单元格 | Unnamed | 标前设计
u315 | 单元格 | Unnamed | 项目区域
u316 | 单元格 | Unnamed | 广州市番禺区
u317 | 单元格 | Unnamed | 招标形式
u318 | 单元格 | Unnamed | GC(工程)
u319 | 单元格 | Unnamed | 当前负责人
u320 | 单元格 | Unnamed | 张三
u321 | 单元格 | Unnamed | 项目属地
u322 | 单元格 | Unnamed | 本地项目
u323 | 单元格 | Unnamed | 所属团队
u324 | 单元格 | Unnamed | 特战团队
u325 | 单元格 | Unnamed | 所属部门
u326 | 单元格 | Unnamed | 粤江战队-广东15部
u327 | 单元格 | Unnamed | 项目金额
u328 | 单元格 | Unnamed | 648.00  万元
u331 | 单元格 | Unnamed | 项目概况
u336 | 矩形 | Unnamed | 【微信】
u339 | 矩形 | Unnamed | 基础信息
u340 | 矩形 | Unnamed | >
u346 | 矩形 | Unnamed | 【电话】
u347 | 矩形 | Unnamed | 电话沟通记录
u348 | 矩形 | Unnamed | 跟进日期  2025-10-30 | 张三 | 2025-11-22 | 16:58:32
u349 | 矩形 | Unnamed | 微信沟通记录
u350 | 矩形 | Unnamed | 跟进日期  2025-11-22 | 张三 | 2025-11-22 | 16:58:32
u353 | 矩形 | Unnamed | 【拜访】
u354 | 矩形 | Unnamed | 现场拜访沟通简单记录
u355 | 矩形 | Unnamed | 跟进日期  2025-9-30 | 张三 | 2025-11-22 | 16:58:32
u358 | 矩形 | Unnamed | 方案卡
u359 | 矩形 | Unnamed | 查看更多  >
u361 | 单元格 | Unnamed | 客户名称
u362 | 单元格 | Unnamed | 湖南天亮建筑科技有限公司
u363 | 单元格 | Unnamed | 客户类型
u364 | 单元格 | Unnamed | 机电总包
u365 | 单元格 | Unnamed | 战略VIP客户等级
u366 | 单元格 | Unnamed | --
u367 | 单元格 | Unnamed | 已成交VIP客户等级
u368 | 单元格 | Unnamed | --
u369 | 单元格 | Unnamed | 客户联系人
u370 | 单元格 | Unnamed | 张**
u371 | 单元格 | Unnamed | 客户联系电话
u372 | 单元格 | Unnamed | 136******46
u373 | 单元格 | Unnamed | 项目阶段
u374 | 单元格 | Unnamed | 标前改单
u375 | 单元格 | Unnamed | 招标形式
u376 | 单元格 | Unnamed | GC(工程)
u377 | 单元格 | Unnamed | 是否有看现场(是/否)
u378 | 单元格 | Unnamed | 是
u379 | 单元格 | Unnamed | 是否与客户进行电话沟通(是/否)
u380 | 单元格 | Unnamed | 是
u381 | 单元格 | Unnamed | 现场勘察资料(系统自动提取)
u383 | 单元格 | Unnamed | 是否百万级项目(是/否)
u384 | 单元格 | Unnamed | 是
u385 | 单元格 | Unnamed | 预算是否明确
u386 | 单元格 | Unnamed | 是
u387 | 单元格 | Unnamed | 方案预算金额
u388 | 单元格 | Unnamed | 238.00 万元
u389 | 单元格 | Unnamed | 预计成交概率
u390 | 单元格 | Unnamed | 60%
u391 | 单元格 | Unnamed | 预计投标时间
u392 | 单元格 | Unnamed | --
u393 | 单元格 | Unnamed | 设计配置
u394 | 单元格 | Unnamed | 按清单配置
u395 | 单元格 | Unnamed | 品牌要求
u396 | 单元格 | Unnamed | itc,ts系列
u397 | 单元格 | Unnamed | 是否可换品牌
u398 | 单元格 | Unnamed | 否
u399 | 单元格 | Unnamed | 投标编号
u400 | 单元格 | Unnamed | --
u401 | 单元格 | Unnamed | 标底方
u402 | 单元格 | Unnamed | --
u405 | 单元格 | Unnamed | 客户需求描述
u409 | 单元格 | Unnamed | 业务需求
u410 | 单元格 | Unnamed | 中配即可
u449 | 单元格 | Unnamed | 方案卡填写时间
u450 | 单元格 | Unnamed | --
u451 | 单元格 | Unnamed | 期望方案设计完成时间
u452 | 单元格 | Unnamed | --
u453 | 单元格 | Unnamed | 创建人
u454 | 单元格 | Unnamed | --
u455 | 单元格 | Unnamed | 创建时间
u456 | 单元格 | Unnamed | --
u457 | 矩形 | Unnamed | 对方案的先进性及前瞻性的要求(也就是要不要设计一些最新的相关的新系统进去)
u458 | 矩形 | Unnamed | --
u459 | 矩形 | Unnamed | 清单参数(是否是我司产品参数-工程师需要确认,是否是有品牌?)
u460 | 矩形 | Unnamed | 清单参数是否能改
u461 | 矩形 | Unnamed | --
u462 | 矩形 | Unnamed | --
u463 | 矩形 | Unnamed | 根据现有清单匹配产品参数并提供调整建议。
u464 | 矩形 | Unnamed | 客户特殊要求(补充说明,备注说明)
u465 | 矩形 | Unnamed | --
u468 | 矩形 | Unnamed | 面访客户,最好能组上饭局。
u470 | 矩形 | Unnamed | 2026-07-01 10:30  <span style="color:#D9001B;">距离开始还有3天2小时7分
u472 | 矩形 | Unnamed | 用户1
u474 | 矩形 | Unnamed | 至少电话沟通一次,以添加微信,约拜访时间为前期接洽目标。
u476 | 矩形 | Unnamed | 2026-06-01 16:30  <span style="color:#D9001B;">超时未完成14天13小时14分
u481 | 矩形 | Unnamed | >
u482 | 矩形 | Unnamed | >
u485 | 矩形 | Unnamed | 客户情况
u486 | 矩形 | Unnamed | 查看更多  >
u487 | 矩形 | Unnamed | >
u489 | 单元格 | Unnamed | 项目甲方
u490 | 单元格 | Unnamed | 招商局物业管理广州分公司
u491 | 单元格 | Unnamed | 甲方联系人
u492 | 单元格 | Unnamed | 王主任
u493 | 单元格 | Unnamed | 联系人职务
u494 | 单元格 | Unnamed | 招商主任
u495 | 单元格 | Unnamed | 联系方式
u496 | 单元格 | Unnamed | 136******46
u497 | 单元格 | Unnamed | 意向客户
u498 | 单元格 | Unnamed | 广州亚东智能科技有限公司
u499 | 单元格 | Unnamed | 关键联系人
u500 | 单元格 | Unnamed | 张经理
u501 | 单元格 | Unnamed | 联系人职务
u502 | 单元格 | Unnamed | 客户经理
u503 | 单元格 | Unnamed | 联系方式
u504 | 单元格 | Unnamed | 138******12
u505 | 单元格 | Unnamed | 客户B
u506 | 单元格 | Unnamed | 广东轨交通信工程有限公司
u507 | 单元格 | Unnamed | 关键联系人
u508 | 单元格 | Unnamed | 小马
u509 | 单元格 | Unnamed | 联系人职务
u510 | 单元格 | Unnamed | 业务代表
u511 | 单元格 | Unnamed | 联系方式
u512 | 单元格 | Unnamed | 138******12
u513 | 矩形 | Unnamed | 中配。主要从参数基础上控制配置成本,支持后续报价。
u514 | 矩形 | Unnamed | 主要意向客户
u515 | 矩形 | Unnamed | 需要看业务方有无 | 标准化SOP需要借助系统落地,否则该模块可删减 | <br> | (简易开发,可能删减)
u516 | 矩形 | Unnamed | 编辑
u518 | 矩形 | Unnamed | 删除
u520 | 矩形 | Unnamed | 标记完成
u521 | 矩形 | Unnamed | 编辑
u523 | 矩形 | Unnamed | 删除
u525 | 矩形 | Unnamed | 标记完成
u527 | 矩形 | Unnamed | 销售机会
u530 | 单元格 | Unnamed | 需求
u531 | 单元格 | Unnamed | 需求说明
u532 | 单元格 | Unnamed | 变更记录
u533 | 单元格 | Unnamed | 1、开发说明
u536 | 单元格 | Unnamed | 2、详细说明
u539 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u541 | 单元格 | Unnamed | 需求
u542 | 单元格 | Unnamed | 需求说明
u543 | 单元格 | Unnamed | 变更记录
u544 | 单元格 | Unnamed | 3、字段说明
u547 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u549 | 单元格 | Unnamed | 需求
u550 | 单元格 | Unnamed | 需求说明
u551 | 单元格 | Unnamed | 变更记录
u552 | 单元格 | Unnamed | 4、交互说明
u555 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u557 | 单元格 | Unnamed | 需求
u558 | 单元格 | Unnamed | 需求说明
u559 | 单元格 | Unnamed | 变更记录
u560 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u563 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u565 | 单元格 | Unnamed | 需求
u566 | 单元格 | Unnamed | 需求说明
u567 | 单元格 | Unnamed | 变更记录
u568 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u571 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u573 | 单元格 | Unnamed | 需求
u574 | 单元格 | Unnamed | 需求说明
u575 | 单元格 | Unnamed | 变更记录
u576 | 单元格 | Unnamed | 3、字段说明
u579 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u581 | 单元格 | Unnamed | 需求
u582 | 单元格 | Unnamed | 需求说明
u583 | 单元格 | Unnamed | 变更记录
u584 | 单元格 | Unnamed | 3、字段说明
u587 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u589 | 单元格 | Unnamed | 需求
u590 | 单元格 | Unnamed | 需求说明
u591 | 单元格 | Unnamed | 变更记录
u592 | 单元格 | Unnamed | 3、字段说明
u595 | 矩形 | Unnamed | 商机管理-商机详情_概览页签
u599 | 矩形 | Unnamed | 面访客户,最好能组上饭局。
u601 | 矩形 | Unnamed | 2026-07-01 10:30  <span style="color:#D9001B;">距离开始还有3天2小时7分
u603 | 矩形 | Unnamed | 用户1
u604 | 矩形 | Unnamed | 取消
u605 | 矩形 | Unnamed | 保存
u607 | 矩形 | Unnamed | 选中工作计划已进入编辑模式
u611 | 矩形 | Unnamed | 选中工作计划已退出编辑模式
u615 | 矩形 | Unnamed | 删除工作计划
u617 | 矩形 | Unnamed | 取消
u618 | 矩形 | Unnamed | 确定
u619 | 矩形 | Unnamed | 确定删除已选中的工作计划?
u621 | 矩形 | Unnamed | 工作计划标记完成
u623 | 矩形 | Unnamed | 取消
u624 | 矩形 | Unnamed | 确定
u625 | 矩形 | Unnamed | 确定标记完成选中的工作计划?
u626 | 矩形 | Unnamed | 【脱敏查看】 | <br> | 点击查看后可阅读完整联系号码 | <br> | 注意埋点》》系统需记录操作用户及操作时间
u631 | 矩形 | Unnamed | 查看更多  >
u632 | 矩形 | Unnamed | 近期工作计划
u634 | 矩形 | Unnamed | --;<span style="color:#7F7F7F;">引用自线索转商机场景字段文本【备注】
u636 | 单元格 | Unnamed | 需求
u637 | 单元格 | Unnamed | 需求说明
u638 | 单元格 | Unnamed | 变更记录
u639 | 单元格 | Unnamed | 1、定位与页面
u642 | 单元格 | Unnamed | 2、页眉资产卡片与动态操作栏
u645 | 单元格 | Unnamed | 3、推进节点进度条与子页签切换
u648 | 单元格 | Unnamed | 4、左侧信息汇聚面板(核心区)
u651 | 单元格 | Unnamed | 5、右侧跟进记录时间轴预览
u654 | 单元格 | Unnamed | 6、数据空值处理与字段说明
u657 | 形状 | Unnamed | 商机详情_概览页(需求批注)-简版

198
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-2(个人)商机详情_客户信息.txt

@ -0,0 +1,198 @@
# a3-1-1-1-2(个人)商机详情_客户信息.html
# 控件 390,有文本 195
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u295 | 矩形 | Unnamed | 客户信息
u296 | 矩形 | Unnamed | +  添加关联客户
u298 | 单元格 | Unnamed | 客户名称
u299 | 单元格 | Unnamed | 客户类型
u300 | 单元格 | Unnamed | 关键联系人
u301 | 单元格 | Unnamed | 联系方式
u302 | 单元格 | Unnamed | 联系人职务
u303 | 单元格 | Unnamed | 关系标记
u304 | 单元格 | Unnamed | 操作
u305 | 单元格 | Unnamed | 广州亚东智能科技有限公司
u306 | 单元格 | Unnamed | 总包
u307 | 单元格 | Unnamed | 陈**
u308 | 单元格 | Unnamed | 138******12
u309 | 单元格 | Unnamed | 总经理
u311 | 单元格 | Unnamed | 查看客户详情
u312 | 单元格 | Unnamed | 广东轨交通信工程有限公司
u313 | 单元格 | Unnamed | 工程商
u314 | 单元格 | Unnamed | 张**
u315 | 单元格 | Unnamed | 157******33
u316 | 单元格 | Unnamed | 市场经理
u318 | 单元格 | Unnamed | 查看客户详情    设为主要
u319 | 单元格 | Unnamed | 广东智慧教育科技有限公司
u320 | 单元格 | Unnamed | 集成商
u321 | 单元格 | Unnamed | 王**
u322 | 单元格 | Unnamed | 136******46
u323 | 单元格 | Unnamed | 市场经理
u325 | 单元格 | Unnamed | 查看客户详情    设为主要
u326 | 单元格 | Unnamed | 广东康联医疗科技有限公司
u327 | 单元格 | Unnamed | 工程商
u328 | 单元格 | Unnamed | 何**
u329 | 单元格 | Unnamed | 133******75
u330 | 单元格 | Unnamed | 总经理
u332 | 单元格 | Unnamed | 查看客户详情    设为主要
u333 | 矩形 | Unnamed | 主要意向客户
u334 | 矩形 | Unnamed | 普通关联
u335 | 矩形 | Unnamed | 普通关联
u336 | 矩形 | Unnamed | 普通关联
u338 | 矩形 | Unnamed | 销售机会
u341 | 单元格 | Unnamed | 需求
u342 | 单元格 | Unnamed | 需求说明
u343 | 单元格 | Unnamed | 变更记录
u344 | 单元格 | Unnamed | 1、开发说明
u347 | 单元格 | Unnamed | 2、详细说明
u350 | 矩形 | Unnamed | 商机管理-商机详情_客户信息
u352 | 单元格 | Unnamed | 需求
u353 | 单元格 | Unnamed | 需求说明
u354 | 单元格 | Unnamed | 变更记录
u355 | 单元格 | Unnamed | 3、字段说明
u358 | 矩形 | Unnamed | 商机管理-商机详情_客户信息
u360 | 单元格 | Unnamed | 需求
u361 | 单元格 | Unnamed | 需求说明
u362 | 单元格 | Unnamed | 变更记录
u363 | 单元格 | Unnamed | 4、交互说明
u366 | 矩形 | Unnamed | 商机管理-商机详情_客户信息
u368 | 单元格 | Unnamed | 需求
u369 | 单元格 | Unnamed | 需求说明
u370 | 单元格 | Unnamed | 变更记录
u371 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u374 | 矩形 | Unnamed | 商机管理-商机详情_客户信息
u376 | 单元格 | Unnamed | 需求
u377 | 单元格 | Unnamed | 需求说明
u378 | 单元格 | Unnamed | 变更记录
u379 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u382 | 矩形 | Unnamed | 商机管理-商机详情_客户信息
u383 | 矩形 | Unnamed | 1、查看详情:新窗口,跳转客户详情 | <br> | 2、设为主要:二次确认后将<span style="color:#D9001B;">唯一的主要意向客户替换至选中行
u385 | 单元格 | Unnamed | 需求
u386 | 单元格 | Unnamed | 需求说明
u387 | 单元格 | Unnamed | 变更记录
u388 | 单元格 | Unnamed | 1、客户信息页签(核心区)
u391 | 形状 | Unnamed | 商机详情_客户信息页(需求批注)-简版

403
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-3-1______.txt

@ -0,0 +1,403 @@
# a3-1-1-1-3-1______.html
# 控件 473,有文本 400
u2 | 矩形 | Unnamed | 方案卡内容
u5 | 矩形 | Unnamed | 保存草稿
u7 | 矩形 | Unnamed | 确认
u9 | 矩形 | Unnamed | 公司通用方案卡
u11 | 矩形 | Unnamed | 公司推荐
u12 | 矩形 | Unnamed | 模板版本 V1.1 · 所有部门通用
u15 | 矩形 | Unnamed | 切换模板
u17 | 矩形 | Unnamed | 编辑方案卡
u18 | 矩形 | Unnamed | 客户名称
u19 | 矩形 | Unnamed | *
u20 | 矩形 | Unnamed | 客户类型
u21 | 矩形 | Unnamed | *
u22 | 矩形 | Unnamed | 战略VIP客户等级
u23 | 矩形 | Unnamed | 已成交VIP客户等级
u24 | 矩形 | Unnamed | 客户联系人
u26 | 矩形 | Unnamed | 搜索
u27 | 矩形 | Unnamed | 客户联系电话
u28 | 矩形 | Unnamed | 项目阶段
u29 | 矩形 | Unnamed | *
u30 | 矩形 | Unnamed | 招标形式
u31 | 矩形 | Unnamed | *
u32 | 矩形 | Unnamed | 是否有看现场
u33 | 矩形 | Unnamed | 是否与客户电话沟通
u34 | 矩形 | Unnamed | 现场勘察资料
u36 | 矩形 | Unnamed | 添加
u37 | 矩形 | Unnamed | 是否百万级项目
u38 | 矩形 | Unnamed | 方案预算是否明确
u39 | 矩形 | Unnamed | 方案预算金额
u40 | 矩形 | Unnamed | 预计成交概率
u41 | 矩形 | Unnamed | 预计投标时间
u42 | 矩形 | Unnamed | 设计配置
u43 | 矩形 | Unnamed | 品牌要求
u44 | 矩形 | Unnamed | 是否可换品牌
u45 | 矩形 | Unnamed | 标底方
u46 | 矩形 | Unnamed | 客户需求描述
u47 | 矩形 | Unnamed | *
u49 | 矩形 | Unnamed | 根据现有清单匹配产品参数并提供调整建议。
u50 | 矩形 | Unnamed | 对方要求的先进性及前瞻性的要求
u52 | 矩形 | Unnamed | --
u53 | 矩形 | Unnamed | 清单参数(是否是我司产品参数、工程师需要确认,是否有品牌?)
u55 | 矩形 | Unnamed | 是否是我司产品参数、工程师需要确认,是否有品牌。
u56 | 矩形 | Unnamed | 清单参数是否能改
u58 | 矩形 | Unnamed | 可改,按深化方案处理。
u59 | 矩形 | Unnamed | 客户特殊要求(补充说明、备注说明)
u61 | 矩形 | Unnamed | --
u62 | 矩形 | Unnamed | 方案卡填写时间
u64 | 矩形 | Unnamed | 期望方案设计完成时间
u66 | 矩形 | Unnamed | 业务需求
u67 | 矩形 | Unnamed | *
u69 | 矩形 | Unnamed | 中配,主要从参数基础上控制配置成本,支持后续报价。
u89 | 矩形 | Unnamed | 招标编号
u94 | 矩形 | Month | August
u95 | 矩形 | Unnamed | S
u96 | 矩形 | Unnamed | M
u97 | 矩形 | Unnamed | 上
u98 | 矩形 | Unnamed | W
u99 | 矩形 | Unnamed | 上
u100 | 矩形 | Unnamed | F
u101 | 矩形 | Unnamed | S
u102 | 矩形 | Unnamed | 01
u103 | 矩形 | Unnamed | 02
u104 | 矩形 | Unnamed | 03
u105 | 矩形 | Unnamed | 04
u106 | 矩形 | Unnamed | 05
u107 | 矩形 | Unnamed | 06
u108 | 矩形 | Unnamed | 07
u109 | 矩形 | Unnamed | 08
u110 | 矩形 | Unnamed | 09
u111 | 矩形 | Unnamed | 10
u112 | 矩形 | Unnamed | 11
u113 | 矩形 | Unnamed | 12
u114 | 矩形 | Unnamed | 13
u115 | 矩形 | Unnamed | 14
u116 | 矩形 | Unnamed | 15
u117 | 矩形 | Unnamed | 16
u118 | 矩形 | Unnamed | 17
u119 | 矩形 | Unnamed | 18
u120 | 矩形 | Unnamed | 19
u121 | 矩形 | Unnamed | 20
u122 | 矩形 | Unnamed | 21
u123 | 矩形 | Unnamed | 22
u124 | 矩形 | Unnamed | 23
u125 | 矩形 | Unnamed | 24
u126 | 矩形 | Unnamed | 25
u127 | 矩形 | Unnamed | 26
u128 | 矩形 | Unnamed | 27
u129 | 矩形 | Unnamed | 28
u130 | 矩形 | Unnamed | 29
u131 | 矩形 | Unnamed | 30
u132 | 矩形 | Unnamed | 31
u135 | 矩形 | Month | July
u136 | 矩形 | Unnamed | S
u137 | 矩形 | Unnamed | M
u138 | 矩形 | Unnamed | 上
u139 | 矩形 | Unnamed | W
u140 | 矩形 | Unnamed | 上
u141 | 矩形 | Unnamed | F
u142 | 矩形 | Unnamed | S
u143 | 矩形 | Unnamed | 01
u144 | 矩形 | Unnamed | 02
u145 | 矩形 | Unnamed | 03
u146 | 矩形 | Unnamed | 04
u147 | 矩形 | Unnamed | 05
u148 | 矩形 | Unnamed | 06
u149 | 矩形 | Unnamed | 07
u150 | 矩形 | Unnamed | 08
u151 | 矩形 | Unnamed | 09
u152 | 矩形 | Unnamed | 10
u153 | 矩形 | Unnamed | 11
u154 | 矩形 | Unnamed | 12
u155 | 矩形 | Unnamed | 13
u156 | 矩形 | Unnamed | 14
u157 | 矩形 | Unnamed | 15
u158 | 矩形 | Unnamed | 16
u159 | 矩形 | Unnamed | 17
u160 | 矩形 | Unnamed | 18
u161 | 矩形 | Unnamed | 19
u162 | 矩形 | Unnamed | 20
u163 | 矩形 | Unnamed | 21
u164 | 矩形 | Unnamed | 22
u165 | 矩形 | Unnamed | 23
u166 | 矩形 | Unnamed | 24
u167 | 矩形 | Unnamed | 25
u168 | 矩形 | Unnamed | 26
u169 | 矩形 | Unnamed | 27
u170 | 矩形 | Unnamed | 28
u171 | 矩形 | Unnamed | 29
u172 | 矩形 | Unnamed | 30
u173 | 矩形 | Unnamed | 31
u176 | 矩形 | Month | June
u177 | 矩形 | Unnamed | S
u178 | 矩形 | Unnamed | M
u179 | 矩形 | Unnamed | 上
u180 | 矩形 | Unnamed | W
u181 | 矩形 | Unnamed | 上
u182 | 矩形 | Unnamed | F
u183 | 矩形 | Unnamed | S
u184 | 矩形 | Unnamed | 01
u185 | 矩形 | Unnamed | 02
u186 | 矩形 | Unnamed | 03
u187 | 矩形 | Unnamed | 04
u188 | 矩形 | Unnamed | 05
u189 | 矩形 | Unnamed | 06
u190 | 矩形 | Unnamed | 07
u191 | 矩形 | Unnamed | 08
u192 | 矩形 | Unnamed | 09
u193 | 矩形 | Unnamed | 10
u194 | 矩形 | Unnamed | 11
u195 | 矩形 | Unnamed | 12
u196 | 矩形 | Unnamed | 13
u197 | 矩形 | Unnamed | 14
u198 | 矩形 | Unnamed | 15
u199 | 矩形 | Unnamed | 16
u200 | 矩形 | Unnamed | 17
u201 | 矩形 | Unnamed | 18
u202 | 矩形 | Unnamed | 19
u203 | 矩形 | Unnamed | 20
u204 | 矩形 | Unnamed | 21
u205 | 矩形 | Unnamed | 22
u206 | 矩形 | Unnamed | 23
u207 | 矩形 | Unnamed | 24
u208 | 矩形 | Unnamed | 25
u209 | 矩形 | Unnamed | 26
u210 | 矩形 | Unnamed | 27
u211 | 矩形 | Unnamed | 28
u212 | 矩形 | Unnamed | 29
u213 | 矩形 | Unnamed | 30
u221 | 矩形 | Month | August
u222 | 矩形 | Unnamed | S
u223 | 矩形 | Unnamed | M
u224 | 矩形 | Unnamed | 上
u225 | 矩形 | Unnamed | W
u226 | 矩形 | Unnamed | 上
u227 | 矩形 | Unnamed | F
u228 | 矩形 | Unnamed | S
u229 | 矩形 | Unnamed | 01
u230 | 矩形 | Unnamed | 02
u231 | 矩形 | Unnamed | 03
u232 | 矩形 | Unnamed | 04
u233 | 矩形 | Unnamed | 05
u234 | 矩形 | Unnamed | 06
u235 | 矩形 | Unnamed | 07
u236 | 矩形 | Unnamed | 08
u237 | 矩形 | Unnamed | 09
u238 | 矩形 | Unnamed | 10
u239 | 矩形 | Unnamed | 11
u240 | 矩形 | Unnamed | 12
u241 | 矩形 | Unnamed | 13
u242 | 矩形 | Unnamed | 14
u243 | 矩形 | Unnamed | 15
u244 | 矩形 | Unnamed | 16
u245 | 矩形 | Unnamed | 17
u246 | 矩形 | Unnamed | 18
u247 | 矩形 | Unnamed | 19
u248 | 矩形 | Unnamed | 20
u249 | 矩形 | Unnamed | 21
u250 | 矩形 | Unnamed | 22
u251 | 矩形 | Unnamed | 23
u252 | 矩形 | Unnamed | 24
u253 | 矩形 | Unnamed | 25
u254 | 矩形 | Unnamed | 26
u255 | 矩形 | Unnamed | 27
u256 | 矩形 | Unnamed | 28
u257 | 矩形 | Unnamed | 29
u258 | 矩形 | Unnamed | 30
u259 | 矩形 | Unnamed | 31
u262 | 矩形 | Month | July
u263 | 矩形 | Unnamed | S
u264 | 矩形 | Unnamed | M
u265 | 矩形 | Unnamed | 上
u266 | 矩形 | Unnamed | W
u267 | 矩形 | Unnamed | 上
u268 | 矩形 | Unnamed | F
u269 | 矩形 | Unnamed | S
u270 | 矩形 | Unnamed | 01
u271 | 矩形 | Unnamed | 02
u272 | 矩形 | Unnamed | 03
u273 | 矩形 | Unnamed | 04
u274 | 矩形 | Unnamed | 05
u275 | 矩形 | Unnamed | 06
u276 | 矩形 | Unnamed | 07
u277 | 矩形 | Unnamed | 08
u278 | 矩形 | Unnamed | 09
u279 | 矩形 | Unnamed | 10
u280 | 矩形 | Unnamed | 11
u281 | 矩形 | Unnamed | 12
u282 | 矩形 | Unnamed | 13
u283 | 矩形 | Unnamed | 14
u284 | 矩形 | Unnamed | 15
u285 | 矩形 | Unnamed | 16
u286 | 矩形 | Unnamed | 17
u287 | 矩形 | Unnamed | 18
u288 | 矩形 | Unnamed | 19
u289 | 矩形 | Unnamed | 20
u290 | 矩形 | Unnamed | 21
u291 | 矩形 | Unnamed | 22
u292 | 矩形 | Unnamed | 23
u293 | 矩形 | Unnamed | 24
u294 | 矩形 | Unnamed | 25
u295 | 矩形 | Unnamed | 26
u296 | 矩形 | Unnamed | 27
u297 | 矩形 | Unnamed | 28
u298 | 矩形 | Unnamed | 29
u299 | 矩形 | Unnamed | 30
u300 | 矩形 | Unnamed | 31
u303 | 矩形 | Month | June
u304 | 矩形 | Unnamed | S
u305 | 矩形 | Unnamed | M
u306 | 矩形 | Unnamed | 上
u307 | 矩形 | Unnamed | W
u308 | 矩形 | Unnamed | 上
u309 | 矩形 | Unnamed | F
u310 | 矩形 | Unnamed | S
u311 | 矩形 | Unnamed | 01
u312 | 矩形 | Unnamed | 02
u313 | 矩形 | Unnamed | 03
u314 | 矩形 | Unnamed | 04
u315 | 矩形 | Unnamed | 05
u316 | 矩形 | Unnamed | 06
u317 | 矩形 | Unnamed | 07
u318 | 矩形 | Unnamed | 08
u319 | 矩形 | Unnamed | 09
u320 | 矩形 | Unnamed | 10
u321 | 矩形 | Unnamed | 11
u322 | 矩形 | Unnamed | 12
u323 | 矩形 | Unnamed | 13
u324 | 矩形 | Unnamed | 14
u325 | 矩形 | Unnamed | 15
u326 | 矩形 | Unnamed | 16
u327 | 矩形 | Unnamed | 17
u328 | 矩形 | Unnamed | 18
u329 | 矩形 | Unnamed | 19
u330 | 矩形 | Unnamed | 20
u331 | 矩形 | Unnamed | 21
u332 | 矩形 | Unnamed | 22
u333 | 矩形 | Unnamed | 23
u334 | 矩形 | Unnamed | 24
u335 | 矩形 | Unnamed | 25
u336 | 矩形 | Unnamed | 26
u337 | 矩形 | Unnamed | 27
u338 | 矩形 | Unnamed | 28
u339 | 矩形 | Unnamed | 29
u340 | 矩形 | Unnamed | 30
u348 | 矩形 | Month | August
u349 | 矩形 | Unnamed | S
u350 | 矩形 | Unnamed | M
u351 | 矩形 | Unnamed | 上
u352 | 矩形 | Unnamed | W
u353 | 矩形 | Unnamed | 上
u354 | 矩形 | Unnamed | F
u355 | 矩形 | Unnamed | S
u356 | 矩形 | Unnamed | 01
u357 | 矩形 | Unnamed | 02
u358 | 矩形 | Unnamed | 03
u359 | 矩形 | Unnamed | 04
u360 | 矩形 | Unnamed | 05
u361 | 矩形 | Unnamed | 06
u362 | 矩形 | Unnamed | 07
u363 | 矩形 | Unnamed | 08
u364 | 矩形 | Unnamed | 09
u365 | 矩形 | Unnamed | 10
u366 | 矩形 | Unnamed | 11
u367 | 矩形 | Unnamed | 12
u368 | 矩形 | Unnamed | 13
u369 | 矩形 | Unnamed | 14
u370 | 矩形 | Unnamed | 15
u371 | 矩形 | Unnamed | 16
u372 | 矩形 | Unnamed | 17
u373 | 矩形 | Unnamed | 18
u374 | 矩形 | Unnamed | 19
u375 | 矩形 | Unnamed | 20
u376 | 矩形 | Unnamed | 21
u377 | 矩形 | Unnamed | 22
u378 | 矩形 | Unnamed | 23
u379 | 矩形 | Unnamed | 24
u380 | 矩形 | Unnamed | 25
u381 | 矩形 | Unnamed | 26
u382 | 矩形 | Unnamed | 27
u383 | 矩形 | Unnamed | 28
u384 | 矩形 | Unnamed | 29
u385 | 矩形 | Unnamed | 30
u386 | 矩形 | Unnamed | 31
u389 | 矩形 | Month | July
u390 | 矩形 | Unnamed | S
u391 | 矩形 | Unnamed | M
u392 | 矩形 | Unnamed | 上
u393 | 矩形 | Unnamed | W
u394 | 矩形 | Unnamed | 上
u395 | 矩形 | Unnamed | F
u396 | 矩形 | Unnamed | S
u397 | 矩形 | Unnamed | 01
u398 | 矩形 | Unnamed | 02
u399 | 矩形 | Unnamed | 03
u400 | 矩形 | Unnamed | 04
u401 | 矩形 | Unnamed | 05
u402 | 矩形 | Unnamed | 06
u403 | 矩形 | Unnamed | 07
u404 | 矩形 | Unnamed | 08
u405 | 矩形 | Unnamed | 09
u406 | 矩形 | Unnamed | 10
u407 | 矩形 | Unnamed | 11
u408 | 矩形 | Unnamed | 12
u409 | 矩形 | Unnamed | 13
u410 | 矩形 | Unnamed | 14
u411 | 矩形 | Unnamed | 15
u412 | 矩形 | Unnamed | 16
u413 | 矩形 | Unnamed | 17
u414 | 矩形 | Unnamed | 18
u415 | 矩形 | Unnamed | 19
u416 | 矩形 | Unnamed | 20
u417 | 矩形 | Unnamed | 21
u418 | 矩形 | Unnamed | 22
u419 | 矩形 | Unnamed | 23
u420 | 矩形 | Unnamed | 24
u421 | 矩形 | Unnamed | 25
u422 | 矩形 | Unnamed | 26
u423 | 矩形 | Unnamed | 27
u424 | 矩形 | Unnamed | 28
u425 | 矩形 | Unnamed | 29
u426 | 矩形 | Unnamed | 30
u427 | 矩形 | Unnamed | 31
u430 | 矩形 | Month | June
u431 | 矩形 | Unnamed | S
u432 | 矩形 | Unnamed | M
u433 | 矩形 | Unnamed | 上
u434 | 矩形 | Unnamed | W
u435 | 矩形 | Unnamed | 上
u436 | 矩形 | Unnamed | F
u437 | 矩形 | Unnamed | S
u438 | 矩形 | Unnamed | 01
u439 | 矩形 | Unnamed | 02
u440 | 矩形 | Unnamed | 03
u441 | 矩形 | Unnamed | 04
u442 | 矩形 | Unnamed | 05
u443 | 矩形 | Unnamed | 06
u444 | 矩形 | Unnamed | 07
u445 | 矩形 | Unnamed | 08
u446 | 矩形 | Unnamed | 09
u447 | 矩形 | Unnamed | 10
u448 | 矩形 | Unnamed | 11
u449 | 矩形 | Unnamed | 12
u450 | 矩形 | Unnamed | 13
u451 | 矩形 | Unnamed | 14
u452 | 矩形 | Unnamed | 15
u453 | 矩形 | Unnamed | 16
u454 | 矩形 | Unnamed | 17
u455 | 矩形 | Unnamed | 18
u456 | 矩形 | Unnamed | 19
u457 | 矩形 | Unnamed | 20
u458 | 矩形 | Unnamed | 21
u459 | 矩形 | Unnamed | 22
u460 | 矩形 | Unnamed | 23
u461 | 矩形 | Unnamed | 24
u462 | 矩形 | Unnamed | 25
u463 | 矩形 | Unnamed | 26
u464 | 矩形 | Unnamed | 27
u465 | 矩形 | Unnamed | 28
u466 | 矩形 | Unnamed | 29
u467 | 矩形 | Unnamed | 30
u472 | 矩形 | Unnamed | 取消

297
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-1-3(个人)商机详情_方案卡.txt

@ -0,0 +1,297 @@
# a3-1-1-1-3(个人)商机详情_方案卡.html
# 控件 619,有文本 294
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u293 | 矩形 | Unnamed | 销售机会
u296 | 单元格 | Unnamed | 需求
u297 | 单元格 | Unnamed | 需求说明
u298 | 单元格 | Unnamed | 变更记录
u299 | 单元格 | Unnamed | 1、开发说明
u302 | 单元格 | Unnamed | 2、详细说明
u305 | 矩形 | Unnamed | 商机管理-商机详情_方案卡
u307 | 单元格 | Unnamed | 需求
u308 | 单元格 | Unnamed | 需求说明
u309 | 单元格 | Unnamed | 变更记录
u310 | 单元格 | Unnamed | 3、字段说明
u313 | 矩形 | Unnamed | 商机管理-商机详情_方案卡
u315 | 单元格 | Unnamed | 需求
u316 | 单元格 | Unnamed | 需求说明
u317 | 单元格 | Unnamed | 变更记录
u318 | 单元格 | Unnamed | 4、交互说明
u321 | 矩形 | Unnamed | 商机管理-商机详情_方案卡
u323 | 单元格 | Unnamed | 需求
u324 | 单元格 | Unnamed | 需求说明
u325 | 单元格 | Unnamed | 变更记录
u326 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u329 | 矩形 | Unnamed | 商机管理-商机详情_方案卡
u331 | 单元格 | Unnamed | 需求
u332 | 单元格 | Unnamed | 需求说明
u333 | 单元格 | Unnamed | 变更记录
u334 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u337 | 矩形 | Unnamed | 商机管理-商机详情_方案卡
u338 | 矩形 | Unnamed | 方案卡
u341 | 矩形 | Unnamed | 方案卡
u343 | 矩形 | Unnamed | + 新增方案卡
u345 | 矩形 | Unnamed | 推送方案
u348 | 矩形 | Unnamed | 序号
u350 | 矩形 | Unnamed | 客户名称
u352 | 矩形 | Unnamed | 客户类型
u354 | 矩形 | Unnamed | 介入阶段
u356 | 矩形 | Unnamed | 招标形式
u358 | 矩形 | Unnamed | 方案预算金额
u360 | 矩形 | Unnamed | 状态
u362 | 矩形 | Unnamed | 1
u364 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u366 | 矩形 | Unnamed | 总包
u368 | 矩形 | Unnamed | 标前改单
u370 | 矩形 | Unnamed | GC(工程)
u372 | 矩形 | Unnamed | 238.00 万元
u374 | 矩形 | 当前方案卡 | 已创建
u376 | 矩形 | Unnamed | 2
u378 | 矩形 | Unnamed | 广东轨交通信工程有限公司
u380 | 矩形 | Unnamed | 工程商
u382 | 矩形 | Unnamed | 设计
u384 | 矩形 | Unnamed | BC(EPC总分包)
u386 | 矩形 | Unnamed | 待确认
u388 | 矩形 | 草稿 | 草稿
u391 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u392 | 矩形 | 当前方案卡 | 已创建
u395 | 矩形 | Unnamed | 项目阶段
u397 | 矩形 | Unnamed | 设计
u399 | 矩形 | Unnamed | 招标形式
u401 | 矩形 | Unnamed | GC(工程)
u403 | 矩形 | Unnamed | 方案预算金额
u405 | 矩形 | Unnamed | 238.00 万元
u407 | 矩形 | Unnamed | 预计成交概率
u409 | 矩形 | Unnamed | 60%
u411 | 矩形 | Unnamed | 品牌要求
u413 | 矩形 | Unnamed | itc,TS系列
u415 | 矩形 | Unnamed | 设计配置
u417 | 矩形 | Unnamed | 按清单配置
u418 | 矩形 | Unnamed | 收起详情
u419 | 矩形 | Unnamed | 编辑
u421 | 矩形 | Unnamed | 客户名称
u423 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u425 | 矩形 | Unnamed | 客户类型
u427 | 矩形 | Unnamed | 总包
u429 | 矩形 | Unnamed | 战略VIP客户等级
u431 | 矩形 | Unnamed | --
u433 | 矩形 | Unnamed | 已成交VIP客户等级
u435 | 矩形 | Unnamed | --
u437 | 矩形 | Unnamed | 客户联系人
u439 | 矩形 | Unnamed | 张**
u441 | 矩形 | Unnamed | 客户联系电话
u443 | 矩形 | Unnamed | 136******46
u444 | 矩形 | Unnamed | 查看
u446 | 矩形 | Unnamed | 项目阶段
u448 | 矩形 | Unnamed | 标前改单
u450 | 矩形 | Unnamed | 招标形式
u452 | 矩形 | Unnamed | GC(工程)
u454 | 矩形 | Unnamed | 是否有看现场
u456 | 矩形 | Unnamed | 是
u458 | 矩形 | Unnamed | 是否与客户电话沟通
u460 | 矩形 | Unnamed | 是
u462 | 矩形 | Unnamed | 现场勘察资料
u464 | 矩形 | Unnamed | 金山谷现场勘察资料.rar
u466 | 矩形 | Unnamed | 是否百万级项目
u468 | 矩形 | Unnamed | 是
u470 | 矩形 | Unnamed | 方案预算是否明确
u472 | 矩形 | Unnamed | 是
u474 | 矩形 | Unnamed | 方案预算金额
u476 | 矩形 | Unnamed | 238.00 万元
u478 | 矩形 | Unnamed | 预计成交概率
u480 | 矩形 | Unnamed | 60%
u482 | 矩形 | Unnamed | 预计投标时间
u484 | 矩形 | Unnamed | --
u486 | 矩形 | Unnamed | 设计配置
u488 | 矩形 | Unnamed | 按清单配置
u490 | 矩形 | Unnamed | 品牌要求
u492 | 矩形 | Unnamed | itc,TS系列
u494 | 矩形 | Unnamed | 是否可换品牌
u496 | 矩形 | Unnamed | 否
u498 | 矩形 | Unnamed | 招标编号
u500 | 矩形 | Unnamed | --
u502 | 矩形 | Unnamed | 标底方
u504 | 矩形 | Unnamed | --
u507 | 矩形 | Unnamed | 客户需求描述
u509 | 矩形 | Unnamed | 根据现有清单匹配产品参数并提供调整建议。
u511 | 矩形 | Unnamed | 业务需求
u513 | 矩形 | Unnamed | 中配,主要从参数基础上控制配置成本,支持后续报价。
u515 | 矩形 | Unnamed | 对方要求的先进性及前瞻性的要求
u517 | 矩形 | Unnamed | --
u519 | 矩形 | Unnamed | 清单参数(是否是我司产品参数、工程师需要确认,是否有品牌?)
u521 | 矩形 | Unnamed | 是否是我司产品参数、工程师需要确认,是否有品牌。
u523 | 矩形 | Unnamed | 清单参数是否能改
u525 | 矩形 | Unnamed | 可改,按深化方案处理。
u527 | 矩形 | Unnamed | 客户特殊要求(补充说明、备注说明)
u529 | 矩形 | Unnamed | --
u531 | 矩形 | Unnamed | 方案卡填写时间
u533 | 矩形 | Unnamed | --
u535 | 矩形 | Unnamed | 期望方案设计完成时间
u537 | 矩形 | Unnamed | --
u539 | 矩形 | Unnamed | 创建人
u541 | 矩形 | Unnamed | --
u543 | 矩形 | Unnamed | 创建时间
u545 | 矩形 | Unnamed | --
u548 | 矩形 | Unnamed | 广东轨交通信工程有限公司
u550 | 矩形 | Unnamed | 草稿
u553 | 矩形 | Unnamed | 项目阶段
u555 | 矩形 | Unnamed | 设计
u557 | 矩形 | Unnamed | 招标形式
u559 | 矩形 | Unnamed | BC(EPC总分包)
u561 | 矩形 | Unnamed | 预算金额
u563 | 矩形 | Unnamed | 待确认
u565 | 矩形 | Unnamed | 预计成交概率
u567 | 矩形 | Unnamed | --
u569 | 矩形 | Unnamed | 品牌要求
u571 | 矩形 | Unnamed | --
u573 | 矩形 | Unnamed | 设计配置
u575 | 矩形 | Unnamed | --
u576 | 矩形 | Unnamed | 展开详情
u577 | 矩形 | Unnamed | 编辑
u578 | 矩形 | Unnamed | 删除
u580 | 单元格 | Unnamed | 需求
u581 | 单元格 | Unnamed | 需求说明
u582 | 单元格 | Unnamed | 变更记录
u583 | 单元格 | Unnamed | 1、方案卡列表与核心操作
u586 | 单元格 | Unnamed | 2、方案卡详情与字段数据区
u589 | 单元格 | Unnamed | 3、单卡级操作与权限控制
u592 | 形状 | Unnamed | 商机详情_方案卡页(需求批注)-简版
u594 | 矩形 | Unnamed | 3
u596 | 矩形 | Unnamed | 广东智慧教育科技有限公司
u598 | 矩形 | Unnamed | 集成商
u600 | 矩形 | Unnamed | 设计
u602 | 矩形 | Unnamed | BC(EPC总分包)
u604 | 矩形 | Unnamed | 待确认
u606 | 矩形 | 草稿 | 未创建
u608 | 矩形 | Unnamed | 4
u610 | 矩形 | Unnamed | 广东康联医疗科技有限公司
u612 | 矩形 | Unnamed | 工程商
u614 | 矩形 | Unnamed | 设计
u616 | 矩形 | Unnamed | BC(EPC总分包)
u618 | 矩形 | Unnamed | 待确认
u620 | 矩形 | 草稿 | 未创建

302
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1__新增_编辑商机.txt

@ -0,0 +1,302 @@
# a3-1-1-2-1__新增_编辑商机.html
# 控件 809,有文本 299
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u292 | 矩形 | Unnamed | `
u295 | 矩形 | Unnamed | itc业务中台
u299 | 矩形 | Unnamed | Panyu10109
u304 | 矩形 | Unnamed | 16
u306 | 矩形 | Unnamed | AI助手
u310 | 矩形 | Unnamed | 商机管理
u311 | 矩形 | Unnamed | 数据看板
u317 | 矩形 | Unnamed | 销售机会
u319 | 矩形 | Unnamed | 线索管理
u320 | 矩形 | Unnamed | 客户管理
u325 | 矩形 | Unnamed | 项目管理
u328 | 矩形 | Unnamed | 首页
u332 | 矩形 | Unnamed | 商机管理
u335 | 矩形 | Unnamed | 商机公海
u337 | 矩形 | Unnamed | 进入后台
u339 | 矩形 | Unnamed | 线索管理
u340 | 矩形 | Unnamed | 数据看板
u345 | 矩形 | Unnamed | 线索管理设置
u348 | 矩形 | Unnamed | 线索公海
u350 | 矩形 | Unnamed | 客户管理
u351 | 矩形 | Unnamed | 项目管理
u352 | 矩形 | Unnamed | 商机管理
u359 | 矩形 | Unnamed | 首页
u362 | 矩形 | Unnamed | 进入后台
u364 | 矩形 | Unnamed | 线索管理
u367 | 矩形 | Unnamed | 我的关注
u370 | 矩形 | Unnamed | 我的线索
u373 | 矩形 | Unnamed | 首页
u374 | 矩形 | Unnamed | 线索管理
u375 | 矩形 | Unnamed | 客户管理
u376 | 矩形 | Unnamed | 项目管理
u377 | 矩形 | Unnamed | 系统设置
u378 | 矩形 | Unnamed | 商机管理
u379 | 矩形 | Unnamed | 数据看板
u394 | 矩形 | Unnamed | 工作台
u396 | 矩形 | Unnamed | 数据概览
u398 | 矩形 | Unnamed | 工作计划
u400 | 矩形 | Unnamed | <<收起菜单
u402 | 矩形 | Unnamed | 线索管理
u403 | 矩形 | Unnamed | 客户管理
u404 | 矩形 | Unnamed | 系统设置
u405 | 矩形 | Unnamed | 数据看板
u415 | 矩形 | Unnamed | 我的客户
u418 | 矩形 | Unnamed | 客户公海
u420 | 矩形 | Unnamed | 项目管理
u421 | 矩形 | Unnamed | 商机管理
u426 | 矩形 | Unnamed | 首页
u428 | 矩形 | Unnamed | 联系人管理
u432 | 矩形 | Unnamed | 客户管理
u435 | 矩形 | Unnamed | 客户管理设置
u438 | 矩形 | Unnamed | 系统设置
u439 | 矩形 | Unnamed | 数据看板
u444 | 矩形 | Unnamed | 项目管理设置
u445 | 矩形 | Unnamed | 首页
u447 | 矩形 | Unnamed | 线索管理
u448 | 矩形 | Unnamed | 客户管理
u449 | 矩形 | Unnamed | 项目管理
u450 | 矩形 | Unnamed | 商机管理
u460 | 矩形 | Unnamed | 项目管理
u465 | 矩形 | Unnamed | 项目统计
u468 | 矩形 | Unnamed | 系统设置
u469 | 矩形 | Unnamed | 数据看板
u474 | 矩形 | Unnamed | -b
u475 | 矩形 | Unnamed | 首页
u477 | 矩形 | Unnamed | 线索管理
u478 | 矩形 | Unnamed | 客户管理
u479 | 矩形 | Unnamed | 项目管理
u480 | 矩形 | Unnamed | 商机管理
u489 | 矩形 | Unnamed | -a
u494 | 矩形 | Unnamed | 系统设置
u495 | 矩形 | Unnamed | 数据看板
u500 | 矩形 | Unnamed | 首页
u502 | 矩形 | Unnamed | 线索管理
u503 | 矩形 | Unnamed | 客户管理
u504 | 矩形 | Unnamed | 项目管理
u505 | 矩形 | Unnamed | 商机管理
u514 | 矩形 | Unnamed | -a
u517 | 矩形 | Unnamed | -b
u520 | 矩形 | Unnamed | -c
u525 | 矩形 | Unnamed | 查询
u526 | 矩形 | Unnamed | 重置
u527 | 矩形 | Unnamed | + 新增商机
u542 | 矩形 | Unnamed | 销售机会
u544 | 矩形 | Unnamed | 我负责的销售机会  ▾
u550 | 矩形 | Unnamed | 新建商机
u551 | 矩形 | Unnamed | 项目基础信息
u571 | 矩形 | Unnamed | 客户信息
u574 | 矩形 | Unnamed | 甲方名称
u575 | 矩形 | Unnamed | 商机关键联系人
u577 | 矩形 | Unnamed | 搜索
u580 | 矩形 | Unnamed | 搜索
u581 | 矩形 | Unnamed | 关键人所在公司
u583 | 矩形 | Unnamed | 客户联系人
u585 | 矩形 | Unnamed | 搜索
u590 | 矩形 | Unnamed | 前端预留:用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入
u592 | 矩形 | Unnamed | 确认
u593 | 矩形 | Unnamed | 取消
u596 | 矩形 | Unnamed | 项目金额
u600 | 矩形 | Unnamed | 编辑商机
u601 | 矩形 | Unnamed | 项目基础信息
u621 | 矩形 | Unnamed | 客户信息
u624 | 矩形 | Unnamed | 甲方名称
u626 | 矩形 | Unnamed | 商机关键联系人
u628 | 矩形 | Unnamed | 搜索
u631 | 矩形 | Unnamed | 搜索
u632 | 矩形 | Unnamed | 关键人所在公司
u634 | 矩形 | Unnamed | 客户联系人
u636 | 矩形 | Unnamed | 搜索
u641 | 矩形 | Unnamed | 前端预留:用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入
u643 | 矩形 | Unnamed | 确认
u644 | 矩形 | Unnamed | 取消
u647 | 矩形 | Unnamed | 项目金额
u650 | 单元格 | Unnamed | 需求
u651 | 单元格 | Unnamed | 需求说明
u652 | 单元格 | Unnamed | 变更记录
u653 | 单元格 | Unnamed | 1、开发说明
u656 | 单元格 | Unnamed | 2、详细说明
u659 | 矩形 | Unnamed | 商机管理-商机_编辑/新增
u661 | 单元格 | Unnamed | 需求
u662 | 单元格 | Unnamed | 需求说明
u663 | 单元格 | Unnamed | 变更记录
u664 | 单元格 | Unnamed | 3、字段说明
u667 | 矩形 | Unnamed | 商机管理-商机_编辑/新增
u669 | 单元格 | Unnamed | 需求
u670 | 单元格 | Unnamed | 需求说明
u671 | 单元格 | Unnamed | 变更记录
u672 | 单元格 | Unnamed | 4、交互说明
u675 | 矩形 | Unnamed | 商机管理-商机_编辑/新增
u677 | 单元格 | Unnamed | 需求
u678 | 单元格 | Unnamed | 需求说明
u679 | 单元格 | Unnamed | 变更记录
u680 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u683 | 矩形 | Unnamed | 商机管理-商机_编辑/新增
u685 | 单元格 | Unnamed | 需求
u686 | 单元格 | Unnamed | 需求说明
u687 | 单元格 | Unnamed | 变更记录
u688 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u691 | 矩形 | Unnamed | 商机管理-商机_编辑/新增
u692 | 矩形 | Unnamed | 项目概况
u694 | 矩形 | Unnamed | 项目概况
u698 | 矩形 | Unnamed | 新建商机
u699 | 矩形 | Unnamed | 项目基础信息
u719 | 矩形 | Unnamed | 客户信息
u722 | 矩形 | Unnamed | 甲方名称
u723 | 矩形 | Unnamed | 商机关键联系人
u725 | 矩形 | Unnamed | 搜索
u728 | 矩形 | Unnamed | 搜索
u729 | 矩形 | Unnamed | 关键人所在公司
u731 | 矩形 | Unnamed | 客户联系人
u733 | 矩形 | Unnamed | 搜索
u738 | 矩形 | Unnamed | 前端预留:用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入
u740 | 矩形 | Unnamed | 确认
u741 | 矩形 | Unnamed | 取消
u744 | 矩形 | Unnamed | 项目金额
u748 | 矩形 | Unnamed | 编辑商机
u749 | 矩形 | Unnamed | 项目基础信息
u769 | 矩形 | Unnamed | 客户信息
u772 | 矩形 | Unnamed | 甲方名称
u773 | 矩形 | Unnamed | 商机关键联系人
u775 | 矩形 | Unnamed | 搜索
u778 | 矩形 | Unnamed | 搜索
u779 | 矩形 | Unnamed | 关键人所在公司
u781 | 矩形 | Unnamed | 客户联系人
u783 | 矩形 | Unnamed | 搜索
u788 | 矩形 | Unnamed | 前端预留:用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入用于提示用户录入
u790 | 矩形 | Unnamed | 确认
u791 | 矩形 | Unnamed | 取消
u794 | 矩形 | Unnamed | 项目金额
u796 | 矩形 | Unnamed | 项目概况
u798 | 矩形 | Unnamed | 项目概况
u806 | 矩形 | Unnamed | 搜索
u807 | 矩形 | Unnamed | 搜索
u809 | 矩形 | Unnamed | 搜索
u811 | 矩形 | Unnamed | 搜索

BIN
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_form-dump.txt

Binary file not shown.

6583
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_raw.html

File diff suppressed because one or more lines are too long

397
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-2_____.txt

@ -0,0 +1,397 @@
# a3-1-1-2-2_____.html
# 控件 613,有文本 394
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u294 | 矩形 | Unnamed | 新增跟进记录
u296 | 矩形 | Unnamed | 确认
u297 | 矩形 | Unnamed | 取消
u300 | 矩形 | Unnamed | 跟进时间
u306 | 矩形 | Month | August
u307 | 矩形 | Unnamed | S
u308 | 矩形 | Unnamed | M
u309 | 矩形 | Unnamed | 上
u310 | 矩形 | Unnamed | W
u311 | 矩形 | Unnamed | 上
u312 | 矩形 | Unnamed | F
u313 | 矩形 | Unnamed | S
u314 | 矩形 | Unnamed | 01
u315 | 矩形 | Unnamed | 02
u316 | 矩形 | Unnamed | 03
u317 | 矩形 | Unnamed | 04
u318 | 矩形 | Unnamed | 05
u319 | 矩形 | Unnamed | 06
u320 | 矩形 | Unnamed | 07
u321 | 矩形 | Unnamed | 08
u322 | 矩形 | Unnamed | 09
u323 | 矩形 | Unnamed | 10
u324 | 矩形 | Unnamed | 11
u325 | 矩形 | Unnamed | 12
u326 | 矩形 | Unnamed | 13
u327 | 矩形 | Unnamed | 14
u328 | 矩形 | Unnamed | 15
u329 | 矩形 | Unnamed | 16
u330 | 矩形 | Unnamed | 17
u331 | 矩形 | Unnamed | 18
u332 | 矩形 | Unnamed | 19
u333 | 矩形 | Unnamed | 20
u334 | 矩形 | Unnamed | 21
u335 | 矩形 | Unnamed | 22
u336 | 矩形 | Unnamed | 23
u337 | 矩形 | Unnamed | 24
u338 | 矩形 | Unnamed | 25
u339 | 矩形 | Unnamed | 26
u340 | 矩形 | Unnamed | 27
u341 | 矩形 | Unnamed | 28
u342 | 矩形 | Unnamed | 29
u343 | 矩形 | Unnamed | 30
u344 | 矩形 | Unnamed | 31
u347 | 矩形 | Month | July
u348 | 矩形 | Unnamed | S
u349 | 矩形 | Unnamed | M
u350 | 矩形 | Unnamed | 上
u351 | 矩形 | Unnamed | W
u352 | 矩形 | Unnamed | 上
u353 | 矩形 | Unnamed | F
u354 | 矩形 | Unnamed | S
u355 | 矩形 | Unnamed | 01
u356 | 矩形 | Unnamed | 02
u357 | 矩形 | Unnamed | 03
u358 | 矩形 | Unnamed | 04
u359 | 矩形 | Unnamed | 05
u360 | 矩形 | Unnamed | 06
u361 | 矩形 | Unnamed | 07
u362 | 矩形 | Unnamed | 08
u363 | 矩形 | Unnamed | 09
u364 | 矩形 | Unnamed | 10
u365 | 矩形 | Unnamed | 11
u366 | 矩形 | Unnamed | 12
u367 | 矩形 | Unnamed | 13
u368 | 矩形 | Unnamed | 14
u369 | 矩形 | Unnamed | 15
u370 | 矩形 | Unnamed | 16
u371 | 矩形 | Unnamed | 17
u372 | 矩形 | Unnamed | 18
u373 | 矩形 | Unnamed | 19
u374 | 矩形 | Unnamed | 20
u375 | 矩形 | Unnamed | 21
u376 | 矩形 | Unnamed | 22
u377 | 矩形 | Unnamed | 23
u378 | 矩形 | Unnamed | 24
u379 | 矩形 | Unnamed | 25
u380 | 矩形 | Unnamed | 26
u381 | 矩形 | Unnamed | 27
u382 | 矩形 | Unnamed | 28
u383 | 矩形 | Unnamed | 29
u384 | 矩形 | Unnamed | 30
u385 | 矩形 | Unnamed | 31
u388 | 矩形 | Month | June
u389 | 矩形 | Unnamed | S
u390 | 矩形 | Unnamed | M
u391 | 矩形 | Unnamed | 上
u392 | 矩形 | Unnamed | W
u393 | 矩形 | Unnamed | 上
u394 | 矩形 | Unnamed | F
u395 | 矩形 | Unnamed | S
u396 | 矩形 | Unnamed | 01
u397 | 矩形 | Unnamed | 02
u398 | 矩形 | Unnamed | 03
u399 | 矩形 | Unnamed | 04
u400 | 矩形 | Unnamed | 05
u401 | 矩形 | Unnamed | 06
u402 | 矩形 | Unnamed | 07
u403 | 矩形 | Unnamed | 08
u404 | 矩形 | Unnamed | 09
u405 | 矩形 | Unnamed | 10
u406 | 矩形 | Unnamed | 11
u407 | 矩形 | Unnamed | 12
u408 | 矩形 | Unnamed | 13
u409 | 矩形 | Unnamed | 14
u410 | 矩形 | Unnamed | 15
u411 | 矩形 | Unnamed | 16
u412 | 矩形 | Unnamed | 17
u413 | 矩形 | Unnamed | 18
u414 | 矩形 | Unnamed | 19
u415 | 矩形 | Unnamed | 20
u416 | 矩形 | Unnamed | 21
u417 | 矩形 | Unnamed | 22
u418 | 矩形 | Unnamed | 23
u419 | 矩形 | Unnamed | 24
u420 | 矩形 | Unnamed | 25
u421 | 矩形 | Unnamed | 26
u422 | 矩形 | Unnamed | 27
u423 | 矩形 | Unnamed | 28
u424 | 矩形 | Unnamed | 29
u425 | 矩形 | Unnamed | 30
u432 | 矩形 | Unnamed | 客户联系人
u433 | 矩形 | Unnamed | 客户联系电话
u435 | 矩形 | Unnamed | 跟进结果标签
u437 | 矩形 | Unnamed | 计划下次跟进时间
u443 | 矩形 | Month | August
u444 | 矩形 | Unnamed | S
u445 | 矩形 | Unnamed | M
u446 | 矩形 | Unnamed | 上
u447 | 矩形 | Unnamed | W
u448 | 矩形 | Unnamed | 上
u449 | 矩形 | Unnamed | F
u450 | 矩形 | Unnamed | S
u451 | 矩形 | Unnamed | 01
u452 | 矩形 | Unnamed | 02
u453 | 矩形 | Unnamed | 03
u454 | 矩形 | Unnamed | 04
u455 | 矩形 | Unnamed | 05
u456 | 矩形 | Unnamed | 06
u457 | 矩形 | Unnamed | 07
u458 | 矩形 | Unnamed | 08
u459 | 矩形 | Unnamed | 09
u460 | 矩形 | Unnamed | 10
u461 | 矩形 | Unnamed | 11
u462 | 矩形 | Unnamed | 12
u463 | 矩形 | Unnamed | 13
u464 | 矩形 | Unnamed | 14
u465 | 矩形 | Unnamed | 15
u466 | 矩形 | Unnamed | 16
u467 | 矩形 | Unnamed | 17
u468 | 矩形 | Unnamed | 18
u469 | 矩形 | Unnamed | 19
u470 | 矩形 | Unnamed | 20
u471 | 矩形 | Unnamed | 21
u472 | 矩形 | Unnamed | 22
u473 | 矩形 | Unnamed | 23
u474 | 矩形 | Unnamed | 24
u475 | 矩形 | Unnamed | 25
u476 | 矩形 | Unnamed | 26
u477 | 矩形 | Unnamed | 27
u478 | 矩形 | Unnamed | 28
u479 | 矩形 | Unnamed | 29
u480 | 矩形 | Unnamed | 30
u481 | 矩形 | Unnamed | 31
u484 | 矩形 | Month | July
u485 | 矩形 | Unnamed | S
u486 | 矩形 | Unnamed | M
u487 | 矩形 | Unnamed | 上
u488 | 矩形 | Unnamed | W
u489 | 矩形 | Unnamed | 上
u490 | 矩形 | Unnamed | F
u491 | 矩形 | Unnamed | S
u492 | 矩形 | Unnamed | 01
u493 | 矩形 | Unnamed | 02
u494 | 矩形 | Unnamed | 03
u495 | 矩形 | Unnamed | 04
u496 | 矩形 | Unnamed | 05
u497 | 矩形 | Unnamed | 06
u498 | 矩形 | Unnamed | 07
u499 | 矩形 | Unnamed | 08
u500 | 矩形 | Unnamed | 09
u501 | 矩形 | Unnamed | 10
u502 | 矩形 | Unnamed | 11
u503 | 矩形 | Unnamed | 12
u504 | 矩形 | Unnamed | 13
u505 | 矩形 | Unnamed | 14
u506 | 矩形 | Unnamed | 15
u507 | 矩形 | Unnamed | 16
u508 | 矩形 | Unnamed | 17
u509 | 矩形 | Unnamed | 18
u510 | 矩形 | Unnamed | 19
u511 | 矩形 | Unnamed | 20
u512 | 矩形 | Unnamed | 21
u513 | 矩形 | Unnamed | 22
u514 | 矩形 | Unnamed | 23
u515 | 矩形 | Unnamed | 24
u516 | 矩形 | Unnamed | 25
u517 | 矩形 | Unnamed | 26
u518 | 矩形 | Unnamed | 27
u519 | 矩形 | Unnamed | 28
u520 | 矩形 | Unnamed | 29
u521 | 矩形 | Unnamed | 30
u522 | 矩形 | Unnamed | 31
u525 | 矩形 | Month | June
u526 | 矩形 | Unnamed | S
u527 | 矩形 | Unnamed | M
u528 | 矩形 | Unnamed | 上
u529 | 矩形 | Unnamed | W
u530 | 矩形 | Unnamed | 上
u531 | 矩形 | Unnamed | F
u532 | 矩形 | Unnamed | S
u533 | 矩形 | Unnamed | 01
u534 | 矩形 | Unnamed | 02
u535 | 矩形 | Unnamed | 03
u536 | 矩形 | Unnamed | 04
u537 | 矩形 | Unnamed | 05
u538 | 矩形 | Unnamed | 06
u539 | 矩形 | Unnamed | 07
u540 | 矩形 | Unnamed | 08
u541 | 矩形 | Unnamed | 09
u542 | 矩形 | Unnamed | 10
u543 | 矩形 | Unnamed | 11
u544 | 矩形 | Unnamed | 12
u545 | 矩形 | Unnamed | 13
u546 | 矩形 | Unnamed | 14
u547 | 矩形 | Unnamed | 15
u548 | 矩形 | Unnamed | 16
u549 | 矩形 | Unnamed | 17
u550 | 矩形 | Unnamed | 18
u551 | 矩形 | Unnamed | 19
u552 | 矩形 | Unnamed | 20
u553 | 矩形 | Unnamed | 21
u554 | 矩形 | Unnamed | 22
u555 | 矩形 | Unnamed | 23
u556 | 矩形 | Unnamed | 24
u557 | 矩形 | Unnamed | 25
u558 | 矩形 | Unnamed | 26
u559 | 矩形 | Unnamed | 27
u560 | 矩形 | Unnamed | 28
u561 | 矩形 | Unnamed | 29
u562 | 矩形 | Unnamed | 30
u565 | 矩形 | Unnamed | 附件
u567 | 矩形 | Unnamed | 点击或拖拽文件至该处上传
u568 | 矩形 | Unnamed | 附件支持txt \ doc \ docx \ jpg \ png \ jpeg \ xls \ xlsx \ ppt \ pptx \ pdf \ mp3 \ mp4 \ m4a \ aac等格式。最多支持上传10个附件。
u570 | 单元格 | Unnamed | 需求
u571 | 单元格 | Unnamed | 需求说明
u572 | 单元格 | Unnamed | 变更记录
u573 | 单元格 | Unnamed | 1、开发说明
u576 | 单元格 | Unnamed | 2、详细说明
u579 | 矩形 | Unnamed | 商机管理-商机_写跟进
u581 | 单元格 | Unnamed | 需求
u582 | 单元格 | Unnamed | 需求说明
u583 | 单元格 | Unnamed | 变更记录
u584 | 单元格 | Unnamed | 3、字段说明
u587 | 矩形 | Unnamed | 商机管理-商机_写跟进
u589 | 单元格 | Unnamed | 需求
u590 | 单元格 | Unnamed | 需求说明
u591 | 单元格 | Unnamed | 变更记录
u592 | 单元格 | Unnamed | 4、交互说明
u595 | 矩形 | Unnamed | 商机管理-商机_写跟进
u597 | 单元格 | Unnamed | 需求
u598 | 单元格 | Unnamed | 需求说明
u599 | 单元格 | Unnamed | 变更记录
u600 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u603 | 矩形 | Unnamed | 商机管理-商机_写跟进
u605 | 单元格 | Unnamed | 需求
u606 | 单元格 | Unnamed | 需求说明
u607 | 单元格 | Unnamed | 变更记录
u608 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u611 | 矩形 | Unnamed | 商机管理-商机_写跟进

343
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-3_______.txt

@ -0,0 +1,343 @@
# a3-1-1-2-3_______.html
# 控件 742,有文本 340
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u293 | 单元格 | Unnamed | 需求
u294 | 单元格 | Unnamed | 需求说明
u295 | 单元格 | Unnamed | 变更记录
u296 | 单元格 | Unnamed | 1、开发说明
u299 | 单元格 | Unnamed | 2、详细说明
u302 | 矩形 | Unnamed | 商机管理-商机_新增方案卡
u304 | 单元格 | Unnamed | 需求
u305 | 单元格 | Unnamed | 需求说明
u306 | 单元格 | Unnamed | 变更记录
u307 | 单元格 | Unnamed | 3、字段说明
u310 | 矩形 | Unnamed | 商机管理-商机_新增方案卡
u312 | 单元格 | Unnamed | 需求
u313 | 单元格 | Unnamed | 需求说明
u314 | 单元格 | Unnamed | 变更记录
u315 | 单元格 | Unnamed | 4、交互说明
u319 | 单元格 | Unnamed | 需求
u320 | 单元格 | Unnamed | 需求说明
u321 | 单元格 | Unnamed | 变更记录
u322 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u325 | 矩形 | Unnamed | 商机管理-商机_新增方案卡
u327 | 单元格 | Unnamed | 需求
u328 | 单元格 | Unnamed | 需求说明
u329 | 单元格 | Unnamed | 变更记录
u330 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u333 | 矩形 | Unnamed | 商机管理-商机_新增方案卡
u337 | 矩形 | Unnamed | itc业务中台
u344 | 矩形 | Unnamed | Panyu10109
u348 | 矩形 | Unnamed | 16
u350 | 矩形 | Unnamed | AI助手
u354 | 矩形 | Unnamed | 商机管理
u355 | 矩形 | Unnamed | 数据看板
u361 | 矩形 | Unnamed | 销售机会
u363 | 矩形 | Unnamed | 线索管理
u364 | 矩形 | Unnamed | 客户管理
u369 | 矩形 | Unnamed | 项目管理
u372 | 矩形 | Unnamed | 首页
u376 | 矩形 | Unnamed | 商机管理
u379 | 矩形 | Unnamed | 商机公海
u381 | 矩形 | Unnamed | 进入后台
u383 | 矩形 | Unnamed | 线索管理
u384 | 矩形 | Unnamed | 数据看板
u389 | 矩形 | Unnamed | 线索管理设置
u392 | 矩形 | Unnamed | 线索公海
u394 | 矩形 | Unnamed | 客户管理
u395 | 矩形 | Unnamed | 项目管理
u396 | 矩形 | Unnamed | 商机管理
u403 | 矩形 | Unnamed | 首页
u406 | 矩形 | Unnamed | 进入后台
u408 | 矩形 | Unnamed | 线索管理
u411 | 矩形 | Unnamed | 我的关注
u414 | 矩形 | Unnamed | 我的线索
u417 | 矩形 | Unnamed | 首页
u418 | 矩形 | Unnamed | 线索管理
u419 | 矩形 | Unnamed | 客户管理
u420 | 矩形 | Unnamed | 项目管理
u421 | 矩形 | Unnamed | 系统设置
u422 | 矩形 | Unnamed | 商机管理
u423 | 矩形 | Unnamed | 数据看板
u438 | 矩形 | Unnamed | 工作台
u440 | 矩形 | Unnamed | 数据概览
u442 | 矩形 | Unnamed | 工作计划
u444 | 矩形 | Unnamed | <<收起菜单
u446 | 矩形 | Unnamed | 线索管理
u447 | 矩形 | Unnamed | 客户管理
u448 | 矩形 | Unnamed | 系统设置
u449 | 矩形 | Unnamed | 数据看板
u459 | 矩形 | Unnamed | 我的客户
u462 | 矩形 | Unnamed | 客户公海
u464 | 矩形 | Unnamed | 项目管理
u465 | 矩形 | Unnamed | 商机管理
u470 | 矩形 | Unnamed | 首页
u472 | 矩形 | Unnamed | 联系人管理
u476 | 矩形 | Unnamed | 客户管理
u479 | 矩形 | Unnamed | 客户管理设置
u482 | 矩形 | Unnamed | 系统设置
u483 | 矩形 | Unnamed | 数据看板
u488 | 矩形 | Unnamed | 项目管理设置
u489 | 矩形 | Unnamed | 首页
u491 | 矩形 | Unnamed | 线索管理
u492 | 矩形 | Unnamed | 客户管理
u493 | 矩形 | Unnamed | 项目管理
u494 | 矩形 | Unnamed | 商机管理
u504 | 矩形 | Unnamed | 项目管理
u509 | 矩形 | Unnamed | 项目统计
u512 | 矩形 | Unnamed | 系统设置
u513 | 矩形 | Unnamed | 数据看板
u518 | 矩形 | Unnamed | -b
u519 | 矩形 | Unnamed | 首页
u521 | 矩形 | Unnamed | 线索管理
u522 | 矩形 | Unnamed | 客户管理
u523 | 矩形 | Unnamed | 项目管理
u524 | 矩形 | Unnamed | 商机管理
u533 | 矩形 | Unnamed | -a
u538 | 矩形 | Unnamed | 系统设置
u539 | 矩形 | Unnamed | 数据看板
u544 | 矩形 | Unnamed | 首页
u546 | 矩形 | Unnamed | 线索管理
u547 | 矩形 | Unnamed | 客户管理
u548 | 矩形 | Unnamed | 项目管理
u549 | 矩形 | Unnamed | 商机管理
u558 | 矩形 | Unnamed | -a
u561 | 矩形 | Unnamed | -b
u564 | 矩形 | Unnamed | -c
u566 | 矩形 | Unnamed | 金山谷智慧园区项目
u567 | 矩形 | Unnamed | 招标形式:
u568 | 矩形 | Unnamed | ZC(政采标)
u569 | 矩形 | Unnamed | 责任人:
u570 | 矩形 | Unnamed | 张三
u571 | 矩形 | Unnamed | 所属团队:
u572 | 矩形 | Unnamed | 特战团队
u573 | 矩形 | Unnamed | 所属部门:
u574 | 矩形 | Unnamed | 粤疆战队-广东15部
u575 | 矩形 | Unnamed | 返回
u576 | 矩形 | Unnamed | 园区
u577 | 矩形 | Unnamed | 项目阶段:
u578 | 矩形 | Unnamed | 标前设计
u579 | 矩形 | Unnamed | 商机状态:
u580 | 矩形 | Unnamed | 推进中
u581 | 矩形 | Unnamed | 方案预算:
u582 | 矩形 | Unnamed | 418.90 万元
u583 | 矩形 | Unnamed | 写跟进
u584 | 矩形 | Unnamed | 编辑
u585 | 矩形 | Unnamed | 主要意向客户:
u586 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u587 | 矩形 | Unnamed | 新增方案卡
u589 | 向右箭头按钮 | Unnamed | 客户圈定
u590 | 圆形 | Unnamed | √
u592 | 向右箭头按钮 | Unnamed | 关系摸排
u594 | 圆形 | Unnamed | √
u596 | 向右箭头按钮 | Unnamed | 资料采集
u598 | 圆形 | Unnamed | √
u600 | 向右箭头按钮 | Unnamed | 方案卡
u602 | 圆形 | Unnamed | √
u604 | 向右箭头按钮 | Unnamed | 已转项目
u606 | 圆形 | Unnamed | √
u608 | 矩形 | Unnamed | 概览
u609 | 矩形 | Unnamed | 客户信息
u610 | 矩形 | Unnamed | 现场勘察
u611 | 矩形 | Unnamed | 相关附件
u612 | 矩形 | Unnamed | 工作计划
u613 | 矩形 | Unnamed | 团队成员
u614 | 矩形 | Unnamed | 操作日志
u615 | 矩形 | Unnamed | 方案卡
u619 | 矩形 | Unnamed | 添加关联客户
u620 | 矩形 | Unnamed | 推送方案
u621 | 矩形 | Unnamed | 暂缓商机
u622 | 矩形 | Unnamed | 抛公海
u623 | 矩形 | Unnamed | 添加团队成员
u624 | 矩形 | Unnamed | 关闭商机
u625 | 矩形 | Unnamed | 跟进记录
u628 | 矩形 | Unnamed | 方案卡内容
u631 | 矩形 | Unnamed | 保存草稿
u633 | 矩形 | Unnamed | 确认
u635 | 矩形 | Unnamed | 公司通用方案卡
u637 | 矩形 | Unnamed | 公司推荐
u638 | 矩形 | Unnamed | 模板版本 V1.1 · 所有部门通用
u641 | 矩形 | Unnamed | 切换模板
u643 | 矩形 | Unnamed | 新增方案卡
u644 | 矩形 | Unnamed | 客户名称
u645 | 矩形 | Unnamed | *
u646 | 矩形 | Unnamed | 客户类型
u647 | 矩形 | Unnamed | *
u648 | 矩形 | Unnamed | 战略VIP客户等级
u649 | 矩形 | Unnamed | 已成交VIP客户等级
u650 | 矩形 | Unnamed | 客户联系人
u652 | 矩形 | Unnamed | 搜索
u653 | 矩形 | Unnamed | 客户联系电话
u654 | 矩形 | Unnamed | 项目阶段
u655 | 矩形 | Unnamed | *
u656 | 矩形 | Unnamed | 招标形式
u657 | 矩形 | Unnamed | *
u658 | 矩形 | Unnamed | 是否有看现场
u659 | 矩形 | Unnamed | 是否与客户电话沟通
u660 | 矩形 | Unnamed | 现场勘察资料
u662 | 矩形 | Unnamed | 添加
u663 | 矩形 | Unnamed | 是否百万级项目
u664 | 矩形 | Unnamed | 方案预算是否明确
u665 | 矩形 | Unnamed | 方案预算金额
u666 | 矩形 | Unnamed | 预计成交概率
u667 | 矩形 | Unnamed | 预计投标时间
u668 | 矩形 | Unnamed | 设计配置
u669 | 矩形 | Unnamed | 品牌要求
u670 | 矩形 | Unnamed | 是否可换品牌
u671 | 矩形 | Unnamed | 标底方
u672 | 矩形 | Unnamed | 客户需求描述
u673 | 矩形 | Unnamed | *
u675 | 矩形 | Unnamed | 根据现有清单匹配产品参数并提供调整建议。
u676 | 矩形 | Unnamed | 对方要求的先进性及前瞻性的要求
u678 | 矩形 | Unnamed | --
u679 | 矩形 | Unnamed | 清单参数(是否是我司产品参数、工程师需要确认,是否有品牌?)
u681 | 矩形 | Unnamed | 是否是我司产品参数、工程师需要确认,是否有品牌。
u682 | 矩形 | Unnamed | 清单参数是否能改
u684 | 矩形 | Unnamed | 可改,按深化方案处理。
u685 | 矩形 | Unnamed | 客户特殊要求(补充说明、备注说明)
u687 | 矩形 | Unnamed | --
u688 | 矩形 | Unnamed | 方案卡填写时间
u690 | 矩形 | Unnamed | 期望方案设计完成时间
u692 | 矩形 | Unnamed | 业务需求
u693 | 矩形 | Unnamed | *
u695 | 矩形 | Unnamed | 中配,主要从参数基础上控制配置成本,支持后续报价。
u715 | 矩形 | Unnamed | 招标编号
u724 | 矩形 | Unnamed | 选择方案卡模板
u726 | 矩形 | Unnamed | 请选择本次方案卡使用的填写模板。公司通用方案卡默认推荐,仍可切换为其他有权使用的模板。
u728 | 矩形 | Unnamed | 公司通用方案卡
u730 | 矩形 | Unnamed | 公司推荐
u731 | 矩形 | Unnamed | 公司标准统一方案卡模板,适用于全部有方案卡维护权限的用户。
u732 | 矩形 | Unnamed | 适用范围:所有部门通用
u733 | 矩形 | Unnamed | V1.1 · 已发布
u735 | 矩形 | Unnamed | 桂冠天夏战队方案卡
u736 | 矩形 | Unnamed | 独立维护的完整方案卡模板,适用于满足当前模板权限条件的用户。
u737 | 矩形 | Unnamed | 适用范围:满足模板适用权限的用户
u738 | 矩形 | Unnamed | V2.0 · 已发布
u741 | 矩形 | Unnamed | 取消
u743 | 矩形 | Unnamed | 下一步:填写方案卡
u745 | 矩形 | Unnamed | 取消

252
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4________.txt

@ -0,0 +1,252 @@
# a3-1-1-2-4________.html
# 控件 464,有文本 249
u3 | 矩形 | Unnamed | itc业务中台
u10 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 16
u16 | 矩形 | Unnamed | AI助手
u20 | 矩形 | Unnamed | 商机管理
u21 | 矩形 | Unnamed | 数据看板
u27 | 矩形 | Unnamed | 销售机会
u29 | 矩形 | Unnamed | 线索管理
u30 | 矩形 | Unnamed | 客户管理
u35 | 矩形 | Unnamed | 项目管理
u38 | 矩形 | Unnamed | 首页
u42 | 矩形 | Unnamed | 商机管理
u45 | 矩形 | Unnamed | 商机公海
u47 | 矩形 | Unnamed | 进入后台
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 数据看板
u55 | 矩形 | Unnamed | 线索管理设置
u58 | 矩形 | Unnamed | 线索公海
u60 | 矩形 | Unnamed | 客户管理
u61 | 矩形 | Unnamed | 项目管理
u62 | 矩形 | Unnamed | 商机管理
u69 | 矩形 | Unnamed | 首页
u72 | 矩形 | Unnamed | 进入后台
u74 | 矩形 | Unnamed | 线索管理
u77 | 矩形 | Unnamed | 我的关注
u80 | 矩形 | Unnamed | 我的线索
u83 | 矩形 | Unnamed | 首页
u84 | 矩形 | Unnamed | 线索管理
u85 | 矩形 | Unnamed | 客户管理
u86 | 矩形 | Unnamed | 项目管理
u87 | 矩形 | Unnamed | 系统设置
u88 | 矩形 | Unnamed | 商机管理
u89 | 矩形 | Unnamed | 数据看板
u104 | 矩形 | Unnamed | 工作台
u106 | 矩形 | Unnamed | 数据概览
u108 | 矩形 | Unnamed | 工作计划
u110 | 矩形 | Unnamed | <<收起菜单
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 系统设置
u115 | 矩形 | Unnamed | 数据看板
u125 | 矩形 | Unnamed | 我的客户
u128 | 矩形 | Unnamed | 客户公海
u130 | 矩形 | Unnamed | 项目管理
u131 | 矩形 | Unnamed | 商机管理
u136 | 矩形 | Unnamed | 首页
u138 | 矩形 | Unnamed | 联系人管理
u142 | 矩形 | Unnamed | 客户管理
u145 | 矩形 | Unnamed | 客户管理设置
u148 | 矩形 | Unnamed | 系统设置
u149 | 矩形 | Unnamed | 数据看板
u154 | 矩形 | Unnamed | 项目管理设置
u155 | 矩形 | Unnamed | 首页
u157 | 矩形 | Unnamed | 线索管理
u158 | 矩形 | Unnamed | 客户管理
u159 | 矩形 | Unnamed | 项目管理
u160 | 矩形 | Unnamed | 商机管理
u170 | 矩形 | Unnamed | 项目管理
u175 | 矩形 | Unnamed | 项目统计
u178 | 矩形 | Unnamed | 系统设置
u179 | 矩形 | Unnamed | 数据看板
u184 | 矩形 | Unnamed | -b
u185 | 矩形 | Unnamed | 首页
u187 | 矩形 | Unnamed | 线索管理
u188 | 矩形 | Unnamed | 客户管理
u189 | 矩形 | Unnamed | 项目管理
u190 | 矩形 | Unnamed | 商机管理
u199 | 矩形 | Unnamed | -a
u204 | 矩形 | Unnamed | 系统设置
u205 | 矩形 | Unnamed | 数据看板
u210 | 矩形 | Unnamed | 首页
u212 | 矩形 | Unnamed | 线索管理
u213 | 矩形 | Unnamed | 客户管理
u214 | 矩形 | Unnamed | 项目管理
u215 | 矩形 | Unnamed | 商机管理
u224 | 矩形 | Unnamed | -a
u227 | 矩形 | Unnamed | -b
u230 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 金山谷智慧园区项目
u233 | 矩形 | Unnamed | 招标形式:
u234 | 矩形 | Unnamed | ZC(政采标)
u235 | 矩形 | Unnamed | 责任人:
u236 | 矩形 | Unnamed | 张三
u237 | 矩形 | Unnamed | 所属团队:
u238 | 矩形 | Unnamed | 特战团队
u239 | 矩形 | Unnamed | 所属部门:
u240 | 矩形 | Unnamed | 粤疆战队-广东15部
u241 | 矩形 | Unnamed | 返回
u242 | 矩形 | Unnamed | 园区
u243 | 矩形 | Unnamed | 项目阶段:
u244 | 矩形 | Unnamed | 标前设计
u245 | 矩形 | Unnamed | 商机状态:
u246 | 矩形 | Unnamed | 推进中
u247 | 矩形 | Unnamed | 方案预算:
u248 | 矩形 | Unnamed | 418.90 万元
u249 | 矩形 | Unnamed | 写跟进
u250 | 矩形 | Unnamed | 编辑
u251 | 矩形 | Unnamed | 主要意向客户:
u252 | 矩形 | Unnamed | 广州亚东智能科技有限公司
u253 | 矩形 | Unnamed | 新增方案卡
u255 | 向右箭头按钮 | Unnamed | 客户圈定
u256 | 圆形 | Unnamed | √
u258 | 向右箭头按钮 | Unnamed | 关系摸排
u260 | 圆形 | Unnamed | √
u262 | 向右箭头按钮 | Unnamed | 资料采集
u264 | 圆形 | Unnamed | √
u266 | 向右箭头按钮 | Unnamed | 方案卡
u268 | 圆形 | Unnamed | √
u270 | 向右箭头按钮 | Unnamed | 已转项目
u272 | 圆形 | Unnamed | √
u274 | 矩形 | Unnamed | 概览
u275 | 矩形 | Unnamed | 客户信息
u276 | 矩形 | Unnamed | 现场勘察
u277 | 矩形 | Unnamed | 相关附件
u278 | 矩形 | Unnamed | 工作计划
u279 | 矩形 | Unnamed | 团队成员
u280 | 矩形 | Unnamed | 操作日志
u281 | 矩形 | Unnamed | 方案卡
u285 | 矩形 | Unnamed | 添加关联客户
u286 | 矩形 | Unnamed | 推送方案
u287 | 矩形 | Unnamed | 暂缓商机
u288 | 矩形 | Unnamed | 抛公海
u289 | 矩形 | Unnamed | 添加团队成员
u290 | 矩形 | Unnamed | 关闭商机
u291 | 矩形 | Unnamed | 跟进记录
u294 | 矩形 | Unnamed | 新增关联客户
u296 | 矩形 | Unnamed | 重置
u297 | 矩形 | Unnamed | 查询
u299 | 矩形 | Unnamed | 客户搜索结果
u301 | 单元格 | Unnamed | 选择
u302 | 单元格 | Unnamed | 客户名称
u303 | 单元格 | Unnamed | 客户类型
u304 | 单元格 | Unnamed | 地区
u305 | 单元格 | Unnamed | 联系人
u306 | 单元格 | Unnamed | 联系电话
u307 | 单元格 | Unnamed | 客户负责人
u309 | 单元格 | Unnamed | 广州新联智能工程有限公司
u310 | 单元格 | Unnamed | 集成商
u311 | 单元格 | Unnamed | 广州市番禺区
u312 | 单元格 | Unnamed | 陈**
u313 | 单元格 | Unnamed | 138****6612
u314 | 单元格 | Unnamed | 张三
u316 | 单元格 | Unnamed | 深圳华创系统集成有限公司
u317 | 单元格 | Unnamed | 总包
u318 | 单元格 | Unnamed | 深圳市龙岗区
u319 | 单元格 | Unnamed | 李**
u320 | 单元格 | Unnamed | 136****2208
u321 | 单元格 | Unnamed | 李四
u323 | 单元格 | Unnamed | 广州新联智能工程有限公司
u324 | 单元格 | Unnamed | 集成商
u325 | 单元格 | Unnamed | 广州市番禺区
u326 | 单元格 | Unnamed | 陈**
u327 | 单元格 | Unnamed | 138****6612
u328 | 单元格 | Unnamed | 张三
u330 | 单元格 | Unnamed | 深圳华创系统集成有限公司
u331 | 单元格 | Unnamed | 总包
u332 | 单元格 | Unnamed | 深圳市龙岗区
u333 | 单元格 | Unnamed | 李**
u334 | 单元格 | Unnamed | 136****2208
u335 | 单元格 | Unnamed | 李四
u337 | 单元格 | Unnamed | 广州新联智能工程有限公司
u338 | 单元格 | Unnamed | 集成商
u339 | 单元格 | Unnamed | 广州市番禺区
u340 | 单元格 | Unnamed | 陈**
u341 | 单元格 | Unnamed | 138****6612
u342 | 单元格 | Unnamed | 张三
u344 | 单元格 | Unnamed | 深圳华创系统集成有限公司
u345 | 单元格 | Unnamed | 总包
u346 | 单元格 | Unnamed | 深圳市龙岗区
u347 | 单元格 | Unnamed | 李**
u348 | 单元格 | Unnamed | 136****2208
u349 | 单元格 | Unnamed | 李四
u354 | 矩形 | Unnamed | 共<span style="color:#D9001B;">XXX条
u356 | 矩形 | Unnamed | <
u357 | 矩形 | Unnamed | 1
u358 | 矩形 | Unnamed | 2
u359 | 矩形 | Unnamed | 3
u360 | 矩形 | Unnamed | 4
u361 | 矩形 | Unnamed | 5
u362 | 矩形 | Unnamed | 6
u364 | 矩形 | Unnamed | ...
u365 | 矩形 | Unnamed | 》
u366 | 矩形 | Unnamed | XXX
u367 | 矩形 | Unnamed | >
u368 | 矩形 | Unnamed | 跳至
u370 | 矩形 | Unnamed | 页
u371 | 矩形 | Unnamed | 共<span style="color:#D9001B;">XXX条
u373 | 矩形 | Unnamed | 跳至
u375 | 矩形 | Unnamed | 页
u376 | 矩形 | Unnamed | <
u377 | 矩形 | Unnamed | 1
u378 | 矩形 | Unnamed | 4
u379 | 矩形 | Unnamed | 5
u380 | 矩形 | Unnamed | 6
u381 | 矩形 | Unnamed | 7
u382 | 矩形 | Unnamed | 8
u383 | 矩形 | Unnamed | XXX
u384 | 矩形 | Unnamed | >
u386 | 矩形 | Unnamed | ...
u387 | 矩形 | Unnamed | 》
u389 | 矩形 | Unnamed | ...
u390 | 矩形 | Unnamed | 《
u391 | 矩形 | Unnamed | 共<span style="color:#D9001B;">XXX条
u393 | 矩形 | Unnamed | 跳至
u395 | 矩形 | Unnamed | 页
u396 | 矩形 | Unnamed | <
u397 | 矩形 | Unnamed | 1
u398 | 矩形 | Unnamed | 9
u399 | 矩形 | Unnamed | 10
u400 | 矩形 | Unnamed | 11
u401 | 矩形 | Unnamed | 12
u402 | 矩形 | Unnamed | 13
u403 | 矩形 | Unnamed | XXX
u404 | 矩形 | Unnamed | >
u406 | 矩形 | Unnamed | ...
u407 | 矩形 | Unnamed | 》
u409 | 矩形 | Unnamed | ...
u410 | 矩形 | Unnamed | 《
u411 | 矩形 | Unnamed | 客户联系人
u412 | 矩形 | Unnamed | 是否主要意向客户
u416 | 矩形 | Unnamed | 确认
u417 | 矩形 | Unnamed | 取消
u418 | 矩形 | Unnamed | +  快速创建客户
u424 | 单元格 | Unnamed | 需求
u425 | 单元格 | Unnamed | 需求说明
u426 | 单元格 | Unnamed | 变更记录
u427 | 单元格 | Unnamed | 1、开发说明
u430 | 单元格 | Unnamed | 2、详细说明
u433 | 矩形 | Unnamed | 商机管理-添加关联客户
u435 | 单元格 | Unnamed | 需求
u436 | 单元格 | Unnamed | 需求说明
u437 | 单元格 | Unnamed | 变更记录
u438 | 单元格 | Unnamed | 3、字段说明
u441 | 矩形 | Unnamed | 商机管理-添加关联客户
u443 | 单元格 | Unnamed | 需求
u444 | 单元格 | Unnamed | 需求说明
u445 | 单元格 | Unnamed | 变更记录
u446 | 单元格 | Unnamed | 4、交互说明
u449 | 矩形 | Unnamed | 商机管理-添加关联客户
u451 | 单元格 | Unnamed | 需求
u452 | 单元格 | Unnamed | 需求说明
u453 | 单元格 | Unnamed | 变更记录
u454 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u457 | 矩形 | Unnamed | 商机管理-添加关联客户
u459 | 单元格 | Unnamed | 需求
u460 | 单元格 | Unnamed | 需求说明
u461 | 单元格 | Unnamed | 变更记录
u462 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u465 | 矩形 | Unnamed | 商机管理-添加关联客户

3832
.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4_raw.html

File diff suppressed because one or more lines are too long

334
.scratch/lanhu-latest/v29-customer-pages/a3-1-1_销售机会列表.txt

@ -0,0 +1,334 @@
# a3-1-1_销售机会列表.html
# 控件 595,有文本 331
u0 | 矩形 | Unnamed | `
u3 | 矩形 | Unnamed | itc业务中台
u7 | 矩形 | Unnamed | Panyu10109
u12 | 矩形 | Unnamed | 16
u14 | 矩形 | Unnamed | AI助手
u18 | 矩形 | Unnamed | 商机管理
u19 | 矩形 | Unnamed | 数据看板
u25 | 矩形 | Unnamed | 销售机会
u27 | 矩形 | Unnamed | 线索管理
u28 | 矩形 | Unnamed | 客户管理
u33 | 矩形 | Unnamed | 项目管理
u36 | 矩形 | Unnamed | 首页
u40 | 矩形 | Unnamed | 商机管理
u43 | 矩形 | Unnamed | 商机公海
u45 | 矩形 | Unnamed | 进入后台
u47 | 矩形 | Unnamed | 线索管理
u48 | 矩形 | Unnamed | 数据看板
u53 | 矩形 | Unnamed | 线索管理设置
u56 | 矩形 | Unnamed | 线索公海
u58 | 矩形 | Unnamed | 客户管理
u59 | 矩形 | Unnamed | 项目管理
u60 | 矩形 | Unnamed | 商机管理
u67 | 矩形 | Unnamed | 首页
u70 | 矩形 | Unnamed | 进入后台
u72 | 矩形 | Unnamed | 线索管理
u75 | 矩形 | Unnamed | 我的关注
u78 | 矩形 | Unnamed | 我的线索
u81 | 矩形 | Unnamed | 首页
u82 | 矩形 | Unnamed | 线索管理
u83 | 矩形 | Unnamed | 客户管理
u84 | 矩形 | Unnamed | 项目管理
u85 | 矩形 | Unnamed | 系统设置
u86 | 矩形 | Unnamed | 商机管理
u87 | 矩形 | Unnamed | 数据看板
u102 | 矩形 | Unnamed | 工作台
u104 | 矩形 | Unnamed | 数据概览
u106 | 矩形 | Unnamed | 工作计划
u108 | 矩形 | Unnamed | <<收起菜单
u110 | 矩形 | Unnamed | 线索管理
u111 | 矩形 | Unnamed | 客户管理
u112 | 矩形 | Unnamed | 系统设置
u113 | 矩形 | Unnamed | 数据看板
u123 | 矩形 | Unnamed | 我的客户
u126 | 矩形 | Unnamed | 客户公海
u128 | 矩形 | Unnamed | 项目管理
u129 | 矩形 | Unnamed | 商机管理
u134 | 矩形 | Unnamed | 首页
u136 | 矩形 | Unnamed | 联系人管理
u140 | 矩形 | Unnamed | 客户管理
u143 | 矩形 | Unnamed | 客户管理设置
u146 | 矩形 | Unnamed | 系统设置
u147 | 矩形 | Unnamed | 数据看板
u152 | 矩形 | Unnamed | 项目管理设置
u153 | 矩形 | Unnamed | 首页
u155 | 矩形 | Unnamed | 线索管理
u156 | 矩形 | Unnamed | 客户管理
u157 | 矩形 | Unnamed | 项目管理
u158 | 矩形 | Unnamed | 商机管理
u168 | 矩形 | Unnamed | 项目管理
u173 | 矩形 | Unnamed | 项目统计
u176 | 矩形 | Unnamed | 系统设置
u177 | 矩形 | Unnamed | 数据看板
u182 | 矩形 | Unnamed | -b
u183 | 矩形 | Unnamed | 首页
u185 | 矩形 | Unnamed | 线索管理
u186 | 矩形 | Unnamed | 客户管理
u187 | 矩形 | Unnamed | 项目管理
u188 | 矩形 | Unnamed | 商机管理
u197 | 矩形 | Unnamed | -a
u202 | 矩形 | Unnamed | 系统设置
u203 | 矩形 | Unnamed | 数据看板
u208 | 矩形 | Unnamed | 首页
u210 | 矩形 | Unnamed | 线索管理
u211 | 矩形 | Unnamed | 客户管理
u212 | 矩形 | Unnamed | 项目管理
u213 | 矩形 | Unnamed | 商机管理
u222 | 矩形 | Unnamed | -a
u225 | 矩形 | Unnamed | -b
u228 | 矩形 | Unnamed | -c
u232 | 矩形 | Unnamed | 查询
u233 | 矩形 | Unnamed | 重置
u234 | 矩形 | Unnamed | + 新增商机
u249 | 矩形 | Unnamed | 共 33 条
u251 | 矩形 | Unnamed | <
u252 | 矩形 | Unnamed | 1
u253 | 矩形 | Unnamed | 2
u254 | 矩形 | Unnamed | 3
u255 | 矩形 | Unnamed | 4
u256 | 矩形 | Unnamed | 5
u257 | 矩形 | Unnamed | 6
u259 | 矩形 | Unnamed | ...
u260 | 矩形 | Unnamed | 》
u261 | 矩形 | Unnamed | XXX
u262 | 矩形 | Unnamed | >
u263 | 矩形 | Unnamed | 跳至
u265 | 矩形 | Unnamed | 页
u266 | 矩形 | Unnamed | 共<span style="color:#D9001B;">XXX条
u268 | 矩形 | Unnamed | 跳至
u270 | 矩形 | Unnamed | 页
u271 | 矩形 | Unnamed | <
u272 | 矩形 | Unnamed | 1
u273 | 矩形 | Unnamed | 4
u274 | 矩形 | Unnamed | 5
u275 | 矩形 | Unnamed | 6
u276 | 矩形 | Unnamed | 7
u277 | 矩形 | Unnamed | 8
u278 | 矩形 | Unnamed | XXX
u279 | 矩形 | Unnamed | >
u281 | 矩形 | Unnamed | ...
u282 | 矩形 | Unnamed | 》
u284 | 矩形 | Unnamed | ...
u285 | 矩形 | Unnamed | 《
u286 | 矩形 | Unnamed | 共<span style="color:#D9001B;">XXX条
u288 | 矩形 | Unnamed | 跳至
u290 | 矩形 | Unnamed | 页
u291 | 矩形 | Unnamed | <
u292 | 矩形 | Unnamed | 1
u293 | 矩形 | Unnamed | 9
u294 | 矩形 | Unnamed | 10
u295 | 矩形 | Unnamed | 11
u296 | 矩形 | Unnamed | 12
u297 | 矩形 | Unnamed | 13
u298 | 矩形 | Unnamed | XXX
u299 | 矩形 | Unnamed | >
u301 | 矩形 | Unnamed | ...
u302 | 矩形 | Unnamed | 》
u304 | 矩形 | Unnamed | ...
u305 | 矩形 | Unnamed | 《
u307 | 矩形 | Unnamed | 销售机会
u309 | 矩形 | Unnamed | 我负责的销售机会  ▾
u311 | 单元格 | Unnamed | 序号
u312 | 单元格 | Unnamed | 商机名称
u313 | 单元格 | Unnamed | 甲方
u314 | 单元格 | Unnamed | 意向客户
u315 | 单元格 | Unnamed | 行业
u316 | 单元格 | Unnamed | 地区
u317 | 单元格 | Unnamed | 方案预算
u318 | 单元格 | Unnamed | 当前工作节点
u319 | 单元格 | Unnamed | 节点停留时间
u320 | 单元格 | Unnamed | 最近跟进
u321 | 单元格 | Unnamed | 下一节点
u322 | 单元格 | Unnamed | 方案卡状态
u323 | 单元格 | Unnamed | 操作
u324 | 单元格 | Unnamed | 1
u326 | 单元格 | Unnamed | 广州市第三中学
u327 | 单元格 | Unnamed | 广州亚东智能科技有限公司
u329 | 单元格 | Unnamed | 广州市番禺区
u330 | 单元格 | Unnamed | ¥418.9万元
u332 | 单元格 | Unnamed | 6天
u333 | 单元格 | Unnamed | 今天 10:30
u334 | 单元格 | Unnamed | 已转项目
u335 | 单元格 | Unnamed | 已推送
u336 | 单元格 | Unnamed | 详情  写跟进
u337 | 单元格 | Unnamed | 2
u339 | 单元格 | Unnamed | 广州地铁集团
u340 | 单元格 | Unnamed | 广东轨交通信工程有限公司
u342 | 单元格 | Unnamed | 广州市
u343 | 单元格 | Unnamed | ¥780.0万元
u345 | 单元格 | Unnamed | 12天
u346 | 单元格 | Unnamed | 5天前
u347 | 单元格 | Unnamed | 资料采集
u348 | 单元格 | Unnamed | 未创建
u349 | 单元格 | Unnamed | 详情  写跟进
u350 | 单元格 | Unnamed | 3
u352 | 单元格 | Unnamed | 番禺区文旅中心
u353 | 单元格 | Unnamed | 广州番禺文旅工程有限公司
u355 | 单元格 | Unnamed | 广州市番禺区
u356 | 单元格 | Unnamed | ¥234.1万元
u358 | 单元格 | Unnamed | 4天
u359 | 单元格 | Unnamed | 2天前
u360 | 单元格 | Unnamed | 方案卡
u361 | 单元格 | Unnamed | 填写中
u362 | 单元格 | Unnamed | 详情  写跟进
u363 | 单元格 | Unnamed | 4
u365 | 单元格 | Unnamed | 天河区教育局
u366 | 单元格 | Unnamed | 广东智慧教育科技有限公司
u368 | 单元格 | Unnamed | 广州市天河区
u369 | 单元格 | Unnamed | ¥120.0万元
u371 | 单元格 | Unnamed | 2天
u372 | 单元格 | Unnamed | 1天前
u373 | 单元格 | Unnamed | 关系摸排
u374 | 单元格 | Unnamed | 未创建
u375 | 单元格 | Unnamed | 详情  写跟进
u376 | 单元格 | Unnamed | 5
u378 | 单元格 | Unnamed | 白云国际会议中心
u379 | 单元格 | Unnamed | 广州白云会展工程有限公司
u381 | 单元格 | Unnamed | 广州市白云区
u382 | 单元格 | Unnamed | ¥365.0万元
u384 | 单元格 | Unnamed | 8天
u385 | 单元格 | Unnamed | 今天 10:30
u386 | 单元格 | Unnamed | 已转项目
u387 | 单元格 | Unnamed | 已推送
u388 | 单元格 | Unnamed | 详情  写跟进
u389 | 单元格 | Unnamed | 6
u391 | 单元格 | Unnamed | 海珠区人民医院
u392 | 单元格 | Unnamed | 广东康联医疗科技有限公司
u394 | 单元格 | Unnamed | 广州市海珠区
u395 | 单元格 | Unnamed | ¥961.0万元
u397 | 单元格 | Unnamed | 3天
u398 | 单元格 | Unnamed | 5天前
u399 | 单元格 | Unnamed | 资料采集
u400 | 单元格 | Unnamed | 未创建
u401 | 单元格 | Unnamed | 详情  写跟进
u402 | 单元格 | Unnamed | 7
u404 | 单元格 | Unnamed | 南沙港集团
u405 | 单元格 | Unnamed | 广州南沙港信息工程有限公司
u407 | 单元格 | Unnamed | 广州市南沙区
u408 | 单元格 | Unnamed | ¥1120.0万元
u410 | 单元格 | Unnamed | 9天
u411 | 单元格 | Unnamed | 2天前
u412 | 单元格 | Unnamed | 方案卡
u413 | 单元格 | Unnamed | 填写中
u414 | 单元格 | Unnamed | 详情  写跟进
u415 | 单元格 | Unnamed | 8
u417 | 单元格 | Unnamed | 花都区文旅集团
u418 | 单元格 | Unnamed | 广东花都演艺设备有限公司
u420 | 单元格 | Unnamed | 广州市花都区
u421 | 单元格 | Unnamed | ¥288.0万元
u423 | 单元格 | Unnamed | 11天
u424 | 单元格 | Unnamed | 1天前
u425 | 单元格 | Unnamed | 关系摸排
u426 | 单元格 | Unnamed | 未创建
u427 | 单元格 | Unnamed | 详情  写跟进
u428 | 单元格 | Unnamed | 9
u430 | 单元格 | Unnamed | 黄埔产业园运营公司
u431 | 单元格 | Unnamed | 广州黄埔智联科技有限公司
u433 | 单元格 | Unnamed | 广州市黄埔区
u434 | 单元格 | Unnamed | ¥480.0万元
u436 | 单元格 | Unnamed | 7天
u437 | 单元格 | Unnamed | 2天前
u438 | 单元格 | Unnamed | 方案卡
u439 | 单元格 | Unnamed | 填写中
u440 | 单元格 | Unnamed | 详情  写跟进
u441 | 单元格 | Unnamed | 10
u443 | 单元格 | Unnamed | 增城区教育局
u444 | 单元格 | Unnamed | 广东增城教育装备有限公司
u446 | 单元格 | Unnamed | 广州市增城区
u447 | 单元格 | Unnamed | ¥680.0万元
u449 | 单元格 | Unnamed | 2天
u450 | 单元格 | Unnamed | 1天前
u451 | 单元格 | Unnamed | 关系摸排
u452 | 单元格 | Unnamed | 填写中
u453 | 单元格 | Unnamed | 详情  写跟进
u454 | 矩形 | Unnamed | 广州三中校园广播改造
u455 | 矩形 | Unnamed | 教育
u456 | 矩形 | Unnamed | 交通
u457 | 矩形 | Unnamed | 文旅
u458 | 矩形 | Unnamed | 教育
u459 | 矩形 | Unnamed | 地铁站点视频会议系统升级
u460 | 矩形 | Unnamed | 番禺文旅中心多功能厅
u461 | 矩形 | Unnamed | 天河区智慧教室改造
u466 | 矩形 | Unnamed | 方案卡
u467 | 矩形 | Unnamed | 关系摸排
u468 | 矩形 | Unnamed | 资料采集
u469 | 矩形 | Unnamed | 客户圈定
u470 | 矩形 | Unnamed | 白云区国际会议中心升级
u471 | 矩形 | Unnamed | 海珠区医院会议系统采购
u472 | 矩形 | Unnamed | 南沙港船舶调度中心改造升级
u473 | 矩形 | Unnamed | 花都文旅剧场扩声系统升级
u474 | 矩形 | Unnamed | 黄浦区产业园多媒体升级
u475 | 矩形 | Unnamed | 增城区学校报告厅建设
u476 | 矩形 | Unnamed | 展厅
u477 | 矩形 | Unnamed | 医疗
u478 | 矩形 | Unnamed | 交通
u479 | 矩形 | Unnamed | 文旅
u480 | 矩形 | Unnamed | 园区
u481 | 矩形 | Unnamed | 教育
u482 | 矩形 | Unnamed | 方案卡
u483 | 矩形 | Unnamed | 关系摸排
u484 | 矩形 | Unnamed | 资料采集
u485 | 矩形 | Unnamed | 客户圈定
u486 | 矩形 | Unnamed | 资料采集
u487 | 矩形 | Unnamed | 客户圈定
u488 | 矩形 | Unnamed | 结构完全一致的页面 | · 【我负责的销售机会】 | · 【我参与的销售机会】
u493 | 单元格 | Unnamed | 需求
u494 | 单元格 | Unnamed | 需求说明
u495 | 单元格 | Unnamed | 变更记录
u496 | 单元格 | Unnamed | 1、开发说明
u499 | 单元格 | Unnamed | 2、详细说明
u502 | 矩形 | Unnamed | 销售机会列表(需求批注)-详版
u504 | 单元格 | Unnamed | 需求
u505 | 单元格 | Unnamed | 需求说明
u506 | 单元格 | Unnamed | 变更记录
u507 | 单元格 | Unnamed | 3、字段说明
u510 | 矩形 | Unnamed | 商机管理-销售机会列表
u512 | 单元格 | Unnamed | 需求
u513 | 单元格 | Unnamed | 需求说明
u514 | 单元格 | Unnamed | 变更记录
u515 | 单元格 | Unnamed | 4、交互说明
u518 | 矩形 | Unnamed | 商机管理-销售机会列表
u520 | 单元格 | Unnamed | 需求
u521 | 单元格 | Unnamed | 需求说明
u522 | 单元格 | Unnamed | 变更记录
u523 | 单元格 | Unnamed | 5、业务规则&功能逻辑
u526 | 矩形 | Unnamed | 商机管理-销售机会列表
u528 | 单元格 | Unnamed | 需求
u529 | 单元格 | Unnamed | 需求说明
u530 | 单元格 | Unnamed | 变更记录
u531 | 单元格 | Unnamed | 6、原型体验及 | 验收标准
u534 | 矩形 | Unnamed | 商机管理-销售机会列表
u535 | 矩形 | Unnamed | 1、详情:点击后跳A-3-1-1-1-1页面 | <br> | 2、写跟进:点击后当前页面跳弹窗——A3-1-1-2-2
u538 | 矩形 | Unnamed | 常用检索
u539 | 矩形 | Unnamed | 自定义检索
u540 | 矩形 | Unnamed | 最近访问
u541 | 矩形 | Unnamed | 我负责的销售机会
u542 | 矩形 | Unnamed | 我参与的销售机会
u543 | 矩形 | Unnamed | 我关注的销售机会
u544 | 矩形 | Unnamed | 未命名的自定义检索
u550 | 矩形 | Unnamed | ···
u552 | 矩形 | Unnamed | 常用检索
u553 | 矩形 | Unnamed | 自定义检索
u554 | 矩形 | Unnamed | 检索名称
u556 | 矩形 | Unnamed | 检索条件
u557 | 矩形 | Unnamed | 检索条件,支持复合查询
u558 | 矩形 | Unnamed | 1.
u559 | 矩形 | Unnamed | + 添加更多条件
u562 | 矩形 | Unnamed | 2.
u565 | 矩形 | Unnamed | 排序条件
u569 | 菜单项 | Unnamed | 升序
u570 | 菜单项 | Unnamed | 降序
u572 | 矩形 | Unnamed | 保存为常用检索
u573 | 矩形 | Unnamed | 搜索
u577 | 单元格 | Unnamed | 需求
u578 | 单元格 | Unnamed | 需求说明
u579 | 单元格 | Unnamed | 变更记录
u580 | 单元格 | Unnamed | 1、视图定位与 | 数据过滤范围
u583 | 单元格 | Unnamed | 2、顶部查询与 | 批量操作区
u586 | 单元格 | Unnamed | 3、核心字段与 | 业务展示规则
u589 | 单元格 | Unnamed | 4、交互联动与 | 数据一致性
u592 | 单元格 | Unnamed | 5、操作栏逻辑与权限控制
u595 | 形状 | Unnamed | 销售机会列表(需求批注)-简版

223
.scratch/lanhu-latest/v29-customer-pages/a4-4-1_客户详情(客户信息).txt

@ -0,0 +1,223 @@
# a4-4-1_客户详情(客户信息).html
# 控件 408,有文本 220
u2 | 矩形 | Unnamed | `
u4 | 矩形 | Unnamed | itc业务中台
u8 | 矩形 | Unnamed | Panyu10109
u14 | 矩形 | Unnamed | 线索管理
u15 | 矩形 | Unnamed | 客户管理
u16 | 矩形 | Unnamed | 数据看板
u23 | 矩形 | Unnamed | 客户管理设置
u24 | 矩形 | Unnamed | 客户总览
u27 | 矩形 | Unnamed | 项目管理
u28 | 矩形 | Unnamed | 商机管理
u33 | 矩形 | Unnamed | 首页
u36 | 矩形 | Unnamed | 联系人
u38 | 矩形 | Unnamed | 进入后台
u39 | 矩形 | Unnamed | 我的客户
u41 | 矩形 | Unnamed | 客户公海
u43 | 矩形 | Unnamed | 客户查重
u45 | 矩形 | Unnamed | 客户交割
u48 | 矩形 | Unnamed | 首页
u49 | 矩形 | Unnamed | 线索管理
u50 | 矩形 | Unnamed | 客户管理
u51 | 矩形 | Unnamed | 项目管理
u52 | 矩形 | Unnamed | 系统设置
u53 | 矩形 | Unnamed | 商机管理
u54 | 矩形 | Unnamed | 数据看板
u69 | 矩形 | Unnamed | 工作台
u71 | 矩形 | Unnamed | 数据概览
u73 | 矩形 | Unnamed | 工作计划
u75 | 矩形 | Unnamed | <<收起菜单
u77 | 矩形 | Unnamed | 线索管理
u78 | 矩形 | Unnamed | 系统设置
u79 | 矩形 | Unnamed | 数据看板
u86 | 矩形 | Unnamed | 线索公海
u87 | 矩形 | Unnamed | 我的线索
u90 | 矩形 | Unnamed | 客户管理
u91 | 矩形 | Unnamed | 项目管理
u92 | 矩形 | Unnamed | 商机管理
u99 | 矩形 | Unnamed | 首页
u103 | 矩形 | Unnamed | 系统设置
u104 | 矩形 | Unnamed | 数据看板
u109 | 矩形 | Unnamed | -b
u110 | 矩形 | Unnamed | 首页
u112 | 矩形 | Unnamed | 线索管理
u113 | 矩形 | Unnamed | 客户管理
u114 | 矩形 | Unnamed | 项目管理
u115 | 矩形 | Unnamed | 商机管理
u124 | 矩形 | Unnamed | -a
u129 | 矩形 | Unnamed | 系统设置
u130 | 矩形 | Unnamed | 商机管理
u131 | 矩形 | Unnamed | 数据看板
u138 | 矩形 | Unnamed | 商机公海
u139 | 矩形 | Unnamed | 我的商机
u140 | 矩形 | Unnamed | 线索管理
u141 | 矩形 | Unnamed | 客户管理
u146 | 矩形 | Unnamed | 项目管理
u149 | 矩形 | Unnamed | 首页
u155 | 矩形 | Unnamed | 系统设置
u156 | 矩形 | Unnamed | 数据看板
u161 | 矩形 | Unnamed | -b
u162 | 矩形 | Unnamed | 首页
u164 | 矩形 | Unnamed | 线索管理
u165 | 矩形 | Unnamed | 客户管理
u166 | 矩形 | Unnamed | 项目管理
u167 | 矩形 | Unnamed | 商机管理
u176 | 矩形 | Unnamed | -a
u180 | 矩形 | Unnamed | 我的客户
u181 | 矩形 | Unnamed | 客户 > 我的客户 > 客户详情
u185 | 矩形 | Unnamed | 广州宏远智能电子科技有限公司
u186 | 矩形 | Unnamed | 最近跟进
u187 | 矩形 | Unnamed | 2026-06-28  09:30
u188 | 矩形 | Unnamed | 电话沟通年度合作续签事宜,客户表示内部审批流程进行中,预计7月初完成。
u189 | 矩形 | Unnamed | 小李
u190 | 矩形 | Unnamed | 广东1部
u192 | 矩形 | Unnamed | 跟进
u193 | 矩形 | Unnamed | 关注
u194 | 矩形 | Unnamed | 添加联系人
u195 | 矩形 | Unnamed | 新增商机
u196 | 矩形 | Unnamed | 新增项目
u197 | 矩形 | Unnamed | 工商信息更新
u198 | 矩形 | Unnamed | 客户星级
u203 | 矩形 | Unnamed | 合作
u204 | 矩形 | Unnamed | 销售负责人
u205 | 矩形 | Unnamed | 小李   广东1部
u206 | 矩形 | Unnamed | 战略协议等级
u207 | 矩形 | Unnamed | 关系星级
u212 | 矩形 | Unnamed | 客户档案状态
u213 | 矩形 | Unnamed | 有效
u214 | 矩形 | Unnamed | --
u216 | 向右箭头按钮 | Unnamed | 潜在客户
u217 | 圆形 | Unnamed | √
u219 | 向右箭头按钮 | Unnamed | 重潜客户
u221 | 圆形 | Unnamed | √
u223 | 向右箭头按钮 | Unnamed | 已成交客户
u225 | 圆形 | Unnamed | √
u226 | 矩形 | Unnamed | 下周一 15:00  待跟进
u227 | 矩形 | Unnamed | 电话
u228 | 矩形 | Unnamed | 新增战略协议
u230 | 矩形 | Unnamed | 关联业务
u232 | 矩形 | Unnamed | 已中标项目总额
u233 | 矩形 | Unnamed | 238.00万元
u235 | 矩形 | Unnamed | 跟进中方案预估总额
u236 | 矩形 | Unnamed | 486.00万元
u238 | 矩形 | Unnamed | 进行中商机总额
u239 | 矩形 | Unnamed | 999.00万元
u241 | 矩形 | Unnamed | 合同总额 | (预留)
u243 | 矩形 | Unnamed | 累计回款 | (预留)
u244 | 矩形 | Unnamed | 归档
u245 | 矩形 | Unnamed | 已成交VIP | 客户等级
u246 | 矩形 | Unnamed | --
u247 | 矩形 | Unnamed | 返回
u248 | 矩形 | Unnamed | 标记重点客户
u250 | 矩形 | Unnamed | 客户信息
u251 | 矩形 | Unnamed | 跟进记录
u252 | 矩形 | Unnamed | 关联商机
u253 | 矩形 | Unnamed | 关联项目
u254 | 矩形 | Unnamed | 团队成员
u255 | 矩形 | Unnamed | 操作日志
u256 | 矩形 | Unnamed | 联系人
u257 | 矩形 | Unnamed | 编辑客户信息
u258 | 矩形 | Unnamed | 战略协议
u260 | 单元格 | Unnamed | 客户名称
u261 | 单元格 | Unnamed | 广州宏远智能电子科技有限公司
u262 | 单元格 | Unnamed | 客户编号
u263 | 单元格 | Unnamed | KH20260624001
u264 | 单元格 | Unnamed | 客户类型
u265 | 单元格 | Unnamed | 甲方(企业用户)
u266 | 单元格 | Unnamed | 所属地区
u267 | 单元格 | Unnamed | 广东省 - 广州市 - 番禺区
u268 | 单元格 | Unnamed | 行业
u275 | 矩形 | Unnamed | 基本信息
u276 | 矩形 | Unnamed | ▴ 折叠
u277 | 矩形 | Unnamed | 集团大楼
u279 | 单元格 | Unnamed | 销售负责人
u280 | 单元格 | Unnamed | 小李
u281 | 单元格 | Unnamed | 销售部门
u282 | 单元格 | Unnamed | 广东1部
u283 | 单元格 | Unnamed | 协同人
u284 | 单元格 | Unnamed | 小吴
u290 | 矩形 | Unnamed | 跟进人员
u291 | 矩形 | Unnamed | ▴ 折叠
u292 | 矩形 | Unnamed | 小吴-广东1部
u294 | 单元格 | Unnamed | 公司决策人
u295 | 单元格 | Unnamed | 张总
u296 | 单元格 | Unnamed | 是否商机勾兑
u297 | 单元格 | Unnamed | 是
u298 | 单元格 | Unnamed | 是否签订战略协议
u299 | 单元格 | Unnamed | 否
u300 | 单元格 | Unnamed | 总监近期拜访时间
u301 | 单元格 | Unnamed | --
u302 | 单元格 | Unnamed | 是否子客户
u303 | 单元格 | Unnamed | 是
u304 | 单元格 | Unnamed | 父客户关联
u305 | 单元格 | Unnamed | 广州宏远
u306 | 单元格 | Unnamed | 合作系统
u307 | 单元格 | Unnamed | 全系统
u308 | 单元格 | Unnamed | 不合作原因
u309 | 单元格 | Unnamed | --
u310 | 单元格 | Unnamed | 是否参加总裁班
u311 | 单元格 | Unnamed | 是
u312 | 单元格 | Unnamed | 是否参加产品经理班
u313 | 单元格 | Unnamed | 否
u314 | 单元格 | Unnamed | 总裁班参加人
u315 | 单元格 | Unnamed | 吴立
u316 | 单元格 | Unnamed | 产品班参加人
u317 | 单元格 | Unnamed | --
u318 | 单元格 | Unnamed | 总裁班参加人电话
u319 | 单元格 | Unnamed | 139****2361
u320 | 单元格 | Unnamed | 产品班参加人电话
u321 | 单元格 | Unnamed | --
u325 | 矩形 | Unnamed | 关联信息
u326 | 矩形 | Unnamed | ▴ 折叠
u328 | 矩形 | Unnamed | 备注
u329 | 矩形 | Unnamed | --
u330 | 矩形 | Unnamed | 附件
u336 | 矩形 | Unnamed | 补充资料
u337 | 矩形 | Unnamed | ▴ 折叠
u339 | 单元格 | Unnamed | 统一社会信用代码
u340 | 单元格 | Unnamed | 91440106123123587X
u341 | 单元格 | Unnamed | 法定代表人
u342 | 单元格 | Unnamed | 张三
u343 | 单元格 | Unnamed | 成立时间
u344 | 单元格 | Unnamed | 2018-03-15
u345 | 单元格 | Unnamed | 注册资本
u346 | 单元格 | Unnamed | 1000万元
u347 | 单元格 | Unnamed | 经营范围
u348 | 单元格 | Unnamed | 弱电工程施工
u349 | 单元格 | Unnamed | 年产值
u350 | 单元格 | Unnamed | --
u351 | 单元格 | Unnamed | 人员规模
u355 | 单元格 | Unnamed | 公司地址
u362 | 矩形 | Unnamed | 工商信息
u363 | 矩形 | Unnamed | ▴ 折叠
u364 | 矩形 | Unnamed | --
u365 | 矩形 | Unnamed | 广东省广州市番禺区东环街1号
u367 | 单元格 | Unnamed | 创建人
u368 | 单元格 | Unnamed | 小李
u369 | 单元格 | Unnamed | 创建时间
u370 | 单元格 | Unnamed | 2026-06-05  17:42
u371 | 单元格 | Unnamed | 最后修改人
u372 | 单元格 | Unnamed | 小李
u373 | 单元格 | Unnamed | 最后修改时间
u374 | 单元格 | Unnamed | 2026-06-30  12:34
u378 | 矩形 | Unnamed | 系统信息
u379 | 矩形 | Unnamed | ▴ 折叠
u381 | 矩形 | Unnamed | 人脉关系单位
u383 | 矩形 | Unnamed | 湖南警官学院
u384 | 矩形 | Unnamed | 湖南工业大学
u385 | 矩形 | Unnamed | 长沙航天学校
u387 | 单元格 | Unnamed | 需求
u388 | 单元格 | Unnamed | 需求说明
u389 | 单元格 | Unnamed | 变更记录
u390 | 单元格 | Unnamed | 1. 页面说明
u393 | 单元格 | Unnamed | 2. 公共规则
u396 | 单元格 | Unnamed | 3. 公共头部与业务概览
u399 | 单元格 | Unnamed | 4. 跟进弹窗
u402 | 单元格 | Unnamed | 5. 客户信息页签
u405 | 矩形 | Unnamed | 关注
u406 | 矩形 | Unnamed | 标记重点客户
u407 | 矩形 | Unnamed | 按钮变化
u408 | 矩形 | Unnamed | 取消关注
u409 | 矩形 | Unnamed | 取消标记重点客户

205
.scratch/opp-customer-dependency/商机模块前置客户接口依赖分析报告.md

@ -0,0 +1,205 @@
# 商机模块前置客户接口依赖分析报告
> **生成日期**:2026-08-31
> **原型基准**:蓝湖 Axure「itc信息化业务中台web端 V1.0」**v29**(2026-08-28 14:39 GMT 最新版),OSS 公开直拉一手提取(非 MCP、非旧缓存)
> **分析焦点**:**A3-1-1-2-1 新增/编辑商机**页「客户信息」区(用户指定页,pageId `926458f1...`),辅证同族页 A3-1-1-2-4 添加关联客户弹窗、A3-1-1-1-2 客户信息 Tab
> **目的**:客户模块(A4,未建)开发**提前排期**,保证商机模块工程师**可正常联调**后端接口
> **范围纪律**:仅覆盖商机模块实际用到的客户能力,A4 完整功能(公海/总览/导入/合并/交割等 30+ 页)不在本报告
---
## 0. 结论速览
| 优先级 | 接口 | 一句话用途 |
|---|---|---|
| **P0** | `POST /api/customer/search` | 新增商机「关联客户*」搜索选择框的数据源(弹窗四维查询同源) |
| **P0** | `GET /api/customer/{id}/contacts` | 选中客户后「客户联系人」候选列表(按客户筛选) |
| **P0** | `GET /api/customer/{id}` | 选中客户/编辑回显时的客户基础信息带出 |
| **P1** | `GET /api/customer/contact/search` | 「商机关键联系人」全局搜索(带出所属公司) |
| **P1** | `POST /api/customer/quick-create` | 弹窗「+ 快速创建客户」入口 |
| **P2** | `GET /api/customer/{id}/detail` | 客户信息 Tab「查看客户详情」新窗口跳转 |
| 配套 | crm-dict 两个分组:`客户类型` / `客户角色` | 下拉选项数据(语义不同,勿合并) |
**P0 三件 = 新增商机表单提交主链路的硬依赖**:缺一,商机工程师无法走通「选客户 → 选联系人 → 提交」联调闭环。
---
## 1. 原型解析(一手证据)
### 1.1 A3-1-1-2-1 新增/编辑商机 · 客户信息区(用户指定页)
表单共 18 个字段(原型自带需求批注「3、字段说明」逐条登记),其中**客户信息区占 6 个**:
| # | 原型字段 | 控件类型 | 原型规则(批注原文摘要) | 依赖客户模块? |
|---|---|---|---|---|
| 13 | **商机关联联系人** | 搜索选择框 | 搜索并选择与当前商机相关的联系人;**选择后自动带出联系人所属公司等信息** | ✅ 联系人全局搜索 |
| 14 | **关联人所在公司** | 自动带出字段 | 展示已选联系人的所属公司;原则上不可手动修改 | ✅(随 13 带出) |
| 15 | **关联客户** | 搜索选择框 | **必填\***,「数据来源于客户管理模块」 | ✅ 客户搜索 ★核心 |
| 16 | **客户角色**(表单 label 写「客户类型」) | 下拉选择框 | **必填\***,选项来源于**客户角色字典** | ✅ 字典(crm-dict) |
| 17 | **客户联系人** | 搜索选择框 | 「候选联系人需**根据已选客户筛选**」 | ✅ 按客户查联系人 |
| 18 | **是否主要客户** | 下拉选择框 | **必填\***(是/否);同一商机原则上只能存在一个主要客户 | ✗ 商机侧逻辑 |
> 字段 12「甲方名称」为纯文本框(甲方是否明确=是时必填),**不依赖**客户模块,不入清单。
**交互联动**(批注「4、交互说明」):
- 交互 6「联系人搜索」:点击搜索打开联系人选择窗口,确认后自动回填**联系人、联系方式及所属公司**(服务字段 13/14)
- 交互 7「关联客户搜索」:点击搜索打开客户选择窗口,确认后回填客户名称,**并刷新客户联系人候选范围**(服务字段 15→17 级联)
**业务规则**(批注「5、业务规则&功能逻辑」):
- 规则 6:新增商机**至少关联一个客户**;编辑时可调整,需保证客户与联系人归属关系一致
- 规则 7:同一商机只能存在一个主要客户;修改后原主要客户自动降为普通关联
- 规则 9:重复商机校验可依据商机名称、**关联客户**、项目区域(商机侧逻辑,消费客户名)
**验收标准**(批注「6、原型体验及验收标准」):7「选择联系人后,联系方式及所属公司需正确带出」;8「选择关联客户后,客户联系人范围需同步更新」。
### 1.2 A3-1-1-2-4 添加关联客户弹窗(同族复用场景,商机详情·客户信息 Tab 入口)
与新增商机表单共用同一组客户接口,但查询维度更宽:
- **客户查询区**:客户名称 / 联系人 / 联系电话(模糊)+ 客户类型下拉(选项:全部客户类型/总包/工程商/投资方/设计院/集成商/投标公司,来源于**客户类型字典**)
- **搜索结果表 7 列**:选择(单选) / 客户名称 / 客户类型 / 地区(省市区) / 联系人(默认或主要联系人) / 联系电话(**按权限脱敏**) / 客户负责人
- **关联信息设置区**:客户角色\*(客户角色字典)/ 客户联系人(下拉,候选=**当前选中客户下的联系人**,切换客户后清空重选)/ 是否主要客户\*
- **「+ 快速创建客户」**:客户库不存在目标客户时进入快速创建流程,**创建成功后返回当前页并自动选中新建客户**(规则 7:快速创建的客户需**先写入客户管理模块**,再与商机建立关联)
- 规则 3:同一客户不得重复关联同一商机(商机侧已有错误码 66011 拦截)
### 1.3 A3-1-1-1-2 客户信息 Tab(展示场景,佐证出参列)
列:客户名称 / 客户类型 / 关键联系人 / 联系方式(脱敏) / 联系人职务 / 关系标记(主要意向客户/普通关联) / 操作(**查看客户详情**〔新窗口跳转〕/ 设为主要)。
---
## 2. 依赖识别汇总
| 商机侧触点 | 需要的客户模块能力 |
|---|---|
| 新增商机字段 15「关联客户\*」搜索 | 客户搜索(名称模糊,P0) |
| 新增商机字段 17「客户联系人」按客户筛选 | 按客户查联系人(P0) |
| 新增商机字段 13/14「商机关键联系人/关联人所在公司」 | 联系人全局搜索 + 带出公司(P1) |
| 弹窗查询区四维搜索(名/联系人/电话/类型) | 客户搜索扩展参数(并入 P0 接口) |
| 弹窗「+ 快速创建客户」 | 客户快速创建(P1) |
| Tab「查看客户详情」跳转 | 客户详情(P2) |
| 字段 16 + 弹窗「客户角色\*」 | crm-dict「客户角色」分组 |
| 弹窗「客户类型」筛选 + 结果列 | crm-dict「客户类型」分组 + 客户主数据属性 |
> **两个字典勿混淆**(原型即分开建模):**客户类型** = A4 客户主数据属性(客户是什么);**客户角色** = 客户在某个商机中的业务身份(客户在这个单子里干什么)。商机侧 `OpportunityCustomer.customerRole` 已建模为字典 code,选项值由产品录入。
---
## 3. 客户模块接口清单(提前开发项)
> 路径风格对齐现有工程(`/api/dict/group`、`/api/opportunity/customer` 均为 `/api/<域>/<资源>`);最终路径以客户模块立项时平台规范为准。
### P0-1 客户搜索(分页)
| 项 | 内容 |
|---|---|
| 接口 | `POST /api/customer/search` |
| 入参 | `keyword`(客户名称/联系人/联系电话,模糊,弹窗查询区三输入合一或拆分均可)、`customerType`(客户类型字典 code,筛选)、`page`/`size` |
| 出参 | `customerId`、`customerName`、`customerType`(code+名)、`regionName`(省市区拼接)、`contactName`(默认/主要联系人)、`contactPhone`(**按权限脱敏**)、`ownerName`(客户负责人)、`total` |
| 场景来源 | ① A3-1-1-2-1 字段 15「关联客户\*」搜索选择框(必填,批注明写「数据来源于客户管理模块」);② A3-1-1-2-4 弹窗客户查询区 + 搜索结果表 7 列 |
| 联调说明 | 商机侧现有 `POST /api/opportunity/customer/search` 为**快照池降级实现**(A4 未建,仅返回 customerId+customerName,SQL 从 opportunity_customer 自身去重取数,见 `OpportunityCustomerMapper.searchCandidatePool`)。客户模块本接口就位后商机侧**切真源、接口签名不变、出参列补齐**(代码注释已预留该口径,20260829 拍板)——前端联调路径不变 |
### P0-2 按客户查联系人
| 项 | 内容 |
|---|---|
| 接口 | `GET /api/customer/{customerId}/contacts` |
| 入参 | 路径参数 customerId |
| 出参 | 列表:`contactId`、`name`、`phone`(按权限脱敏)、`company`(所属公司)、`position`(职务,客户信息 Tab 有「联系人职务」列) |
| 场景来源 | ① A3-1-1-2-1 字段 17「客户联系人」——「候选联系人需根据已选客户筛选」+ 交互 7「选关联客户后刷新客户联系人候选范围」;② A3-1-1-2-4 弹窗「客户联系人」下拉——「候选范围为当前选中客户下的联系人」「切换客户后原客户联系人需清空并重新选择」 |
| 联调说明 | 空客户时前端不发请求(字段 17 依赖字段 15 先选中);返回的 `company` 同时可服务字段 14 的展示 |
### P0-3 客户基础信息查询
| 项 | 内容 |
|---|---|
| 接口 | `GET /api/customer/{customerId}` |
| 入参 | 路径参数 customerId |
| 出参 | `customerId`、`customerName`、`customerType`(code+名)、`regionName`、`defaultContactName`、`defaultContactPhone`(脱敏) |
| 场景来源 | ① A3-1-1-2-1 选中关联客户后带出客户维度(类型/地区回显);② **编辑回显**——批注交互 2「系统自动加载当前商机已有数据并回填至对应字段」;③ 商机侧 `customer/add` 服务端校验 customerId 有效性(快照池模式下无校验对象,A4 后补强校验) |
| 联调说明 | 出参最小集 = 新增商机客户信息区需要带出的全部客户维度;不必返回 A4 全量 9-tab 详情 |
### P1-1 联系人全局搜索
| 项 | 内容 |
|---|---|
| 接口 | `GET /api/customer/contact/search?keyword=` |
| 入参 | `keyword`(联系人姓名/电话模糊) |
| 出参 | 列表:`contactId`、`name`、`phone`(脱敏)、`company`(所属公司名)、`customerId` |
| 场景来源 | A3-1-1-2-1 字段 13「商机关联联系人」搜索选择框——**不依赖先选客户**,独立搜索;批注「选择后自动带出联系人所属公司等信息」+ 交互 6「确认后自动回填联系人、联系方式及所属公司」+ 字段 14「关联人所在公司」自动带出不可手改 |
| 备注 | 该字段为 **v29 原型新增,PRD(基于旧版)无对应物**——商机主表也需补建模(见附录 A-3),客户模块侧仅保证接口可查 |
| 定级理由 | 新增商机主链路(选客户→选客户联系人→提交)不含此字段也走得通(非必填),完整交互需要,故 P1 |
### P1-2 快速创建客户
| 项 | 内容 |
|---|---|
| 接口 | `POST /api/customer/quick-create` |
| 入参 | `customerName`\*、`customerType`\*(字典 code)、`contactName`?、`contactPhone`?、`regionCode`? |
| 出参 | `customerId`、`customerName`(供弹窗自动选中并回填) |
| 场景来源 | A3-1-1-2-4 弹窗「+ 快速创建客户」——批注字段 3「当客户库中不存在目标客户时,用于进入客户快速创建流程」、交互 8「创建成功后可返回当前页面并自动选中新建客户」、规则 7「快速创建的客户需先写入客户管理模块,再与当前商机建立关联」 |
| 定级理由 | 新增商机**表单本身无快速创建入口**(仅弹窗有),不阻塞表单联调,故 P1。注意是最小字段集,**不要**实现成 A4 完整新增客户表单(a4-3-3-1,那套含查重/地区/行业等全量字段) |
### P2-1 客户详情(跳转目标)
| 项 | 内容 |
|---|---|
| 接口 | `GET /api/customer/{customerId}/detail`(或前端路由直达 A4 页面,后端出数据) |
| 场景来源 | A3-1-1-1-2 客户信息 Tab 操作列「查看客户详情」——批注明写「1、查看详情:新窗口,跳转客户详情」 |
| 定级理由 | 展示增强,不阻塞任何商机写链路联调,P2。可先用 P0-3 基础信息接口顶替过渡 |
### 配套字典(crm-dict 侧,非客户模块接口但联调必需)
| 字典分组 | 建议编码 | 选项(原型实样) | 消费方 |
|---|---|---|---|
| 客户类型 | `customer_type` | 总包 / 工程商 / 投资方 / 设计院 / 集成商 / 投标公司 | 弹窗客户类型筛选;客户主数据属性;客户信息 Tab「客户类型」列 |
| 客户角色 | `customer_role` | 投标公司 / 总包 / 工程商…(产品定) | 新增商机字段 16;弹窗「客户角色\*」;商机侧 `opportunity_customer.customer_role` 已建列 |
---
## 4. 优先级总表
| 优先级 | 接口 | 判定依据 |
|---|---|---|
| **P0** | `POST /api/customer/search` | 新增商机表单必填项(关联客户\*)唯一数据源;无此接口表单无法提交 |
| **P0** | `GET /api/customer/{id}/contacts` | 字段 17 级联数据源(选客户后刷新联系人范围);验收标准 8 |
| **P0** | `GET /api/customer/{id}` | 选中回显 + 编辑回显 + 服务端 id 校验 |
| **P1** | `GET /api/customer/contact/search` | 字段 13/14(v29 增量,非必填)完整交互 |
| **P1** | `POST /api/customer/quick-create` | 弹窗快速创建入口(表单无此入口,不阻塞) |
| **P2** | `GET /api/customer/{id}/detail` | Tab 跳转详情,展示增强 |
| **P0\*** | crm-dict `customer_type` + `customer_role` 分组 | 字典无数据 = 必填下拉开天窗,与 P0 接口同批就位 |
---
## 5. 商机侧配套缺口(联调双向对齐,附录)
客户模块提前开发的同时,商机侧需同步对齐以下缺口(均为商机模块工作项,不占客户模块排期):
1. **`POST /api/opportunity`(新增商机)入参扩展**:v29 表单要求客户族字段(customerId\* / customerRole\* / isPrimaryIntended\* / customerContactId / keyContact 相关);PRD §2.1 仅拍板「意向客户必填落 opportunity_customer 首条」,需按 v29 对齐入参契约。
2. **`OpportunityCustomer` 子表/DTO 补「客户联系人」**:表单字段 17、弹窗字段 12 均选客户联系人;当前 `OpportunityCustomerAddDTO` 注释明写「客户联系人候选归客户域(A4 未建,暂不收)」——A4 就位后补 `customer_contact_id` + 快照列并收参。
3. **「商机关键联系人/关联人所在公司」建模**(v29 增量,PRD 无):字段 13/14 在商机主表无对应列,需产品拍板落主表(key_contact_id + 公司快照)或独立子表。
4. **快照池切真源**:`OpportunityCustomerMapper.searchCandidatePool` 切 `customer` 真表,接口签名不变(已拍板口径)。
5. 线索→商机 port(`CreateOpportunityCmd.customerId`)已就位,无缺口。
## 6. 待确认项(⚠ 不阻塞接口排期)
1. 字段 13「商机关联联系人」是否要求归属关联客户?(批注独立搜索框 vs 规则 6「客户与联系人归属关系一致」语义有歧义,建议按独立全局联系人实现,产品终审)
2. 客户联系人是否允许暂缺?(字段 17 及弹窗字段 12 均无必填红星,倾向可后补)
3. 电话脱敏口径:后端按权限出参脱敏 vs 出明文前端按权限脱敏(弹窗规则 8「根据当前用户权限展示完整号码或脱敏号码」)——建议后端出参脱敏(对齐现有工程联系方式脱敏惯例),需拍板
4. 重复商机校验(规则 9)的触发时机与阈值(商机侧逻辑,联调时对齐)
---
## 附:证据资产索引
| 资产 | 位置 |
|---|---|
| v29 清单(182 页) | `.scratch/lanhu-latest/axure-v29.json` |
| 新增/编辑商机页文本提取 | `.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1__新增_编辑商机.txt` |
| 新增/编辑商机页原始 HTML + 需求批注全文 | `.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-1_raw.html`(批注提取脚本 `extract-annotations.mjs`) |
| 添加关联客户弹窗文本 + 原始 HTML + 批注全文 | `.scratch/lanhu-latest/v29-customer-pages/a3-1-1-2-4________.txt` / `a3-1-1-2-4_raw.html`(`extract-2-4-annotations.mjs`) |
| 客户信息 Tab / 其余 8 页文本 | `.scratch/lanhu-latest/v29-customer-pages/` |
| 批量拉取脚本(可复跑) | `.scratch/lanhu-latest/fetch-v29-customer-pages.mjs` |
| 商机侧现状代码 | `crm-opportunity/.../OpportunitySubController.java`、`OpportunityCustomerAddDTO.java`、`OpportunityCustomerMapper.java` |
_报告基于 v29 原型一手提取 + 商机 PRD(冻结版)+ crm-opportunity 现状代码三方交叉核对;如原型再更新,重跑 `fetch-v29-customer-pages.mjs` 刷新证据。_

11
docs/adr/0024-bruno-docs-grouping-by-menu.md

@ -35,3 +35,14 @@
- 不设全量总览文件夹(全量副本复辟禁止)。
- 决策 2 强化:tags 即页面归属唯一真相源;gen_bruno.py 忠实读 tags(MENU_BIND 仅做参数值绑定,不再做副本展开)。
- 决策 1/4/5/6 不变。产物重建于 `D:\code\crm-api-docs`(Bruno 2 单仓,前端实际消费仓;e 盘 workspace 布局废弃)。
## 修订(2026-08-31,api-docs-reorg effort)
**一级目录对齐蓝湖原型 A 区**:v29 快照(2026-08-31)冻结为权威树(`.scratch/api-docs-reorg/lanhu-tree-v29.md`),文档仓一级目录改为 A0 登录界面 / A1 销售工作台(首页)/ A1X 工作计划 / A2 线索管理 / A3 商机管理 / A4 客户管理 / A5 项目管理 / A6 数据看板 / A7 后台管理 / 公共依赖 / 调试(验证专用),与原型 A 区分区一一对应;二级及更深目录不做重排。
1. **深 tag 纪律**:tag = 完整页面路径——一级 = 分区原文,二级 = 页面,更深 = 页面内分组(最深 4 级,如 `A7 后台管理/商机规则/公海规则`)。tag 原文即文档目录路径(bruno-sync 身份映射),swagger/knife4j 分组同构。决策 2 的 `menuBindings`(viewType/scopeKey 绑定)不变,四键前缀随本修订换为 `A2 线索管理/…`
2. **商机规则归 A7**(决策 1 页面归属修正):v29 将 A3-4 商机管理设置整体迁至 A7-3-2 商机规则,后台为唯一入口,阶段模板 / 方案卡模板 / 公海规则三组接口改挂 `A7 后台管理/商机规则/{阶段模板,方案卡模板,公海规则}`。线索规则接口(LeadPoolController)对称裁决为**双归属**:`A2 线索管理/线索设置`(主本,功能页所在)+ `A7 后台管理/线索规则`(副本,A7-3-1 为 A2-1-5 的引用页)。
3. **双归属 = 方法级多值 `@Operation(tags)`**:单接口挂 N 个 tag 即在 N 个页面文件夹各有一份副本,由 bruno-sync「多值全取」幂等输出,无需生成器特判。
4. **URL 回退通道关闭**:无 tag 端点不再按 URL 兜底分组——全部端点必须显式挂深 tag(SystemController 10 端点已补挂,`system/` 游离顶级目录消灭);「进集合的端点必挂 tag」成为一眼可审纪律。
5. **新接口挂载纪律**:新 Controller 一律按页面全路径挂 tag——1:1 页面控制器可用类级 `@Tag`,跨页 / 双归属用方法级多值 tags;类级 `@Tag` 与方法级 `@Operation(tags)` 互斥,并存会因「多值全取」产生双份副本;无真实页面入口的接口不挂页签(2026-08-17 修订纪律延续)。
6. **机制联动**:bruno-sync 注解驱动通道为唯一权威机制;手工生成器家族(`gen_bruno.py` / `gen_opp_*.py` / `gen_v2_*.py` / `bru_lib.py`)退役留档、不再运行,其 `MENUS` 常量同源义务随之作废;分区索引 README 为人工维护件(bruno-sync 不生成 README)。文档仓现路径 `E:\code\crm-api-docs`(2026-08-31 换机记录,前值 `D:\code\crm-api-docs` 作废)。

181
logs/crm-app.log

@ -12,6 +12,7 @@
2026-08-31T02:00:00.405+08:00 INFO 37460 --- [crm-app] [scheduling-1] com.crm.lead.job.LeadMaintenanceJob : [线索维护Job] 失效完成:0 条线索已失效
2026-08-31T02:00:00.442+08:00 INFO 37460 --- [crm-app] [scheduling-1] com.crm.lead.job.LeadMaintenanceJob : [线索维护Job] 回收完成:0 条线索已回收
2026-08-31T02:00:00.443+08:00 INFO 37460 --- [crm-app] [scheduling-1] com.crm.lead.job.LeadMaintenanceJob : [线索维护Job] 全部完成
<<<<<<< Updated upstream
2026-08-31T09:29:05.298+08:00 INFO 41888 --- [crm-app] [main] com.crm.app.CrmAppApplication : Starting CrmAppApplication v1.0.0-SNAPSHOT using Java 17.0.15 with PID 41888 (D:\code\crm-backend-matt\crm-app\target\crm-app-1.0.0-SNAPSHOT.jar started by luowj in D:\code\crm-backend-matt)
2026-08-31T09:29:05.315+08:00 INFO 41888 --- [crm-app] [main] com.crm.app.CrmAppApplication : The following 1 profile is active: "verify"
2026-08-31T09:29:07.550+08:00 INFO 41888 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
@ -862,3 +863,183 @@ This generated password is for development use only. Your security configuration
2026-08-31T16:10:22.350+08:00 WARN 26744 --- [crm-app] [http-nio-8080-exec-6] c.c.a.controller.DebugTokenController : [verify] 为 userId=739564171091247104 签发调试 token
2026-08-31T16:10:48.067+08:00 WARN 26744 --- [crm-app] [http-nio-8080-exec-2] c.c.a.controller.DebugTokenController : [verify] 为 userId=744842565802524672 签发调试 token
2026-08-31T17:18:02.318+08:00 WARN 26744 --- [crm-app] [http-nio-8080-exec-9] c.c.a.controller.DebugTokenController : [verify] 为 userId=744842565802524672 签发调试 token
=======
2026-08-31T03:00:00.000+08:00 INFO 37460 --- [crm-app] [scheduling-1] c.c.o.job.OpportunityMaintenanceJob : [商机维护Job] 开始,now=2026-08-31T03:00:00.000911700
2026-08-31T03:00:00.058+08:00 INFO 37460 --- [crm-app] [scheduling-1] c.c.o.job.OpportunityMaintenanceJob : [商机维护Job] 提醒完成:0 条待发记录
2026-08-31T03:00:00.060+08:00 INFO 37460 --- [crm-app] [scheduling-1] c.c.o.job.OpportunityMaintenanceJob : [商机维护Job] 回收完成:0 条商机
2026-08-31T03:00:00.062+08:00 INFO 37460 --- [crm-app] [scheduling-1] c.c.o.job.OpportunityMaintenanceJob : [商机维护Job] 全部完成
2026-08-31T03:00:00.101+08:00 INFO 37460 --- [crm-app] [scheduling-1] c.crm.file.task.OrphanChunkCleanupTask : 孤儿临时分片清理完成,删除 0 个对象
>>>>>>> Stashed changes
2026-08-31T21:19:51.582+08:00 INFO 31368 --- [crm-app] [main] com.crm.app.CrmAppApplication : Starting CrmAppApplication v1.0.0-SNAPSHOT using Java 17.0.13 with PID 31368 (E:\code\crm-backend-matt\crm-app\target\crm-app-1.0.0-SNAPSHOT.jar started by Administrator in E:\code\crm-backend-matt)
2026-08-31T21:19:51.585+08:00 INFO 31368 --- [crm-app] [main] com.crm.app.CrmAppApplication : No active profile set, falling back to 1 default profile: "default"
2026-08-31T21:19:53.006+08:00 INFO 31368 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2026-08-31T21:19:53.008+08:00 INFO 31368 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2026-08-31T21:19:53.041+08:00 INFO 31368 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 24 ms. Found 0 JPA repository interfaces.
2026-08-31T21:19:53.060+08:00 INFO 31368 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2026-08-31T21:19:53.062+08:00 INFO 31368 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
2026-08-31T21:19:53.076+08:00 INFO 31368 --- [crm-app] [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 3 ms. Found 0 Redis repository interfaces.
2026-08-31T21:19:53.238+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'crmBaseMapper' and 'com.crm.base.mapper.CrmBaseMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.239+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'authIdentityMapper' and 'com.crm.auth.mapper.AuthIdentityMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.239+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'authUserMapper' and 'com.crm.auth.mapper.AuthUserMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.239+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysDataScopeModuleMapper' and 'com.crm.auth.mapper.SysDataScopeModuleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.239+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysDeptMapper' and 'com.crm.auth.mapper.SysDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.239+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysMenuMapper' and 'com.crm.auth.mapper.SysMenuMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.239+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRoleDataScopeMapper' and 'com.crm.auth.mapper.SysRoleDataScopeMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRoleMapper' and 'com.crm.auth.mapper.SysRoleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRoleMenuMapper' and 'com.crm.auth.mapper.SysRoleMenuMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysUserDeptMapper' and 'com.crm.auth.mapper.SysUserDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysUserRoleMapper' and 'com.crm.auth.mapper.SysUserRoleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'fileInfoMapper' and 'com.crm.file.mapper.FileInfoMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictGroupDefaultMapper' and 'com.crm.dict.mapper.DictGroupDefaultMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictGroupMapper' and 'com.crm.dict.mapper.DictGroupMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictItemMapper' and 'com.crm.dict.mapper.DictItemMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictRefCountMapper' and 'com.crm.dict.mapper.DictRefCountMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolMapper' and 'com.crm.rule.mapper.LeadPoolMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.240+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolMemberMapper' and 'com.crm.rule.mapper.LeadPoolMemberMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.241+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolProvinceMapper' and 'com.crm.rule.mapper.LeadPoolProvinceMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.241+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolRegionMapper' and 'com.crm.rule.mapper.LeadPoolRegionMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.241+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityPoolRuleDeptMapper' and 'com.crm.rule.mapper.OpportunityPoolRuleDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.241+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityPoolRuleMapper' and 'com.crm.rule.mapper.OpportunityPoolRuleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.241+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardFieldMapper' and 'com.crm.rule.mapper.OpportunitySchemeCardFieldMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.241+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardTemplateDeptMapper' and 'com.crm.rule.mapper.OpportunitySchemeCardTemplateDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardTemplateMapper' and 'com.crm.rule.mapper.OpportunitySchemeCardTemplateMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeFieldDefMapper' and 'com.crm.rule.mapper.OpportunitySchemeFieldDefMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageNodeMapper' and 'com.crm.rule.mapper.OpportunityStageNodeMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageTemplateDeptMapper' and 'com.crm.rule.mapper.OpportunityStageTemplateDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageTemplateMapper' and 'com.crm.rule.mapper.OpportunityStageTemplateMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRegionMapper' and 'com.crm.rule.mapper.SysRegionMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'userColumnPreferenceMapper' and 'com.crm.preference.mapper.UserColumnPreferenceMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'userSavedViewMapper' and 'com.crm.preference.mapper.UserSavedViewMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadAttachmentMapper' and 'com.crm.lead.mapper.LeadAttachmentMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadFeedbackMapper' and 'com.crm.lead.mapper.LeadFeedbackMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadFollowMapper' and 'com.crm.lead.mapper.LeadFollowMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadHistoryMapper' and 'com.crm.lead.mapper.LeadHistoryMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadMapper' and 'com.crm.lead.mapper.LeadMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityAttachmentMapper' and 'com.crm.opportunity.mapper.OpportunityAttachmentMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityCustomerMapper' and 'com.crm.opportunity.mapper.OpportunityCustomerMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityFocusMapper' and 'com.crm.opportunity.mapper.OpportunityFocusMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.242+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityFollowMapper' and 'com.crm.opportunity.mapper.OpportunityFollowMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityMapper' and 'com.crm.opportunity.mapper.OpportunityMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityOplogMapper' and 'com.crm.opportunity.mapper.OpportunityOplogMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityPendingNoticeMapper' and 'com.crm.opportunity.mapper.OpportunityPendingNoticeMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardMapper' and 'com.crm.opportunity.mapper.OpportunitySchemeCardMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardValueMapper' and 'com.crm.opportunity.mapper.OpportunitySchemeCardValueMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySiteSurveyMapper' and 'com.crm.opportunity.mapper.OpportunitySiteSurveyMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageHistoryMapper' and 'com.crm.opportunity.mapper.OpportunityStageHistoryMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStatusHistoryMapper' and 'com.crm.opportunity.mapper.OpportunityStatusHistoryMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityTeamMapper' and 'com.crm.opportunity.mapper.OpportunityTeamMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityViewLogMapper' and 'com.crm.opportunity.mapper.OpportunityViewLogMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.243+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityWorkPlanMapper' and 'com.crm.opportunity.mapper.OpportunityWorkPlanMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.244+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : No MyBatis mapper was found in '[com.crm.**.mapper]' package. Please check your configuration.
2026-08-31T21:19:53.249+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'crmBaseMapper' and 'com.crm.base.mapper.CrmBaseMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.250+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'authIdentityMapper' and 'com.crm.auth.mapper.AuthIdentityMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.250+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'authUserMapper' and 'com.crm.auth.mapper.AuthUserMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.250+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysDataScopeModuleMapper' and 'com.crm.auth.mapper.SysDataScopeModuleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.250+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysDeptMapper' and 'com.crm.auth.mapper.SysDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysMenuMapper' and 'com.crm.auth.mapper.SysMenuMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRoleDataScopeMapper' and 'com.crm.auth.mapper.SysRoleDataScopeMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRoleMapper' and 'com.crm.auth.mapper.SysRoleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRoleMenuMapper' and 'com.crm.auth.mapper.SysRoleMenuMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysUserDeptMapper' and 'com.crm.auth.mapper.SysUserDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysUserRoleMapper' and 'com.crm.auth.mapper.SysUserRoleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'fileInfoMapper' and 'com.crm.file.mapper.FileInfoMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictGroupDefaultMapper' and 'com.crm.dict.mapper.DictGroupDefaultMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictGroupMapper' and 'com.crm.dict.mapper.DictGroupMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.251+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictItemMapper' and 'com.crm.dict.mapper.DictItemMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'dictRefCountMapper' and 'com.crm.dict.mapper.DictRefCountMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolMapper' and 'com.crm.rule.mapper.LeadPoolMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolMemberMapper' and 'com.crm.rule.mapper.LeadPoolMemberMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolProvinceMapper' and 'com.crm.rule.mapper.LeadPoolProvinceMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadPoolRegionMapper' and 'com.crm.rule.mapper.LeadPoolRegionMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityPoolRuleDeptMapper' and 'com.crm.rule.mapper.OpportunityPoolRuleDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityPoolRuleMapper' and 'com.crm.rule.mapper.OpportunityPoolRuleMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardFieldMapper' and 'com.crm.rule.mapper.OpportunitySchemeCardFieldMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.252+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardTemplateDeptMapper' and 'com.crm.rule.mapper.OpportunitySchemeCardTemplateDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardTemplateMapper' and 'com.crm.rule.mapper.OpportunitySchemeCardTemplateMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeFieldDefMapper' and 'com.crm.rule.mapper.OpportunitySchemeFieldDefMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageNodeMapper' and 'com.crm.rule.mapper.OpportunityStageNodeMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageTemplateDeptMapper' and 'com.crm.rule.mapper.OpportunityStageTemplateDeptMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageTemplateMapper' and 'com.crm.rule.mapper.OpportunityStageTemplateMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'sysRegionMapper' and 'com.crm.rule.mapper.SysRegionMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'userColumnPreferenceMapper' and 'com.crm.preference.mapper.UserColumnPreferenceMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'userSavedViewMapper' and 'com.crm.preference.mapper.UserSavedViewMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadAttachmentMapper' and 'com.crm.lead.mapper.LeadAttachmentMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadFeedbackMapper' and 'com.crm.lead.mapper.LeadFeedbackMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.253+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadFollowMapper' and 'com.crm.lead.mapper.LeadFollowMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadHistoryMapper' and 'com.crm.lead.mapper.LeadHistoryMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'leadMapper' and 'com.crm.lead.mapper.LeadMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityAttachmentMapper' and 'com.crm.opportunity.mapper.OpportunityAttachmentMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityCustomerMapper' and 'com.crm.opportunity.mapper.OpportunityCustomerMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityFocusMapper' and 'com.crm.opportunity.mapper.OpportunityFocusMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityFollowMapper' and 'com.crm.opportunity.mapper.OpportunityFollowMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityMapper' and 'com.crm.opportunity.mapper.OpportunityMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityOplogMapper' and 'com.crm.opportunity.mapper.OpportunityOplogMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.254+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityPendingNoticeMapper' and 'com.crm.opportunity.mapper.OpportunityPendingNoticeMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardMapper' and 'com.crm.opportunity.mapper.OpportunitySchemeCardMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySchemeCardValueMapper' and 'com.crm.opportunity.mapper.OpportunitySchemeCardValueMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunitySiteSurveyMapper' and 'com.crm.opportunity.mapper.OpportunitySiteSurveyMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStageHistoryMapper' and 'com.crm.opportunity.mapper.OpportunityStageHistoryMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityStatusHistoryMapper' and 'com.crm.opportunity.mapper.OpportunityStatusHistoryMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityTeamMapper' and 'com.crm.opportunity.mapper.OpportunityTeamMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityViewLogMapper' and 'com.crm.opportunity.mapper.OpportunityViewLogMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : Skipping MapperFactoryBean with name 'opportunityWorkPlanMapper' and 'com.crm.opportunity.mapper.OpportunityWorkPlanMapper' mapperInterface. Bean already defined with the same name!
2026-08-31T21:19:53.255+08:00 WARN 31368 --- [crm-app] [main] o.m.s.mapper.ClassPathMapperScanner : No MyBatis mapper was found in '[com.crm.**.mapper]' package. Please check your configuration.
2026-08-31T21:19:54.112+08:00 INFO 31368 --- [crm-app] [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http)
2026-08-31T21:19:54.134+08:00 INFO 31368 --- [crm-app] [main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2026-08-31T21:19:54.135+08:00 INFO 31368 --- [crm-app] [main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.31]
2026-08-31T21:19:54.185+08:00 INFO 31368 --- [crm-app] [main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2026-08-31T21:19:54.185+08:00 INFO 31368 --- [crm-app] [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2531 ms
2026-08-31T21:19:54.634+08:00 INFO 31368 --- [crm-app] [main] com.crm.auth.config.PermissionConfig : 数据权限受控表扫描完成:0 张
2026-08-31T21:19:54.753+08:00 INFO 31368 --- [crm-app] [main] com.crm.base.config.CustomIdGenerator : 雪花ID生成器初始化完成,workerId=0, datacenterId=0
2026-08-31T21:19:55.390+08:00 INFO 31368 --- [crm-app] [main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2026-08-31T21:19:55.460+08:00 INFO 31368 --- [crm-app] [main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.5.3.Final
2026-08-31T21:19:55.500+08:00 INFO 31368 --- [crm-app] [main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled
2026-08-31T21:19:55.831+08:00 INFO 31368 --- [crm-app] [main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer
2026-08-31T21:19:55.868+08:00 INFO 31368 --- [crm-app] [main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2026-08-31T21:19:56.525+08:00 INFO 31368 --- [crm-app] [main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@22195d06
2026-08-31T21:19:56.527+08:00 INFO 31368 --- [crm-app] [main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2026-08-31T21:19:56.607+08:00 WARN 31368 --- [crm-app] [main] org.hibernate.orm.deprecation : HHH90000025: MySQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default)
2026-08-31T21:19:58.218+08:00 INFO 31368 --- [crm-app] [main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration)
2026-08-31T21:20:08.633+08:00 INFO 31368 --- [crm-app] [main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2026-08-31T21:20:09.015+08:00 WARN 31368 --- [crm-app] [main] c.c.a.controller.DebugTokenController : ============================================================
2026-08-31T21:20:09.015+08:00 WARN 31368 --- [crm-app] [main] c.c.a.controller.DebugTokenController : 调试 token 接口 /api/auth/debug/token 已启用(verify profile)
2026-08-31T21:20:09.015+08:00 WARN 31368 --- [crm-app] [main] c.c.a.controller.DebugTokenController : 严禁用于生产环境!任何知道 userId 的人可冒充该用户。
2026-08-31T21:20:09.016+08:00 WARN 31368 --- [crm-app] [main] c.c.a.controller.DebugTokenController : 参见 docs/adr/0014-verify-profile-debug-token-endpoint.md
2026-08-31T21:20:09.016+08:00 WARN 31368 --- [crm-app] [main] c.c.a.controller.DebugTokenController : ============================================================
2026-08-31T21:20:10.780+08:00 WARN 31368 --- [crm-app] [main] .s.s.UserDetailsServiceAutoConfiguration :
Using generated security password: ba6f77c8-2da1-4c5a-92f4-ad3908fc255a
This generated password is for development use only. Your security configuration must be updated before running your application in production.
2026-08-31T21:20:10.800+08:00 INFO 31368 --- [crm-app] [main] r$InitializeUserDetailsManagerConfigurer : Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager
2026-08-31T21:20:11.878+08:00 INFO 31368 --- [crm-app] [main] c.c.a.c.DataScopeModuleStartupValidator : 数据权限模块校验通过:0 张受控表,4 个注册模块
2026-08-31T21:20:11.914+08:00 INFO 31368 --- [crm-app] [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port 8080 (http) with context path '/'
2026-08-31T21:20:11.947+08:00 INFO 31368 --- [crm-app] [main] com.crm.app.CrmAppApplication : Started CrmAppApplication in 20.91 seconds (process running for 21.492)
2026-08-31T21:20:11.952+08:00 INFO 31368 --- [crm-app] [main] com.crm.auth.config.DataInitializer : 执行权限数据初始化检查...
2026-08-31T21:20:12.766+08:00 INFO 31368 --- [crm-app] [main] com.crm.auth.config.DataInitializer : 权限数据初始化检查完成
2026-08-31T21:20:12.767+08:00 INFO 31368 --- [crm-app] [main] c.c.d.config.DictPermissionInitializer : 执行数据字典权限种子化检查...
2026-08-31T21:20:13.191+08:00 INFO 31368 --- [crm-app] [main] c.c.d.config.DictPermissionInitializer : 数据字典权限种子化检查完成:10 个权限点
2026-08-31T21:20:13.191+08:00 INFO 31368 --- [crm-app] [main] c.c.r.config.RulePermissionInitializer : 执行线索规则权限种子化检查(仅菜单)...
2026-08-31T21:20:13.305+08:00 INFO 31368 --- [crm-app] [main] c.c.r.config.RulePermissionInitializer : 线索规则权限种子化检查完成:仅菜单(0 个 button)
2026-08-31T21:20:13.305+08:00 INFO 31368 --- [crm-app] [main] c.c.l.config.LeadPermissionInitializer : 执行线索管理权限种子化检查(仅菜单)...
2026-08-31T21:20:13.735+08:00 INFO 31368 --- [crm-app] [main] c.c.l.config.LeadPermissionInitializer : 线索管理权限种子化检查完成:4 个菜单(0 个 button)
2026-08-31T21:20:13.735+08:00 INFO 31368 --- [crm-app] [main] c.crm.rule.config.RegionDataInitializer : 执行行政区划全量种子导入检查...
2026-08-31T21:20:14.724+08:00 INFO 31368 --- [crm-app] [main] c.crm.rule.config.RegionDataInitializer : 行政区划种子导入完成:对账 3432 行(省 34 / 市 342 / 区 3056),存量 3432 行,新增 0 行
2026-08-31T21:20:14.724+08:00 INFO 31368 --- [crm-app] [main] r.c.OpportunityRulePermissionInitializer : 执行商机规则权限种子化检查(仅菜单)...
2026-08-31T21:20:15.053+08:00 INFO 31368 --- [crm-app] [main] r.c.OpportunityRulePermissionInitializer : 商机规则权限种子化检查完成:仅菜单(0 个 button)
2026-08-31T21:20:15.053+08:00 INFO 31368 --- [crm-app] [main] tunityStageTemplatePermissionInitializer : 执行商机阶段模板权限种子化检查(仅菜单)...
2026-08-31T21:20:15.158+08:00 INFO 31368 --- [crm-app] [main] tunityStageTemplatePermissionInitializer : 商机阶段模板权限种子化检查完成:仅菜单(0 个 button)
2026-08-31T21:20:15.158+08:00 INFO 31368 --- [crm-app] [main] c.c.r.config.SchemeFieldDefInitializer : 执行方案卡系统字段库种子化检查...
2026-08-31T21:20:15.174+08:00 INFO 31368 --- [crm-app] [main] c.c.r.config.SchemeFieldDefInitializer : 方案卡系统字段库种子化检查完成:现存 16 个,新增 0 个
2026-08-31T21:20:15.188+08:00 INFO 31368 --- [crm-app] [main] c.c.r.config.SchemeFieldDefInitializer : 方案卡兜底模板已存在(code=OPP_SCHEME_TPL_01,含已停用),跳过种子化
2026-08-31T21:20:15.189+08:00 INFO 31368 --- [crm-app] [main] ySchemeCardTemplatePermissionInitializer : 执行方案卡模板权限种子化检查(仅菜单)...
2026-08-31T21:20:15.294+08:00 INFO 31368 --- [crm-app] [main] ySchemeCardTemplatePermissionInitializer : 方案卡模板权限种子化检查完成:仅菜单(0 个 button)
2026-08-31T21:20:15.309+08:00 INFO 31368 --- [crm-app] [main] c.c.r.config.StageTemplateInitializer : 默认阶段模板已存在(code=OPP_STAGE_TPL_01,含已停用),跳过种子化
2026-08-31T21:20:15.309+08:00 INFO 31368 --- [crm-app] [main] c.crm.dict.config.DictDataInitializer : 执行内置字典幂等初始化检查...
2026-08-31T21:20:25.517+08:00 INFO 31368 --- [crm-app] [main] c.crm.dict.config.DictDataInitializer : 内置字典幂等初始化检查完成:22 个分组
2026-08-31T21:20:25.708+08:00 WARN 31368 --- [crm-app] [main] com.crm.file.config.MinioConfig : MinIO bucket [crm] 初始化失败,文件功能可能不可用:The Access Key Id you provided does not exist in our records.
2026-08-31T21:21:02.746+08:00 INFO 31368 --- [crm-app] [http-nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
2026-08-31T21:21:02.746+08:00 INFO 31368 --- [crm-app] [http-nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2026-08-31T21:21:02.747+08:00 INFO 31368 --- [crm-app] [http-nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 1 ms
2026-08-31T21:21:04.398+08:00 INFO 31368 --- [crm-app] [http-nio-8080-exec-1] o.springdoc.api.AbstractOpenApiResource : Init duration for springdoc-openapi is: 1596 ms

1
logs/t04-run.log

@ -0,0 +1 @@
^C
Loading…
Cancel
Save