zlwu and Cursor
47f873a3e6
feat(backend): add sample payment progress aggregation helper
...
Pure function for per-sample list progressStatus, paid/due totals, and canConfirm.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-05 12:54:48 +08:00
zlwu and Cursor
fdd2c1fbc3
feat: add presign order CRUD, deposit transfers, and convert API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-03 11:18:32 +08:00
zlwu and Cursor
2ff5bc09f9
feat: add protocol-level refund registration API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-03 11:05:29 +08:00
zlwu and Cursor
8827ec3804
feat: add sample payment schedule and transfer status rules
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-03 10:58:21 +08:00
zlwu
4928e00423
提交
2026-09-28 10:49:53 +08:00
zlwu
b9b4cc2673
提交
2026-09-24 09:59:26 +08:00
zlwu and Cursor
c66bfc75c0
feat(oa): add instance comment create list and revoke service
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 21:27:02 +08:00
zlwu and Cursor
ea8420b648
feat(oa): enumerate and validate comment form attachment refs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 21:20:58 +08:00
zlwu and Cursor
f7c5a7477e
feat: add mini auth web-qr scanned and confirm endpoints
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:57:04 +08:00
zlwu and Cursor
38b11cce35
feat: add web auth wx-qr create and status endpoints
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:53:40 +08:00
zlwu and Cursor
9d4a11339b
feat: add WeChat unlimited mini program code generator
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:48:54 +08:00
zlwu and Cursor
a9b6a73823
feat: add wx-qr login session store with one-time token consume
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:40:20 +08:00
zlwu and Cursor
412ec0771f
feat(backend): add collection region staff CRUD and list summaries
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 11:24:03 +08:00
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
416c4a0838
test: add OA instance history list failing tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-28 10:44:39 +08:00
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
zlwu and Cursor
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
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
8c49021d38
提交
2026-08-13 14:31:57 +08:00
zlwu
693e8a678e
提交
2026-08-11 11:13:01 +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
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
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
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