zlwu and Cursor
80722d76db
feat(mini-auth): add WeChat service-account bind APIs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-13 18:15:53 +08:00
zlwu and Cursor
405808f4dd
feat(mini-auth): allow silent wechat login when openid already bound
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-13 18:13:09 +08:00
zlwu and Cursor
e0cfd41b1f
feat(oa): schedule WeChat MP notifies after approval/cc tasks create
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-13 18:08:35 +08:00
zlwu and Cursor
cfb7a227e3
feat(backend): add WeChat service-account template message sender
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-13 18:02:49 +08:00
zlwu and Cursor
119882953a
feat(db): add sys_user service-account WeChat bind columns
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-13 17:58:45 +08:00
zlwu
283b8cd1e3
提交
2026-08-13 16:50:36 +08:00
zlwu
8c49021d38
提交
2026-08-13 14:31:57 +08:00
zlwu and Cursor
e4934dc64e
chore(oa): note mobile task centers plan status and refresh graph
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 16:41:14 +08:00
zlwu
ec628e1b8d
提交
2026-08-12 15:48:15 +08:00
zlwu
1b2896c877
提交
2026-08-12 10:02:31 +08:00
zlwu and Cursor
a0775cf619
feat: wire mini menus API and OA start home entry for mobile
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-11 13:39:51 +08:00
zlwu
693e8a678e
提交
2026-08-11 11:13:01 +08:00
zlwu and Cursor
80138c6388
feat: add filter search to OA pending/done/mine/cc task centers
...
Support server-side filters (app name, initiator, apply time, instance status)
with Fresh Mint filter blocks and 300ms debounced instant search.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-11 10:54:59 +08:00
zlwu and Cursor
80ef84e68f
test: add failing OA task list filter coverage
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-11 10:47:56 +08:00
zlwu and Cursor
efd7efbc69
feat: implement WeChat mini login with openid bind and phone match
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-10 16:24:19 +08:00
zlwu
a9ba60cf6b
提交
2026-08-06 22:21:14 +08:00
zlwu
6a8c3e750e
提交
2026-08-06 16:54:32 +08:00
zlwu and Cursor
d2de132853
feat(oa): allow dept and ownerDept in condition publish whitelist
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 15:39:58 +08:00
zlwu and Cursor
86dd605ac5
feat(oa): evaluate dept contains in condition rules
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 15:33:41 +08:00
zlwu and Cursor
f1fad2d27d
feat(oa): add dept_contains_match for condition id intersection
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 15:19:32 +08:00
zlwu and Cursor
de22678c87
feat: ship OA drafts/badges, role dual-track, and test-env deploy tooling.
...
Add approval instance drafts with menu badges, dual-track user/role read model and role bound names, form-designer outline docs, and bare-metal test deploy scripts. Ignore local test-server credential file.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 13:58:47 +08:00
zlwu and Cursor
01d4fcf12f
chore: update graphify after OA CC unread badge.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 12:19:45 +08:00
zlwu and Cursor
fbfbaa6d17
feat(api): expose CC unread count and mark-read endpoints.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 12:11:14 +08:00
zlwu and Cursor
7f8c163c47
feat(backend): CC task read status in oa_engine.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 12:08:31 +08:00
zlwu and Cursor
4d72231ea3
feat(backend): add is_read fields on OaTask model.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-06 12:04:00 +08:00
zlwu and Cursor
19c6d06fa0
fix(post): hide stale deleted user ids in post view dialog
...
Omit redundant field labels and exclude soft-deleted users from post bindings.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-05 14:43:35 +08:00
zlwu and Cursor
3e60ed56f0
feat(post): list name link and show bound user names
...
Enrich post list with boundUserNames and open view dialog from the name column.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-05 14:33:52 +08:00
zlwu and Cursor
4d3fed3215
chore: ignore local PID files and Graphify AST/incremental caches
...
Stop tracking runtime PID and regenerable Graphify cache/state so they no longer clutter git status.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-04 17:52:36 +08:00
zlwu and Cursor
06db3bc966
feat(permission): replace OA roles with post-bound roles and assignee posts
...
Unify effective roles via post-role bindings, remove dedicated OA role UI, and update OA assignee resolution plus related SQL/docs.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-04 17:41:04 +08:00
zlwu and Cursor
33bf0c32a5
feat(oa): add trip kit day calc and submit validation
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 18:30:00 +08:00
zlwu and Cursor
4ebc2dbe82
feat(oa): add owner person/dept fields with initiator defaults
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:54:48 +08:00
zlwu and Cursor
3b46b10604
feat(oa): add leave kit with auto duration calculation
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:54:48 +08:00
zlwu and Cursor
684f152683
feat(oa): add resignation kit with last_work_day writeback on approval
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:51:33 +08:00
zlwu and Cursor
fa13440f18
feat(oa): sync initiator user from confirmation kit on approval complete
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:28:18 +08:00
zlwu and Cursor
898a337f96
feat(oa): register confirmation kit (转正套件) in FormCreate designer
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:24:06 +08:00
zlwu and Cursor
b22777fa2d
feat(user): add hire_date and probation_months to sys_user and user admin
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:22:41 +08:00
zlwu and Cursor
b1b15da624
feat(oa): add confirmation date month-add helper for 转正套件
...
Also add the confirmation kit implementation plan.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 17:19:09 +08:00
zlwu
310b2efe8a
提交
2026-07-30 15:02:13 +08:00
zlwu and Cursor
835c1c0836
feat(oa): resolve CC tasks with multi-strategy soft union
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 14:28:24 +08:00
zlwu and Cursor
ef91e189dd
feat(oa): validate CC assigneeTypes on publish
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 14:27:25 +08:00
zlwu and Cursor
2326f8bf99
feat(oa): add resolve_cc_assignees for multi-strategy CC soft union
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 14:23:05 +08:00
zlwu and Cursor
a73ea36f9e
docs: mark receive account design implemented and refresh graphs.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:54:20 +08:00
zlwu and Cursor
947e6ae6f8
feat(backend): expose receive account APIs and form validation.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:45:02 +08:00
zlwu and Cursor
9277b9c568
fix(backend): coerce receive account order_num to int or None.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:44:22 +08:00
zlwu and Cursor
51f868ea44
feat(backend): add receive account CRUD helpers and validators.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:40:59 +08:00
zlwu and Cursor
64fb25d3f6
feat(backend): add OaReceiveAccount model.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:38:42 +08:00
zlwu
ec4b9438b4
提交
2026-07-30 13:08:23 +08:00
zlwu and Cursor
22be6d8b36
feat(oa): add initiator system field to condition branches
...
Allow __initiator__ contains matching in publish validation and the
flow designer candidate list, excluding it from form useInCondition locks.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:07:44 +08:00
zlwu and Cursor
3d88f52e2e
feat(backend): match __initiator__ contains in condition groups
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 13:04:24 +08:00
zlwu and Cursor
cf069c74ec
feat(oa): add person select control with contains conditions and print
...
Register FormCreate person field (dept-aligned UI), enable contains-only
workflow conditions, and format person values in print/related summary.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-30 12:18:19 +08:00