The Property Evaluation System is a web application
- Angular 16
- Spring Boot 3.1.0
- Camunda 8.4.3
- Camunda Operate 8.4.3
- MySQL
- Elasticsearch 8.9.1
- Visual Studio Code
- Camunda Modeler
Before installing the Property Evaluation System, ensure you have the following prerequisites installed:
- Java 21
- Camunda 8.4.3
- Camunda Operate 8.4.3
- Elasticsearch 8.9.1
- MySQL
- Visual Studio Code
- Camunda Modeler
[Instructions on how to install each of these prerequisites can be found on their respective websites.]
Once you have installed the prerequisites, follow these steps to install the Property Evaluation System:
-
Set Up MySQL Database:
- Install MySQL if not already installed.
- Create a new database schema for the Property Evaluation System.
- Configure the database connection properties in the microservices' configuration files.
- run the following script INSERT INTO your_table_name (id, business_unit, contact_number, initiator_name, password, username) VALUES (1, 'Business Unit A', '123-456-7890', 'Initiator A', 'password123', 'userA'), (2, 'Business Unit B', '234-567-8901', 'Initiator B', 'password456', 'userB'), (3, 'Business Unit C', '345-678-9012', 'Initiator C', 'password789', 'userC');
-
Start Camunda Engine, Operate, and Elasticsearch:
- Navigate to the bin folder of the Camunda, Operate, and Elasticsearch installations.
- Run the following bat files:
broker.bat
for Camunda Engine.operate.bat
for Camunda Operate.elasticsearch.bat
for Elasticsearch.
-
Deploy Workflow:
- Deploy the workflow using the Modeler to the Camunda engine.
- The workflow is located in the resources folder of the gateway application.
-
Start Microservices:
- Load all 5 microservices (Authentication, Gateway, Property Management, Comment Management, File Upload Service).
- Download Maven packages for the applications.
-
Start Angular App:
- Clone the Angular project from GitHub.
- Run
npm install
in the CLI to install dependencies. - Run
ng serve
to start the application.
[Additional setup or configuration may be required after installation.]
Note: Since this application is using Camunda 8, compensation events are not available. These events are responsible for compensating any activity completed before the failed task. For more information, refer to Camunda Best Practices - Dealing with Problems and Exceptions.
Before running the demo of the Property Evaluation System, follow these steps:
-
Ensure MySQL is Running:
- Make sure MySQL is installed and running on your machine.
-
Start Camunda Engine, Operate, and Elasticsearch:
- Navigate to the bin folder of the Camunda, Operate, and Elasticsearch installations.
- Run the following bat files:
broker.bat
for Camunda Engine.operate.bat
for Camunda Operate.elasticsearch.bat
for Elasticsearch.
-
Set Up the Angular App:
- Ensure the Angular app is running on
localhost:4200
. - Implement the login page with username and password fields.
- Implement the property evaluation form.
- Ensure the Angular app is running on
-
Set Up the Backend:
- Ensure the microservices (Authentication, Property Management, etc.) are running.
- Implement the API endpoints for user authentication and property evaluation form submission.
- Implement the database queries to retrieve user information for authentication and store property evaluation data.
-
Implement the User Authentication Flow:
- When the user submits the login form, send a request to the Authentication microservice to authenticate the user.
- Upon successful authentication, store the user's information in the frontend (e.g., in local storage or a state management library) and redirect the user to the property evaluation form.
-
Implement the Property Evaluation Form:
- Implement the form with fields for property evaluation details.
- When the user submits the form, send a request to the Property Management microservice to store the evaluation data.
-
Display the Data in the PVS Evaluation Request Page:
- Implement a page to display the evaluation requests in a grid.
- Retrieve the evaluation requests from the Property Management microservice and display them in the grid.
-
Access Camunda Operate:
- Go to
localhost:8080
in your web browser. - Sign in using the demo credentials: username
demo
, passworddemo
. - Navigate to the Processes tab and check the Completed checkbox on the left-hand side menu.
- This will show the completed process instances.
- Go to
- Elasticsearch 8.9.1 Windows x86_64
- Camunda Operate 8.4.3
- Camunda Zeebe 8.4.3
- Java JDK 21.0.2 Windows x64
- Angular UI
- File Upload Service
- Comment Management Service
- Property Management Service
- Camunda Gateway Application Service
- Authentication Service
Form Page : Grid Page : Validations : operate dashboard : Operate page : Basic Camunda Workflow : After Process is completed :