ModernWMS/README.md

281 lines
10 KiB
Markdown
Raw Permalink Normal View History

# ModernWMS - Warehouse Management System
2023-01-09 15:36:08 +08:00
<div align="center">
<img src="logo.png" alt="ModernWMS logo" width="200" height="auto" />
2023-01-09 15:36:08 +08:00
<h1>ModernWMS</h1>
<p>A simple, complete and open source warehouse management system</p>
2023-01-09 15:36:08 +08:00
<!-- Badges -->
2024-01-12 09:32:33 +08:00
[![License: Apache2.0](https://img.shields.io/badge/license-Apache2.0-orange.svg)](https://opensource.org/license/apache-2-0/)
2023-01-09 15:36:08 +08:00
![Release Version (latest Version)](https://img.shields.io/github/v/release/fjykTec/ModernWMS?color=orange&include_prereleases)
![QR Code Support](https://img.shields.io/badge/QR--Code-Support-orange.svg)
![Docker Support](https://img.shields.io/badge/Docker-Support-orange.svg)
![i18n Support](https://img.shields.io/badge/i18n-Support-orange.svg)
[![MySQL8](https://img.shields.io/badge/MySQL8.0%2B-Support-orange)](https://www.mysql.com/downloads/)
[![SQL Server](https://img.shields.io/badge/SQL%20Server2017%2B-Support-orange)](https://www.mysql.com/downloads/)
[![PostgreSQL](https://img.shields.io/badge/PostgreSQL12-Support-orange)](https://www.mysql.com/downloads/)
2023-01-09 15:36:08 +08:00
![repo size](https://img.shields.io/github/repo-size/fjykTec/ModernWMS)
![GitHub commit activity](https://img.shields.io/github/commit-activity/m/fjykTec/ModernWMS)
<!--![Contributors](https://img.shields.io/github/contributors/fjykTec/ModernWMS?color=blue) -->
![GitHub Org's stars](https://img.shields.io/github/stars/fjykTec/ModernWMS?style=social)
2023-01-09 15:36:08 +08:00
![GitHub Follows](https://img.shields.io/github/followers/ModernWMS?style=social)
![GitHub Forks](https://img.shields.io/github/forks/fjykTec/ModernWMS?style=social)
![GitHub Watch](https://img.shields.io/github/watchers/fjykTec/ModernWMS?style=social)
![Gitee Stars](https://gitee.com/modernwms/ModernWMS/badge/star.svg?theme=social)
![Gitee Forks](https://gitee.com/modernwms/ModernWMS/badge/fork.svg?theme=social)
![.NET](https://img.shields.io/badge/.NET-7.0.0-green)
![Vuetify Cli](https://img.shields.io/badge/Vuetify/cli-3.0.4-green)
![Vue](https://img.shields.io/badge/Vue-3.2.45-green)
![TypeScript](https://img.shields.io/badge/TypeScript-4.1.2-green)
![VXE Table](https://img.shields.io/badge/VXETable-4.3.7-green)
![Vite](https://img.shields.io/badge/Vite-4.0.0-green)
![NodeJS](https://img.shields.io/badge/NodeJS-16.13.1-green)
</div>
<div align="center">
<h3>
2024-01-11 09:33:43 +08:00
<a href="https://gitee.com/modernwms/ModernWMS/blob/master/README.zh_CN.md">中文文档</a>
</h3>
<h3>
<a href="https://modernwms.ikeyly.com">Home Page</a>
</h3>
</div>
2023-01-09 15:36:08 +08:00
# Contents
2023-01-09 15:36:08 +08:00
- [ModernWMS - Warehouse Management System](#modernwms---warehouse-management-system)
- [Contents](#contents)
- [Introduction](#introduction)
- [Requirements](#requirements)
2023-01-09 15:36:08 +08:00
- [Linux OS](#linux-os)
- [Windows OS](#windows-os)
- [Installation](#installation)
2023-01-09 15:36:08 +08:00
- [Linux](#linux)
- [Windows](#windows)
- [Docker(Optional)](#dockeroptional)
- [Usage](#usage)
- [Contact](#contact)
- [License](#license)
2023-04-28 15:42:54 +08:00
- [Donate](#donate)
2023-01-09 15:36:08 +08:00
## Introduction
2023-01-09 15:36:08 +08:00
The inventory management system is a set of small logistics warehousing supply chain processes that we have summarized from years of ERP system research and development. In the process of work, many of our small and medium-sized enterprises, due to limited IT budget, cannot use the right system for them, but there are real needs in warehouse management, that's how we started the project. To help some people who need it.
## Requirements
2023-01-09 15:36:08 +08:00
### Linux OS
+ Ubuntu 18.04(LTS),20.04(LTS),22.04(LTS)
+ CentOS Stream 8,9
+ RHEL 8(8.7),9(9.1)
+ Debian 10,11
+ openSUSE 15
### Windows OS
+ Windows 10(1607+),11(21H2+)
+ Windows Server 2012+
2023-01-09 15:36:08 +08:00
## Installation
2023-01-09 15:36:08 +08:00
### Linux
+ download the source code and compile
+ Step 1, download the source code
2023-01-09 15:36:08 +08:00
```bash
2024-01-11 09:33:43 +08:00
cd /tmp/ && wget https://gitee.com/modernwms/ModernWMS/repository/archive/master.zip
2023-01-09 15:36:08 +08:00
```
2023-03-28 11:45:11 +08:00
+ Step 2, Install .NET SDK and NodeJS
2023-01-09 15:36:08 +08:00
```bash
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update && sudo apt-get install -y dotnet-sdk-7.0
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
2023-03-28 11:45:11 +08:00
sudo apt-get install gcc g++ make
sudo npm install -g yarn
2023-01-09 15:36:08 +08:00
```
+ Step 3, compile frontend and backend
2023-01-09 15:36:08 +08:00
```bash
2023-03-28 11:45:11 +08:00
sudo apt install unzip
2023-01-09 15:36:08 +08:00
cd /tmp/ && unzip master.zip && cd ./ModernWMS-master
mkdir -p /ModernWMS/frontend/ /ModernWMS/backend/
2023-03-28 11:45:11 +08:00
cd /tmp/ModernWMS-master/frontend/
sed -i 's#http://127.0.0.1#http://IP address#g' ./.env.production
yarn && yarn build && cp -rf /tmp/ModernWMS-master/frontend/dist/* /ModernWMS/frontend/
cd /tmp/ModernWMS-master/backend/ && sudo dotnet publish && cp -rf /tmp/ModernWMS-master/backend/ModernWMS/bin/Debug/net7.0/publish/* /ModernWMS/backend/
cp -rf /tmp/ModernWMS-master/backend/ModernWMS/wms.db /ModernWMS/backend/
2023-01-09 15:36:08 +08:00
```
+ Step 4, Install Nginx
2023-01-09 15:36:08 +08:00
```bash
cd /tmp/ && wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz && cd nginx-1.18.0
2023-03-28 11:45:11 +08:00
./configure --prefix=/etc/nginx --with-http_secure_link_module --with-http_stub_status_module --with-http_realip_module --without-http_rewrite_module --without-http_gzip_module
2023-01-09 15:36:08 +08:00
make && make install
cp -rf /ModernWMS/frontend/* /etc/nginx/html/
2023-03-28 11:45:11 +08:00
nohup /etc/nginx/sbin/nginx -g 'daemon off;' &
cd /ModernWMS/backend/ && dotnet ModernWMS.dll --urls http://0.0.0.0:20011
2023-01-09 15:36:08 +08:00
```
2023-01-09 15:36:08 +08:00
### Windows
+ download the source code and compile
+ Step 1, download the source code
2023-01-09 15:36:08 +08:00
```PowerShell
cd C:\
2024-01-11 09:33:43 +08:00
wget -Uri https://gitee.com/modernwms/ModernWMS/repository/archive/master.zip -OutFile master.zip
2023-01-09 15:36:08 +08:00
Expand-Archive -Path C:\master.zip -DestinationPath C:\
```
2023-03-28 11:45:11 +08:00
+ Step 2, Install .NET SDK and NodeJS
2023-01-09 15:36:08 +08:00
```CMD
wget -Uri https://download.visualstudio.microsoft.com/download/pr/35660869-0942-4c5d-8692-6e0d4040137a/4921a36b578d8358dac4c27598519832/dotnet-sdk-7.0.101-win-x64.exe -OutFile dotnet-sdk-7.0.101-win-x64.exe
2023-03-24 17:06:56 +08:00
.\dotnet-sdk-7.0.101-win-x64.exe /install /quiet /norestart
2023-01-09 15:36:08 +08:00
wget -Uri https://nodejs.org/dist/v16.13.1/node-v16.13.1-x64.msi -OutFile node-v16.13.1-x64.msi
msiexec /i .\node-v16.13.1-x64.msi /passive /norestart
npm install -g yarn
2023-01-09 15:36:08 +08:00
```
+ Step 3, compile frontend and backend
2023-01-09 15:36:08 +08:00
```
md C:\ModernWMS\frontend\
md C:\ModernWMS\backend\
cd C:\ModernWMS-master\backend
2023-01-09 15:36:08 +08:00
dotnet publish
2023-03-24 17:06:56 +08:00
copy-item -path "C:\ModernWMS-master\backend\ModernWMS\bin\Debug\net7.0\publish\*" -destination "C:\ModernWMS\backend\" -recurse
copy-Item "C:\ModernWMS-master\backend\ModernWMS\wms.db" -Destination "C:\ModernWMS\backend\"
cd C:\ModernWMS-master\frontend
2023-03-24 17:06:56 +08:00
yarn
yarn build
copy-item -path "C:\ModernWMS-master\frontend\dist\*" -destination "C:\ModernWMS\frontend\" -recurse
2023-01-09 15:36:08 +08:00
```
+ Step 4, Install Nginx
2023-01-09 15:36:08 +08:00
```
cd C:\
wget -Uri http://nginx.org/download/nginx-1.16.1.zip -OutFile nginx-1.16.1.zip
Expand-Archive -Path C:\nginx-1.16.1.zip -DestinationPath C:\
copy-item -path "C:\ModernWMS\frontend\*" -destination "C:\nginx-1.16.1\html\" -recurse
2023-03-24 17:06:56 +08:00
cd C:\nginx-1.16.1\
start nginx.exe
2023-01-09 15:36:08 +08:00
cd C:\ModernWMS\backend\
dotnet ModernWMS.dll --urls http://0.0.0.0:20011
```
### Docker(Optional)
2023-01-09 15:36:08 +08:00
2023-04-28 15:42:54 +08:00
+ Approach 1, download the image from docker hub
+ Step 1, install docker and download the image
```bash
sudo apt install docker.io
sudo docker pull modernwms/modernwms:1.0
```
+ Step 2deploy
```bash
sudo docker run -d -p 20011:20011 -p 80:80 modernwms/modernwms:1.0 ./run.sh
sudo docker ps -a | awk 'NR>1 && $2=="modernwms/modernwms:1.0" {print $1}'
sudo docker exec -it <CONTAINER ID> /bin/bash
```
After entering the Docker container, execute the following command in the container.
```bash
grep -rl "http://127.0.0.1:20011" /frontend | xargs sed -i 's#http://127.0.0.1:20011#http://IP address:20011#g'
exit
```
restart container
```bash
sudo docker restart <CONTAINER ID>
```
+ Approach 2, Build your own image
+ Step 1, download the source code
2023-01-09 15:36:08 +08:00
```bash
2024-01-11 09:33:43 +08:00
cd /tmp/ && wget https://gitee.com/modernwms/ModernWMS/repository/archive/master.zip
2023-01-09 15:36:08 +08:00
```
2024-01-11 09:33:43 +08:00
2023-03-28 15:07:09 +08:00
+ Step 2Install .NET SDK and NodeJS
```bash
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update && sudo apt-get install -y dotnet-sdk-7.0
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
sudo apt-get install gcc g++ make
sudo npm install -g yarn
```
+ Step 3, compile frontend and backend
2023-01-09 15:36:08 +08:00
```bash
2023-03-28 15:07:09 +08:00
sudo apt install unzip
2023-01-09 15:36:08 +08:00
cd /tmp/ && unzip master.zip && cd ./ModernWMS-master
2023-03-28 15:07:09 +08:00
cd /tmp/ModernWMS-master/frontend/ && sed -i 's#http://127.0.0.1#http://IP address#g' ./.env.production
yarn && yarn build && cp -rf /tmp/ModernWMS-master/frontend/dist/* /tmp/ModernWMS-master/docker/frontend/
cd /tmp/ModernWMS-master/backend/ && sudo dotnet publish && cp -rf /tmp/ModernWMS-master/backend/ModernWMS/bin/Debug/net7.0/publish/* /tmp/ModernWMS-master/docker/backend/
cp -rf /tmp/ModernWMS-master/backend/ModernWMS/wms.db /tmp/ModernWMS-master/docker/backend/
2024-01-11 09:33:43 +08:00
```
2023-03-28 15:07:09 +08:00
+ Step 4, deploy
```bash
sudo apt install docker.io
2023-01-09 15:36:08 +08:00
cd /tmp/ModernWMS-master/docker/
docker build -t modernwms:1.0 .
2023-03-28 15:32:24 +08:00
docker run -d -p 20011:20011 -p 80:80 modernwms:1.0 ./run.sh
2023-01-09 15:36:08 +08:00
```
## Usage
```shell
Accessing ip address (http://127.0.0.1 or http://the IP address you depolyed) via web browser
2023-01-09 15:36:08 +08:00
Account: admin
Password: 1
2023-01-09 15:36:08 +08:00
```
2023-01-09 15:36:08 +08:00
<h4>
<a href="https://wmsonline.ikeyly.com">Demo</a>
2023-01-09 15:36:08 +08:00
</h4> 
<img src="image2.png" alt="image2" height="auto" />
2023-01-09 15:36:08 +08:00
<img src="image0.png" alt="image0" height="auto" />
2023-01-09 15:36:08 +08:00
<img src="image1.png" alt="image1" height="auto" />
## Contact
2023-01-09 15:36:08 +08:00
<h4>
2024-01-11 09:33:43 +08:00
<a href="https://gitee.com/modernwms/ModernWMS/issues/new?issue%5Bassignee_id%5D=0&issue%5Bmilestone_id%5D=0">Report a BUG</a>
2023-01-09 15:36:08 +08:00
</h4>
<h4>
2024-01-11 09:33:43 +08:00
<a href="https://gitee.com/leucoon/vue-element-plus-admin/issues/new?issue%5Bassignee_id%5D=0&issue%5Bmilestone_id%5D=0">Submit a suggestion</a>
2023-01-09 15:36:08 +08:00
</h4>
## License
2024-01-11 09:33:43 +08:00
Distributed under the [MIT](https://opensource.org/licenses/MIT/) License. See [LICENSE.txt](https://gitee.com/modernwms/ModernWMS/blob/master/LICENSE) for more information.This must be observed.
2023-04-28 15:42:54 +08:00
## Donate
If it's helpful to you, you can donate us by alipay,by wechat. Your support will encourage us to continue creating
<img src="alipay.jpg" alt="image3" height="auto" />
<img src="wechat.jpg" alt="image4" height="auto" />