As principais funções do sistema de gerenciamento de armazém são as seguintes:
As funções do sistema incluem: registro de entrada e saída de produtos, confirmação de informações de entrada e saída e exclusão de informações de armazém.
Funções de administrador do sistema: adicionar pessoal, excluir pessoal, consultar informações no banco de dados e gerenciamento de usuários.
As funções do usuário incluem: consultar informações no banco de dados, consultar informações fora do banco de dados, consultar informações que entram no banco de dados e modificar a senha do usuário.
De acordo com a classificação do pessoal de gestão, o pessoal com autoridade diferente tem funções de gestão diferentes.
Permissões/Função | Gerenciamento de administrador | Gerenciamento de usuários | gestão de armazém | Gerenciamento de classificação de itens | Gerenciamento de itens | gerenciamento de registros |
---|---|---|---|---|---|---|
superadministrador | √ | √ | √ | √ | √ | √ |
Administrador comum | × | √ | √ | √ | √ | √ |
funcionários | × | × | × | × | √ (aplicam-se restrições) | √ (aplicam-se restrições) |
Na função de gerenciamento de itens, os funcionários só podem consultar; no gerenciamento de registros, os funcionários só podem consultar seus próprios registros de entrada e saída.
SpringBoot
: estrutura de back-endMyBatisPlus
: estrutura da camada de persistênciaVue2
: Usando Vue como estrutura de front-end, este projeto separa o front-end e o back-endMD5
: A senha do usuário é criptografada usando MD5Docker
: implantar projetos usando contêineres DockerGit
: Usando Github para controle de versão Em main.js no arquivo de projeto vue (os locais definidos por projetos diferentes podem não ser os mesmos)
Vue.prototype.$httpUrl = 'http://{服务器ip}:{springboot端口号}';
eg:
Vue.prototype.$httpUrl = 'http://67.99.26.82:8081';
axios.defaults.baseURL="http://{服务器ip}:{端口号}"
No diretório do projeto vue
npm run build
Mova o arquivo dist empacotado para resources/static
Conforme mostrado na figura, ative o ambiente de produção e configure o diretório de recursos estáticos
Então você precisa configurar o ambiente de geração, como mysql, senha redis, etc.
Execute o pacote jar no frontend
java -jar xxx.jar
Execute o pacote jar em segundo plano
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 ;
}
}
}
diretório html (descompacte o arquivo dist empacotado aqui)
[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
Dockerfile
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
Se você usa um servidor em nuvem, abra a porta correspondente no grupo de segurança (ou firewall)
[root@iZbp144worluc8frpn60arZ WMS]# ls
docker-compose.yml Dockerfile wms-0.0.1-SNAPSHOT.jar
[root@iZbp144worluc8frpn60arZ WMS]# docker-compose up -d
Se o serviço iniciar normalmente, o site poderá ser acessado via IP.