Die Hauptfunktionen des Lagerverwaltungssystems sind folgende:
Zu den Systemfunktionen gehören: Produkteingangs- und -ausgangsregistrierung, Bestätigung von Eingangs- und Ausgangsinformationen und Löschung von Lagerinformationen.
Systemadministratorfunktionen: Personal hinzufügen, Personal löschen, Informationen in der Datenbank abfragen und Benutzerverwaltung.
Zu den Benutzerfunktionen gehören: Abfragen von Informationen in der Datenbank, Abfragen von Informationen aus der Datenbank, Abfragen von in die Datenbank eingegebenen Informationen und Ändern des Benutzerkennworts.
Gemäß der Klassifizierung des Führungspersonals haben Mitarbeiter mit unterschiedlichen Befugnissen unterschiedliche Führungsfunktionen.
Berechtigungen/Funktion | Administratorverwaltung | Benutzerverwaltung | Lagerverwaltung | Verwaltung der Artikelklassifizierung | Artikelverwaltung | Datensatzverwaltung |
---|---|---|---|---|---|---|
Superadministrator | √ | √ | √ | √ | √ | √ |
Gewöhnlicher Administrator | × | √ | √ | √ | √ | √ |
Personal | × | × | × | × | √ (es gelten Einschränkungen) | √ (es gelten Einschränkungen) |
In der Artikelverwaltung können Mitarbeiter nur ihre eigenen eingehenden und ausgehenden Datensätze abfragen.
SpringBoot
: Backend-FrameworkMyBatisPlus
: Persistenzschicht-FrameworkVue2
: Dieses Projekt verwendet Vue als Front-End-Framework und trennt Front-End und Back-EndMD5
: Das Benutzerkennwort wird mit MD5 verschlüsseltDocker
: Stellen Sie Projekte mithilfe von Docker-Containern bereitGit
: Verwendung von Github zur Versionskontrolle In main.js unter der Vue-Projektdatei (die von verschiedenen Projekten festgelegten Speicherorte sind möglicherweise nicht dieselben)
Vue.prototype.$httpUrl = 'http://{服务器ip}:{springboot端口号}';
eg:
Vue.prototype.$httpUrl = 'http://67.99.26.82:8081';
axios.defaults.baseURL="http://{服务器ip}:{端口号}"
Unter dem Vue-Projektverzeichnis
npm run build
Verschieben Sie die gepackte dist-Datei in das Springboot-Projekt resources/static
Aktivieren Sie wie in der Abbildung gezeigt die Produktionsumgebung und konfigurieren Sie das statische Ressourcenverzeichnis
Anschließend müssen Sie die Generierungsumgebung wie MySQL, Redis-Passwort usw. konfigurieren.
Führen Sie das JAR-Paket im Frontend aus
java -jar xxx.jar
JAR-Paket im Hintergrund ausführen
nohup java -jar xxx.jar > msg.log 2>&1 &
[root@iZbp144worluc8frpn60arZ nginx2] # pwd
/root/nginx2
[root@iZbp144worluc8frpn60arZ ~ ] # cd nginx2
[root@iZbp144worluc8frpn60arZ nginx2] # ll
total 8
drwxr-xr-x 6 root root 4096 Jun 27 19:52 html
-rw-r--r-- 1 root root 550 Jun 26 16:02 nginx.conf
nginx.conf
# user root;
worker_processes 1 ;
events {
worker_connections 1024 ;
}
http {
include mime.types ;
default_type application/octet-stream ;
sendfile on ;
keepalive_timeout 65 ;
server {
listen 80 ;
server_name localhost ;
location / {
root /usr/share/nginx/html ;
try_files $uri $uri / /index.html last ; # 别忘了这个哈
index index.html index.htm ;
}
error_page 500 502 503 504 /50x.html ;
location = /50x.html {
root html ;
}
}
}
html-Verzeichnis (entpacken Sie die gepackte dist-Datei hier)
[root@iZbp144worluc8frpn60arZ nginx2] # cd html
[root@iZbp144worluc8frpn60arZ html] # ll
total 32
drwxr-xr-x 2 root root 4096 Jun 27 19:52 css
-rw-r--r-- 1 root root 4286 Jun 27 19:52 favicon.ico
drwxr-xr-x 2 root root 4096 Jun 27 19:52 fonts
drwxr-xr-x 2 root root 4096 Jun 27 19:52 img
-rw-r--r-- 1 root root 670 Jun 27 19:52 index.html
drwxr-xr-x 2 root root 4096 Jun 27 19:52 js
-rw-r--r-- 1 root root 1524 Jun 27 19:52 logo.svg
Docker-Datei
FROM openjdk:8
EXPOSE 8082
ADD wms-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT [ "java" , "-jar" , "/app.jar" , "--spring.profiles.active=prod" ]
docker-compose.yml
version : " 3 "
services :
nginx : # 服务名称,用户自定义
image : nginx:latest # 镜像版本
ports :
- 80:80 # 暴露端口
volumes : # 挂载
- /root/nginx2/html:/usr/share/nginx/html
- /root/nginx2/nginx.conf:/etc/nginx/nginx.conf
privileged : true # 这个必须要,解决nginx的文件调用的权限问题
mysql :
image : mysql:latest
ports :
- " 3306:3306 "
environment : # 指定用户root的密码
- MYSQL_ROOT_PASSWORD={password}
privileged : true
redis :
image : redis:latest
wms :
image : wms:latest
build : src # 表示以当前目录下的Dockerfile开始构建镜像
ports :
- 8082:8082
depends_on : # 依赖与mysql其实可以不填,默认已经表示可以
- mysql
- redis
Wenn Sie einen Cloud-Server verwenden, öffnen Sie bitte den entsprechenden Port in der Sicherheitsgruppe (oder Firewall)
[root@iZbp144worluc8frpn60arZ WMS]# ls
docker-compose.yml Dockerfile wms-0.0.1-SNAPSHOT.jar
[root@iZbp144worluc8frpn60arZ WMS]# docker-compose up -d
Bei normalem Start des Dienstes ist die Website über IP erreichbar.