Commit Graph
99 Commits
Author SHA1 Message Date
zlwu d294ecad84 提交 2026-09-11 21:03:53 +08:00
zlwu 2cd1194d17 提交 2026-09-01 13:43:14 +08:00
zlwu 2fd826dbe1 提交 2026-09-01 11:32:49 +08:00
zlwuandCursor 01e0d99a03 feat(backend): cascade complete tasks and steps when finishing work order
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 14:40:01 +08:00
zlwuandCursor c6a9745c80 feat(backend): cascade-complete steps when finishing production task
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 14:37:57 +08:00
zlwuandCursor 29abc79699 feat(backend): require conclusion on production work order complete
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 14:36:46 +08:00
zlwu 0d52442902 提交 2026-08-28 17:38:37 +08:00
zlwuandCursor 32824fdbf5 feat(oa): add list_instance_history with scoped preview fields
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-28 10:47:44 +08:00
zlwuandCursor 416c4a0838 test: add OA instance history list failing tests
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-28 10:44:39 +08:00
zlwuandCursor 562f35a839 feat(backend): resolve temporary QC target cell product vs external code
Extract pure mutual-exclusion helper to avoid circular imports in unit tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:38:56 +08:00
zlwuandCursor 0a5bf28e58 feat: allow empty fields on qc material month template rows
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 13:06:35 +08:00
zlwuandCursor 3aa8aebc29 feat(backend): add qc material month template CRUD preview and confirm
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 12:46:25 +08:00
zlwuandCursor ca4b9a15c5 feat(backend): add RK+date stock-in number allocator for qc materials
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 12:45:08 +08:00
zlwuandCursor 309b781c0e feat: add dual-gate storage release pure functions and tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-19 11:22:15 +08:00
zlwuandCursor d0ea38c133 test: add production task set item helper coverage
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-18 15:38:52 +08:00
zlwu d2792174b5 提交 2026-08-18 14:40:15 +08:00
zlwuandCursor 79f9649610 feat(backend): add production waste-output list query helpers.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-18 10:54:00 +08:00
zlwuandCursor 0f461851b5 feat(backend): add QC material batch stockStatus helpers.
Normalize available/exhausted filter values and document remaining_qty matching for list filtering.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-18 09:36:33 +08:00
zlwuandCursor bc62ac796a feat(backend): add QC inspection item template CRUD helpers.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-17 12:46:59 +08:00
zlwu 1bdf979a70 提交 2026-08-14 16:01:47 +08:00
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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 8c49021d38 提交 2026-08-13 14:31:57 +08:00
zlwu 693e8a678e 提交 2026-08-11 11:13:01 +08:00
zlwuandCursor 80ef84e68f test: add failing OA task list filter coverage
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-11 10:47:56 +08:00
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 86dd605ac5 feat(oa): evaluate dept contains in condition rules
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-06 15:33:41 +08:00
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor ef91e189dd feat(oa): validate CC assigneeTypes on publish
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 14:27:25 +08:00
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 3d88f52e2e feat(backend): match __initiator__ contains in condition groups
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 13:04:24 +08:00