huangping
4dc8341e7e
feat(m2): add SKU mapping between contract lines and license features
2026-05-25 14:50:31 +08:00
huangping
8d1081b2b9
feat(m2): add external/internal order ID to contracts
2026-05-25 14:49:40 +08:00
huangping
16ab474bee
feat(m3): add field environment info (address, network, contact) to delivery
2026-05-25 14:49:34 +08:00
huangping
85d2b85b6a
fix: add userId filter to audit search and login lockout logic
2026-05-25 14:46:42 +08:00
huangping
e96383433d
feat(m1): add project stakeholder CRUD
2026-05-25 14:46:30 +08:00
huangping
4bbf1f552f
feat(m2): add signing/effective/end date fields to contracts
2026-05-25 14:46:19 +08:00
huangping
1726f486fa
fix: add amount UI to contract lines and reason code to SN activation
2026-05-25 14:45:54 +08:00
huangping
769bf721f4
fix: handle ConstraintViolationException as 400 instead of 500
2026-05-25 02:38:29 +08:00
huangping
14b86df124
docs(db): add Chinese comments for all 28 platform tables and columns
2026-05-25 02:28:02 +08:00
huangping
3bb19537fe
feat(m11): add v-permission directive and button-level permission codes
2026-05-25 01:41:50 +08:00
huangping
1f599e5646
feat(m11): align role model with product definition (SALES/DELIVERY/LICENSE_OPS)
2026-05-25 01:41:04 +08:00
huangping
d933639518
feat(m10): add audit event search and CSV export
2026-05-25 01:38:48 +08:00
huangping
c088c0ed71
feat(m9): add CSV export for contract-sn report
2026-05-25 01:37:37 +08:00
huangping
46f28d2d97
feat(m6): add JSON template CRUD with versioning
2026-05-25 01:36:40 +08:00
huangping
ae880c47b2
feat(m6): add BitAnswer ID mapping CRUD
2026-05-25 01:35:25 +08:00
huangping
36b6e395c5
feat(m11): add password change with profile page
2026-05-25 01:33:54 +08:00
huangping
3ab1165e69
feat(m11): add login failure lockout after 5 failed attempts in 15 min
2026-05-25 01:33:11 +08:00
huangping
33773928c3
feat(m2): add contract change versioning with CHANGING state
2026-05-25 01:32:20 +08:00
huangping
88c4e22d36
feat(m2): add contract attachment upload and listing
2026-05-25 01:31:01 +08:00
huangping
cc7fef8ae9
feat(m4): add SN batch import with text area dialog
2026-05-25 01:29:40 +08:00
huangping
b5317d8f58
feat(m1): add customer detail aggregation view
2026-05-25 01:28:36 +08:00
huangping
bfb8f23399
feat(m1): add planned start/end dates and project manager to projects
2026-05-25 01:27:15 +08:00
huangping
b536a999f0
feat(m1): add industry/address/billing/customerCode fields to customer
2026-05-25 01:26:22 +08:00
huangping
d0783aa893
feat(m6): add CRUD dialogs for environments and product lines
2026-05-25 01:15:56 +08:00
huangping
ea233dd039
fix(report): implement getProjectHealth with real data queries
2026-05-25 01:15:01 +08:00
huangping
8b00f401be
feat: add M9 ReportService + ReportController
2026-05-25 01:04:04 +08:00
huangping
ba38897f73
feat: add M8 TodoService + TodoController
2026-05-25 01:02:46 +08:00
huangping
fa2a50e755
feat(db): add M8 notification and todo tables
2026-05-25 01:01:34 +08:00
huangping
75e6d6d5ec
feat: add M7 DeviceController + Callback device event linking
2026-05-25 01:00:43 +08:00
huangping
f94f2b91e8
feat: add M7 DeviceService and DTOs
2026-05-25 00:59:12 +08:00
huangping
58b947a366
feat(m7): add DeviceStatus enum and PlatformDevice/PlatformDeviceSnBinding/PlatformDeviceSwapRequest entities with mappers
2026-05-25 00:57:10 +08:00
huangping
b13d17702e
feat(db): add M7 device management tables (device, sn_binding, swap_request)
2026-05-25 00:54:42 +08:00
huangping
6f79bb97d9
feat(platform): add LicenseSigner, LicenseService, LicenseController, and persistence entities
2026-05-18 22:27:03 +08:00
huangping
91aabb500c
feat: extend Java config, Schema, and DB for selfhosted licensing SDK
2026-05-18 22:20:14 +08:00
huangping
6b3f1bdab5
chore: upgrade Spring Boot 3.4.5 -> 4.0.0 with compiler and SecurityConfig fixes
...
- Move maven-compiler-plugin from pluginManagement to plugins for proper release 17 inheritance
- Remove deprecated UserDetailsServiceAutoConfiguration exclude (removed in Boot 4.0)
- Switch MyBatis-Plus to boot4-starter
2026-04-28 18:39:54 +08:00
huangping
d884e6bab2
feat: expand docker-compose to 8 services with monitoring stack per architecture spec
2026-04-28 18:31:49 +08:00
huangping
d53ddf32c8
feat(i8-i9): webhook DEAD replay, read-only delivery status, and callback UI
...
I8: platform proxies replay to webhook; webhook ops token filter and internal
replay endpoint; delivery service supports read/replay flows.
I9: platform GET callback webhook delivery status by inbox id; UI shows
read-only status block and handles load errors without blocking the page.
Also refresh OpenAPI, Runbook notes, test fixtures and YAML; fix Vite dev
axios baseURL so /api uses proxy; improve login error messaging.
Made-with: Cursor
2026-04-07 21:26:44 +08:00
huangping
5fe7181b35
feat(i7): async webhook delivery queue, OPS RBAC, UI role routing; docs and runbook
...
- Architect: I7_DESIGN.md, I7_IMPLEMENTATION_REVIEW.md; parallel index + track B
- Backend: @EnableMethodSecurity; OPS login; CallbackInbox PreAuthorize; IntegrationCatalog triple role
- Webhook: V2 webhook_platform_delivery; planner + scheduler + single-shot forwarder; tests
- Frontend: Pinia hasAnyRole; MainLayout/HomeView/router for OPS vs dev
- Runbook §10.5 delivery config
Made-with: Cursor
2026-04-06 23:01:10 +08:00
huangping
d9536802db
feat(platform): add I6 security headers for API chains
...
Made-with: Cursor
2026-04-06 22:46:31 +08:00
huangping
fc0c4b1930
feat(platform): I5 callback inbox, internal ingest, and M6 catalog APIs
...
Made-with: Cursor
2026-04-06 22:40:21 +08:00
huangping
9df6f60a17
feat(platform): I4 delivery batches, lines, and license SN APIs
...
Add Flyway V4 tables, delivery-batches and license-sns endpoints with
validation, audit actions, controller tests, and OpenAPI snapshot update.
Made-with: Cursor
2026-04-06 21:49:04 +08:00
huangping
69f7ee11df
feat(platform): I3 contracts, lines, status machine, and audit API
...
Add Flyway V3 tables, contract CRUD and line endpoints, PATCH status
transitions with validation, M10-F01 audit-events listing, 409 handler,
and integration tests. Refresh OpenAPI contract snapshot.
Made-with: Cursor
2026-04-06 21:29:21 +08:00
huangping
3f577b34d5
feat(platform): I1 bootstrap, I2 M1 APIs, OpenAPI SSOT, and CI guards
...
Deliver dual Spring Boot services (platform API + webhook ingress), JWT
auth, Flyway with isolated history tables, customer/project/dictionary
endpoints, OpenAPI snapshot under contracts/, RUNBOOK, and CI that runs
on services/web/contracts paths plus enforcer + dependency tree ban on
craftlabs-auth-bitanswer.
Made-with: Cursor
2026-04-06 21:04:56 +08:00