https://github.com/swapnilshinde1101/erp
Role-based ERP system backend using Spring Boot, MySQL, JWT, and RESTful APIs.
https://github.com/swapnilshinde1101/erp
admin-panel backend backend-java hr-management java rest-api spring-boot
Last synced: about 1 month ago
JSON representation
Role-based ERP system backend using Spring Boot, MySQL, JWT, and RESTful APIs.
- Host: GitHub
- URL: https://github.com/swapnilshinde1101/erp
- Owner: swapnilshinde1101
- Created: 2025-04-23T11:01:36.000Z (about 1 year ago)
- Default Branch: Sub-branche
- Last Pushed: 2025-05-29T17:01:07.000Z (about 1 year ago)
- Last Synced: 2025-05-29T18:38:55.742Z (about 1 year ago)
- Topics: admin-panel, backend, backend-java, hr-management, java, rest-api, spring-boot
- Language: Java
- Homepage:
- Size: 71.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ERP System (Spring Boot Backend)
This is the **backend** of a role-based ERP (Enterprise Resource Planning) system developed using **Spring Boot** and **MySQL**. The system supports modules like **Admin**, **HR**, **Finance**, and **Inventory**, with secure JWT authentication and role-based access control.
## Features
### 1. **Authentication & Security**
- JWT-based login and signup
- Role-based access control (Admin, HR, Finance, Inventory)
- Password encryption using Spring Security
### 2. **Admin Module**
- Create/Edit/Delete users
- Assign roles (HR, Finance, Inventory)
- Activate/Deactivate users
- Reset user passwords
- View user roles and permissions
### 3. **Department Management**
- Create/Edit/Delete departments
- Assign users to departments
- Department-wise user listing
### 4. **HR Module**
- Employee CRUD operations
- Leave Management (Request/Approve/Reject)
- Attendance Management with enum statuses:
- PRESENT
- ABSENT
- LEAVE
- NOT_MARKED
- Auto-leave attendance update
- Employee performance and payroll management
### 5. **Inventory Module**
- Product stock management
- Purchase order tracking
### 6. **Finance Module**
- Salary and payroll processing
- Financial reporting (planned)
## Technologies Used
- Java 17+
- Spring Boot
- Spring Security
- Spring Data JPA
- MySQL
- JWT (Authentication)
- Lombok
- Maven
## Folder Structure
src/ ├── config/ → Security & JWT configuration
├── controller/ → REST API controllers
├── dto/ → Data Transfer Objects
├── entity/ → JPA Entities
├── repository/ → Spring Data Repositories
├── request/ → Incoming request models
├── response/ → API responses
├── service/ → Business logic
└── service/impl/ → Service implementations
## Getting Started
### Prerequisites
- Java 17+
- MySQL
- Maven
### Setup
1. Clone the repo:
```bash
git clone https://github.com/swapnilshinde1101/ERP.git
```
2. Create a MySQL database:
CREATE DATABASE erp_system;
3. Configure DB credentials in application.properties.
4. Run the Spring Boot application:
mvn spring-boot:run