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: