+前端采用`Vue2`+`ElementUI`开发
++ 后端技术及组件
+ + Nacos 注册中心
+ + Redis
+ + Kafka 消息队列
## 二、关键流程
@@ -57,32 +85,52 @@ graph TD
## 三、功能模块
+#### 1、商品管理
++ 商品库管理:管理商品库商品,提供手动录入、API接收功能,可以设置自己发货还是供应商发货(影响到后台分单逻辑,即时生效)。
++ 商品库SKU明细:查看所有商品库SKU
++ 商品分类管理
++ 商品品牌管理
++ 供应商管理
-### 1、订单管理
-+ 从平台同步订单
-+ 订单发货
- + 获取订单收货地址信息
- + 推送物流信息到平台
-+ 订单备注修改
-
-### 2、发货管理
-+ 电子面单打印
-+ 订单发货
-
-### 3、售后管理
-+ 从平台同步售后列表
-+ 售后处理(同意、备注)
+#### 2、订单管理
++ 订单库:聚合订单查询、详情、管理。
++ 订单明细:聚合订单明细查询。
++ 店铺订单管理:订单API拉取、订单API更新、订单手动推送等,支持淘宝天猫、京东、拼多多、抖店、微信视频号。
-### 4、店铺管理
-+ 从平台同步商品信息
-+ 关联ERP sku
+#### 3、发货管理
++ 待发货清单:(商品维度、订单维度),展示待分配发货的清单(系统会根据商品设置的自己发货还是供应商发货自动分配到发货订单库)
++ 取号发货:电子面单取号发货
++ 订单打印:电子面单打印,支持淘宝天猫、京东、拼多多、抖店、微信视频号。
++ 备货出库:电子面单取号之后会加入备货清单,提供给仓库备货查询。发货之后会从备货清单中移除。
++ 发货记录:发货记录,提供手动发货功能。
++ 物流跟踪:提供发货物流查询。
++ 快递快递管理:管理发货的快递公司(支持从平台拉取、支持线下渠道手动添加发货快递)。
++ 面单账户管理:管理店铺开通的电子面单账户
-**支持多店铺管理**
+#### 4、售后管理
++ 售后中新:聚合售后查询、详情、管理。
++ 店铺售后管理:售后API拉取、售后API更新、手动推送、售后操作(同意、备注)。
++ 售后处理记录:售后处理的记录查询,提供手动售后处理功能。
+
+
+#### 5、库存管理
++ 商品库存管理:查询库存
++ 商品入库管理:支持手动入库
++ 商品出库管理:支持手动出库
++ 仓库仓位设置
+
+#### 6、店铺&平台设置
++ 店铺管理
++ 店铺商品管理:店铺商品管理,店铺商品API拉取、店铺商品API更新(进行店铺商品与商品库商品关联,根据SKU编码关联)。
++ 平台设置
++ 订单更新日志:查询更新日志,主动排错。
++ 售后更新日志:查询更新日志,主动排错。
++ 定时任务配置
-## 四、软件架构
+## 四、项目架构
### 1、开发环境级组件
#### 1.1 开发环境
+ Jdk:17
@@ -93,23 +141,27 @@ graph TD
+ MySQL8
+ Redis:7.x
+ Kafka(消息队列)
-+ Nacos:2.2.0(配置中心、注册中心)
++ Nacos:2.3.1(注册中心)
+ Sentinel(分布式流量治理组件)
-
### 2、项目结构
-#### 2.1 公共版本
+#### 2.1 `core`公共类库
+`common`
项目公共模块
+ `security`
公共权限验证模块
+#### 2.2 `module`
++ `goods`:商品模块
++ `open`:开放平台模块
++ `order`:订单模块
++ `shop`:店铺模块
++ `stock`:库存模块
++ `sys`:系统模块
-+ `goods`
-商品模块
-#### 2.2 微服务
+#### 2.3 `api`微服务
+ `gateway`
网关项目,负责微服务接口转发,前端统一通过网关调用其他微服务接口;
@@ -166,7 +218,7 @@ oms主功能微服务,主要功能包括:
`启动KRaft模式kafka`
+ 0 进入kafka解压目录
+ 1 生成UUID`bin\windows\kafka-storage.bat random-uuid`
- + 2 格式化`bin\windows\kafka-storage.bat format -t ujpyXZx-S9-jGlwxgORmow -c config\kraft\server.properties`
+ + 2 格式化`bin\windows\kafka-storage.bat format -t 7HZlayMPQdmMVcXnsFk8dg -c config\kraft\server.properties`
+ 3 启动`bin\windows\kafka-server-start.bat config\kraft\server.properties`
#### 3.2、导入数据库
@@ -217,28 +269,36 @@ server {
}
```
-## 四、一起交流
+
+## 五、支持一下
**感谢大家的关注与支持!希望利用本人从事电商10余年的经验帮助到大家提升工作效率!**
-### 4.1 赠人玫瑰手留余香
-💖 如果觉得有用记得点 Star⭐
-
+### 5.1 赠人玫瑰手留余香
+💖 如果觉得有用记得点个 Star⭐
-### 4.2 加入知识星球一起交流
+
+
+### 5.2 一起交流
💖 欢迎加入知识星期获得作者帮助和朋友们一起交流!
-
++ 微信公众号
+
+
+
++ 知识星球
+
+
-### 4.3 捐助作者
+### 5.3 捐助作者
作者为兼职做开源,平时还需要工作,如果帮到了您可以请作者吃个盒饭
-### 4.4 获取授权与服务
+### 5.4 获取授权与服务
[如何获取授权与服务](https://mp.weixin.qq.com/s/mATn2nfc5bUePohS_s2WGw)
diff --git a/api/gateway/src/main/java/cn/qihangerp/gateway/Gateway.java b/api/gateway/src/main/java/cn/qihangerp/gateway/Gateway.java
index bbe6f119..20400e38 100644
--- a/api/gateway/src/main/java/cn/qihangerp/gateway/Gateway.java
+++ b/api/gateway/src/main/java/cn/qihangerp/gateway/Gateway.java
@@ -14,7 +14,7 @@ public class Gateway
{
public static void main( String[] args )
{
- System.out.println( "Hello api! " );
+ System.out.println( "Hello gateway! " );
SpringApplication.run(Gateway.class, args);
}
diff --git a/api/gateway/src/main/resources/application.yaml b/api/gateway/src/main/resources/application.yaml
index 489f7494..2122a0ec 100644
--- a/api/gateway/src/main/resources/application.yaml
+++ b/api/gateway/src/main/resources/application.yaml
@@ -13,8 +13,8 @@ spring:
nacos:
discovery:
server-addr: 127.0.0.1:8848
- username: nacos
- password: nacos
+# username: nacos
+# password: nacos
sentinel:
transport:
dashboard: 127.0.0.1:8888 # sentinel控制台地址
diff --git a/api/oms-api/src/main/resources/application.yml b/api/oms-api/src/main/resources/application.yml
index a83c2275..08531bbf 100644
--- a/api/oms-api/src/main/resources/application.yml
+++ b/api/oms-api/src/main/resources/application.yml
@@ -11,8 +11,8 @@ spring:
# serverAddr: 127.0.0.1:8848
discovery:
server-addr: 127.0.0.1:8848
- username: nacos
- password: nacos
+# username: nacos
+# password: nacos
data:
# redis 配置
diff --git a/api/open-api/src/main/java/cn/qihangerp/open/jd/JdApiCommon.java b/api/open-api/src/main/java/cn/qihangerp/open/jd/JdApiCommon.java
new file mode 100644
index 00000000..c6c813a9
--- /dev/null
+++ b/api/open-api/src/main/java/cn/qihangerp/open/jd/JdApiCommon.java
@@ -0,0 +1,72 @@
+package cn.qihangerp.open.jd;
+
+import cn.qihangerp.common.ResultVo;
+import cn.qihangerp.common.ResultVoEnum;
+import cn.qihangerp.common.api.ShopApiParams;
+import cn.qihangerp.common.enums.EnumShopType;
+import cn.qihangerp.common.enums.HttpStatus;
+import cn.qihangerp.domain.OShopPlatform;
+import cn.qihangerp.module.service.OShopPlatformService;
+import cn.qihangerp.module.service.OShopService;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Component;
+import org.springframework.util.StringUtils;
+
+@AllArgsConstructor
+@Component
+public class JdApiCommon {
+ private final OShopService shopService;
+ private final OShopPlatformService platformService;
+// private final ServerConfig serverConfig;
+ /**
+ * 更新前的检查
+ *
+ * @param shopId
+ * @return
+ * @throws
+ */
+ public ResultVo