diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java
index 059923790..08e92fd18 100644
--- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java
+++ b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java
@@ -29,11 +29,11 @@ import static cn.iocoder.common.framework.vo.CommonResult.success;
@RequestMapping("users/cart")
public class UsersCartController {
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.provider.CartService.version}")
private CartService cartService;
@Reference(validation = "true")
private OrderService orderService;
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.CouponService.version}")
private CouponService couponService;
@PostMapping("add")
diff --git a/order/order-service-impl/pom.xml b/order/order-service-impl/pom.xml
index ba4a6439b..3509008e5 100644
--- a/order/order-service-impl/pom.xml
+++ b/order/order-service-impl/pom.xml
@@ -61,12 +61,6 @@
guava
27.0.1-jre
-
- Pingplusplus
- pingpp-java
- 2.2.4
- jar
-
com.xuxueli
xxl-job-core
@@ -88,6 +82,19 @@
org.apache.dubbo
dubbo
+
+ org.apache.curator
+ curator-framework
+
+
+ org.apache.curator
+ curator-recipes
+
+
+ org.apache.dubbo
+ dubbo-spring-boot-starter
+
+
org.mybatis.spring.boot
mybatis-spring-boot-starter
@@ -116,4 +123,4 @@
-
\ No newline at end of file
+
diff --git a/order/order-service-impl/src/main/java/cn/iocoder/mall/order/biz/service/CartServiceImpl.java b/order/order-service-impl/src/main/java/cn/iocoder/mall/order/biz/service/CartServiceImpl.java
index 7f354f7bf..bc4056b8d 100644
--- a/order/order-service-impl/src/main/java/cn/iocoder/mall/order/biz/service/CartServiceImpl.java
+++ b/order/order-service-impl/src/main/java/cn/iocoder/mall/order/biz/service/CartServiceImpl.java
@@ -32,14 +32,14 @@ import java.util.stream.Collectors;
* 购物车服务 Service 实现类
*/
@Service
-@org.apache.dubbo.config.annotation.Service(validation = "true")
+@org.apache.dubbo.config.annotation.Service(validation = "true", version = "${dubbo.provider.CartService.version}")
public class CartServiceImpl implements CartService {
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.PromotionActivityService.version}")
private ProductSpuService productSpuService;
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.PromotionActivityService.version}")
private PromotionActivityService promotionActivityService;
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.CouponService.version}")
private CouponService couponService;
@Autowired
diff --git a/order/order-service-impl/src/main/resources/config/application.yaml b/order/order-service-impl/src/main/resources/config/application.yaml
index b0648b4e2..31ccaee44 100644
--- a/order/order-service-impl/src/main/resources/config/application.yaml
+++ b/order/order-service-impl/src/main/resources/config/application.yaml
@@ -23,6 +23,16 @@ dubbo:
name: dubbo
scan:
base-packages: cn.iocoder.mall.order.biz.service
+ provider:
+ CartService:
+ version: 1.0.0
+ consumer:
+ ProductSpuService:
+ version: 1.0.0
+ PromotionActivityService:
+ version: 1.0.0
+ CouponService:
+ version: 1.0.0
# logging
logging:
diff --git a/pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/biz/component/DubboReferencePool.java b/pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/biz/component/DubboReferencePool.java
index 11f3785d7..17cde45f8 100644
--- a/pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/biz/component/DubboReferencePool.java
+++ b/pay/pay-service-impl/src/main/java/cn/iocoder/mall/pay/biz/component/DubboReferencePool.java
@@ -58,6 +58,7 @@ public class DubboReferencePool {
reference.setInterface(notifyUrlParts[0]); // 弱类型接口名
reference.setGeneric(true); // 声明为泛化接口
reference.setApplication(application);
+ reference.setVersion("1.0.0"); // TODO 芋艿,后面要优化下。
// 获得 GenericService 对象
GenericService genericService = reference.get();
// 构建最终的 ReferenceMeta 对象
diff --git a/search/search-application/src/main/java/cn/iocoder/mall/search/application/controller/users/UsersProductSearchController.java b/search/search-application/src/main/java/cn/iocoder/mall/search/application/controller/users/UsersProductSearchController.java
index 8a74b5729..ab0bc2758 100644
--- a/search/search-application/src/main/java/cn/iocoder/mall/search/application/controller/users/UsersProductSearchController.java
+++ b/search/search-application/src/main/java/cn/iocoder/mall/search/application/controller/users/UsersProductSearchController.java
@@ -24,7 +24,7 @@ import static cn.iocoder.common.framework.vo.CommonResult.success;
@Api("商品搜索")
public class UsersProductSearchController {
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.provider.ProductSearchService.version}")
private ProductSearchService productSearchService;
@GetMapping("/page") // TODO 芋艿,后面把 BO 改成 VO
diff --git a/search/search-service-impl/src/main/java/cn/iocoder/mall/search/biz/service/ProductSearchServiceImpl.java b/search/search-service-impl/src/main/java/cn/iocoder/mall/search/biz/service/ProductSearchServiceImpl.java
index d9c212e18..1a787a8a2 100644
--- a/search/search-service-impl/src/main/java/cn/iocoder/mall/search/biz/service/ProductSearchServiceImpl.java
+++ b/search/search-service-impl/src/main/java/cn/iocoder/mall/search/biz/service/ProductSearchServiceImpl.java
@@ -2,7 +2,6 @@ package cn.iocoder.mall.search.biz.service;
import cn.iocoder.common.framework.util.CollectionUtil;
import cn.iocoder.common.framework.util.StringUtil;
-import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.common.framework.vo.SortingField;
import cn.iocoder.mall.order.api.CartService;
import cn.iocoder.mall.order.api.bo.CalcSkuPriceBO;
@@ -37,7 +36,7 @@ import java.util.Map;
import java.util.stream.Collectors;
@Service
-@org.apache.dubbo.config.annotation.Service(validation = "true")
+@org.apache.dubbo.config.annotation.Service(validation = "true", version = "${dubbo.provider.ProductSearchService.version}")
public class ProductSearchServiceImpl implements ProductSearchService {
private static final Integer REBUILD_FETCH_PER_SIZE = 100;
@@ -47,11 +46,11 @@ public class ProductSearchServiceImpl implements ProductSearchService {
@Autowired
private ElasticsearchTemplate elasticsearchTemplate; // 因为需要使用到聚合操作,只好引入 ElasticsearchTemplate 。
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.ProductSpuService.version}")
private ProductSpuService productSpuService;
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.ProductCategoryService.version}")
private ProductCategoryService productCategoryService;
- @Reference(validation = "true")
+ @Reference(validation = "true", version = "${dubbo.consumer.CartService.version}")
private CartService cartService;
@Override
@@ -92,10 +91,9 @@ public class ProductSearchServiceImpl implements ProductSearchService {
// 获得最小价格的 SKU ,用于下面的价格计算
ProductSpuDetailBO.Sku sku = spu.getSkus().stream().min(Comparator.comparing(ProductSpuDetailBO.Sku::getPrice)).get();
// 价格计算
- CommonResult calSkuPriceResult = cartService.calcSkuPrice(sku.getId());
- Assert.isTrue(calSkuPriceResult.isSuccess(), String.format("SKU(%d) 价格计算不会出错", sku.getId()));
+ CalcSkuPriceBO calSkuPriceResult = cartService.calcSkuPrice(sku.getId());
// 拼装结果
- return ProductSearchConvert.INSTANCE.convert(spu, calSkuPriceResult.getData());
+ return ProductSearchConvert.INSTANCE.convert(spu, calSkuPriceResult);
}
@Override
diff --git a/search/search-service-impl/src/main/resources/config/application.yaml b/search/search-service-impl/src/main/resources/config/application.yaml
index 3ca895c2e..537878428 100644
--- a/search/search-service-impl/src/main/resources/config/application.yaml
+++ b/search/search-service-impl/src/main/resources/config/application.yaml
@@ -18,6 +18,16 @@ dubbo:
name: dubbo
scan:
base-packages: cn.iocoder.mall.search.biz.service
+ provider:
+ ProductSearchService:
+ version: 1.0.0
+ consumer:
+ ProductSpuService:
+ version: 1.0.0
+ ProductCategoryService:
+ version: 1.0.0
+ CartService:
+ version: 1.0.0
# rocketmq
rocketmq: