This is the backend for an app that handles the scheduling of containers in order to efficiently create all receipts daily for scheduled loads. These can be downloaded on the 'Todays Schedule' page and will write directly into a WMS database. It also keeps track of trailers carrying parts that are destined for possibly multiple different locations. It handles authentication, and role permissions. There are several CSV tasks incorporated to bulk analyze inventory and create a mass upload CSV for all the parts provided to us by the supplier. It parses the dimensions and classifies the stack height, pallet sizes, and plant codes accordingly.
-
Make sure you have Rust installed. You can install Rust using rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
Clone this repository:
git clone https://github.com/aaely/rocket_http.git cd rocket_http
-
Build the project:
cargo build --release
This project requires a Neo4j database. You can quickly set up and run a Neo4j instance using Docker.
Prerequisites
- Install Docker.
- Ensure Docker is running on your system.
-
Pull the Neo4j Docker Image
docker pull neo4j:latest
-
Run the following command to start the docker container, sudo may need to be used to start:
docker run -d --name neo4j-container -p 7474:7474 -p 7687:7687 -e NEO4J_AUTH=neo4j/Asdf123$ neo4j:latest
Run the project using:
cargo run --release
- Set the IP in main.rs to whatever your current IP is, or if testing locally then localhost/127.0.0.1 will work.
- Once running, issue the following command to open the websocket:
curl -X GET http://<IP_ADDR>:8000/ws