v6ole
|
a63bd6874c
|
feat: 仪表盘+催办在休息日跳过填报检查
- 新增 is_working_day() 工具函数,自动跳过周末 + 可配置法定假日
- 仪表盘填报进度新增 is_rest_day 字段,休息日显示灰「休」印章
- 催办调度改用 is_working_day() 替代原始 weekday 检查
- 系统设置新增「法定节假日」配置卡片,支局长可管理假日日期
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-07-12 14:13:32 +08:00 |
|
v6ole
|
eb05a0420e
|
feat: scheduler skips on-leave managers; AI summary includes leave data
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-07-12 13:10:36 +08:00 |
|
v6ole
|
b343970ecc
|
feat: 三项联动 — 计划过期提醒 + 拜访自动关闭 + 批量制定
1. 计划过期自动提醒:
- scheduler.py 新增 check_overdue_plans()
- 每日 9:00 检查过期计划(plan_date < today, status=计划中)
- 按经理汇总 → 企微推送提醒消息
2. 拜访后自动关闭计划:
- create_visit 后自动将匹配的计划标记为「已完成」
- 条件: customer_id 匹配 + status=计划中 + plan_date <= visit_date
3. 亮灯表批量制定:
- 红灯/黄灯卡片右上角 ☐ 复选框
- 勾选后出现「批量制定计划」按钮
- 弹窗统一设置日期+内容 → 批量 POST
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-27 12:28:36 +08:00 |
|
v6ole
|
df5b661d5f
|
fix: 填报统计不再限定 role=manager,只看 require_report=True
之前: role='manager' AND require_report=True → 只统计客户经理
现在: require_report=True → 统计所有需填报的用户
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-26 16:44:59 +08:00 |
|
v6ole
|
a580eefd14
|
feat: 三项改进 — require_report + 拜访联动 + 解绑移到弹窗
1. 用户管理页 UX 优化:
- 表格内「解绑」按钮移入编辑弹窗(clearable 输入框)
- 新增「需要填写周报」el-switch 开关
- 新增「填报」列显示是否计入统计
2. require_report 字段 (DB + API + 联动):
- users 表新增 require_report BOOLEAN DEFAULT TRUE
- 调度器/仪表盘进度/立即检查 均排除 require_report=false
- UserOut schema + UpdateUserRoleRequest 同步更新
3. 拜访联动客户 last_visit:
- customers 表新增 last_visit_date / last_visit_manager_id
- 创建拜访记录时自动更新对应客户的最后拜访信息
- 亮灯表可据此精确判断客户拜访状态
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-26 16:36:27 +08:00 |
|
v6ole
|
989c41da8c
|
fix: 填报检查统计所有经理 (不限于已绑定企微)
之前只统计 wecom_userid IS NOT NULL 的经理导致始终 0/0,
现在统计全员,仅推送消息时跳过未绑定用户。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-26 16:10:17 +08:00 |
|
v6ole
|
c4e8a3b790
|
feat: 富消息升级 — 催办用模板卡片 + 公告用 Markdown
scheduler.py:
- 未填报经理 → 模板卡片消息(标题+描述+「去填报」按钮)
- 支局长/领导 → Markdown 每日填报汇总(markdown)
- 文本消息作为降级方案
wecom.py API:
- remind: 模板卡片优先 → 降级文本
- announcement: Markdown 优先 → 降级文本
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-26 15:34:21 +08:00 |
|
v6ole
|
36ba9338f1
|
feat: 企业微信 Phase 1 — token 续期 + 回调验证 + 调度器注册
wecom.py:
- Token 自动续期 (7200s 过期 + 60s 提前量 + 42001 重试)
- POST 请求自动重试 (最多 3 次,含速率限制退避)
- 新增 send_markdown_message() / send_template_card() 富消息方法
wecom.py API:
- GET /api/wecom/callback: 企微回调 URL 验证 (SHA1 签名 + AES 解密)
- POST /api/wecom/callback: 事件接收占位
scheduler.py:
- 仅推送给已绑定 wecom_userid 的经理
- 消息内容优化 (已填报/未填报人数统计)
main.py:
- APScheduler 注册每日 17:30 自动检查填报
已验证: WECOM_TOKEN 获取成功
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-26 09:37:13 +08:00 |
|
v6ole
|
a1886074dd
|
企迹(qiji) 政企周报管理系统 — v0.1
后端: FastAPI + SQLAlchemy 2.0 (async) + Alembic + MinIO + Casdoor + 企微
前端: Vue 3 + Vite + TypeScript + Element Plus + Pinia
功能清单:
- 8 张数据表自动建表 / Casdoor OIDC 登录 / 企微静默登录
- 双布局: 移动端(填报) + PC端(汇总管理)
- 拜访记录 CRUD + MinIO 照片直传 + 缩略图预览 + 同访人草稿
- 今日纪要 (6 分类) / 工作计划 / 小微商机 / 要客拜访 CRUD
- 客户档案: 备注/收支费用/联系人/归属分配/批量转移
- 客户导入导出 + 模板下载 + 搜索/分页/筛选
- 仪表盘: 四卡统计 + 填报进度 (拜访+纪要双维度)
- 周报详情: 五 Tab + 按人/客户筛选 + 时间轴
- 用户管理 / 客户经理 PC 端工作台
- 企微: 催办/公告/定时提醒 / 时区修正
- Docker 部署配置
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-24 08:30:12 +08:00 |
|