BR_Generator
NB! README from API Server!
apiServerJava\README.md
Running the Application
To run the application locally, follow these steps:
-
Install Node.js and npm: If you haven't already, install Node.js and npm (Node Package Manager) from the official Node.js website: https://nodejs.org.
-
Clone the Repository: Clone the repository containing the proxy server code to your local machine using Git:
git clone https://github.com/TartuDen/BMR_Generator
-
Navigate to the Project Directory: Change your current directory to the project directory:
cd <project_directory>
-
Install Dependencies: Use npm to install the required dependencies specified in the package.json file:
npm install
-
Start the Server: Start the Express server using the following command:
node index.js
Overview
OpenAPI Specification
This application is designed to facilitate the creation of batch records for production in GMP pharmaceutical manufacturing.
It consists of login page, and creation page.
On the login page, the user can enter the login and password. Or create a new user.
After login, the user is redirected to the creation page.
The creation page has a table.
A table header is where the user inputs project and process related data, like:
- Project name.
- TP (technological process) of the current batch record.
- Select the main equipment for the given process, from the equipment list. Such as a reactor, oven, and filter.
- Inputs main materials that are going into the process. For example: EtNH2;
Login page
Simple login page with email and password
Creation page
Table Structure
Header
On the header of the table, we have different sections for different types of equipment, for example, 2 drop-down lists for reactors, 2 dd lists for pumps, and 2 dd lists for balances.
Creation part
The batch record table consists of the following columns:
- Sequential Number: Sequential numbering of operations.
- Equipment and Activity Type: Selection of equipment for the operation along with its code. Based on the equipment selected, the second drop-down list is populated with relative operations for this equipment.
- Description: main equipment and activity type are selected, description will be loaded from the database.
The description has specific placeholders for the selection of additional data, like additional equipment, setting for equipment, material that is used in operation;
- Other: Empty fields for operators to record actual data.
Equipment Types
The application supports various equipment types commonly used in pharmaceutical manufacturing, including:
- Reactor
- Oven
- Peristaltic Pump
- Membrane Pump
- Oil Pump
- Druck Filter
- Nutsch Filter
- Balances
User case example.
Header
After login, on the top of the page have a header section of the table. The header consists of 2 columns:
Main Equipment
- Reactor drop-down list we select reactor 002-17; the Second reactor in the second dd list will remain empty, our process requires only one reactor.
- Oven - 012-13
- Balances - 007-42 and 007-10;
- Peristaltic pump - 001-13;
- Membrane Pump - 001-22;
Materials
- In empty fields type names of the reagents / starting materials or solvents.
Body part
Below the header we have a body part, it is one row that has 3 columns:
Sequence number
Equipment
has 2 drop-down menus:
- Equipment type - selecting among main equipment.
- Type of Activity - based on selected equipment, populates with specific types of operations.
Description - After selecting the Equipment type and Type of activity, this cell will be populated with the respective operations.
Other - there will be placeholders for recording actual data during the operation.
Here's an example of how the process description is structured:
- Equipment Type: Reactor
- Equipment Code: 002-10
- Type of Activity: Loading of Solid
Description:
The required amount of {select material} is weighed on the balances {select balances} using jug {jug}.
Material is loaded into reactor {select reactor} via a 60 mm flange port using funnel {select funnel}.
The 60 mm flange port is closed.
NB! In the description, variables within curly braces {} indicate placeholders for specific details that need to be filled in by the operator, such as materials, balances, jug, and funnel.
- Press Save and operation, together with sequence code, all relevant equipment, utensils, and material used in operation will be saved in a struct.