937 lines
47 KiB
Plaintext
937 lines
47 KiB
Plaintext
## PHASE 36
|
|
Title: Prometheus 指标监控 (Metrics Monitoring)
|
|
Completed: 2026-03-02T09:13:04Z
|
|
Files:
|
|
- ljwx-platform-app/pom.xml
|
|
- ljwx-platform-app/src/main/resources/application.yml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/filter/TenantMetricsFilter.java
|
|
- k8s/prometheus-servicemonitor.yaml
|
|
Status: PASSED
|
|
|
|
## PHASE 43
|
|
Title: 租户域名识别 (Tenant Domain Recognition)
|
|
Completed: 2026-03-15T00:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V043__create_tenant_domain.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/TenantDomain.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/TenantDomainMapper.java
|
|
- ljwx-platform-app/src/main/resources/mapper/TenantDomainMapper.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/TenantDomainAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/TenantDomainController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/filter/TenantDomainFilter.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/TenantDomainCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/TenantDomainVO.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/result/ErrorCode.java (updated)
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/filter/TenantContextFilter.java (updated)
|
|
Status: PASSED
|
|
|
|
## PHASE 37
|
|
Title: Grafana 仪表盘与告警 (Grafana Dashboards)
|
|
Completed: 2026-03-02T00:00:00Z
|
|
Files:
|
|
- k8s/grafana-dashboard-global.json
|
|
- k8s/grafana-dashboard-jvm.json
|
|
- k8s/grafana-dashboard-tenant.json
|
|
- k8s/grafana-alerting-rules.yaml
|
|
Status: PASSED
|
|
|
|
## PHASE 28
|
|
Title: Security Hardening XSS Idempotency Token Blacklist
|
|
Completed: 2026-02-24T23:59:00Z
|
|
Files:
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/filter/XssFilter.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/filter/XssHttpServletRequestWrapper.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/annotation/Idempotent.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/annotation/StrongPassword.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/validator/StrongPasswordValidator.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/interceptor/IdempotentInterceptor.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/blacklist/TokenBlacklistService.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/blacklist/LoginLockoutService.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 27
|
|
Title: Final Gate and Full Manifest v2
|
|
Completed: 2026-02-24T23:30:00Z
|
|
Files:
|
|
- FULL_MANIFEST.txt
|
|
- README.md
|
|
Gate: PASSED
|
|
|
|
## PHASE 24
|
|
Title: Tenant Package Notice Read and Import Export
|
|
Completed: 2026-02-24T23:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V027__create_sys_tenant_package.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V028__create_sys_notice_user.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysTenantPackage.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysNoticeUser.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysTenantPackageMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysNoticeUserMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/TenantPackageAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/TenantPackageController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/TenantPackageCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/TenantPackageUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/TenantPackageVO.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysTenantPackageMapper.xml
|
|
- ljwx-platform-app/src/main/resources/mapper/SysNoticeUserMapper.xml
|
|
- ljwx-platform-admin/src/api/tenantPackage.ts
|
|
- ljwx-platform-admin/src/views/system/tenantPackage/index.vue
|
|
Gate: PASSED
|
|
|
|
## PHASE 26
|
|
Title: Integration Tests Phase 2
|
|
Completed: 2026-02-24T22:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/MenuControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/DeptControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/ProfileControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/LoginLogControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/OnlineUserControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/MonitorControllerIT.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 25
|
|
Title: System Monitor API Rate Limit and WebSocket
|
|
Completed: 2026-02-24T21:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/MonitorController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/ServerInfoVO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/JvmInfoVO.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/annotation/RateLimit.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/interceptor/RateLimitInterceptor.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/config/WebSocketConfig.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/websocket/NotificationWebSocketHandler.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 23
|
|
Title: Admin Frontend Pages Batch 2
|
|
Completed: 2026-02-24T20:00:00Z
|
|
Files:
|
|
- ljwx-platform-admin/src/api/dept.ts
|
|
- ljwx-platform-admin/src/api/profile.ts
|
|
- ljwx-platform-admin/src/api/loginLog.ts
|
|
- ljwx-platform-admin/src/api/onlineUser.ts
|
|
- ljwx-platform-admin/src/views/system/dept/index.vue
|
|
- ljwx-platform-admin/src/views/system/menu/index.vue
|
|
- ljwx-platform-admin/src/views/system/profile/index.vue
|
|
- ljwx-platform-admin/src/views/monitor/loginLog/index.vue
|
|
- ljwx-platform-admin/src/views/monitor/onlineUser/index.vue
|
|
Gate: PASSED
|
|
|
|
## PHASE 22
|
|
Title: Profile Login Log and Online Users
|
|
Completed: 2026-02-24T15:23:30Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V026__create_sys_login_log.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysLoginLog.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysLoginLogMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/LoginLogAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/LoginLogController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/LoginLogVO.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysLoginLogMapper.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/ProfileController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/ProfileUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/PasswordUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/ProfileAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/OnlineUserController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/OnlineUserAppService.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 21
|
|
Title: Department Management and Data Scope
|
|
Completed: 2026-02-24T18:30:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V024__create_sys_dept.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V025__seed_sys_dept.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysDept.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysDeptMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/DeptAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/DeptController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/DeptCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/DeptUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/DeptQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/DeptVO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/DeptTreeVO.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysDeptMapper.xml
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/context/DataScopeContext.java
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/interceptor/DataScopeInterceptor.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 20
|
|
Title: Menu Management and Dynamic Routes
|
|
Completed: 2026-02-24T18:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V022__create_sys_menu.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V023__seed_sys_menu.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysMenu.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysMenuMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/MenuAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/MenuController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/MenuCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/MenuUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/MenuVO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/MenuTreeVO.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysMenuMapper.xml
|
|
Status: PASSED
|
|
|
|
## PHASE 19
|
|
Title: Final Gate and Docs
|
|
Completed: 2026-02-24T16:00:00Z
|
|
Files:
|
|
- FULL_MANIFEST.txt
|
|
- docs/adr/001-module-dependency-dag.md
|
|
- docs/adr/002-audit-field-interceptor.md
|
|
- docs/adr/003-jwt-authorities-convention.md
|
|
- docs/adr/004-frontend-semver-tilde-only.md
|
|
- docs/adr/005-changelog.md
|
|
- README.md
|
|
Status: PASSED
|
|
|
|
## PHASE 18
|
|
Title: Screen Components
|
|
Status: PASSED
|
|
Completed: 2026-02-24T13:30:00Z
|
|
Files:
|
|
- ljwx-platform-screen/src/components/charts/BarChart.vue
|
|
- ljwx-platform-screen/src/components/charts/LineChart.vue
|
|
- ljwx-platform-screen/src/components/charts/PieChart.vue
|
|
- ljwx-platform-screen/src/components/charts/RadarChart.vue
|
|
- ljwx-platform-screen/src/components/charts/GaugeChart.vue
|
|
- ljwx-platform-screen/src/components/charts/ScatterChart.vue
|
|
- ljwx-platform-screen/src/components/charts/MapChart.vue
|
|
- ljwx-platform-screen/src/components/charts/FunnelChart.vue
|
|
- ljwx-platform-screen/src/components/charts/HeatmapChart.vue
|
|
- ljwx-platform-screen/src/components/charts/TreemapChart.vue
|
|
- ljwx-platform-screen/src/components/charts/SankeyChart.vue
|
|
- ljwx-platform-screen/src/components/charts/WaterBallChart.vue
|
|
- ljwx-platform-screen/src/components/charts/RingChart.vue
|
|
- ljwx-platform-screen/src/components/widgets/NumberFlip.vue
|
|
- ljwx-platform-screen/src/components/widgets/ScrollTable.vue
|
|
- ljwx-platform-screen/src/views/home/index.vue
|
|
|
|
## PHASE 17
|
|
Title: Screen Scaffold
|
|
Completed: 2026-02-24T13:15:00Z
|
|
Files:
|
|
- ljwx-platform-screen/package.json
|
|
- ljwx-platform-screen/vite.config.ts
|
|
- ljwx-platform-screen/tsconfig.json
|
|
- ljwx-platform-screen/tsconfig.app.json
|
|
- ljwx-platform-screen/tsconfig.node.json
|
|
- ljwx-platform-screen/env.d.ts
|
|
- ljwx-platform-screen/index.html
|
|
- ljwx-platform-screen/src/main.ts
|
|
- ljwx-platform-screen/src/App.vue
|
|
- ljwx-platform-screen/src/router/index.ts
|
|
- ljwx-platform-screen/src/composables/useScreenAdapt.ts
|
|
- ljwx-platform-screen/src/utils/echarts-setup.ts
|
|
- ljwx-platform-screen/src/utils/echarts-dark-theme.ts
|
|
- ljwx-platform-screen/src/layouts/ScreenLayout.vue
|
|
- ljwx-platform-screen/src/views/home/index.vue
|
|
- ljwx-platform-screen/src/api/request.ts
|
|
- ljwx-platform-screen/src/api/screen.ts
|
|
- ljwx-platform-screen/src/styles/index.scss
|
|
Status: PASSED
|
|
|
|
## PHASE 16
|
|
Title: Mobile Feature Pages
|
|
Completed: 2026-02-24T15:00:00Z
|
|
Files:
|
|
- ljwx-platform-mobile/src/pages/work/index.vue
|
|
- ljwx-platform-mobile/src/pages/message/index.vue
|
|
- ljwx-platform-mobile/src/pages/mine/index.vue
|
|
- ljwx-platform-mobile/src/api/notice.ts
|
|
- ljwx-platform-mobile/src/api/user.ts
|
|
Status: PASSED
|
|
|
|
## PHASE 15
|
|
Title: Mobile Scaffold
|
|
Completed: 2026-02-24T14:00:00Z
|
|
Files:
|
|
- ljwx-platform-mobile/package.json
|
|
- ljwx-platform-mobile/manifest.json
|
|
- ljwx-platform-mobile/pages.json
|
|
- ljwx-platform-mobile/tsconfig.json
|
|
- ljwx-platform-mobile/src/main.ts
|
|
- ljwx-platform-mobile/src/App.vue
|
|
- ljwx-platform-mobile/src/uni.d.ts
|
|
- ljwx-platform-mobile/src/pages/login/index.vue
|
|
- ljwx-platform-mobile/src/pages/home/index.vue
|
|
- ljwx-platform-mobile/src/pages/work/index.vue
|
|
- ljwx-platform-mobile/src/pages/message/index.vue
|
|
- ljwx-platform-mobile/src/pages/mine/index.vue
|
|
- ljwx-platform-mobile/src/stores/user.ts
|
|
- ljwx-platform-mobile/src/api/request.ts
|
|
- ljwx-platform-mobile/src/api/auth.ts
|
|
Status: PASSED
|
|
|
|
## PHASE 14
|
|
Title: Admin Permission and Polish
|
|
Completed: 2026-02-24T12:45:00Z
|
|
Files:
|
|
- ljwx-platform-admin/src/router/guards.ts
|
|
- ljwx-platform-admin/src/stores/permission.ts
|
|
- ljwx-platform-admin/src/composables/usePermission.ts
|
|
- ljwx-platform-admin/src/composables/useTheme.ts
|
|
- ljwx-platform-admin/src/layouts/components/Breadcrumb.vue
|
|
- ljwx-platform-admin/src/layouts/components/TagsView.vue
|
|
- ljwx-platform-admin/src/layouts/components/ThemeSwitch.vue
|
|
Status: PASSED
|
|
|
|
## PHASE 13
|
|
Title: Admin CRUD Pages
|
|
Completed: 2026-02-24T00:00:00Z
|
|
Files:
|
|
- ljwx-platform-admin/src/api/user.ts
|
|
- ljwx-platform-admin/src/api/role.ts
|
|
- ljwx-platform-admin/src/api/tenant.ts
|
|
- ljwx-platform-admin/src/api/dict.ts
|
|
- ljwx-platform-admin/src/api/config.ts
|
|
- ljwx-platform-admin/src/api/log.ts
|
|
- ljwx-platform-admin/src/api/file.ts
|
|
- ljwx-platform-admin/src/api/notice.ts
|
|
- ljwx-platform-admin/src/api/job.ts
|
|
- ljwx-platform-admin/src/views/system/user/index.vue
|
|
- ljwx-platform-admin/src/views/system/role/index.vue
|
|
- ljwx-platform-admin/src/views/system/tenant/index.vue
|
|
- ljwx-platform-admin/src/views/system/dict/index.vue
|
|
- ljwx-platform-admin/src/views/system/config/index.vue
|
|
- ljwx-platform-admin/src/views/system/job/index.vue
|
|
- ljwx-platform-admin/src/views/monitor/operlog/index.vue
|
|
- ljwx-platform-admin/src/views/monitor/loginlog/index.vue
|
|
- ljwx-platform-admin/src/views/system/file/index.vue
|
|
- ljwx-platform-admin/src/views/system/notice/index.vue
|
|
- ljwx-platform-admin/src/router/index.ts
|
|
Status: PASSED
|
|
|
|
## PHASE 12
|
|
Title: Admin Scaffold
|
|
Completed: 2026-02-23T23:59:00Z
|
|
Files:
|
|
- ljwx-platform-admin/package.json
|
|
- ljwx-platform-admin/vite.config.ts
|
|
- ljwx-platform-admin/tsconfig.json
|
|
- ljwx-platform-admin/tsconfig.app.json
|
|
- ljwx-platform-admin/tsconfig.node.json
|
|
- ljwx-platform-admin/env.d.ts
|
|
- ljwx-platform-admin/.env.development
|
|
- ljwx-platform-admin/.env.production
|
|
- ljwx-platform-admin/index.html
|
|
- ljwx-platform-admin/src/main.ts
|
|
- ljwx-platform-admin/src/App.vue
|
|
- ljwx-platform-admin/src/auto-imports.d.ts
|
|
- ljwx-platform-admin/src/components.d.ts
|
|
- ljwx-platform-admin/src/router/index.ts
|
|
- ljwx-platform-admin/src/stores/user.ts
|
|
- ljwx-platform-admin/src/stores/app.ts
|
|
- ljwx-platform-admin/src/api/request.ts
|
|
- ljwx-platform-admin/src/api/auth.ts
|
|
- ljwx-platform-admin/src/layouts/DefaultLayout.vue
|
|
- ljwx-platform-admin/src/layouts/components/Sidebar.vue
|
|
- ljwx-platform-admin/src/layouts/components/Navbar.vue
|
|
- ljwx-platform-admin/src/views/login/index.vue
|
|
- ljwx-platform-admin/src/views/dashboard/index.vue
|
|
- ljwx-platform-admin/src/styles/index.scss
|
|
- ljwx-platform-admin/src/styles/variables.scss
|
|
Status: PASSED
|
|
|
|
## PHASE 11
|
|
Title: Shared Package
|
|
Completed: 2026-02-23T23:30:00Z
|
|
Files:
|
|
- packages/shared/package.json
|
|
- packages/shared/tsconfig.json
|
|
- packages/shared/tsup.config.ts
|
|
- packages/shared/src/index.ts
|
|
- packages/shared/src/types/index.ts
|
|
- packages/shared/src/types/api.ts
|
|
- packages/shared/src/types/user.ts
|
|
- packages/shared/src/types/role.ts
|
|
- packages/shared/src/types/common.ts
|
|
- packages/shared/src/constants/index.ts
|
|
- packages/shared/src/constants/error-codes.ts
|
|
- packages/shared/src/constants/permissions.ts
|
|
- packages/shared/src/utils/index.ts
|
|
Status: PASSED
|
|
|
|
## PHASE 10
|
|
Title: Index and Contract
|
|
Completed: 2026-02-23T22:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V021__create_indexes.sql
|
|
- scripts/tools/export-openapi.sh
|
|
- docs/contracts/.gitkeep
|
|
Status: PASSED
|
|
|
|
## PHASE 9
|
|
Title: Logs Notice and File
|
|
Completed: 2026-02-23T21:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V015__create_sys_operation_log.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V016__create_sys_login_log.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V017__create_sys_file.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V018__create_sys_notice.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/OperationLogController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/LoginLogController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/FileController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/NoticeController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/OperationLogAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/FileAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/NoticeAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysOperationLog.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysLoginLog.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysFile.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysNotice.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysOperationLogMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysLoginLogMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysFileMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysNoticeMapper.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysOperationLogMapper.xml
|
|
- ljwx-platform-app/src/main/resources/mapper/SysLoginLogMapper.xml
|
|
- ljwx-platform-app/src/main/resources/mapper/SysFileMapper.xml
|
|
- ljwx-platform-app/src/main/resources/mapper/SysNoticeMapper.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/LoginLogQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/NoticeUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/OperationLogQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/NoticeQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/FileQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/NoticeCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/config/LogAsyncConfig.java
|
|
Status: PASSED
|
|
|
|
## PHASE 8
|
|
Title: Dict and Config
|
|
Completed: 2026-02-23T20:35:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V012__create_sys_dict_type.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V013__create_sys_dict_data.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V014__create_sys_config.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V019__seed_dict_data.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V020__seed_config_data.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/DictController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/ConfigController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/DictAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/ConfigAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysDictType.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysDictData.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysConfig.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysDictTypeMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysDictDataMapper.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysConfigMapper.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysDictTypeMapper.xml
|
|
- ljwx-platform-app/src/main/resources/mapper/SysDictDataMapper.xml
|
|
- ljwx-platform-app/src/main/resources/mapper/SysConfigMapper.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/DictQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/DictCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/DictUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/ConfigQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/ConfigCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/ConfigUpdateDTO.java
|
|
Status: PASSED
|
|
|
|
## PHASE 7
|
|
Title: Quartz Integration
|
|
Completed: 2026-02-23T12:30:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V010__create_quartz_tables.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V011__create_sys_job.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/JobController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/JobAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysJob.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysJobMapper.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysJobMapper.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/JobQueryDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/JobCreateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/JobUpdateDTO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/quartz/QuartzJobDispatcher.java
|
|
Status: PASSED
|
|
|
|
## PHASE 6
|
|
Title: AI Context Docs
|
|
Completed: 2026-02-23T15:00:00Z
|
|
Files:
|
|
- CLAUDE.md
|
|
- spec.md
|
|
- spec/INDEX.md
|
|
Status: PASSED
|
|
|
|
## PHASE 5
|
|
Title: App Skeleton
|
|
Completed: 2026-02-23T14:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/pom.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/LjwxPlatformApplication.java
|
|
- ljwx-platform-app/src/main/resources/application.yml
|
|
- ljwx-platform-app/src/main/resources/db/migration/V001__init_schema.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V002__create_user.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V003__create_role.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V004__create_permission.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V005__seed_default_tenant.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V006__seed_admin_user.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V007__seed_permissions.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V008__seed_admin_role.sql
|
|
- ljwx-platform-app/src/main/resources/db/migration/V009__assign_admin_role.sql
|
|
- scripts/hooks/pre-edit-guard.sh
|
|
Status: PASSED
|
|
|
|
## PHASE 4
|
|
Title: Web Module
|
|
Completed: 2026-02-23T13:00:00Z
|
|
Files:
|
|
- ljwx-platform-web/pom.xml
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/exception/BusinessException.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/advice/GlobalExceptionHandler.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/advice/ResponseAdvice.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/config/WebMvcConfig.java
|
|
Status: PASSED
|
|
|
|
## PHASE 3
|
|
Title: Security Module
|
|
Completed: 2026-02-23T11:37:34Z
|
|
Files:
|
|
- ljwx-platform-security/pom.xml
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/context/SecurityContextUserHolder.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/context/SecurityContextTenantHolder.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/jwt/JwtProperties.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/jwt/JwtTokenProvider.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/filter/JwtAuthenticationFilter.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/config/SecurityConfig.java
|
|
Status: PASSED
|
|
|
|
## PHASE 2
|
|
Title: Data Module
|
|
Completed: 2026-02-23T12:00:00Z
|
|
Files:
|
|
- ljwx-platform-data/pom.xml
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/interceptor/AuditFieldInterceptor.java
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/interceptor/TenantLineInterceptor.java
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/config/MyBatisConfig.java
|
|
Status: PASSED
|
|
|
|
## PHASE 1
|
|
Title: Core Module
|
|
Completed: 2026-02-23T00:00:00Z
|
|
Files:
|
|
- ljwx-platform-core/pom.xml
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/result/Result.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/result/ErrorCode.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/result/PageResult.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/id/SnowflakeIdGenerator.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/entity/BaseEntity.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/context/CurrentUserHolder.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/context/CurrentTenantHolder.java
|
|
Status: PASSED
|
|
|
|
## PHASE 30
|
|
Title: Data Change Audit and Log Cleanup Job
|
|
Completed: 2026-02-25T00:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V030__create_sys_data_change_log.sql
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysDataChangeLog.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysDataChangeLogMapper.java
|
|
- ljwx-platform-app/src/main/resources/mapper/SysDataChangeLogMapper.xml
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/annotation/AuditChange.java
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/interceptor/DataChangeInterceptor.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/DataChangeLogController.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/DataChangeLogAppService.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/DataChangeLogVO.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/quartz/LogCleanupJob.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 31
|
|
Title: Frontend Permission Directive and Enhancement
|
|
Completed: 2026-02-25T00:30:00Z
|
|
Files:
|
|
- ljwx-platform-admin/src/directives/permission.ts
|
|
- ljwx-platform-admin/src/directives/index.ts
|
|
- ljwx-platform-admin/src/main.ts
|
|
- ljwx-platform-admin/src/composables/usePermission.ts
|
|
- ljwx-platform-admin/src/views/monitor/dataChangeLog/index.vue
|
|
- ljwx-platform-admin/src/api/dataChangeLog.ts
|
|
- ljwx-platform-admin/src/router/index.ts
|
|
Gate: PASSED
|
|
|
|
## PHASE 32
|
|
Title: Final Gate v3 — Documentation and Validation
|
|
Completed: 2026-02-25T01:00:00Z
|
|
Files:
|
|
- FULL_MANIFEST.txt
|
|
- docs/adr/006-security-hardening.md
|
|
- docs/adr/007-observability.md
|
|
- docs/adr/008-data-change-audit.md
|
|
- README.md
|
|
- CLAUDE.md
|
|
- PHASE_MANIFEST.txt
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/blacklist/LoginLockoutService.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/ProfileControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/LoginLogControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/MonitorControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/MenuControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/OnlineUserControllerIT.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/app/DeptControllerIT.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 0
|
|
Status: PASSED
|
|
|
|
pom.xml
|
|
.mvn/wrapper/maven-wrapper.properties
|
|
pnpm-workspace.yaml
|
|
package.json
|
|
.npmrc
|
|
.nvmrc
|
|
docker-compose.yml
|
|
.env.example
|
|
.gitignore
|
|
.editorconfig
|
|
scripts/gates/gate-all.sh
|
|
scripts/gates/gate-compile.sh
|
|
scripts/gates/gate-integration.sh
|
|
scripts/gates/gate-contract.sh
|
|
scripts/gates/gate-manifest.sh
|
|
scripts/gates/gate-nfr.sh
|
|
scripts/tools/export-openapi.sh
|
|
scripts/acceptance/smoke-test.sh
|
|
PHASE_MANIFEST.txt
|
|
|
|
## PHASE 33
|
|
Title: 多级缓存管理器 (Multi-Level Cache Manager)
|
|
Completed: 2026-03-02T00:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V033__create_cache_invalidation_event.sql
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/cache/MultiLevelCacheManager.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/cache/CacheLevel.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/cache/CacheInvalidationListener.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/cache/config/CacheConfig.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/cache/annotation/MultiLevelCacheable.java
|
|
- ljwx-platform-core/pom.xml
|
|
- ljwx-platform-app/src/main/resources/application.yml
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/phase33/MultiLevelCacheManagerTest.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 34
|
|
Title: Outbox 事件表 (Outbox Event Pattern)
|
|
Completed: 2026-03-02T15:54:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/db/migration/V034__create_outbox_event.sql
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/event/OutboxEvent.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/event/OutboxEventPublisher.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/OutboxEventPublisher.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/OutboxEventPoller.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/OutboxEventMapper.java
|
|
- ljwx-platform-app/src/main/resources/mapper/OutboxEventMapper.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/listener/OutboxEventNotificationListener.java
|
|
Status: PASSED
|
|
|
|
## PHASE 35
|
|
Title: 结构化日志与 Loki 集成 (Structured Logging)
|
|
Completed: 2026-03-02T09:00:00Z
|
|
Files:
|
|
- ljwx-platform-app/src/main/resources/logback-spring.xml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/filter/LoggingFilter.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/logging/MDCKeys.java
|
|
- ljwx-platform-app/src/main/resources/application.yml
|
|
- ljwx-platform-app/pom.xml
|
|
- k8s/fluent-bit-config.yaml
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/phase35/StructuredLoggingTest.java
|
|
Gate: PASSED
|
|
|
|
## PHASE 36
|
|
Title: Prometheus 指标监控 (Metrics Monitoring)
|
|
Completed: 2026-03-02T09:30:00Z
|
|
Files:
|
|
- ljwx-platform-app/pom.xml
|
|
- ljwx-platform-app/src/main/resources/application.yml
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/filter/TenantMetricsFilter.java
|
|
- k8s/prometheus-servicemonitor.yaml
|
|
Status: PASSED
|
|
|
|
## PHASE 39
|
|
Title: 数据脱敏 (Data Masking)
|
|
Completed: 2026-03-02T10:00:00Z
|
|
Files:
|
|
- ljwx-platform-core/pom.xml
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/security/MaskType.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/security/DataMask.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/security/DataMaskSerializer.java
|
|
- ljwx-platform-core/src/main/java/com/ljwx/platform/core/security/DataMaskAspect.java
|
|
- ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/UserVO.java
|
|
- ljwx-platform-app/src/test/java/com/ljwx/platform/phase39/DataMaskTest.java
|
|
Status: PASSED
|
|
|
|
## PHASE 42
|
|
Title: Super Admin Mechanism
|
|
Completed: 2026-03-02T12:00:00Z
|
|
Files:
|
|
- ljwx-platform-data/src/main/java/com/ljwx/platform/data/interceptor/TenantLineHandler.java
|
|
- ljwx-platform-security/src/main/java/com/ljwx/platform/security/util/SecurityUtils.java
|
|
- ljwx-platform-web/src/main/java/com/ljwx/platform/web/filter/TenantContextFilter.java
|
|
Status: PASSED
|
|
|
|
|
|
## PHASE 29
|
|
Title: Observability TraceId Structured Logging Slow API
|
|
Completed: 2026-03-03T05:03:04Z
|
|
Files:
|
|
- "ljwx-platform-web/src/main/java/com/ljwx/platform/web/filter/TraceIdFilter.java"
|
|
- "ljwx-platform-web/src/main/java/com/ljwx/platform/web/aop/SlowApiAspect.java"
|
|
- "ljwx-platform-app/src/main/resources/logback-spring.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/FrontendErrorController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/FrontendErrorDTO.java"
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V031__create_sys_frontend_error.sql"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/SysFrontendError.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/SysFrontendErrorMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/SysFrontendErrorMapper.xml"
|
|
- "ljwx-platform-admin/src/composables/useErrorMonitor.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 38
|
|
Title: 租户品牌配置 (Tenant Branding)
|
|
Completed: 2026-03-03T05:04:54Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V038__create_tenant_brand.sql"
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V039__seed_sys_tenant_brand_defaults.sql"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/TenantBrand.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/TenantBrandMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/TenantBrandAppService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/TenantBrandController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/TenantBrandUpdateDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/TenantBrandVO.java"
|
|
- "ljwx-platform-admin/src/api/tenantBrand.ts"
|
|
- "ljwx-platform-admin/src/stores/tenantBrand.ts"
|
|
- "ljwx-platform-admin/src/views/tenant/brand/index.vue"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 40
|
|
Title: 岗位管理 (Position Management)
|
|
Completed: 2026-03-03T05:06:48Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V040__create_sys_post.sql"
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V041__create_sys_user_post.sql"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/Post.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/UserPost.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/PostMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/UserPostMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/PostAppService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/PostController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/PostCreateDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/PostUpdateDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/PostQueryDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/PostVO.java"
|
|
- "ljwx-platform-admin/src/api/post.ts"
|
|
- "ljwx-platform-admin/src/stores/post.ts"
|
|
- "ljwx-platform-admin/src/views/system/post/index.vue"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 41
|
|
Title: Tenant Lifecycle Management
|
|
Completed: 2026-03-03T05:08:41Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/TenantInitializer.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/TenantLifecycleService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/TenantLifecycleController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/filter/TenantLifecycleFilter.java"
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V042__add_tenant_lifecycle_fields.sql"
|
|
- "ljwx-platform-admin/src/views/system/tenant/lifecycle.vue"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 44
|
|
Title: 角色-自定义数据范围 (Role Custom Data Scope)
|
|
Completed: 2026-03-03T05:10:34Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V044__add_role_custom_data_scope.sql"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/RoleDataScope.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/RoleDataScopeMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/RoleDataScopeAppService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/RoleDataScopeController.java"
|
|
- "ljwx-platform-data/src/main/java/com/ljwx/platform/data/interceptor/DataScopeInterceptor.java"
|
|
- "ljwx-platform-data/src/main/java/com/ljwx/platform/data/context/DataScopeContext.java"
|
|
- "ljwx-platform-web/src/main/java/com/ljwx/platform/web/filter/DataScopeContextFilter.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/RoleDataScopeUpdateDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/RoleDataScopeVO.java"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 45
|
|
Title: 任务执行日志 (Task Execution Log)
|
|
Completed: 2026-03-03T05:12:26Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V045__create_task_execution_log.sql"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/entity/TaskExecutionLog.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/TaskExecutionLogMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/appservice/TaskExecutionLogAppService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/TaskExecutionLogController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/task/TaskExecutionLogger.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/dto/TaskExecutionLogQueryDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/domain/vo/TaskExecutionLogVO.java"
|
|
- "ljwx-platform-admin/src/api/taskLog.ts"
|
|
- "ljwx-platform-admin/src/views/system/task-log/index.vue"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 46
|
|
Title: 导入导出中心 (Import/Export Center)
|
|
Completed: 2026-03-03T05:14:21Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V046__create_import_export_task.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/ImportExportTask.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/ImportExportController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/ImportExportService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/ImportExportTaskMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/ImportExportTaskMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/ImportExportTaskDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/ImportExportTaskVO.java"
|
|
- "ljwx-platform-admin/src/views/system/import-export/index.vue"
|
|
- "ljwx-platform-admin/src/api/system/import-export.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 47
|
|
Title: 开放 API 管理 - 应用管理 (Open API - App Management)
|
|
Completed: 2026-03-03T05:19:17Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V047__create_open_app.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/OpenApp.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/OpenApiAppController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/OpenApiAppService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/OpenAppMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/OpenAppMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/OpenAppDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/OpenAppVO.java"
|
|
- "ljwx-platform-web/src/views/system/open-api/app/index.vue"
|
|
- "ljwx-platform-web/src/api/system/open-api-app.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 48
|
|
Title: 开放 API 管理 - 密钥管理 (Open API - Secret Management)
|
|
Completed: 2026-03-03T05:22:07Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V048__create_open_app_secret.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/OpenAppSecret.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/OpenAppSecretController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/OpenAppSecretService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/OpenAppSecretMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/OpenAppSecretMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/OpenAppSecretDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/OpenAppSecretVO.java"
|
|
- "ljwx-platform-web/src/views/system/open-api/secret/index.vue"
|
|
- "ljwx-platform-web/src/api/system/open-api-secret.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 49
|
|
Title: Webhook 事件推送 (Webhook Event Push)
|
|
Completed: 2026-03-03T05:23:59Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V049__create_webhook.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/WebhookConfig.java"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/WebhookLog.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/WebhookController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/WebhookService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/WebhookConfigMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/WebhookLogMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/WebhookConfigMapper.xml"
|
|
- "ljwx-platform-app/src/main/resources/mapper/WebhookLogMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/WebhookConfigDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/WebhookConfigVO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/WebhookLogVO.java"
|
|
- "ljwx-platform-admin/src/views/system/webhook/index.vue"
|
|
- "ljwx-platform-admin/src/api/system/webhook.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 50
|
|
Title: 消息中台 - 模板管理 (Message Center - Template)
|
|
Completed: 2026-03-03T05:25:50Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V050__create_msg_template.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/MsgTemplate.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/MsgTemplateController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/MsgTemplateService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/MsgTemplateMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/MsgTemplateMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/MsgTemplateDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/MsgTemplateVO.java"
|
|
- "ljwx-platform-web/src/views/message/template/index.vue"
|
|
- "ljwx-platform-web/src/api/message/template.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 51
|
|
Title: 消息中台 - 消息记录 (Message Center - Records)
|
|
Completed: 2026-03-03T05:27:42Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V051__create_msg_record_and_inbox.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/MsgRecord.java"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/MsgUserInbox.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/MessageController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/MessageService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/MsgRecordMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/MsgUserInboxMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/MsgRecordMapper.xml"
|
|
- "ljwx-platform-app/src/main/resources/mapper/MsgUserInboxMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/MessageSendDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/MsgRecordVO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/MsgUserInboxVO.java"
|
|
- "ljwx-platform-admin/src/views/system/message/records.vue"
|
|
- "ljwx-platform-admin/src/views/system/message/inbox.vue"
|
|
- "ljwx-platform-admin/src/api/system/message.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 52
|
|
Title: 消息中台 - 订阅管理 (Message Center - Subscription Management)
|
|
Completed: 2026-03-03T05:29:31Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V052__create_msg_subscription.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/MsgSubscription.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/MsgSubscriptionController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/MsgSubscriptionService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/MsgSubscriptionMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/MsgSubscriptionMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/MsgSubscriptionDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/MsgSubscriptionVO.java"
|
|
- "ljwx-platform-web/src/views/message/subscription/index.vue"
|
|
- "ljwx-platform-web/src/api/message/subscription.ts"
|
|
- --
|
|
Status: PASSED
|
|
|
|
## PHASE 53
|
|
Title: 流程引擎 (简化版) (Workflow Engine - Simplified)
|
|
Completed: 2026-03-03T05:31:21Z
|
|
Files:
|
|
- "ljwx-platform-app/src/main/resources/db/migration/V053__create_workflow.sql"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/WfDefinition.java"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/WfInstance.java"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/WfTask.java"
|
|
- "ljwx-platform-core/src/main/java/com/ljwx/platform/core/domain/WfHistory.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/controller/WorkflowController.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/service/WorkflowService.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/WfDefinitionMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/WfInstanceMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/WfTaskMapper.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/infra/mapper/WfHistoryMapper.java"
|
|
- "ljwx-platform-app/src/main/resources/mapper/WfDefinitionMapper.xml"
|
|
- "ljwx-platform-app/src/main/resources/mapper/WfInstanceMapper.xml"
|
|
- "ljwx-platform-app/src/main/resources/mapper/WfTaskMapper.xml"
|
|
- "ljwx-platform-app/src/main/resources/mapper/WfHistoryMapper.xml"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/WfDefinitionDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/WfInstanceDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/dto/WfTaskDTO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/WfDefinitionVO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/WfInstanceVO.java"
|
|
- "ljwx-platform-app/src/main/java/com/ljwx/platform/app/vo/WfTaskVO.java"
|
|
- "ljwx-platform-web/src/views/workflow/definition/index.vue"
|
|
- "ljwx-platform-web/src/views/workflow/instance/index.vue"
|
|
- "ljwx-platform-web/src/views/workflow/task/index.vue"
|
|
- "ljwx-platform-web/src/api/workflow/definition.ts"
|
|
- "ljwx-platform-web/src/api/workflow/instance.ts"
|
|
- "ljwx-platform-web/src/api/workflow/task.ts"
|
|
- --
|
|
Status: PASSED
|