Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Y
yudao-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
hblj
yudao-cloud
Commits
53a33e49
提交
53a33e49
authored
10月 07, 2021
作者:
zhuyang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ProductSku改造
上级
50d8aac2
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
74 行增加
和
61 行删除
+74
-61
ProductSkuFeign.java
.../iocoder/mall/productservice/rpc/sku/ProductSkuFeign.java
+11
-14
ProductSkuController.java
.../mall/productservice/controller/ProductSkuController.java
+27
-13
PriceManager.java
...der/mall/promotionservice/manager/price/PriceManager.java
+4
-5
SearchProductManager.java
...l/searchservice/manager/product/SearchProductManager.java
+4
-5
ProductSkuController.http
...mall/shopweb/controller/product/ProductSkuController.http
+1
-1
CartManager.java
...va/cn/iocoder/mall/shopweb/service/trade/CartManager.java
+8
-6
TradeOrderService.java
...iocoder/mall/shopweb/service/trade/TradeOrderService.java
+5
-4
TradeServiceApplication.java
...cn/iocoder/mall/tradeservice/TradeServiceApplication.java
+4
-0
ProductSkuClient.java
...er/mall/tradeservice/client/product/ProductSkuClient.java
+5
-6
CartManager.java
...n/iocoder/mall/tradeservice/service/cart/CartManager.java
+5
-7
没有找到文件。
product-service-project/product-service-api/src/main/java/cn/iocoder/mall/productservice/rpc/sku/ProductSku
Rpc
.java
→
product-service-project/product-service-api/src/main/java/cn/iocoder/mall/productservice/rpc/sku/ProductSku
Feign
.java
浏览文件 @
53a33e49
...
@@ -3,21 +3,18 @@ package cn.iocoder.mall.productservice.rpc.sku;
...
@@ -3,21 +3,18 @@ package cn.iocoder.mall.productservice.rpc.sku;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.util.List
;
import
java.util.List
;
/**
@FeignClient
(
value
=
"product-service"
)
* 商品 SKU Rpc 接口
public
interface
ProductSkuFeign
{
*/
@GetMapping
(
"/product/sku/getProductSku"
)
public
interface
ProductSkuRpc
{
CommonResult
<
ProductSkuRespDTO
>
getProductSku
(
@RequestParam
(
"productSkuId"
)
Integer
productSkuId
);
/**
* 获得商品 SKU
*
* @param productSkuId 商品 SKU 编号
* @return 商品 SKU
*/
CommonResult
<
ProductSkuRespDTO
>
getProductSku
(
Integer
productSkuId
);
/**
/**
* 获得商品 SKU 列表
* 获得商品 SKU 列表
...
@@ -25,6 +22,6 @@ public interface ProductSkuRpc {
...
@@ -25,6 +22,6 @@ public interface ProductSkuRpc {
* @param queryReqDTO 商品 SKU 列表的查询请求 DTO
* @param queryReqDTO 商品 SKU 列表的查询请求 DTO
* @return 商品 SKU 列表
* @return 商品 SKU 列表
*/
*/
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkus
(
ProductSkuListQueryReqDTO
queryReqDTO
);
@PostMapping
(
"/product/sku/listProductSkus"
)
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkus
(
@RequestBody
ProductSkuListQueryReqDTO
queryReqDTO
);
}
}
product-service-project/product-service-app/src/main/java/cn/iocoder/mall/productservice/
rpc/sku/ProductSkuRpcImpl
.java
→
product-service-project/product-service-app/src/main/java/cn/iocoder/mall/productservice/
controller/ProductSkuController
.java
浏览文件 @
53a33e49
package
cn
.
iocoder
.
mall
.
productservice
.
rpc
.
sku
;
package
cn
.
iocoder
.
mall
.
productservice
.
controller
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.PageResult
;
import
cn.iocoder.mall.productservice.manager.attr.ProductAttrManager
;
import
cn.iocoder.mall.productservice.manager.sku.ProductSkuManager
;
import
cn.iocoder.mall.productservice.manager.sku.ProductSkuManager
;
import
cn.iocoder.mall.productservice.rpc.attr.dto.*
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
org.apache.dubbo.config.annotation.DubboService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
import
java.util.List
;
import
static
cn
.
iocoder
.
common
.
framework
.
vo
.
CommonResult
.
success
;
import
static
cn
.
iocoder
.
common
.
framework
.
vo
.
CommonResult
.
success
;
/**
@RestController
* 商品 SKU Rpc 实现类
@RequestMapping
(
"/product/sku"
)
*/
@Api
(
"商品sku"
)
@DubboService
public
class
ProductSkuController
{
public
class
ProductSkuRpcImpl
implements
ProductSkuRpc
{
@Autowired
@Autowired
private
ProductSkuManager
productSkuManager
;
private
ProductSkuManager
productSkuManager
;
/**
@Override
* 获得商品 SKU
public
CommonResult
<
ProductSkuRespDTO
>
getProductSku
(
Integer
productSkuId
)
{
*
* @param productSkuId 商品 SKU 编号
* @return 商品 SKU
*/
@GetMapping
(
"getProductSku"
)
CommonResult
<
ProductSkuRespDTO
>
getProductSku
(
@RequestParam
(
"productSkuId"
)
Integer
productSkuId
){
return
success
(
productSkuManager
.
getProductSku
(
productSkuId
));
return
success
(
productSkuManager
.
getProductSku
(
productSkuId
));
}
}
@Override
/**
public
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkus
(
ProductSkuListQueryReqDTO
queryReqDTO
)
{
* 获得商品 SKU 列表
*
* @param queryReqDTO 商品 SKU 列表的查询请求 DTO
* @return 商品 SKU 列表
*/
@PostMapping
(
"listProductSkus"
)
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkus
(
@RequestBody
ProductSkuListQueryReqDTO
queryReqDTO
){
return
success
(
productSkuManager
.
listProductSkus
(
queryReqDTO
));
return
success
(
productSkuManager
.
listProductSkus
(
queryReqDTO
));
}
}
...
...
promotion-service-project/promotion-service-app/src/main/java/cn/iocoder/mall/promotionservice/manager/price/PriceManager.java
浏览文件 @
53a33e49
...
@@ -3,7 +3,7 @@ package cn.iocoder.mall.promotionservice.manager.price;
...
@@ -3,7 +3,7 @@ package cn.iocoder.mall.promotionservice.manager.price;
import
cn.iocoder.common.framework.exception.util.ServiceExceptionUtil
;
import
cn.iocoder.common.framework.exception.util.ServiceExceptionUtil
;
import
cn.iocoder.common.framework.util.CollectionUtils
;
import
cn.iocoder.common.framework.util.CollectionUtils
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Rpc
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Feign
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.spu.ProductSpuFeign
;
import
cn.iocoder.mall.productservice.rpc.spu.ProductSpuFeign
;
...
@@ -21,7 +21,6 @@ import cn.iocoder.mall.promotion.api.rpc.price.dto.PriceProductCalcRespDTO;
...
@@ -21,7 +21,6 @@ import cn.iocoder.mall.promotion.api.rpc.price.dto.PriceProductCalcRespDTO;
import
cn.iocoder.mall.promotionservice.service.activity.PromotionActivityService
;
import
cn.iocoder.mall.promotionservice.service.activity.PromotionActivityService
;
import
cn.iocoder.mall.promotionservice.service.coupon.CouponCardService
;
import
cn.iocoder.mall.promotionservice.service.coupon.CouponCardService
;
import
cn.iocoder.mall.promotionservice.service.coupon.CouponTemplateService
;
import
cn.iocoder.mall.promotionservice.service.coupon.CouponTemplateService
;
import
org.apache.dubbo.config.annotation.DubboReference
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.Assert
;
import
org.springframework.util.Assert
;
...
@@ -36,8 +35,8 @@ import static cn.iocoder.mall.promotion.api.enums.PromotionErrorCodeConstants.*;
...
@@ -36,8 +35,8 @@ import static cn.iocoder.mall.promotion.api.enums.PromotionErrorCodeConstants.*;
@Validated
@Validated
public
class
PriceManager
{
public
class
PriceManager
{
@
DubboReference
(
version
=
"${dubbo.consumer.ProductSkuRpc.version}"
)
@
Autowired
private
ProductSku
Rpc
productSkuRpc
;
private
ProductSku
Feign
productSkuFeign
;
@Autowired
@Autowired
private
ProductSpuFeign
productSpuFeign
;
private
ProductSpuFeign
productSpuFeign
;
...
@@ -53,7 +52,7 @@ public class PriceManager {
...
@@ -53,7 +52,7 @@ public class PriceManager {
// 校验商品都存在
// 校验商品都存在
Map
<
Integer
,
PriceProductCalcReqDTO
.
Item
>
calcProductItemDTOMap
=
CollectionUtils
.
convertMap
(
Map
<
Integer
,
PriceProductCalcReqDTO
.
Item
>
calcProductItemDTOMap
=
CollectionUtils
.
convertMap
(
calcReqDTO
.
getItems
(),
PriceProductCalcReqDTO
.
Item
::
getSkuId
);
calcReqDTO
.
getItems
(),
PriceProductCalcReqDTO
.
Item
::
getSkuId
);
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Rpc
.
listProductSkus
(
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Feign
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
().
setProductSkuIds
(
calcProductItemDTOMap
.
keySet
()));
new
ProductSkuListQueryReqDTO
().
setProductSkuIds
(
calcProductItemDTOMap
.
keySet
()));
listProductSkusResult
.
checkError
();
listProductSkusResult
.
checkError
();
if
(
calcReqDTO
.
getItems
().
size
()
!=
listProductSkusResult
.
getData
().
size
())
{
if
(
calcReqDTO
.
getItems
().
size
()
!=
listProductSkusResult
.
getData
().
size
())
{
...
...
search-service-project/search-service-app/src/main/java/cn/iocoder/mall/searchservice/manager/product/SearchProductManager.java
浏览文件 @
53a33e49
...
@@ -5,7 +5,7 @@ import cn.iocoder.common.framework.vo.CommonResult;
...
@@ -5,7 +5,7 @@ import cn.iocoder.common.framework.vo.CommonResult;
import
cn.iocoder.common.framework.vo.PageResult
;
import
cn.iocoder.common.framework.vo.PageResult
;
import
cn.iocoder.mall.productservice.rpc.category.ProductCategoryFeign
;
import
cn.iocoder.mall.productservice.rpc.category.ProductCategoryFeign
;
import
cn.iocoder.mall.productservice.rpc.category.dto.ProductCategoryRespDTO
;
import
cn.iocoder.mall.productservice.rpc.category.dto.ProductCategoryRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Rpc
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Feign
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.spu.ProductSpuFeign
;
import
cn.iocoder.mall.productservice.rpc.spu.ProductSpuFeign
;
...
@@ -20,7 +20,6 @@ import cn.iocoder.mall.searchservice.service.product.bo.SearchProductBO;
...
@@ -20,7 +20,6 @@ import cn.iocoder.mall.searchservice.service.product.bo.SearchProductBO;
import
cn.iocoder.mall.searchservice.service.product.bo.SearchProductConditionBO
;
import
cn.iocoder.mall.searchservice.service.product.bo.SearchProductConditionBO
;
import
cn.iocoder.mall.searchservice.service.product.bo.SearchProductSaveBO
;
import
cn.iocoder.mall.searchservice.service.product.bo.SearchProductSaveBO
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.dubbo.config.annotation.DubboReference
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -33,9 +32,9 @@ public class SearchProductManager {
...
@@ -33,9 +32,9 @@ public class SearchProductManager {
private
static
final
Integer
REBUILD_FETCH_PER_SIZE
=
100
;
private
static
final
Integer
REBUILD_FETCH_PER_SIZE
=
100
;
@DubboReference
(
version
=
"${dubbo.consumer.ProductSkuRpc.version}"
)
private
ProductSkuRpc
productSkuRpc
;
@Autowired
private
ProductSkuFeign
productSkuFeign
;
@Autowired
@Autowired
private
ProductCategoryFeign
productCategoryFeign
;
private
ProductCategoryFeign
productCategoryFeign
;
@Autowired
@Autowired
...
@@ -102,7 +101,7 @@ public class SearchProductManager {
...
@@ -102,7 +101,7 @@ public class SearchProductManager {
}
}
// 获得商品 SKU
// 获得商品 SKU
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Rpc
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
().
setProductSpuId
(
id
));
productSku
Feign
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
().
setProductSpuId
(
id
));
listProductSkusResult
.
checkError
();
listProductSkusResult
.
checkError
();
if
(
CollectionUtils
.
isEmpty
(
listProductSkusResult
.
getData
()))
{
if
(
CollectionUtils
.
isEmpty
(
listProductSkusResult
.
getData
()))
{
log
.
error
(
"[saveProduct][商品 SPU({}) 的 SKU 不存在]"
,
id
);
log
.
error
(
"[saveProduct][商品 SPU({}) 的 SKU 不存在]"
,
id
);
...
...
shop-web-app/src/main/java/cn/iocoder/mall/shopweb/controller/product/ProductSkuController.http
浏览文件 @
53a33e49
### /product-spu/page 计算商品 SKU 价格
### /product-spu/page 计算商品 SKU 价格
GET
{{shop-api-base-url}}
/product-sku/cal-price?id=33
GET
http://127.0.0.1:18084/shop-api
/product-sku/cal-price?id=33
Content-Type: application/x-www-form-urlencoded
Content-Type: application/x-www-form-urlencoded
###
###
shop-web-app/src/main/java/cn/iocoder/mall/shopweb/service/trade/CartManager.java
浏览文件 @
53a33e49
...
@@ -2,10 +2,8 @@ package cn.iocoder.mall.shopweb.service.trade;
...
@@ -2,10 +2,8 @@ package cn.iocoder.mall.shopweb.service.trade;
import
cn.iocoder.common.framework.util.CollectionUtils
;
import
cn.iocoder.common.framework.util.CollectionUtils
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.mall.tradeservice.rpc.cart.CartRpc
;
import
cn.iocoder.mall.tradeservice.rpc.cart.dto.*
;
import
cn.iocoder.mall.productservice.enums.sku.ProductSkuDetailFieldEnum
;
import
cn.iocoder.mall.productservice.enums.sku.ProductSkuDetailFieldEnum
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Rpc
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Feign
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.promotion.api.rpc.activity.PromotionActivityRpc
;
import
cn.iocoder.mall.promotion.api.rpc.activity.PromotionActivityRpc
;
...
@@ -16,7 +14,10 @@ import cn.iocoder.mall.promotion.api.rpc.price.dto.PriceProductCalcReqDTO;
...
@@ -16,7 +14,10 @@ import cn.iocoder.mall.promotion.api.rpc.price.dto.PriceProductCalcReqDTO;
import
cn.iocoder.mall.promotion.api.rpc.price.dto.PriceProductCalcRespDTO
;
import
cn.iocoder.mall.promotion.api.rpc.price.dto.PriceProductCalcRespDTO
;
import
cn.iocoder.mall.shopweb.controller.trade.vo.cart.CartDetailVO
;
import
cn.iocoder.mall.shopweb.controller.trade.vo.cart.CartDetailVO
;
import
cn.iocoder.mall.shopweb.convert.trade.CartConvert
;
import
cn.iocoder.mall.shopweb.convert.trade.CartConvert
;
import
cn.iocoder.mall.tradeservice.rpc.cart.CartRpc
;
import
cn.iocoder.mall.tradeservice.rpc.cart.dto.*
;
import
org.apache.dubbo.config.annotation.DubboReference
;
import
org.apache.dubbo.config.annotation.DubboReference
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
import
java.util.*
;
...
@@ -34,8 +35,9 @@ public class CartManager {
...
@@ -34,8 +35,9 @@ public class CartManager {
private
PriceRpc
priceRpc
;
private
PriceRpc
priceRpc
;
@DubboReference
(
version
=
"${dubbo.consumer.PromotionActivityRpc.version}"
)
@DubboReference
(
version
=
"${dubbo.consumer.PromotionActivityRpc.version}"
)
private
PromotionActivityRpc
promotionActivityRpc
;
private
PromotionActivityRpc
promotionActivityRpc
;
@DubboReference
(
version
=
"${dubbo.consumer.ProductSkuRpc.version}"
)
private
ProductSkuRpc
productSkuRpc
;
@Autowired
private
ProductSkuFeign
productSkuFeign
;
/**
/**
* 添加商品到购物车
* 添加商品到购物车
...
@@ -158,7 +160,7 @@ public class CartManager {
...
@@ -158,7 +160,7 @@ public class CartManager {
}
}
private
Map
<
Integer
,
ProductSkuRespDTO
>
getProductSkuMap
(
List
<
CartItemRespDTO
>
itemRespDTOs
)
{
private
Map
<
Integer
,
ProductSkuRespDTO
>
getProductSkuMap
(
List
<
CartItemRespDTO
>
itemRespDTOs
)
{
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Rpc
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
()
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Feign
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
()
.
setProductSkuIds
(
CollectionUtils
.
convertSet
(
itemRespDTOs
,
CartItemRespDTO:
:
getSkuId
))
.
setProductSkuIds
(
CollectionUtils
.
convertSet
(
itemRespDTOs
,
CartItemRespDTO:
:
getSkuId
))
.
setFields
(
Arrays
.
asList
(
ProductSkuDetailFieldEnum
.
SPU
.
getField
(),
ProductSkuDetailFieldEnum
.
ATTR
.
getField
())));
.
setFields
(
Arrays
.
asList
(
ProductSkuDetailFieldEnum
.
SPU
.
getField
(),
ProductSkuDetailFieldEnum
.
ATTR
.
getField
())));
listProductSkusResult
.
checkError
();
listProductSkusResult
.
checkError
();
...
...
shop-web-app/src/main/java/cn/iocoder/mall/shopweb/service/trade/TradeOrderService.java
浏览文件 @
53a33e49
...
@@ -6,7 +6,7 @@ import cn.iocoder.common.framework.util.CollectionUtils;
...
@@ -6,7 +6,7 @@ import cn.iocoder.common.framework.util.CollectionUtils;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.PageResult
;
import
cn.iocoder.common.framework.vo.PageResult
;
import
cn.iocoder.mall.productservice.enums.sku.ProductSkuDetailFieldEnum
;
import
cn.iocoder.mall.productservice.enums.sku.ProductSkuDetailFieldEnum
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Rpc
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Feign
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.promotion.api.rpc.activity.PromotionActivityRpc
;
import
cn.iocoder.mall.promotion.api.rpc.activity.PromotionActivityRpc
;
...
@@ -55,10 +55,11 @@ public class TradeOrderService {
...
@@ -55,10 +55,11 @@ public class TradeOrderService {
private
PromotionActivityRpc
promotionActivityRpc
;
private
PromotionActivityRpc
promotionActivityRpc
;
@DubboReference
(
version
=
"${dubbo.consumer.ProductCategoryRpc.version}"
)
@DubboReference
(
version
=
"${dubbo.consumer.ProductCategoryRpc.version}"
)
private
CartRpc
cartRpc
;
private
CartRpc
cartRpc
;
@DubboReference
(
version
=
"${dubbo.consumer.ProductSkuRpc.version}"
)
private
ProductSkuRpc
productSkuRpc
;
@DubboReference
(
version
=
"${dubbo.consumer.CouponCardRpc.version}"
)
@DubboReference
(
version
=
"${dubbo.consumer.CouponCardRpc.version}"
)
private
CouponCardRpc
couponCardRpc
;
private
CouponCardRpc
couponCardRpc
;
@Autowired
private
ProductSkuFeign
productSkuFeign
;
@Autowired
@Autowired
private
TradeOrderClient
tradeOrderClient
;
private
TradeOrderClient
tradeOrderClient
;
...
@@ -128,7 +129,7 @@ public class TradeOrderService {
...
@@ -128,7 +129,7 @@ public class TradeOrderService {
private
Map
<
Integer
,
ProductSkuRespDTO
>
checkProductSkus
(
Map
<
Integer
,
Integer
>
skuMap
)
{
private
Map
<
Integer
,
ProductSkuRespDTO
>
checkProductSkus
(
Map
<
Integer
,
Integer
>
skuMap
)
{
// 获得商品 SKU 列表
// 获得商品 SKU 列表
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Rpc
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
()
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Feign
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
()
.
setProductSkuIds
(
skuMap
.
keySet
())
.
setProductSkuIds
(
skuMap
.
keySet
())
.
setFields
(
Arrays
.
asList
(
ProductSkuDetailFieldEnum
.
SPU
.
getField
(),
ProductSkuDetailFieldEnum
.
ATTR
.
getField
())));
.
setFields
(
Arrays
.
asList
(
ProductSkuDetailFieldEnum
.
SPU
.
getField
(),
ProductSkuDetailFieldEnum
.
ATTR
.
getField
())));
listProductSkusResult
.
checkError
();
listProductSkusResult
.
checkError
();
...
...
trade-service-project/trade-service-app/src/main/java/cn/iocoder/mall/tradeservice/TradeServiceApplication.java
浏览文件 @
53a33e49
...
@@ -2,8 +2,12 @@ package cn.iocoder.mall.tradeservice;
...
@@ -2,8 +2,12 @@ package cn.iocoder.mall.tradeservice;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.cloud.client.discovery.EnableDiscoveryClient
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
@SpringBootApplication
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
(
basePackages
=
{
"cn.iocoder.mall.productservice.rpc"
})
public
class
TradeServiceApplication
{
public
class
TradeServiceApplication
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
...
...
trade-service-project/trade-service-app/src/main/java/cn/iocoder/mall/tradeservice/client/product/ProductSkuClient.java
浏览文件 @
53a33e49
...
@@ -2,10 +2,10 @@ package cn.iocoder.mall.tradeservice.client.product;
...
@@ -2,10 +2,10 @@ package cn.iocoder.mall.tradeservice.client.product;
import
cn.iocoder.common.framework.util.CollectionUtils
;
import
cn.iocoder.common.framework.util.CollectionUtils
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Rpc
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSku
Feign
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuListQueryReqDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
org.
apache.dubbo.config.annotation.DubboReference
;
import
org.
springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.Arrays
;
import
java.util.Arrays
;
...
@@ -15,15 +15,14 @@ import java.util.List;
...
@@ -15,15 +15,14 @@ import java.util.List;
@Service
@Service
public
class
ProductSkuClient
{
public
class
ProductSkuClient
{
@Autowired
@DubboReference
(
version
=
"${dubbo.consumer.ProductSkuRpc.version}"
)
private
ProductSkuFeign
productSkuFeign
;
private
ProductSkuRpc
productSkuRpc
;
public
List
<
ProductSkuRespDTO
>
listProductSkus
(
Collection
<
Integer
>
productSkuIds
,
String
...
fields
)
{
public
List
<
ProductSkuRespDTO
>
listProductSkus
(
Collection
<
Integer
>
productSkuIds
,
String
...
fields
)
{
if
(
CollectionUtils
.
isEmpty
(
productSkuIds
))
{
if
(
CollectionUtils
.
isEmpty
(
productSkuIds
))
{
return
Collections
.
emptyList
();
return
Collections
.
emptyList
();
}
}
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Rpc
.
listProductSkus
(
CommonResult
<
List
<
ProductSkuRespDTO
>>
listProductSkusResult
=
productSku
Feign
.
listProductSkus
(
new
ProductSkuListQueryReqDTO
().
setProductSkuIds
(
productSkuIds
).
setFields
(
Arrays
.
asList
(
fields
)));
new
ProductSkuListQueryReqDTO
().
setProductSkuIds
(
productSkuIds
).
setFields
(
Arrays
.
asList
(
fields
)));
listProductSkusResult
.
checkError
();
listProductSkusResult
.
checkError
();
return
listProductSkusResult
.
getData
();
return
listProductSkusResult
.
getData
();
...
...
trade-service-project/trade-service-app/src/main/java/cn/iocoder/mall/tradeservice/service/cart/CartManager.java
浏览文件 @
53a33e49
...
@@ -3,13 +3,11 @@ package cn.iocoder.mall.tradeservice.service.cart;
...
@@ -3,13 +3,11 @@ package cn.iocoder.mall.tradeservice.service.cart;
import
cn.iocoder.common.framework.enums.CommonStatusEnum
;
import
cn.iocoder.common.framework.enums.CommonStatusEnum
;
import
cn.iocoder.common.framework.exception.util.ServiceExceptionUtil
;
import
cn.iocoder.common.framework.exception.util.ServiceExceptionUtil
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.common.framework.vo.CommonResult
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSkuFeign
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
cn.iocoder.mall.tradeservice.convert.cart.CartConvert
;
import
cn.iocoder.mall.tradeservice.convert.cart.CartConvert
;
import
cn.iocoder.mall.tradeservice.rpc.cart.dto.*
;
import
cn.iocoder.mall.tradeservice.rpc.cart.dto.*
;
import
cn.iocoder.mall.tradeservice.service.cart.CartService
;
import
cn.iocoder.mall.tradeservice.service.cart.bo.CartItemBO
;
import
cn.iocoder.mall.tradeservice.service.cart.bo.CartItemBO
;
import
cn.iocoder.mall.productservice.rpc.sku.ProductSkuRpc
;
import
cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO
;
import
org.apache.dubbo.config.annotation.DubboReference
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -23,8 +21,8 @@ import static cn.iocoder.mall.tradeservice.enums.OrderErrorCodeConstants.CARD_IT
...
@@ -23,8 +21,8 @@ import static cn.iocoder.mall.tradeservice.enums.OrderErrorCodeConstants.CARD_IT
@Service
@Service
public
class
CartManager
{
public
class
CartManager
{
@
DubboReference
(
version
=
"${dubbo.consumer.ProductSkuRpc.version}"
)
@
Autowired
private
ProductSku
Rpc
productSkuRpc
;
private
ProductSku
Feign
productSkuFeign
;
@Autowired
@Autowired
private
CartService
cartService
;
private
CartService
cartService
;
...
@@ -104,7 +102,7 @@ public class CartManager {
...
@@ -104,7 +102,7 @@ public class CartManager {
* @return 商品 SKU 信息
* @return 商品 SKU 信息
*/
*/
private
ProductSkuRespDTO
checkProductSku
(
Integer
skuId
)
{
private
ProductSkuRespDTO
checkProductSku
(
Integer
skuId
)
{
CommonResult
<
ProductSkuRespDTO
>
getProductSkuResult
=
productSku
Rpc
.
getProductSku
(
skuId
);
CommonResult
<
ProductSkuRespDTO
>
getProductSkuResult
=
productSku
Feign
.
getProductSku
(
skuId
);
getProductSkuResult
.
checkError
();
getProductSkuResult
.
checkError
();
ProductSkuRespDTO
skuDTO
=
getProductSkuResult
.
getData
();
ProductSkuRespDTO
skuDTO
=
getProductSkuResult
.
getData
();
if
(
skuDTO
==
null
||
CommonStatusEnum
.
DISABLE
.
getValue
().
equals
(
skuDTO
.
getStatus
()))
{
if
(
skuDTO
==
null
||
CommonStatusEnum
.
DISABLE
.
getValue
().
equals
(
skuDTO
.
getStatus
()))
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论