Sisyphus
|
eb15849168
|
feat: 询价标题AI压缩 + 采集器品类化 + 询价搜索与品类多选框
- TitleCompressorService: 发布前超长标题(>50字)调 MiniMax 压缩(保留公司名+物料+采购类型), JSON结构化输出对抗推理模型思考噪音, 失败硬截断兜底
- publishToDirev 集成标题压缩, 保留原50字预校验作为防御
- crawler resolveKeywords: 采集器配置优先按关联品类展开关键词库, 中电建每关键词独立状态文件
- InquiryPage: 新增关键词搜索(fSearch → GET /api/leads?search=)
- RuleCenterPage: 采集器配置由 keywords 改为品类多选框(categories JSON数组)
|
2026-09-30 09:34:58 +08:00 |
|
Sisyphus
|
f12722eed9
|
feat: 关键词库管理UI + 品类CRUD完善
|
2026-07-23 14:45:46 +08:00 |
|
Sisyphus
|
072696321e
|
fix(cron): 统一为 6 字段格式兼容 cron@4.4.0
【事故修复】
REPLACE(schedule, ' 1-5', '') 把 '0 8 * * 1-5' 损坏为 '0 8 * *'(4 字段,少 2 段),
cron v4.4.0 解析时报 Too few fields → API 崩溃循环重启 533 次。
【修复】
- 生产 DB: 中电建 0 0 8 * * * / 新矿 0 5 8 * * * (6 字段,含秒位)
- seed.ts: 同步修正
- CRON_PRESETS: 前端预设值也改为 6 字段格式
- 生产 API 已重启(pid 2325762, health OK)
|
2026-07-16 16:54:00 +08:00 |
|
Sisyphus
|
6964380de5
|
chore(crawler): 去掉「每4小时」选项,保留每6小时/每天早晚/手动
|
2026-07-16 16:35:06 +08:00 |
|
Sisyphus
|
68f6fc5c16
|
feat(ui): 前端 UI 组件化重构 + 发布表单增强
【新组件】
- ErrorBoundary: 全局错误边界,渲染崩溃时显示重试/刷新按钮
- ui/Toast: 全局 Toast 通知系统 (success/error/warning/info),Context Provider 模式
- ui/Modal: 统一弹窗 (ESC关闭 + loading遮罩 + 自定义footer)
- ui/Skeleton: 骨架屏 (SkeletonTable / SkeletonCard)
- ui/Lightbox: 图片放大灯箱
【页面迁移】
- InquiryPage: useToast + Modal + SkeletonTable 替换手写代码,新增 pubForm
发布前预填联系人/电话/地址 + 发布时传 body 给后端
- LeadDetailPage: 迁移到 Toast + Modal
- ProductPage: 迁移到 Toast + Modal + SkeletonTable
- AdminPage: 迁移到 useToast
- ComparisonPage: 迁移到 Toast + SkeletonTable
- ImagePage: 迁移到 Toast + SkeletonCard
【基础设施】
- globals.css: 新增 fadeIn/slideUp 动画
- page.tsx: SPA 根接入 ToastProvider + ErrorBoundary
- tailwind.config.ts: 新增 animate keyframes
【后端】
- integration.service.ts: MCP session 管理 + charset 修复
- lead.controller.ts/lead.service.ts: 发布端点增强 + 物料提取服务注入
|
2026-07-16 15:46:37 +08:00 |
|
Sisyphus
|
9702d4b8ae
|
chore: 忽略 tsbuildinfo 构建缓存文件
apps/web/tsconfig.tsbuildinfo 是增量编译缓存,不应纳入版本控制。
|
2026-07-14 11:57:43 +08:00 |
|
Sisyphus
|
0d2dce6b73
|
fix(admin): MCP 对接弹窗防误关 — 屏蔽遮罩点击 + 加关闭按钮 + ESC 支持
填表期间误点遮罩会丢失已填内容(apiKey/appSecret 等),改为只能用右上角 ×
或 ESC 键关闭。
|
2026-07-14 11:56:56 +08:00 |
|
Sisyphus
|
a822d7782b
|
feat(ui): 品类筛选框升级为可输入关键词过滤的 Combobox
【问题】
询价发布助手筛选工具栏的品类下拉框有 53+ 个选项,用户难以快速定位。
【改动】
- 把品类 filter 从统一 .map(select) 里拆出,改成自定义 Combobox:
- input + 浮动下拉面板 (z-30)
- 关键词过滤 (toLowerCase + includes 模糊匹配,中文友好)
- 键盘导航: ↓/↑ 高亮 / Enter 选中 / Esc 关闭 / Backspace 空时清空筛选
- 鼠标: hover 高亮 / click 选中 / click outside 关闭 (useEffect + ref)
- 选中项右侧显示 ✓
- 已选非默认时显示 × 清空按钮
- 其他 5 个 filter (公告日期/星级/甲方级别/来源平台/负责人) 保持原生 select 不变
- 状态: catInput / catOpen / catHighlightIdx / catRef,useMemo 缓存过滤结果
【体验】
- 输入'钢' → 立即显示 钢材/钢格栅 等候选
- 输入'电缆' → 显示 电线电缆
- 空 input + Enter → 选中'全部品类' 等价清空筛选
- 已选'钢材'显示在 placeholder + 右侧 × 按钮
【部署】
web 重新构建 + sync .next 到生产 + PM2 重启 pingtai-web
|
2026-07-01 14:18:13 +08:00 |
|
Sisyphus
|
f625dd0de1
|
refactor: 移动 CategoryInferenceService 到 product-category 模块,修复循环依赖
- 移动 category-inference.service.ts 从 lead/ 到 product-category/
- 修复所有 import 路径
- InquiryPage 品类筛选改为动态 API 加载
|
2026-07-01 02:38:30 +08:00 |
|
Sisyphus
|
761200a70c
|
feat: 询价发布助手去掉状态筛选,列表状态列替换为品类
|
2026-06-30 17:43:56 +08:00 |
|
Sisyphus
|
c1c7342621
|
feat: 询价发布助手详情面板增加发布按钮
|
2026-06-30 17:20:03 +08:00 |
|
Sisyphus
|
3a72d6396c
|
feat: 入库时写入 category 字段 + 导出 inferCategory + apiBase ?? 修复
|
2026-06-29 17:34:27 +08:00 |
|
Sisyphus
|
785db9277d
|
fix: 商品生图助手容错 — API 返回非数组时设空数组避免崩溃
|
2026-06-29 17:33:21 +08:00 |
|
Sisyphus
|
d8d49f7e88
|
fix: 修复生产环境登录双/api路径问题
API_BASE为空时用||替代??,确保fallback到localhost:4000
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-06-26 17:12:19 +08:00 |
|
Sisyphus
|
481d01c89f
|
feat: 简化侧栏 - 移除冗余的线索详情菜单项,扁平化线索池入口
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-06-26 17:05:41 +08:00 |
|
Sisyphus
|
44609be8c7
|
feat: 线索池品类选项扩展、隐藏数量列、采集器按钮样式优化
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-06-26 16:25:06 +08:00 |
|
Sisyphus
|
49f922444a
|
feat(F002-P1): 调试期累积修复
- 商品上架 MCP: 简化 batchPublish, price=0 默认 0.01, sku 用 spec/name
- 集成 service: 完善 import_products 调用链
- 前端 ProductPage: 调整按钮与列表
- 文档: 本地开发工作流 + devbox F002 升级需求
- 脚本: rotate-mcp-key.sh (一键密钥轮换)
|
2026-06-25 10:01:45 +08:00 |
|
Sisyphus
|
672a4b41b2
|
feat(F002-P0-A): 商品上架 - Mac 端 publish-to-direv API + web 按钮
- product.service.ts: 新增 publishToDirev() 调 MCP import_products
- product.controller.ts: 新增 POST /api/products/publish-to-direv
- product.module.ts: 引入 IntegrationModule
- ProductPage.tsx: 工具栏加 '上架 B2B' 按钮 (绿色)
- 字段映射: Product(category/price/brand) → MCP(category_id/price/brandName)
|
2026-06-24 12:20:22 +08:00 |
|
Sisyphus
|
afac18e843
|
feat(F002): W26 + W29.x + W30 + W31 平台助手全部改动首次 commit
- W26: NestJS API + Next.js Web + Prisma + SQLite scaffold
- W26: Lead 模型 + Crawler + 询价发布助手 (线索池 + 一键发布)
- W29.x: MCP 集成 (Integration 模型 + connectMcp + publish_rfq 5 工具端到端跑通)
- W30: 3 字段补充 (notes / quotationType / quotationDemand)
- W31 P1: 自动填 enterpriseId / userId (Prisma companyUserId 字段 + get_app_identity tool + lead.service.ts publishArgs)
- W31: detail 详情页 + admin UI 集成管理 (OpenAppListView + AuditLogListView)
关联: ~/Documents/02-平台开发/产品开发/F002-W31-交接文档.md
GIT-AUDIT-REPORT-2026-06-24.md
|
2026-06-24 11:07:11 +08:00 |
|