refactor(readme): put the install in the readme now
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -151,3 +151,4 @@ dist
|
|||||||
|
|
||||||
backend-0.1.3.zip
|
backend-0.1.3.zip
|
||||||
BulkForecastTemplate
|
BulkForecastTemplate
|
||||||
|
BulkOrdersTemplate
|
||||||
|
|||||||
173
README.md
173
README.md
@@ -1,4 +1,173 @@
|
|||||||
# lstV2
|
# lstV2
|
||||||
|
|
||||||
Logistics Support Tool complete rewrite
|
Logistics Support Tool V2
|
||||||
the rewrite was/is needed due to the learning of all new things over the course of creating this and tools used that the app as become so spagatti its a mess
|
|
||||||
|
A support tool to alpla prod please see below for install.
|
||||||
|
|
||||||
|
# Install
|
||||||
|
|
||||||
|
## Files needed to be downloaded before install.
|
||||||
|
|
||||||
|
### To run the server
|
||||||
|
|
||||||
|
- [PostgresSQL](https://www.postgresql.org/download/windows/) - current version using is 17
|
||||||
|
- [NodeJS](https://nodejs.org)
|
||||||
|
- [NSSM](https://nssm.cc/)
|
||||||
|
|
||||||
|
### To manage the server
|
||||||
|
|
||||||
|
- [VSCODE](https://code.visualstudio.com/)
|
||||||
|
- [Postman](https://www.postman.com/downloads/)
|
||||||
|
|
||||||
|
## Creating directories needed
|
||||||
|
|
||||||
|
- Create a new folder where we will host the server files.
|
||||||
|
- Copy the nssm.exe into this folder
|
||||||
|
- Copy the build files to the server (only needed for intial install).
|
||||||
|
- This will house all the compiles and minified files needed to start the server up, this includes the frontend.
|
||||||
|
- Save the nssm.exe into this folder as well, this will be used to control the service.
|
||||||
|
|
||||||
|
## Do the intial install
|
||||||
|
|
||||||
|
### DB instal setup
|
||||||
|
|
||||||
|
1. Install postgres
|
||||||
|
2. Open pgAdmin
|
||||||
|
3. create a new Database named lst_db
|
||||||
|
|
||||||
|
### Intial server setup
|
||||||
|
|
||||||
|
1. Open VSCode and navigate to the folder where you extracted the files.
|
||||||
|
2. Click trusted when it pops up.
|
||||||
|
3. Open a terminal window inside vscode.
|
||||||
|
4. Run the install script this will install all dependaceys needed as well as do all the database migrations
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run prodinstall
|
||||||
|
```
|
||||||
|
|
||||||
|
Next we want to do an intial build for the db
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run build
|
||||||
|
```
|
||||||
|
|
||||||
|
### Create the .env file
|
||||||
|
|
||||||
|
In the root of the folder create a new .env file
|
||||||
|
add in the below and change each setting area that says change me to something that suits your needs
|
||||||
|
|
||||||
|
```env
|
||||||
|
# PORTS
|
||||||
|
PROD_PORT=4000
|
||||||
|
# To keep it all simple we will pass VITE to the ports that are used on both sides.
|
||||||
|
VITE_SERVER_PORT=4000
|
||||||
|
|
||||||
|
# logLevel
|
||||||
|
LOG_LEVEL=info
|
||||||
|
# Auth stuff
|
||||||
|
SALTING=12
|
||||||
|
SECRET=CHANGEME
|
||||||
|
JWT_SECRET=CHANGEME
|
||||||
|
JWT_REFRESH_SECRET=CHANGEME
|
||||||
|
|
||||||
|
# Expire info plus refresh change as needed
|
||||||
|
JWT_EXPIRES=60
|
||||||
|
JWT_REFRESH_THRESHOLD=30
|
||||||
|
JWT_ACCESS_EXPIRATION="1h"
|
||||||
|
JWT_REFRESH_EXPIRATION="7d"
|
||||||
|
|
||||||
|
# this code will need to be used when a user needs to have access to everything.
|
||||||
|
SECRETOVERRIDECODE="supersecretKey"
|
||||||
|
|
||||||
|
# Database url - please change the password if this is all you changed
|
||||||
|
DATABASE_URL="postgresql://postgres:PASSWORD@localhost:5432/lst_db"
|
||||||
|
|
||||||
|
# This is for usday1 restrictions with the lgvs and customer constraints.
|
||||||
|
FIFO=100
|
||||||
|
MAXLOTS=3
|
||||||
|
```
|
||||||
|
|
||||||
|
### Run the start command to get all the basic settings and modules installed
|
||||||
|
|
||||||
|
1. Run the below
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm start
|
||||||
|
```
|
||||||
|
|
||||||
|
This command will start up the server and seed the database.
|
||||||
|
|
||||||
|
- Settings will be set here.
|
||||||
|
- All modules will be added.
|
||||||
|
|
||||||
|
2. Press CTRL + C to stop the server.
|
||||||
|
3. Reopen postgres and review the settings make the changes to match the server your going to be running in.
|
||||||
|
- Change the server
|
||||||
|
- change the dbServer
|
||||||
|
- change plantToken
|
||||||
|
- then the remaining settings confirm if you need on or want to leave as default.
|
||||||
|
|
||||||
|
### Creating first user.
|
||||||
|
|
||||||
|
1. Start the server back up.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm start
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Open http://[SERVER]:[PORT]/api/docs or postman and create a user.
|
||||||
|
- Please do not try to manually enter a new user this is due to how the password is hashed, as well as setting systemAdmin for the first user.
|
||||||
|
- Change the server and port to what you changed in the DB.
|
||||||
|
3. Stop the server again with CTRL + C.
|
||||||
|
|
||||||
|
### Running as a serivice.
|
||||||
|
|
||||||
|
You want to CD into the scripts folder.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd .\dist\server\scripts\
|
||||||
|
```
|
||||||
|
|
||||||
|
Next use the example command below to get the service up and running.
|
||||||
|
|
||||||
|
- Options legend
|
||||||
|
- serviceName = not recommended to change to reduce issues with the update process
|
||||||
|
- option = use install for the install, but you can use this script later to stop, start, restart the service.
|
||||||
|
- appPath = where did you extract the server files
|
||||||
|
- description = no need to change this unless you want it to be something else
|
||||||
|
- command = do not change this unless you know what your doing and really need to change this.
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
.\services.ps1 -serviceName "LSTV2" -option "install" -appPath "E:\LST\lstV2" -description "Logistics Support Tool V2" -command "run start"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Adding servers to the mix to update on from the front end
|
||||||
|
|
||||||
|
you will need to add your servers into the serverData.json.
|
||||||
|
when the server starts up it will look at this file and make changes as needed.
|
||||||
|
below is an example of the server
|
||||||
|
|
||||||
|
```JSON
|
||||||
|
{
|
||||||
|
"sName": "Kansas City",
|
||||||
|
"serverDNS": "usksc1vms006",
|
||||||
|
"plantToken": "usksc1",
|
||||||
|
"idAddress": "10.42.9.26",
|
||||||
|
"greatPlainsPlantCode": "85",
|
||||||
|
"streetAddress": "1800 E 94th St Suite 300",
|
||||||
|
"cityState": "Kansas City, MO",
|
||||||
|
"zipcode": "64131",
|
||||||
|
"contactEmail": "example@example.com",
|
||||||
|
"contactPhone": "555-555-5555",
|
||||||
|
"customerTiAcc": "ALPL01KCINT",
|
||||||
|
"lstServerPort": "4000",
|
||||||
|
"active": false,
|
||||||
|
"serverLoc": "E:\\LST\\lstv2",
|
||||||
|
"oldVersion": "E:\\LST\\lst_backend",
|
||||||
|
"shippingHours": "[{\"early\": \"06:30\", \"late\": \"23:00\"}]",
|
||||||
|
"tiPostTime": "[{\"from\": \"24\", \"to\": \"24\"}]",
|
||||||
|
"otherSettings": [{ "specialInstructions": "" }]
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user