WuYongJie
928a7b37a9
feat(ai): use durable Relay native image tasks
...
Persist image submissions with fixed idempotency keys, leased execution, provider
identity, reference snapshots and staged results. Integrate DIY, assisted assembly
and non-integrated white-background sessions without holding generation in a
browser request. Recover ambiguous submissions through owner-scoped reads and
stop a new eight-view batch when restoring an earlier request.
Add the NativeImageGenerationJob migration and a dedicated worker to both release
entry points. Protect job inputs/results from storage GC. Existing production
configuration and business data are not changed by this commit.
Validation: 256 focused Jest tests, isolated PostgreSQL migration/lease/transaction
checks (8), deployment guard tests (9), type-check, production build and desktop/
mobile browser component scenarios. Live native 2K reference-image request worked;
reusing its idempotency key returned the same task. Build uses local placeholders
for otherwise absent Drawing System configuration. Three unrelated material tests
also fail with the original mainline test file; they remain outside this change.
Architecture/visual/root-cause review: passed with warnings. Independent review
completed for the integration and shared input/storage paths; worker additionally
reviewed by the primary agent. Production merge/deployment requires authorization.
2026-10-15 14:55:46 +08:00
WuYongJie
dc2c86275e
feat(diy): add shared assets, uploaded styles and AI rendering
2026-10-15 11:35:34 +08:00
WuYongJie
67541f9208
feat(supply-chain): 全量档案清除筛选移入筛选行并优化筛选交互(设置抽屉/回车确认)
...
- 「清除 N」从工具栏移到筛选行尾部(设置图标旁),收起细条保留清除入口
2026-10-15 11:10:50 +08:00
WuYongJie
d1496b0c11
fix(product-archive): 结算价公式修正为成本价÷0.9(模块化)
...
- 模块化分支由 ×0.9 改为 ÷0.9:聚水潭里模块化成本价按 9 折记,
结算价需除以 0.9 还原(如成本 34.00 → 结算 37.78)
- 非模块化仍为成本价原样展示;先取整到分再除、四舍五入保留两位
- 同步更新测试期望值(76.20→84.67、123.45→137.17、85→94.44、34.00→37.78)
2026-10-15 09:17:57 +08:00
WuYongJie
b6a326d996
fix(product-archive): allow trusted HTTPS image host on port 3333
2026-10-14 18:14:47 +08:00
WuYongJie
e57f95c489
feat(supply-chain): 产品全量档案新增独立图文使用说明页(更多菜单新标签页打开)
...
- 新增 /product-archive-guide 独立路由:模块树目录(产品全量档案 → 1.1~1.10),无系统壳,登录+productArchive 查看权限
2026-10-14 17:43:53 +08:00
WuYongJie
9ef800001f
feat(product-archive): 全量档案第二个成本价列改为结算价(模块化 ×0.9)
...
- 列与变更记录标签:成本价(新品)→ 结算价 / 结算价(新品),表头与导出同步生效
- 结算价在查询映射层实时计算:非模块化沿用成本价原样,模块化按 0.9 折
(先取整到分再打折、四舍五入保留两位);模块化以商品标签含「模块化」判断,不落库
- 修复列设置合并时 localStorage 旧 label 覆盖默认列名的问题:内置列名
一律以当前默认定义为准,改名对已保存列设置的用户才能生效
2026-10-14 17:09:30 +08:00
WuYongJie
9492eba22d
feat(supply-chain): 全量档案运营负责人切换 js_sku_info_manage.sku_manager 数据源
2026-10-14 14:27:02 +08:00
WuYongJie
2c4128e065
feat(supply-chain): 日销任务改为每日 08:00 单次执行,未到数即告警并支持手动补跑
2026-10-14 12:28:24 +08:00
WuYongJie
822df76e19
fix(product-archive): display complete column headers and preserve readable widths
2026-10-14 11:55:00 +08:00
WuYongJie
bf2f114762
feat(owners): include growth center employees in business owner options
2026-10-14 11:33:22 +08:00
WuYongJie
7f1358aa68
fix(supply-chain): 基础同步回退视图不存在的 item_type 列引用并修复失败告警原因为空
2026-10-14 10:38:22 +08:00
WuYongJie
f84abed356
Merge remote-tracking branch 'origin/codex/xuxiake-mainline' into codex/local-3001-integration
...
# Conflicts:
# furniture-3d-system/src/server/repositories/__tests__/product-archive-owner-workflow.repository.test.ts
# furniture-3d-system/src/server/repositories/product-archive-owner-workflow.repository.ts
2026-10-14 10:04:53 +08:00
WuYongJie
42d2447481
feat(supply-chain): 产品全量档案负责人治理与聚水潭式表头改造
2026-10-14 10:04:06 +08:00
WuYongJie
fb1c74ae67
fix(diy): retry transient storage failures during catalog import
2026-10-14 09:20:36 +08:00
WuYongJie
20eaf3589c
fix(diy): retry transient storage failures during catalog import
2026-10-14 09:20:00 +08:00
WuYongJie
ce66215764
fix(storage): handle Qiniu CommonJS SDK default export for DIY import
2026-10-14 08:59:22 +08:00
WuYongJie
d76d024d62
fix(storage): handle Qiniu CommonJS SDK default export for DIY import
2026-10-14 08:58:44 +08:00
WuYongJie
56548a731e
Merge production main into shared baseline for SABC release
...
Preserve SABC storage-type and batch-search changes, logistics column resizing, and production-main employee-hours and route export compatibility. Verified 54 focused tests and type-check; no pending production migrations.
2026-10-13 16:24:15 +08:00
居居
252624708d
Merge branch 'codex/xuxiake-sabc-sync-20260929' into codex/xuxiake-mainline
2026-10-13 10:15:47 +08:00
居居
7ae628f9f1
feat(supply-chain): SABC 明细新增「入库/代发」列,货号/商品编码/款式编码支持空格批量查询
...
- 明细与导出新增「入库/代发」,取值来源产品全量档案 storageType(入仓/代发)
- 已生成月份仍读快照;旧快照缺该字段时按 barcode 从档案补齐,无需重新核算
- 货号/商品编码/款式编码额外支持空格/制表符分隔(可直接粘贴 Excel 多行或多列),服务端最多取 200 个
- 入库/代发取值兼容字典值(INBOUND/DROPSHIP)与中文直填(入仓/入库/代发),产品全量档案列表同步显示
2026-10-13 10:15:34 +08:00
WuYongJie
f8b8959347
feat(diy): persist shared catalog and assets in database and object storage
2026-10-13 09:56:39 +08:00
WuYongJie
409e35e232
feat(diy): persist shared catalog and assets in database and object storage
2026-10-13 09:55:55 +08:00
WuYongJie
462fee6a46
feat(diy): persist shared catalog and assets in database and object storage
2026-10-13 09:48:09 +08:00
WuYongJie
ee033a1e08
feat(diy): add cabinet workbench with saved versions and BOM exports
2026-10-12 18:16:14 +08:00
WuYongJie
12de551328
feat(diy): add cabinet workbench with saved versions and BOM exports
2026-10-12 18:14:15 +08:00
WuYongJie
96f0373e79
feat(diy): add cabinet workbench with saved versions and BOM exports
2026-10-12 18:12:57 +08:00
WuYongJie
ecd11db3af
docs: 删除已废弃的苹果风格视觉标准(验收只按白曜石工坊口径)
2026-10-12 14:05:53 +08:00
WuYongJie
b45b584871
chore(installation-demo): 移除安装演示V2试验链并保留成对迁移历史
2026-10-12 14:05:53 +08:00
WuYongJie
b237bbed7c
feat(supply-chain): 产品全量档案定时任务通知——业绩快照每日简报与四任务失败兜底
2026-10-12 14:05:53 +08:00
WuYongJie
b8093f899e
feat(supply-chain): 产品全量档案定时任务通知——业绩快照每日简报与四任务失败兜底
2026-10-12 14:05:18 +08:00
WuYongJie
f7811468f7
feat(supply-chain): 产品全量档案定时任务通知——业绩快照每日简报与四任务失败兜底
2026-10-12 14:05:06 +08:00
WuYongJie
92cd5f2903
docs: 删除已废弃的苹果风格视觉标准(验收只按白曜石工坊口径)
2026-10-12 11:08:32 +08:00
WuYongJie
e612936125
chore(installation-demo): 移除安装演示V2试验链并保留成对迁移历史
2026-10-12 11:08:32 +08:00
WuYongJie
c9c62f4b22
docs: 删除已废弃的苹果风格视觉标准(验收只按白曜石工坊口径)
2026-10-12 11:08:10 +08:00
WuYongJie
1dbcc0d84c
chore(installation-demo): 移除安装演示V2试验链并保留成对迁移历史
2026-10-12 11:08:10 +08:00
WuYongJie
1de64d05f6
fix(supply-chain): keep daily sales notification fields in separate paragraphs
2026-10-12 10:47:05 +08:00
WuYongJie
553c237268
fix(supply-chain): keep daily sales notification fields in separate paragraphs
2026-10-12 10:47:05 +08:00
WuYongJie
5ca82d1033
fix(supply-chain): keep daily sales notification fields in separate paragraphs
2026-10-12 10:46:24 +08:00
WuYongJie
00dd1b2f89
fix(supply-chain): 日销通知改为纯文字
...
去掉新通知的卡片按钮字段,正文采用普通换行。
保留旧投递的幂等重试载荷,公共通知链路不变。
验证:相关25项测试、ESLint及diff检查通过。
2026-10-12 10:26:40 +08:00
WuYongJie
75dd248046
fix(supply-chain): 日销通知改为纯文字
...
去掉新通知的卡片按钮字段,正文采用普通换行。
保留旧投递的幂等重试载荷,公共通知链路不变。
验证:相关25项测试、ESLint及diff检查通过。
2026-10-12 10:26:40 +08:00
WuYongJie
81cffc020a
fix(supply-chain): 日销通知改为纯文字
...
去掉新通知的卡片按钮字段,正文采用普通换行。
保留旧投递的幂等重试载荷,公共通知链路不变。
验证:相关25项测试、ESLint及diff检查通过。
2026-10-12 10:25:34 +08:00
WuYongJie
34e8426bb6
feat(store-account): display exact source platforms and filter before pagination
2026-10-12 10:24:17 +08:00
WuYongJie
a7554bebad
feat(store-account): display exact source platforms and filter before pagination
2026-10-12 10:23:48 +08:00
WuYongJie
520706df0d
feat(store-account): display exact source platforms and filter before pagination
2026-10-12 10:22:51 +08:00
WuYongJie
6a94f1b215
fix(supply-chain): 日销08点同步、失败补跑及管理员结果通知
...
北京时间08:00开始,未到数或失败按固定10分钟刻度补跑,成功当天停止源查询。
保留重启/PG失败记录和到数时间,正式任务定向徐霞客发送去重结果通知。
验证:31项定向测试、ESLint、全仓TypeScript、脚本语法与本地真实运行通过。
2026-10-12 10:05:44 +08:00
WuYongJie
9ca2f2d382
fix(supply-chain): 日销08点同步、失败补跑及管理员结果通知
...
北京时间08:00开始,未到数或失败按固定10分钟刻度补跑,成功当天停止源查询。
保留重启/PG失败记录和到数时间,正式任务定向徐霞客发送去重结果通知。
验证:31项定向测试、ESLint、全仓TypeScript、脚本语法与本地真实运行通过。
2026-10-12 10:04:42 +08:00
WuYongJie
c4f3063e88
fix(supply-chain): 日销08点同步、失败补跑及管理员结果通知
...
北京时间08:00开始,未到数或失败按固定10分钟刻度补跑,成功当天停止源查询。
保留重启/PG失败记录和到数时间,正式任务定向徐霞客发送去重结果通知。
验证:31项定向测试、ESLint、全仓TypeScript、脚本语法与本地真实运行通过。
2026-10-12 10:03:13 +08:00
WuYongJie
cb91d7a42f
fix(intake): calibrate Gujia 2026 certificate print positions
2026-10-12 09:22:56 +08:00
WuYongJie
6edf13e974
fix(intake): calibrate Gujia 2026 certificate print positions
2026-10-12 09:22:20 +08:00