Przeglądaj źródła

add merchant price of product in package

huodongdong 7 lat temu
rodzic
commit
af3de4ab65

+ 3 - 3
rankin-cms-web/src/main/java/cn/rankin/cmsweb/service/trade/order/OrderService.java

@@ -161,9 +161,9 @@ public class OrderService {
             if (!terminalUserVo.getMerchantId().equals(goodsMerchantId)) {
                 return APIResult.error(CmsWebAPICode.error("不可以购买其他渠道商品"));
             }
-            if (goodsVo.getType().equals(ProductTypeEnum.PACKAGE)) {
-                return APIResult.error(CmsWebAPICode.error("包含课程包"));
-            }
+//            if (goodsVo.getType().equals(ProductTypeEnum.PACKAGE)) {
+//                return APIResult.error(CmsWebAPICode.error("包含课程包"));
+//            }
             String goodsId = goodsVo.getId();
             Integer count = goodsCountMap.get(goodsId);
             OrderGoodsDTO orderGoodsDTO = new OrderGoodsDTO();

+ 2 - 0
rankin-data-api/src/main/java/cn/rankin/data/api/product/dto/PackageProductDTO.java

@@ -13,4 +13,6 @@ public class PackageProductDTO implements Serializable {
     private String pid;
 
     private BigDecimal cpPrice;
+
+    private BigDecimal merchantPrice;
 }

+ 3 - 0
rankin-data-api/src/main/java/cn/rankin/data/api/product/entity/PackageProductRelation.java

@@ -41,6 +41,9 @@ public class PackageProductRelation implements Serializable {
     @Column(name = "cp_price")
     private BigDecimal cpPrice;
 
+    @Column(name = "merchant_price")
+    private BigDecimal merchantPrice;
+
     private Integer sort;
 
     @Enumerated(EnumType.ORDINAL)

+ 2 - 2
rankin-product-service/src/main/java/cn/rankin/productservice/service/PackageChangeService.java

@@ -99,7 +99,7 @@ public class PackageChangeService {
                     goods.setCpId(product.getCpId());
                     goods.setPid(productId);
                     goods.setCpPrice(productDTO.getCpPrice());
-                    goods.setTerminalPrice(BigDecimal.ZERO);
+                    goods.setMerchantPrice(productDTO.getMerchantPrice());
                     goods.setTerminalPrice(BigDecimal.ZERO);
                     goods.setDuration(0);
                     goods.setMerchantId(merchantId);
@@ -158,7 +158,7 @@ public class PackageChangeService {
             goods.setCpId(product.getCpId());
             goods.setPid(productId);
             goods.setCpPrice(relation.getCpPrice());
-            goods.setTerminalPrice(BigDecimal.ZERO);
+            goods.setMerchantPrice(relation.getMerchantPrice());
             goods.setTerminalPrice(BigDecimal.ZERO);
             goods.setDuration(0);
             goods.setMerchantId(merchantId);

+ 1 - 0
rankin-product-service/src/main/java/cn/rankin/productservice/service/PackageProductRelationService.java

@@ -55,6 +55,7 @@ public class PackageProductRelationService {
                 relation.setStatus(BaseStatusEnum.NORMAL);
                 PackageProductDTO packageProductDTO = packageProductDTOMap.get(productId);
                 relation.setCpPrice(packageProductDTO.getCpPrice());
+                relation.setMerchantPrice(packageProductDTO.getMerchantPrice());
             }
             currentIdList.add(productId);
         });

+ 1 - 0
rankin-product-service/src/main/java/cn/rankin/productservice/utils/DTOConverter.java

@@ -67,6 +67,7 @@ public class DTOConverter {
         relation.setPkgId(pkgId);
         relation.setPid(productDTO.getPid());
         relation.setCpPrice(productDTO.getCpPrice());
+        relation.setMerchantPrice(productDTO.getMerchantPrice());
         relation.setStatus(BaseStatusEnum.NORMAL);
         return relation;
     }