目录
项目特点:
内置功能模板:
项目介绍:
本地部署项目:
环境要求:
nginx配置:
项目特点:
基于 Spring Cloud +MybatisPlus+Rabbitmq+XXL-JOB+redis+Vue的前后端分离商城
内置功能模板:
- 商品管理: 上传商品、规格sku管理、商品上下架、分类管理等;
- 订单管理: 订单结算、购物车、订单支付、评价、售后等;
- 物流管理: 收发地址管理、物流发货、电子面单打印、小票打印、收货等;
- 会员管理: 会员卡、会员权益、会员管理、储值管理等;
- 营销管理: 优惠券、满减、积分商城、直播、社群接龙、环保回收等;
- 财务管理: 对账单、提现工单、财务报表导出等;
- 客户管理: 客户列表、自动标签、积分管理等;
- DIY装修: 支持所有页面DIY装修;
- 素材导入: 淘宝、天猫、拼多多、京东等电商平台一键导入商品素材;
- 供货商管理:平台供货商管理;
- oss对象存储 支持 阿里云 腾讯云 七牛云(加速图片读取速度);
- sms短信服务 支持 腾讯云 阿里云;
- 支付服务 支持微信支付 余额支付 好友代付 额外对接了盛付通 使得商家提现费率更低 自动分账操作更为方便;
- 总台服务 控制商户入驻,及各种信息私有配置。
项目介绍:
gruul
account-open 用户服务
platform-open 平台服务
gruul-sms-open 短信服务
grull-oss-open oss存储服务(内存不足时可优先考虑进行合并)
gruul-afs-open 售后服务
gruul-goods-open 商品服务
gruul-order-open 订单服务
gruul-shops-open 店铺服务
grull-payment-open 支付服务
gruul-gateway-open 网关服务
gruul-discount-open 抵扣服务
gruul-logistics-open 物流服务
本地部署项目:
下载地址:
Gitee地址
git clone https://gitee.com/qisange/basemall.git
环境要求:
这里我只放了Linux的安装命令,Windows自行安装
项目启动前 需要安装完成 Nacos Nexus Docker Mysql Redis rabbitmq xxl-job-admin
安装压缩包获取
链接:https://pan.baidu.com/s/1rXzEYl_Korj9T27ptplRbA
提取码:64s1
- Nginx
yum install nginx-1.16.1
- Nacos
解压 tar.gz
移动到bin目录下 cd /nacos/bin
单机版启动 :sh startup.sh -m standalone
访问 :ip:8848/nacos
user :nacos
pwd:nacos
如需使用数据库进行配置请执行初始化sql及更改配置
/nacos/conf/nacos-mysql.sql
/nacos/conf/application.properties.example
注:nacos密码有进行加密 要自己生成一个
org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
String pwd = new BCryptPasswordEncoder().encode("123456");
- Mysql
请大家自行安装 如遇问题请留言
- Redis
请大家自行安装 如遇问题请留言
- rabbitmq
因使用延迟队列,我们提供专门docker镜像
docker pull xiaoq123/mq-image:3.8
docker run -d -p 15672:15672 -p 5672:5672 --name rabbitmq --restart always -e RABBITMQ_DEFAULT_USER=用户名 -e RABBITMQ_DEFAULT_PASS=密码
xiaoq123/mq-image:3.8
- xxl-job-admin
因版本变动过大,我们提供专门docker镜像
docker pull xiaoq123/xxl-job-image:2.1.1
docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://数据库地址?Unicode=true&characterEncoding=UTF-8 --spring.datasource.username=数据库账号--spring.datasource.password=数据库密码 " -p 9010:8080 -v /tmp:/data/applogs --name xxl-job-admin --privileged=true -d xiaoq123/xxl-job-image:2.1.1
nginx配置:
nginx使用教程请参考 Nginx中文文档 (https://www.nginx.cn/doc/)
server {
listen 80;
listen [::]:80;
server_name 域名;
return 301 https://域名/$request_uri;
}
server{
listen 443 ssl ;
listen [::]:443 ssl ;
server_name 域名;
#SSL
ssl_certificate /etc/nginx/ssl/域名证书.crt;
ssl_certificate_key /etc/nginx/ssl/域名证书.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
#后端接口
location /api/ {
if ($request_method = OPTIONS ) {
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "POST, GET, PUT, OPTIONS, DELETE, HEAD";
add_header Access-Control-Max-Age "3600";
add_header Access-Control-Allow-Headers "DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorizationi, *";
add_header Access-Control-Allow-Credentials "true";
add_header Content-Length 0;
add_header Content-Type text/plain;
return 204;
}
add_header 'Access-Control-Allow-Origin' "*";
add_header 'Access-Control-Allow-Methods' 'POST, GET, PUT, OPTIONS, DELETE, HEAD';
add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,*';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header Access-Control-Max-Age "3600";
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://127.0.0.1:10999/;
}
}