Commit Graph

2698 Commits

Author SHA1 Message Date
lzh
91cd7adc39 chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 9s
2026-03-27 16:58:19 +08:00
lzh
69edf26550 style(@vben/web-antd): lint 自动格式化修正工单模块
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 16:54:07 +08:00
lzh
cc2d7a0a04 feat(@vben/web-antd): 手动创建工单分步弹窗 + code review 修复
新增手动创建工单功能,分3步:选类型→选区域(TreeSelect全路径)→填表单。
优先级使用字典值,按工单类型动态显示保洁/安保专属字段。

- 新增 create-order-form.vue 分步创建弹窗组件
- work-order/index.vue 挂载弹窗替换占位
- card-view.vue 补充 OpsOrderCenterApi 类型导入
- 还原 auth.ts 误删的 visitTenantId 逻辑

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 16:52:15 +08:00
lzh
84cb4930fd refactor(@vben/web-antd): 删除保洁工单中心,统一使用通用工单中心
保洁工单中心与通用工单中心功能重叠,统一入口避免歧义。

- 删除 views/ops/cleaning/work-order 整个目录
- 迁移 cleaning-actions/detail-ext/work-progress 组件到 work-order/components/
- 迁移 CLEANING_TYPE_OPTIONS/TEXT_MAP 到 work-order/data.ts
- 删除路由中保洁工单详情和看板两条路由
- 更新详情页组件引用路径

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 16:48:13 +08:00
lzh
6ca2833df6 refactor(@vben/web-antd): 工单操作接口按业务线拆分(保洁/安保)
后端 OpsOrderController 移除了 assign/cancel/complete/create 通用接口,
改由 CleanWorkOrderController 和 SecurityOrderController 各自提供 manual-* 系列接口。

- 新增 api/ops/security/index.ts 安保工单操作 API
- cleaning/index.ts 新增 manualCreate/Dispatch/Cancel/UpgradePriority
- order-center/index.ts 移除 assignOrder/cancelOrder
- 表单组件按工单类型路由到对应 API
- cancel-form/upgrade-priority-form 支持 orderType 区分调用路径

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 16:45:11 +08:00
lzh
c6e51a215f chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 10s
2026-03-25 16:05:53 +08:00
lzh
0dbdba336f style(@vben/web-antd): lint 自动格式化修正工单模块
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 15:45:07 +08:00
lzh
506625164c feat(@vben/web-antd): 安保工单详情左图右表布局改造及工单模块代码质量优化
- 安保详情事件信息改为左图右表布局,新增摄像头名称和处理人手机号字段
- 工单卡片展示处理人手机号,时间字段类型兼容时间戳和格式化字符串
- 工单详情页安保扩展区位置下移,安保工单隐藏重复的执行人行
- 登录后默认设置访问租户为登录租户
- 修复 scoped 暗色模式选择器不生效问题,移除 as any 类型断言

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 15:43:24 +08:00
lzh
de95c707a0 style(@vben/web-antd): lint 自动格式化修正工单模块
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 11:37:48 +08:00
lzh
9d2e7d9e13 style(@vben/web-antd): P0 紧急工单卡片改为右上角渐变光晕标识
- 移除左侧红色竖条(border-left),改为右上角径向渐变
- 渐变色与 P0 标签色系协调(#C01D1D 14% 不透明度)
- 暗色模式适配渐变加深至 18%
- 移除 overflow:hidden 避免裁切子元素阴影
- 状态标签改为 span + inline style 双色渲染
- 同步更新 cleaning/work-order 卡片视图

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 11:36:56 +08:00
lzh
0772a12074 feat(@vben/web-antd): 工单详情取消状态进度条改造及代码质量优化
- 取消状态下进度条展示 timeline 实际节点,末尾追加"已取消"终态
- 已走过节点灰色实心,取消终态节点深灰,进度线灰色
- 移除底部红色 cancelled-banner,改为进度条内联展示
- 进行中节点蓝色标签改为显示到达时间
- 提取 isCurrentActive / getStepTime 简化模板逻辑
- timeline 去重防御异常数据,取消终态改用索引判断
- 移除 progress-steps-wrapper 的 overflow:hidden 避免裁切光晕
- 清理无引用的 cancelled-banner CSS

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 11:36:19 +08:00
lzh
d0395ba40a style(@vben/web-antd): 统一工单中心配色方案为柔和浅底双色风格
- STATUS_COLOR_MAP / ORDER_TYPE_COLOR_MAP 由单色改为 { bg, text } 双色结构
- 新增 FACILITIES / SERVICE 工单类型配色
- 优先级配色改为按数值直接映射(P0~P3),不再依赖字典 colorType
- Tag 组件替换为 span + inline style,精确控制背景色与文字色
- 仪表板饼图 STATUS_COLORS 同步更新
- 同步更新 cleaning/work-order 模块保持一致

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 11:35:37 +08:00
lzh
7d22e4b395 fix: 修改文件上传大小限制20M
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 10s
2026-03-24 18:59:41 +08:00
lzh
c700ab38f4 chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 9s
2026-03-24 09:48:00 +08:00
lzh
0d505737b9 style(@vben/web-antd): lint 自动格式化修正 login.vue
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:45:59 +08:00
lzh
9c822ba9d9 fix(@vben/web-antd): 企微扫码登录前校验租户是否已选择
多租户模式下,未选择租户时点击企微扫码登录会触发
租户字段校验提示,避免无租户请求导致后端报错。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:44:21 +08:00
lzh
2c678c3a82 fix(@vben/web-antd): 优化企业微信扫码登录体验
自动社交登录时显示 loading 状态,跳过租户列表加载,
避免闪烁显示登录表单和租户错误信息。
租户 ID 已持久化在 store 中,无需重新获取。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:38:05 +08:00
lzh
f77a8c3e4c chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 8s
2026-03-24 09:30:39 +08:00
lzh
7aff45ddf5 fix(@vben/web-antd): 企业微信扫码登录适配 hash 路由模式
hash 路由下 OAuth 回调 code/state 在 URL query 中,Vue Router
读不到。登录流程同绑定流程一样通过 sessionStorage 中转参数,
路由守卫检测后重定向到 social-login 页面完成登录。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:19:18 +08:00
lzh
bfa2752ca1 chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 8s
2026-03-24 09:13:13 +08:00
lzh
10bd00e009 feat(@vben/web-antd): 企业微信扫码登录及绑定(适配 hash 路由)
- 登录页新增企业微信扫码登录入口(TDesign 官方图标)
- 个人中心开放企业微信绑定/解绑功能
- 适配 hash 路由模式:OAuth 回调 code 在 URL query 中,
  通过路由守卫转存 sessionStorage 并重定向到个人中心处理绑定

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:09:12 +08:00
lzh
b7a56f3743 revert(@vben/web-antd): 回退企业微信绑定相关改动,重新分析
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 17:49:12 +08:00
lzh
10951e5e87 chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 9s
2026-03-23 17:45:01 +08:00
lzh
8fa488feb7 style(@vben/web-antd): lint 自动格式化修正 user-social
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 17:42:49 +08:00
lzh
e18b6633a1 fix(@vben/web-antd): 重构企业微信绑定回调走核心路由
绑定回调从 /profile(动态路由)改为 /auth/social-login(核心路由),
解决页面刷新时动态路由未注册导致回调参数丢失的问题。
social-login.vue 通过 sessionStorage 区分绑定和登录操作,
绑定完成后自动跳转回个人中心。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 17:42:24 +08:00
lzh
24c3dbc8f1 chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 8s
2026-03-23 17:20:54 +08:00
lzh
91eec65734 fix(@vben/web-antd): 修复企业微信绑定回调 type 参数丢失问题
redirect_uri 中的查询参数会被企业微信 OAuth 截断,
改用 sessionStorage 暂存社交平台类型,同时增加绑定
错误处理和类型匹配的健壮性。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 17:19:03 +08:00
lzh
429e52007f chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 9s
2026-03-23 17:03:17 +08:00
lzh
47e35aa8cd style(@vben/web-antd): lint 自动格式化修正企业微信登录相关代码
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 16:59:50 +08:00
lzh
15b091dce2 feat(@vben/web-antd): 启用企业微信扫码登录及社交绑定
登录页新增企业微信扫码登录入口,使用 TDesign 官方企微图标;
个人中心社交账号页面开放企业微信绑定/解绑功能。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 16:50:38 +08:00
lzh
bdb873f06c chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 8s
2026-03-23 10:22:53 +08:00
lzh
e361b2f002 style(@vben/web-antd): lint 自动格式化修正巡检及区域模块
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:56:54 +08:00
lzh
ae55ab4800 chore(@vben/web-antd): 新增 qrcode、jszip 依赖并统一 catalog 管理
- 新增 qrcode、@types/qrcode 依赖(用于区域二维码功能)
- 新增 jszip 依赖(用于批量导出二维码 ZIP)
- jszip 版本统一纳入 pnpm-workspace catalog 管理

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:56:15 +08:00
lzh
be40db2a9c feat(@vben/web-antd): 新增巡检记录模块及路由配置
- 新增巡检记录 API(分页查询、详情、统计)
- 卡片式列表展示巡检记录,支持按状态 Tab 筛选
- 统计栏展示合格率/总数/合格数/不合格数
- 详情抽屉展示巡检明细项、照片、归因结果
- 注册巡检记录和巡检模板路由

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:55:45 +08:00
lzh
9ee16e2db3 feat(@vben/web-antd): 新增巡检模板管理模块
- 新增巡检检查项模板 API(CRUD + 批量排序)
- 左侧功能类型分类面板 + 右侧检查项表格
- 支持拖拽排序检查项顺序
- 支持启用/停用状态切换(带确认弹窗)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:55:15 +08:00
lzh
7f34094642 feat(@vben/web-antd): 区域管理新增二维码功能及 UI 增强
- 新增单个区域二维码查看弹窗(qrcode-modal.vue),支持下载 PNG
- 新增批量导出二维码 ZIP 功能,自动构建区域全路径名称
- 列表 UI 增强:区域类型/功能类型/等级改用彩色 Tag,状态改用 Switch 开关
- 点击行任意非操作列可展开/收起树节点
- 递归构建全路径名称时增加循环引用保护
- 移除设备绑定入口,替换为二维码操作

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:54:44 +08:00
lzh
f98b4fa797 refactor(@vben/web-antd): 精简区域管理数据层,移除废弃设备绑定组件
- data.ts: 新增区域类型/功能类型/区域等级 Tag 颜色映射,列定义改用 slots 渲染
- data.ts: 移除未使用的绑定设备表单 schema 和设备关联列定义
- form.vue: 调整保存成功后的执行顺序(先提示 → 触发刷新 → 关闭弹窗)
- 删除废弃文件: index-enhanced.vue, device-bind-drawer.vue, device-bind-drawer-enhanced.vue

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 14:52:23 +08:00
lzh
35c3d0e06e chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 8s
2026-03-18 16:18:59 +08:00
lzh
60f4912401 style(@vben/web-antd): lint 自动格式化修正
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:22:29 +08:00
lzh
bdb06e761a refactor(@vben/web-antd): 重写升级优先级和取消工单弹窗,统一布局风格
- 移除 useVbenForm 避免弹窗内布局冲突,改用原生 Input.TextArea
- 统一为图标+标签+值的信息行布局,与安保派单弹窗风格一致
- 提交时增加 confirmLoading 状态反馈及 maxLength 保护校验
- 支持暗色模式样式适配

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:21:58 +08:00
lzh
ed50dc3f7e feat(@vben/web-antd): 安保工单告警图片优化及专用派单表单
- 告警图片改为缩略图展示(200x150),添加圆角和悬停放大效果
- 新增安保专用派单表单,基于分页用户列表选择执行人
- 工单中心列表页和详情页均根据工单类型路由到对应派单表单
- 搜索防抖300ms,组件卸载时清理定时器防止内存泄漏

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:21:29 +08:00
lzh
5e053c6366 fix(@vben/web-antd): 移除文件配置自定义域名的必填校验
自定义域名为可选项,移除多余的 required 规则。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:21:10 +08:00
lzh
bea5a82825 feat(@vben/web-antd): 重构个人中心用户资料与社交绑定页面
- 用户资料页改为卡片式布局,头像居中展示角色标签
- 社交绑定页替换表格为卡片列表,支持已绑定详情展开
- 新增微信小程序社交类型枚举,小程序端绑定入口置灰提示
- 头像上传兼容 server/client 两种模式的返回值
- 社交绑定列表增加类型安全(SocialBindItem interface)
- 隐藏暂不支持的钉钉和企业微信绑定入口

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:19:56 +08:00
lzh
666f25404d chore(@vben/web-antd): 切换文件上传类型为前端直连并修复生产环境注释编码
将 VITE_UPLOAD_TYPE 从 server 改为 client(前端直连S3上传),
修复 .env.production 中因编码损坏导致的中文注释乱码。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:19:29 +08:00
lzh
e7f14bd4e8 chore: build and deploy web-antd
All checks were successful
Web UI CI/CD / build-and-deploy (push) Successful in 37s
2026-03-15 17:05:46 +08:00
lzh
17042bd7c7 style(@vben/web-antd): lint 自动格式化修正区域安保模块
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 16:58:26 +08:00
lzh
287cb818b3 feat(@vben/web-antd): 新增保洁作业进度组件
展示保洁工单的实时作业进度,包含圆环进度图和关键指标网格。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 16:57:51 +08:00
lzh
b9f45c8fdc feat(@vben/web-antd): 新增区域安保配置模块
- 新增区域安保 API 接口定义
- 新增区域安保配置页面,支持区域视图和人员视图
- 包含人员绑定弹窗和人员卡片组件

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 16:54:38 +08:00
lzh
b1db581d36 style(@vben/web-antd): lint 自动格式化修正
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 16:52:22 +08:00
lzh
813e84cff1 style(@vben/web-antd): 保洁/安保工单详情组件重构及样式优化
- cleaning-detail-ext: 精简为 Descriptions 表格展示,移除冗余的工牌状态面板和作业进度
- cleaning-actions: 按钮改为 size=small 行内样式,移除 block 布局
- security-detail-ext: 事件信息改为 Descriptions 表格,统一告警截图展示
- AreaTree: 支持 title 插槽透传
- 保洁工单列表移除 PAUSED Tab

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 16:51:42 +08:00