Pine
|
b00ecbdca1
|
fix(tasks): 右上角信息改一行平铺 —— 总数·翻页倒计时·页码·接单说明(去掉芯片上下布局)
- TaskDisplay.jsx:tasks-head-info 改 inline 一行(总数/翻页s/页码/说明),加分隔点。
- task-display.css:tasks-info* 改为无芯片的一行 baseline 布局,去列叠。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-25 20:15:58 +08:00 |
|
Pine
|
b121eb748b
|
feat(tasks): 任务页右上角信息面板 —— 说明/总数/轮播倒计时/页码
- TaskDisplay.jsx:右上角加 总数、翻页倒计时(s, 每秒递减翻页时复位)、页码 x/y、接单方式说明。
- task-display.css 加 tasks-head-info / tasks-info-* 样式。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-25 19:55:36 +08:00 |
|
Pine
|
953441806d
|
fix(tasks): 任务展示页一屏固定 2 行 —— 2×2=4 或 2×3=6
- 布局改为固定 2 行;宽≥1600→3 列(2×3=6),否则 2 列(2×2=4)。
- grid repeat(cols,1fr) + grid-template-rows repeat(2,minmax(0,1fr)),两行均分高度。
- columnsFor() 改返回 3/2 列;pageSize=cols*2;不足一页按行补位。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-25 19:51:52 +08:00 |
|
Pine
|
e57bbe67a4
|
feat(tasks): 任务展示页自适应 —— 一屏 4 或 6 张(按屏幕宽度计算)
- TaskDisplay.jsx:视口宽度→列数(宽≥1600→6,否则 4),grid repeat(cols,1fr),每页 cols 张翻页;导出 columnsFor();移除固定 PAGE_SIZE=3。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-25 19:42:08 +08:00 |
|
Pine
|
75f50cebba
|
feat(tasks): 大屏任务卡展示增强 —— 接单方式/截止/交付时限/人数/独占/发包方
- taskData.js normalizeTask 加 mode/modeLabel/deadline/deliveryDays/headcount/exclusive/publisherName。
- TaskDisplay.jsx 卡片增 接单方式+预算、截止/交付时限/独占|人数 徽标、发包方。
- task-display.css 加 task-meta 行样式。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-25 19:30:34 +08:00 |
|
Pine
|
d61b59acf5
|
feat(bigscreen): 任务展示页 + 暂时关闭语音对话页 + 导航/文档同步
- App.jsx 移除 /voice、新增 /tasks→TaskDisplay。
- pageNav PAGE_ORDER 移除 voice、加 tasks(方向键/页眉/MQTT navigate_rel 自动跟随)。
- useMqttControl:PAGE_ALIAS 加 tasks;移除 voice_*、改 task_refresh。
- PageHeader STATUS_BY_PATH 加 /tasks。
- 新增 TaskDisplay.jsx + task-display.css:轮播卡(分类/状态/标题/摘要/标签/预算/任务ID+QRCodeSVG 扫码接单)、useTasks 轮询 /park/api/tasks、接受 MQTT task_refresh。
- 新增 utils/taskData.js(useTasks, tenantFetch 带租户身份)。
- docs/mqtt-commands.md:navigate 列表/语音章节标注语音页关闭、tasks 页指令。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-08-25 18:42:32 +08:00 |
|
Pine
|
1566477b97
|
feat(大屏): 视频识别直连 park-vision + 绑定轮询/二维码
- config.js 增 getVisionApiBase(),优先绑定下发的本园区 vision_api(经 tenant info)
- main.jsx bootstrap 读 /park/api/config 的 vision_api
- useVisionDetection 帧 POST 到独立 vision 服务;未配置识别整体禁用
- BindScreen 连接码轮询(无码5s/有码30min) + 渲染二维码(qrcode.react)、绑定后入园区
- 部署文档补 vision_api/识别服务说明
|
2026-08-25 01:52:53 +08:00 |
|
Pine
|
ba34f40baa
|
fix(大屏): 稳健指向 server-core — 旧 :10085 地址视为失效,全部回退 :8090/park
部署 config.json / 构建期 VITE_API_BASE 若仍为旧园区后端(:10085, 已删除),
会导致大屏一切请求打到废弃地址。getApiBase/API_BASE 对 :10085 一律忽略并回退到
server-core 统一入口 :8090/park;MQTT 经 /park/api/config 引导取正确 broker(192.168.1.3)。
|
2026-08-24 20:35:33 +08:00 |
|
Pine
|
1e96e992bf
|
docs(大屏): 部署文档指向 server-core(8090) 统一入口 /park — 移除旧 :10085 后端
config.json 的 api_base / VITE_API_BASE / health 检查全部改为 server-core(8090) /park;
生产为 https://opc.pinesound.cn/park。大屏 API/媒体/OTA 均走统一入口。
|
2026-08-24 20:33:57 +08:00 |
|
Pine
|
4257db2e26
|
feat(大屏): 设备绑定流 — 永久设备ID+待绑定页(连接码)+MQTT绑定确认
- config.getDeviceId:首启生成并持久化永久设备ID,作为 MQTT client_id(稳定可控)。
- tenant.js 改设备绑定:registerDevice/requestBindCode/applyBound(存 token+tenant)/isDeviceBound。
- mqtt.js:client_id=device_id;订阅 bind/<dev>(未绑定确认)+command/tick(租户)。
- main.jsx:未绑定→BindScreen(注册+取8位码+监听绑定频道, 绑定后 reload);已绑定→App。
- BindScreen:展示 8 位连接码+设备ID+等待园区端绑定。yarn build 通过。
|
2026-08-24 20:14:15 +08:00 |
|
Pine
|
225c22ad62
|
chore(park): 移除原有本地后端 backend/ — 已全量迁入 server-core/app/park
园区大屏后端(代码/静态/媒体/安装包/知识库/vendor)已并至 server-core /park 子应用;
大屏依赖的 upload/download/update/playlist/control 端点与 static(voice-worklets)/media/
data.json/installers 均已迁移,TestClient 全 200。删除原 park-desktop/backend。
|
2026-08-24 19:50:48 +08:00 |
|
Pine
|
daf6889580
|
feat(大屏): 园区登录 + 多租户 — 动态页眉名称/两段简介 + 租户 MQTT/数据
- utils/tenant.js:账密→长效 tenant token(localStorage 持久),login/logout/tenantFetch(附 tenant_id+token)。
- main.jsx 门禁:未登录显示 TenantLogin(登录页),登录后(App)。一次登录持久保持。
- PageHeader:名称+两段式简介改由 getTenantInfo()(后端 /park/auth/login 返回) 驱动,回退默认。
- mqtt.js:订阅 command/<tid>/<clientId> 与 tick/<tid>(租户频道);useMqttControl 心跳带 tenant_id。
- parkData.js:snapshot 走 tenantFetch(带 tenant_id+token),按租户取数。
- vite build 通过。
|
2026-08-24 18:15:11 +08:00 |
|
Pine
|
d7c82fa9d4
|
feat(园区大屏): API 基址指向 server-core /park 前缀
园区后端已迁入 server-core 统一入口;src/config.js API_BASE 默认 :10085 → :8090/park,
相对 /api、/file 路径经 /park 前缀命中 server-core 园区子应用;生产以 window.__DPM_API__ 覆盖。
|
2026-08-24 17:15:17 +08:00 |
|
Pine
|
63dc6b8727
|
feat(park-desktop): admin 后台新 UI + vision_yolo 手势接入(merge 自旧仓库 4e73a6b)
|
2026-08-24 14:56:09 +08:00 |
|
Pine
|
00345ae1b9
|
chore: VS Code 推荐扩展配置
|
2026-08-23 23:04:07 +08:00 |
|
Pine
|
cdd0ba96ee
|
docs: 部署编排与运维文档
|
2026-08-23 22:35:06 +08:00 |
|
Pine
|
b681eac2df
|
feat: 大屏后端(FastAPI+MQTT+sim_engine)
- REST :10085 / MQTT 控制 / SSE 回退 / AI+语音
- 数据源规划:接核心服务端 + 算力引擎真实数据
|
2026-08-23 22:35:05 +08:00 |
|
Pine
|
9700eb652b
|
feat: 大屏桌面壳(Tauri 2)
|
2026-08-23 22:34:50 +08:00 |
|
Pine
|
28e233520b
|
feat: 园区大屏前端(React+Vite+Tailwind+three.js+MQTT)
- 路由:数据大屏/数字孪生/AI/媒体轮播/语音/企业墙
- 多园区通用,园区账号登录显示本园区
|
2026-08-23 22:34:45 +08:00 |
|