report-detect/README.md

41 lines
1.3 KiB
Markdown
Raw Normal View History

# Report Detection Backend
Java-based backend system for automated report validation and comparison using OCR.
## Technology Stack
- **Core**: Java 8 (Spring Boot 2.7.18)
- **Security**: Sa-Token (RBAC, Session Management)
- **OCR Engine**: PaddleOCR (via DJL - Deep Java Library)
- **Database**: PostgreSQL (with Dynamic Datasource support)
- **Build Tool**: Maven
## Features
- **RBAC Implementation**: Multi-role support (ADMIN, AUDITOR, USER) with uppercase standardization.
- **Sa-Token Security**: Annotation-based permission checks and secure login.
- **Auditor Context Switch**: Specialized feature for Auditors to switch between institutional views.
- **PDF Processing**: Automatic conversion of PDF reports to images for OCR analysis.
- **Automated Verification**: Integration tests using H2 in-memory database.
## Getting Started
### Prerequisites
- JDK 8 or 17
- Maven 3.6+
- PostgreSQL (optional for local dev if using H2 profile)
### Run the Application
```bash
mvn clean package
java -jar target/report-detect-backend-1.0.0.jar
```
### Run Tests
```bash
mvn test -Dtest=SecurityRBACVerificationTest
```
## Security Configuration
Default accounts created on initialization:
- `admin` / `123456` (ADMIN)
- `auditor` / `123456` (AUDITOR)
- `user` / `123456` (USER)