iven
|
3a333535ea
|
feat(miniprogram): 随访详情页截止日期倒计时 + 状态色增强
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 添加截止日期倒计时(还剩 X 天 / 今天截止 / 已过期 X 天)
- 紧急倒计时(≤3天/已过期)使用红色警告样式
- 状态标签增加颜色区分:已完成(绿)/已过期(红)/待完成(黄)
|
2026-04-24 12:48:53 +08:00 |
|
iven
|
0fe4cab593
|
feat(miniprogram): 微信订阅消息引导 + 个人中心消息 badge 占位
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 新增 wechat-templates.ts 集中管理模板 ID
- 预约成功后引导用户订阅预约提醒
- 随访记录提交后引导订阅随访提醒
- 个人中心新增消息中心入口 + 未读数 badge(MVP 占位 unreadCount: 0)
|
2026-04-24 12:47:25 +08:00 |
|
iven
|
38e53efaec
|
feat(appointment): 预约创建页重写 — 宫格科室+周视图日历+时段卡片
|
2026-04-24 12:42:46 +08:00 |
|
iven
|
487432b4e9
|
feat(appointment): 新增 StepIndicator 步骤指示器 + WeekCalendar 周视图日历组件
|
2026-04-24 12:40:59 +08:00 |
|
iven
|
4f2efdb643
|
feat(health): 表单验证升级为 zod schema + 异常值警告 + 录入后清除缓存
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
|
2026-04-24 12:39:36 +08:00 |
|
iven
|
a9861a0cde
|
feat(health): 趋势图升级为 ECharts 折线图 + 缓存 TTL 5分钟
|
2026-04-24 12:38:07 +08:00 |
|
iven
|
7b5b00fbac
|
feat(health): 新增 TrendChart ECharts 折线图组件
|
2026-04-24 12:36:48 +08:00 |
|
iven
|
fa21bbcadd
|
feat(health): 健康卡片增加状态色(正常绿/异常红)+ 参考范围显示
|
2026-04-24 12:35:13 +08:00 |
|
iven
|
8dc00fbd9e
|
spike(miniprogram): echarts-taro3-react 在 Taro 4 webpack5 下验证通过,编译正常
|
2026-04-24 12:33:27 +08:00 |
|
iven
|
6bb3babcb9
|
chore(miniprogram): stores 层启用 @/ 路径别名 + webpack alias 配置
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
|
2026-04-24 12:30:02 +08:00 |
|
iven
|
54a0e393ac
|
fix(miniprogram): 首页/健康页/详情页统一使用 Loading 组件
|
2026-04-24 12:27:16 +08:00 |
|
iven
|
f75bc191e6
|
fix(miniprogram): 预约详情/随访详情改为 API 获取数据,移除 Storage 缓存传递
|
2026-04-24 12:24:49 +08:00 |
|
iven
|
2dc280a401
|
feat(health): 新增预约/随访单条查询 GET 端点
|
2026-04-24 12:22:52 +08:00 |
|
iven
|
74d7efec1f
|
fix(miniprogram): 添加全局 ErrorBoundary,修复 tryRefreshToken 静默吞异常
|
2026-04-24 12:20:34 +08:00 |
|
iven
|
f3716dbdc5
|
fix(miniprogram): 删除重复页面 report/followup,修复 EmptyState 导入 bug
|
2026-04-24 12:19:24 +08:00 |
|
iven
|
d26a847be2
|
fix(health): 对接今日体征摘要新端点 /health/vital-signs/today
|
2026-04-24 12:18:23 +08:00 |
|
iven
|
e7b6bdfcac
|
feat(health): 新增小程序专用今日体征摘要端点 GET /health/vital-signs/today
|
2026-04-24 12:17:17 +08:00 |
|
iven
|
19be2a08c7
|
docs(miniprogram): 新增小程序迭代设计规格 + 25 Task 实施计划
CI / security-audit (push) Has been cancelled
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
设计规格:4 Sprint 混合策略(Sprint 0 修基础 → Sprint 1-3 模块打磨),
覆盖 18 个问题,含健康数据、预约挂号、报告详情、安全加固、增长基础。
实施计划:25 个 Task,4 个 Chunk,经 4 轮审查修复关键问题:
- Task 10 依赖后端 today 端点 status/reference_range 字段
- Task 14/15 补全 StepIndicator 连接线 + WeekCalendar 完整实现
- Task 21 request.ts Token 加密绕过修复
- Task 22 手机号解密前后端 API 契约明确(推荐 code 模式)
- Task 24 埋点补充核心页面手动调用
- Task 25 hooks 无条件调用修复
|
2026-04-24 12:08:13 +08:00 |
|
iven
|
a0ca156e2c
|
fix(health): 精准审计修复 6 个真实问题 — 安全/一致性/性能
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
P0: consultation handler sender_role 从请求体移除,改为服务端推导(防伪造)
P1: 所有软删除操作统一使用 check_version 乐观锁(6个函数)
P1: 修复 health_trend 索引缺少 tenant_id 前导列 + follow_up_record 补 (tenant_id, executed_date) 索引
P2: Decimal->f64 使用 ToPrimitive::to_f64 替代脆弱的 to_string().parse()
P2: 预约取消释放槽位+状态更新包裹进同一事务
|
2026-04-24 08:36:22 +08:00 |
|
iven
|
6391a13467
|
fix(auth+miniprogram): 清除全部审计遗留问题
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
MEDIUM:
- WechatLoginReq/WechatBindPhoneReq 添加 Validate 派生 + 字段校验规则
- handler 中调用 req.validate() 并 map_err 转换
- 新增 AuthError::DbError 变体,wechat_service 所有 DB 错误从 Validation 改为 DbError
- DbError 映射到 AppError::Internal,不再误导前端
LOW:
- fetch_session 改用 reqwest Client.query() 构建参数,自动 URL 编码
- app.tsx PropsWithChildren<any> 改为 Record<string, unknown>
- login handleGetPhone 回调 e: any 改为内联类型
- appointment/create 4 个事件回调 e: any 改为内联类型
- health/input catch (e: any) 改为 catch (e: unknown) + instanceof 守卫
- report/detail Object.entries 去掉 [string, any] 类型断言
- wechat_service 移除 decrypt_phone_placeholder 函数,内联占位注释
|
2026-04-24 08:16:01 +08:00 |
|
iven
|
ef6d76ef6c
|
fix(miniprogram+auth): 二次审计修复 — 3 HIGH + 2 MEDIUM
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
HIGH:
- wechat_users 迁移补充 created_by/updated_by/version 标准字段
- Entity 同步更新,bind_phone 创建记录时填充新字段
- appointment create 移除 schedule_id 空字符串,改为可选
- appointment list 用 useRef 替代 useCallback 的 loading 依赖,消除 stale closure
MEDIUM:
- report 页 patientId 从顶层读取改为 useDidShow 内动态获取,就诊人切换后正确刷新
- profile/reports 同上修复
- profile/followups 移除 useDidShow 非法的第二参数
|
2026-04-24 08:05:58 +08:00 |
|
iven
|
4867202437
|
fix(health): 四次审计修复 — 6 CRITICAL + 8 HIGH + 4 MEDIUM
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
CRITICAL:
- C-1: consultation sender_id 改为从 JWT ctx.user_id 注入,防伪造
- C-2: consultation session 更新改为 CAS 原子操作,防并发丢失
- C-3: 随访记录创建包裹在事务中,保证记录/任务/后续任务一致性
- C-4/C-5/C-6: 唯一索引改为 partial index WHERE deleted_at IS NULL
HIGH:
- H-1: manage_patient_tags 添加 tag_ids 租户归属校验
- H-2: assign_doctor 添加重复关联检查
- H-3: calendar_view 限制日期范围最多 90 天
- H-4: export_sessions 添加 10000 条上限
- H-5: patient_tag_relation/patient_doctor_relation 添加 version 字段
- H-6: create_schedule 添加医生存在性检查
- H-7: 预约取消排班释放错误改为日志记录
- H-8: follow_up_task.related_appointment_id 添加 FK 约束
MEDIUM:
- M-2: 修复 search LIKE 双重 % 包裹问题
- M-3: article_service 错误类型改为 ArticleNotFound
- M-4: patient.created 事件移除 PII(姓名)
- M-6: lab_report 添加 (tenant_id, report_type) 索引
|
2026-04-24 07:50:14 +08:00 |
|
iven
|
7b7677dfec
|
fix(miniprogram): 审计修复 — P0/P1 共 16 个问题
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
P0 功能阻断:
- 修复 login→bindPhone openid 状态传递断裂
- 首页健康卡片对接 useHealthStore 真实数据
- 血压录入改为收缩压/舒张压双输入
- 快捷服务路径修正(报告→/pages/report、随访→/pages/followup)
P1 类型安全 + 组件:
- 替换所有 <input>/<image>/<textarea> 为 Taro 组件
- service 层 any 类型全部替换(Doctor/DoctorSchedule/IndicatorDetail/FollowUpContent/PatientUpdateInput)
- 预约详情数据传递简化为纯 Storage 缓存
- Article 接口添加 author 字段
|
2026-04-24 01:37:34 +08:00 |
|
iven
|
6fbe7ec530
|
fix(health): 三次审计批次B修复 — 12个HIGH问题
CI / frontend-build (push) Has been cancelled
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- H-6: appointment_service 状态转换复用 validation.rs 函数
- H-7: 添加 validate_record_type (checkup/outpatient/inpatient)
- H-8: 添加 validate_patient_status + validate_verification_status 白名单
- H-9: 添加 validate_online_status + online_status 变更事件
- H-10: create_appointment 添加 doctor_id 存在性检查
- H-12/H-13/H-14: 添加 lab_report GIN/health_trend/follow_up_record 索引
|
2026-04-24 01:07:04 +08:00 |
|
iven
|
0c73927450
|
feat(miniprogram): 通用组件 + 页面接入 — Chunk 7
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 创建 EmptyState/ErrorState/Loading 三个通用组件
- 8个列表页面接入通用组件替换内联空状态/loading
- app.config.ts 添加 login 页面路由
|
2026-04-24 01:03:23 +08:00 |
|
iven
|
9ef65b9a9f
|
feat(health+miniprogram): 预约/报告/随访/资讯/家庭管理 — Chunk 4-6
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
后端:
- 添加 articles 表迁移 + Entity + Service + Handler
- 健康数据趋势 API (get_mini_trend) 注册路由
- article CRUD (list/get) + DTO
前端 (11个新页面 + 5个服务):
- 预约挂号: 列表/创建向导/详情页
- 报告管理: 列表/详情页
- 随访管理: 任务列表/记录详情页
- 资讯文章: 文章详情页
- 个人中心: 就诊人管理/新增/我的报告/我的随访/用药提醒/设置
- 更新 app.config.ts 注册全部路由
- 更新 profile/article 页面为真实功能
|
2026-04-24 00:58:40 +08:00 |
|
iven
|
ee9a5c4da1
|
fix(health): 三次审计批次A修复 — 7个CRITICAL问题
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- C-1: create_record handler 添加 Path(task_id) 提取,校验路径与body一致
- C-2: appointment CAS+INSERT 包裹在数据库事务中,防止幽灵占位
- C-3: appointment 取消释放名额添加 current_appointments > 0 下限保护
- C-4: create_lab_report 添加 patient_id 存在校验
- C-5: create_health_record 添加 patient_id 校验 + record_type 默认值 "routine"→"checkup"
- C-6: health_data update 操作添加 patient_id 归属校验(vital_signs/lab_report/health_record)
- C-7: follow_up_type 校验值改为设计规格定义的 phone/face_to_face/online
- 修复 article_service.rs 编译错误(未使用import + 缺少QuerySelect + 错误变体)
|
2026-04-24 00:46:11 +08:00 |
|
iven
|
affb3a5578
|
feat(health+miniprogram): 健康数据录入 + 趋势图
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
后端:
- 新增 GET /health/vital-signs/trend 小程序趋势查询 API
- 通过 JWT user_id 自动关联 patient,支持 range 参数 (7d/30d/90d)
- 新增 MiniTrendQueryParams, MiniTrendResp, DataPoint DTO
前端:
- 实现健康数据首页(今日概览 + 趋势入口 + 录入按钮)
- 实现健康数据录入页(指标选择 + 数值输入 + 提交)
- 实现趋势图页(时间范围切换 + 柱状图 + 数据列表)
- 新增 health service 和 store(趋势缓存 + 今日摘要)
- 修复所有页面相对路径引用问题
|
2026-04-24 00:36:30 +08:00 |
|
iven
|
0f84c881ef
|
feat(miniprogram): 初始化 Taro 4 + React 小程序项目
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 手动创建 Taro 4.2 + React 18 + TypeScript 项目骨架
- 配置 webpack5 编译、SCSS 样式、医疗清新主题
- 实现 API 请求层(JWT 自动注入 + token 刷新)
- 实现 auth store(微信登录 + 手机号绑定 + 就诊人管理)
- 实现登录页(微信一键登录 + 手机号授权绑定)
- 实现首页(问候栏 + 今日健康卡片 + 快捷服务 + 即将到来)
- 实现我的页面(个人信息 + 功能菜单 + 退出登录)
- 健康/预约/资讯占位页
- TabBar 5 个入口:首页/健康/预约/资讯/我的
|
2026-04-24 00:28:38 +08:00 |
|
iven
|
47817bae7d
|
fix(health): 二次审计修复 — 状态机/枚举校验/归属验证/事件补全
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 状态机验证: patient.status (active→inactive/deceased/inactive→active),
patient.verification_status (pending→verified/rejected), follow_up_task.status
(pending→in_progress/cancelled, in_progress→completed/cancelled)
- 枚举白名单: gender/blood_type/appointment_type/period_type/schedule_status/
follow_up_type/sender_role/content_type/consultation_type
- 归属验证: family_member update/delete 校验 patient_id 匹配
- 事件补全: patient.deceased/verified 条件事件, consultation close 允许 waiting
- 默认值修正: appointment_type "regular"→"outpatient", period_type "morning"→"am",
consultation_type "text"→"customer_service"
- 新增 validation.rs 通用校验模块
|
2026-04-24 00:21:05 +08:00 |
|
iven
|
ba132921cc
|
feat(auth): 添加微信小程序登录支持
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 新增 wechat_users 表迁移和 SeaORM Entity
- 实现微信登录 Service(code→openid→绑定状态查询)
- 实现手机号绑定 Service(创建/关联 user + 签发 JWT)
- 添加公开路由 POST /auth/wechat/login 和 /auth/wechat/bind-phone
- 新增 WechatConfig 到 AppConfig(appid/secret 通过环境变量配置)
- 添加 reqwest 依赖用于调用微信 jscode2session API
|
2026-04-24 00:05:43 +08:00 |
|
iven
|
2e9eb55f2c
|
fix(health): 修复审计发现的 10 个 CRITICAL 问题
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
权限与安全:
- 为全部 51 个 handler 端点添加 require_permission 权限检查
- 修复 CAS 预约操作中 doctor_id 为 None 时使用 Uuid::nil() 的问题
状态机修复:
- 预约初始状态从 "scheduled" 改为 "pending"(匹配设计规格)
- 排班状态从 "active" 改为 "enabled"
- 咨询会话添加 waiting→active 自动触发(首条消息时)
- 新增 create_session 端点和 DTO
数据完整性:
- doctor_profile 表添加 name 列(entity + migration + service)
- lab_report/health_trend 的 json 列改为 json_binary(支持 GIN 索引)
- 添加关键索引:patient.id_number UNIQUE、patient_tag UNIQUE、
doctor_schedule 唯一排班槽位、health_trend、doctor_profile.name
- 随访记录完成后自动检查 next_follow_up_date 创建后续任务
事件总线:
- 实现 10 种核心事件发布(patient/appointment/follow_up/consultation/lab_report)
- 实现 workflow.task.completed 和 message.sent 事件订阅框架
种子数据:
- 实现 seed_tenant_health(8 个默认患者标签)
- 实现 soft_delete_tenant_data(16 张表级联软删除)
|
2026-04-23 23:25:53 +08:00 |
|
iven
|
d6678d001e
|
feat(health): Handler 接线 + Doctor Service + DTO 统一
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
- 重写全部 6 个 handler 文件,从占位错误改为调用 service 层
- 删除 handler 内联 DTO,统一使用 dto/ 模块类型
- 新增 dto/doctor_dto.rs 和 dto/follow_up_dto.rs
- 新增 service/doctor_service.rs 实现医护档案 CRUD
- 将 follow_up_service 内联 DTO 迁移到 dto/follow_up_dto.rs
- 修复 consultation_session 列名 type→consultation_type(数据库+entity+迁移同步)
- 全部 51 个 API 端点已验证可用
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-04-23 21:31:42 +08:00 |
|
iven
|
1824f84467
|
feat(health): 实现 5 大 Service 层完整业务逻辑
CI / rust-check (push) Has been cancelled
CI / security-audit (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
将所有 todo!() 占位替换为真实 SeaORM 数据库操作:
- patient_service: 患者CRUD + 乐观锁 + 软删除 + 标签管理 + 家庭成员 + 医生关联 + 健康摘要
- health_data_service: 体征/化验/体检CRUD + 趋势分析 + 指标时间序列查询
- appointment_service: 预约CRUD + 原子CAS排班占位 + 状态机 + 取消释放名额 + 日历视图
- follow_up_service: 随访任务CRUD + 执行记录 + 自动完成任务状态推进
- consultation_service: 咨询会话管理 + 消息收发 + 未读计数 + 会话关闭
所有操作均包含 tenant_id 过滤 + deleted_at 软删除检查 + 乐观锁版本校验。
|
2026-04-23 20:54:46 +08:00 |
|
iven
|
ca50d32f6e
|
feat(health): 添加 erp-health 健康管理模块骨架
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
新建 erp-health 原生 Rust crate,覆盖设计规格中定义的 5 大业务域:
- 16 个 SeaORM Entity(患者/家属/标签/医生/健康档案/体征/化验单/预约/排班/随访/咨询等)
- 16 表数据库迁移(含索引、外键、默认值、可回滚)
- 40+ API 路由骨架(患者管理/健康数据/预约排班/随访/咨询/医生管理)
- 12 个权限声明(health.patient/health-data/appointment/follow-up/consultation/doctor 各 .list/.manage)
- DTO / Service / Handler / Event 四层架构,Service 使用 todo!() 占位
- erp-server 集成:模块注册 + AppState FromRef 桥接 + 路由挂载
同步更新 CLAUDE.md 项目进度、wiki 知识库、设计规格文档。
|
2026-04-23 19:59:22 +08:00 |
|
iven
|
5ac8e18d74
|
fix(web): 修复 visible_when 表达式评估器 !=/||/&& 支持 + 添加 validation 前端校验
- exprEvaluator: 新增 neq 类型修复 != 操作符被当作 == 处理的 bug
- exprEvaluator: 支持 || 和 && 作为 OR/AND 的别名
- PluginCRUDPage: 读取 field.validation.pattern 添加表单正则校验规则
|
2026-04-21 00:19:10 +08:00 |
|
iven
|
89fc482d99
|
feat(web): 采用 UI UX Pro Max Soft UI Evolution 设计系统
从 Pinterest 风格切换到 Soft UI Evolution 设计系统,使用 UI UX Pro Max
推理引擎生成适合跨行业 ERP 业务用户的专业设计方案。
设计变更:
- 主色从 Pinterest Red (#e60023) 切换到 Trust Blue (#2563EB)
- 字体从系统默认切换到 Noto Sans SC(中文优先)
- 圆角从 16-20px 调整到 10-12px(专业但不夸张)
- 中性色从暖橄榄调切换到 Slate 石板蓝调
- 成功色 #103c25 → #059669,警告色 #b56e1a → #d97706
- 暗色模式从暖黑 (#1a1a18) 切换到深海军蓝 (#0f172a)
涉及文件:DESIGN.md + index.css + App.tsx + 24 个组件文件
|
2026-04-20 23:27:24 +08:00 |
|
iven
|
85e732cf12
|
feat(web): 从 Notion 风格切换到 Pinterest 设计系统
- 替换 DESIGN.md 为 Pinterest 设计规格(暖色调、红色主题、大圆角)
- 更新 CSS 变量:主色 #0075de→#e60023, 圆角 4px→16px, 背景 #f6f5f4→#f6f6f3
- 更新 Ant Design 主题令牌:更大圆角、Pinterest 色板、更大触控目标
- 批量更新 24 个页面/组件文件中的硬编码颜色值
- 暗色模式同步适配 Pinterest 暖色调暗色方案
|
2026-04-20 22:13:20 +08:00 |
|
iven
|
8f3d2d58e7
|
feat(web): 采用 Notion 设计系统 — 暖色调 + 白色侧边栏 + Inter 字体
引入 Notion 风格的 DESIGN.md 设计系统文件,并全面重构前端 UI:
- 主色从 Indigo (#4F46E5) 迁移到 Notion Blue (#0075de)
- 页面背景从冷灰 (#F1F5F9) 迁移到暖白 (#f6f5f4)
- 侧边栏从深色 (#0F172A) 迁移到白色,活跃项用蓝色指示
- 文字从 Slate 冷色迁移到暖灰系列 (Warm Gray 500/300)
- 圆角从 8px 缩小到 4px(按钮/输入),8px(卡片)
- 阴影改为多层超轻 Notion 风格(最大 opacity 0.05)
- 字体优先使用 Inter,保留中文回退
- 暗色模式适配暖黑色调 (#191918)
- 更新 27 个前端文件的硬编码颜色值
|
2026-04-20 13:08:22 +08:00 |
|
iven
|
40b37cc776
|
feat(plugin,freelance,itops,web): P5-P6 dashboard widgets 平台扩展 + 仪表盘声明
P5 平台扩展:
- manifest.rs: Dashboard 变体新增 widgets 字段
- manifest.rs: 定义 PluginWidget/StatCard/ActionQuery 类型
- 前端: 扩展 DashboardWidget 类型支持 stat_cards/action_list/funnel/card_list
- 前端: 新增 4 个 widget 渲染器 (StatCardsWidget/ActionListWidget/FunnelStageWidget/CardListWidget)
- 前端: PluginDashboardPage widget 数据加载支持新类型
P6 仪表盘 widgets:
- freelance: 工作台仪表盘 4 个 widgets (财务概览/紧急待办/商机漏斗/活跃项目)
- itops: 新增运维概览仪表盘 2 个 widgets (运维概览/紧急待办)
|
2026-04-20 09:35:27 +08:00 |
|
iven
|
301178067c
|
feat(freelance,itops): P1-P4 智能业务引擎 + PDF 模板
freelance (P1+P3):
- settings: 7 配置项 (公司/财务/提醒)
- trigger_events: 5 个触发事件 (商机/合同/发票/任务/支出)
- cascade: 5 处级联过滤 (合同→商机/报价, 发票→项目/合同, 工时→任务)
- visible_when: 4 处条件显示 (收款日期/已付金额/实际工时/总金额)
- validation: 2 处校验 (手机号/邮箱)
- templates: 3 个 PDF 模板 (报价单/发票/合同)
itops (P2+P4):
- settings: 4 配置项 (SLA/提醒)
- trigger_events: 4 个触发事件 (工单/合同/巡检)
- cascade: 2 处级联过滤 (工单→合同, 巡检记录→合同)
- visible_when: 6 处条件显示 (解决方案/响应时间/解决时间/关闭时间/问题/措施)
- validation: 1 处校验 (合同编号格式)
- templates: 1 个 PDF 模板 (维保合同)
|
2026-04-20 09:15:57 +08:00 |
|
iven
|
7e063a7e88
|
docs(plan): freelance/itops 插件增强实施计划 — P1-P6 六阶段
P1-P4 纯 plugin.toml(settings/trigger_events/cascade/visible_when/validation/templates)
P5 平台 manifest.rs + 前端 widgets 扩展
P6 两个插件仪表盘 widgets 声明
|
2026-04-20 07:14:30 +08:00 |
|
iven
|
bcc6662add
|
docs(spec): 修复 spec 审查问题 — cascade/validation 标注为修改已有字段,dashboard 标注平台依赖
- CRITICAL: 明确 dashboard widgets 需要平台 manifest.rs 扩展
- HIGH: cascade/validation/visible_when 均改为"已有字段追加属性"
- HIGH: visible_when 提供完整 TOML 语法
- MEDIUM: 模板引擎说明(Handlebars)和关系解析机制
- MEDIUM: itops validation 补充字段上下文
- MEDIUM: itops dashboard 明确插入位置
|
2026-04-20 00:50:29 +08:00 |
|
iven
|
f4afc969bd
|
docs(spec): 自由职业者/IT运维插件增强设计规格
三层增强方案:智能业务引擎 + 仪表盘重构 + 专业输出
纯插件层实现,无需修改平台代码
|
2026-04-20 00:43:34 +08:00 |
|
iven
|
74378a7575
|
feat(itops): 编译 WASM 并验证安装 — 4 实体/8 权限已创建
|
2026-04-20 00:10:35 +08:00 |
|
iven
|
59339c2929
|
feat(itops): 创建 IT 运维服务台插件 — 4 实体/8 权限/4 页面
|
2026-04-20 00:09:24 +08:00 |
|
iven
|
fc76793d6d
|
feat(freelance): 编译 WASM 并验证安装 — 10 实体/20 权限已创建
|
2026-04-19 23:59:03 +08:00 |
|
iven
|
813df3688c
|
feat(freelance): 添加 plugin.toml — 10 实体/20 权限/7 页面
|
2026-04-19 23:49:40 +08:00 |
|
iven
|
fcf20dded1
|
feat(freelance): 创建插件 crate 骨架
|
2026-04-19 23:45:43 +08:00 |
|
iven
|
a7a48167ca
|
feat(plugin): P1-P4 审计修复 — 第三批 (配置变更通知 + 自定义视图)
3.1 配置变更通知:
- update_config 增加 EventBus 参数
- 更新成功后发布 plugin.config.updated 事件
- handler 传入 event_bus
3.2 自定义视图:
- plugin_user_views 表迁移 (id/tenant_id/user_id/plugin_id/entity/view_name/view_config/is_default)
- CRUD API: GET/POST /plugins/{id}/{entity}/views, DELETE /plugins/{id}/{entity}/views/{view_id}
- 默认视图互斥逻辑
|
2026-04-19 18:25:03 +08:00 |
|