|
|
f9451b104b
|
feat: 移动端全局人名映射 + 协同留言板 UI
- detail.vue: 留言板聊天室 UI + 乐观更新 + loadUsers 填充全局字典
- WorkspaceArea.vue: 任务列表/上游/下游负责人全部走 formatUserName
- TreeCanvas.vue: 节点负责人 + 嵌套协助提示走 formatUserName
- TaskSwipeCards.vue: 卡片负责人走 formatUserName
- 留言板头像取中文名末字(formatUserAvatar)
|
2026-08-10 17:37:25 +08:00 |
|
|
|
05003d3053
|
feat: 全局人名映射工具 — 拼音 ID → 中文姓名转换
- formatUserName(userId): 查全局字典翻译为中文名,降级返回原 ID
- formatUserAvatar(userId): 中文名取末字作为头像文字
- setUserNameMap(users): 批量注册用户字典
|
2026-08-10 17:37:16 +08:00 |
|
|
|
ba060cbb5e
|
refactor(mobile): 流转树固定100%比例,移除双指缩放功能
- 移除 movable-view 的 :scale/:scale-min/:scale-max/:scale-value 属性
- 移除 onScale/zoomIn/zoomOut 方法及工具栏缩放按钮
- 移除顶部双指缩放·单指拖拽提示文字
- fitAll 简化为纯居中定位 (mvX/mvY),不再调整缩放比
- 工具栏仅保留: 返回 | 流转蓝图 | 卡片切换 | 全览
|
2026-08-10 15:25:56 +08:00 |
|
|
|
a07e43ec3a
|
fix(mobile): 修复画布空白区域无法响应拖拽缩放手势
canvas-inner 使用 position:absolute 但未设置 width/height,
导致只缩到子元素大小(几乎为0)。在卡片之外的空白区域触摸时,
事件无法穿透到 movable-view 原生组件。
修复:
- canvas-inner: 添加 width:100%; height:100% 铺满 movable-view
- tree-movable-view: 添加 width:100%; height:100% 确保触摸覆盖
|
2026-08-10 15:19:34 +08:00 |
|
|
|
f2403dd1e6
|
fix(mobile): 流转树全览居中 + 拖拽缩放性能优化
1. fitAll() 居中修复: 内容坐标系整体对齐视口中心
旧: mvX=0, mvY=0 (内容偏右下角)
新: mvX = (viewportW - canvasW * scale) / 2, mvY同理
2. movable-area 显式像素高度: 替代 flex:1
避免触摸区域计算不准确导致拖拽延迟
3. onScale 节流: rAF/setTimeout 限频 16ms
避免 @scale 每帧触发 Vue 响应式更新
4. 新增 onChange 同步手势结束后的位置
惯性动画结束后记录位置,下次 fitAll 参考使用
5. 添加 inertia+friction+damping 惯性动画参数
|
2026-08-10 15:09:06 +08:00 |
|
|
|
5271177d7a
|
fix(mobile): 修复全览按钮点击后页面卡死的响应式循环bug
treeNodes 计算属性中直接修改了 product.task_tree 原始响应式对象
(设置 x/y/_isMain/_blabel),触发 Vue 2 深度响应式的无限渲染循环。
修复方案:对所有 task 对象进行浅拷贝 { ...t },在副本上设置坐标
和标签属性,切断响应式依赖循环。
|
2026-08-10 15:00:37 +08:00 |
|
|
|
3ec244bf2d
|
feat: 全览节点无记录时Toast友好提示替代静默短路
|
2026-08-10 14:40:18 +08:00 |
|
|
|
5f12adfe2f
|
fix: 连线层加pointer-events:none防止吞掉卡片点击事件
|
2026-08-10 14:37:37 +08:00 |
|
|
|
51ca05d737
|
fix: 全览按钮z-index修复+产品ID点击弹二维码
|
2026-08-10 14:30:50 +08:00 |
|
|
|
016a988962
|
fix: parseVersionCode修复—major*100+lastNum, T1.0.10→110匹配服务器
|
2026-08-10 14:22:36 +08:00 |
|
|
|
0b6c4a7f8b
|
fix: OTA版本对比改用plus.runtime.versionCode直接对比,修复T1.0.10误判为旧版
|
2026-08-10 14:12:05 +08:00 |
|
|
|
f80da36d65
|
fix: 连线边缘到边缘防穿模+箭头像素级贴合分支卡片边缘
|
2026-08-10 13:59:22 +08:00 |
|
|
|
6d534960a7
|
refactor: 移动端TreeCanvas十字星拓扑—主干居中+分支左右发散+连线箭头+极简卡片160x80
|
2026-08-10 13:52:46 +08:00 |
|
|
|
592bde7cab
|
chore: bump version to T1.0.9
|
2026-08-07 17:12:27 +08:00 |
|
|
|
d4f6266fcc
|
perf: scan页置顶消除登录页闪烁 — 已登录用户零跳转直接渲染
|
2026-08-07 17:05:00 +08:00 |
|
|
|
0fcc607f17
|
refactor: App.vue统一路由守卫 — onLaunch总是重定向(已登录→扫码/未登录→登录)
|
2026-08-07 17:01:55 +08:00 |
|
|
|
71e55ed476
|
feat: 登录页自动跳过 — 已登录用户不再看到登录界面
|
2026-08-07 16:58:35 +08:00 |
|
|
|
a71af500dc
|
chore: 同步manifest.json G盘→WSL T1.0.6
|
2026-08-07 16:52:31 +08:00 |
|
|
|
356e3819dd
|
chore: 泳道→分支 统一命名
|
2026-08-07 16:51:00 +08:00 |
|
|
|
c9383ba4be
|
fix: 修复部分Android手机划掉App后token丢失导致强制重新登录
|
2026-08-07 16:50:00 +08:00 |
|
|
|
b834b24c24
|
fix: 已完成/已驳回/已入库/已撤回任务禁止编辑删除记录
|
2026-08-07 16:48:12 +08:00 |
|
|
|
1b4af0a7af
|
fix: 全端隐藏用户角色标签(SUPER_ADMIN/操作员等)
|
2026-08-07 14:53:46 +08:00 |
|
|
|
9ed85f88bb
|
feat: 切换公网域名 track.iris-rs.cn + track_back.iris-rs.cn
|
2026-08-07 14:45:30 +08:00 |
|
|
|
472d4ad67a
|
fix: 登录页版本号改为动态读取(WGT热更新后自动变)
|
2026-08-07 14:06:10 +08:00 |
|
|
|
45102eb23f
|
fix: WGT安装强制模式(force:true)绕过同版本号拦截
|
2026-08-07 13:55:24 +08:00 |
|
|
|
355f1bae66
|
feat: 关于弹窗 + 帮助反馈Toast + 动态版本号(WGT热更新后自动变化)
|
2026-08-07 13:41:55 +08:00 |
|
|
|
abbf0f5a24
|
chore: bump version to T1.0.2 (versionCode 102)
|
2026-08-07 13:22:10 +08:00 |
|
|
|
a72c8c89e3
|
fix: 移除模块级detectEnv()避免启动时网络探测失败
|
2026-08-07 13:19:11 +08:00 |
|
|
|
0e5b2e42e9
|
chore: 同步HBuilderX生成的main.js(Vue2/Vue3兼容)
|
2026-08-07 13:09:19 +08:00 |
|
|
|
0de981ea81
|
fix: OTA检测闭环 — 新增GET /check-update + App端uni.getSystemInfoSync版本对比
|
2026-08-07 12:35:00 +08:00 |
|
|
|
43baa1de8e
|
feat: 移动端流转卡片组件 + 静态资源
|
2026-08-07 11:53:40 +08:00 |
|
|
|
bff8787e62
|
feat: OTA热更新 — 版本检测API + App端WGT下载安装 + app_versions表
|
2026-08-07 11:49:59 +08:00 |
|
|
|
0df7215134
|
feat: 移动端双Token队列拦截器 + 通知列表 + 登录页 + TabBar红点 + v1.0.1
|
2026-08-07 11:44:20 +08:00 |
|
|
|
6a79e21302
|
闭环修复: transfer/spawn/receive补TaskRecord + reject加task_type + branchLabel只对SPAWN编号
|
2026-08-06 13:14:26 +08:00 |
|
|
|
661e77416a
|
三雷修复: canRecall父节点校验+task_type判定主干排序/标签+确认无db.delete
|
2026-08-06 13:09:10 +08:00 |
|
|
|
0d323e8181
|
血缘锚定法: task_type字段+迁移+三大接口写入+TreeCanvas基于task_type布局
|
2026-08-06 13:03:25 +08:00 |
|
|
|
e5e2a395e7
|
撤回链式接力: CANCELED后生成WIP子任务还给操作人+TreeCanvas CANCELED视为串行换行
|
2026-08-06 12:53:23 +08:00 |
|
|
|
616638a6c8
|
撤回改为CANCELED状态标记+TaskRecord留痕+TreeCanvas灰度渲染+全部状态映射更新
|
2026-08-06 12:51:40 +08:00 |
|
|
|
58cb9a23ef
|
修复撤回: transfer新任务parent_task_id=task.id(溯源链) + canRecall放宽(兼容旧数据)
|
2026-08-06 12:38:26 +08:00 |
|
|
|
0287003e93
|
canRecall加固: PENDING+非接收人+父任务负责人匹配→显示撤回转交
|
2026-08-06 12:08:23 +08:00 |
|
|
|
df42250725
|
排序铁律: 主分支强制置顶(parent_task_id为空优先)+子分支按created_at正序
|
2026-08-06 12:06:38 +08:00 |
|
|
|
7c7b72cadd
|
我的任务列表加分支标签: 主分支(蓝)/协助分支(紫) — parent_task_id判血缘
|
2026-08-06 11:53:40 +08:00 |
|
|
|
aad26b3d9e
|
2D布局回退状态判定: 父WIP→并行同Y / 父COMPLETED→串行换行(后端已限制COMPLETED后不可spawn)
|
2026-08-06 11:50:10 +08:00 |
|
|
|
c92e7bd931
|
修复2D布局: 时间戳判定串行/并行 — created_at>parent.completed_at才是串行,否则并行同Y
|
2026-08-06 11:45:56 +08:00 |
|
|
|
8f0f725e26
|
修复WBS编码: 分支1→分支1.1层级正确(prefix空字符串处理)
|
2026-08-06 11:42:52 +08:00 |
|
|
|
57884d7baa
|
撤回转交: recall接口删除子任务恢复父WIP + 前端canRecall判断 + 红色撤回按钮
|
2026-08-06 11:39:22 +08:00 |
|
|
|
8be06bcd43
|
权限隔离+2D蓝图修复: isAssignee按钮显隐+只读提示+分支标签(badge-main/sub)+并行同Y确认
|
2026-08-06 11:36:06 +08:00 |
|
|
|
e5bcde667b
|
转交弹窗互斥+备注必填: 选人清入库/选库清人 + textarea必填校验
|
2026-08-06 11:23:31 +08:00 |
|
|
|
bcf1038f8a
|
修复: 删除2D连线+spawn确认parent_task_id已正确+WBS算法重写(递归前缀)
|
2026-08-06 10:28:21 +08:00 |
|
|
|
11f9f64dc6
|
并发协作重构: focusTasks全视野+WBS分支编码+TreeCanvas并发同层布局(串行Y+1/并行同Y)
|
2026-08-06 10:21:15 +08:00 |
|