java110 лет назад: 5
Родитель
Сommit
2bb3b14c38

+ 19 - 0
java110-bean/src/main/java/com/java110/dto/groupBuyProduct/GroupBuyProductDto.java

@@ -29,6 +29,9 @@ public class GroupBuyProductDto extends ProductDto implements Serializable {
     private String storeId;
     private String batchId;
 
+    private Date batchStartTime;
+    private Date batchEndTime;
+
     private List<GroupBuyProductSpecDto> groupBuyProductSpecs;
 
 
@@ -136,4 +139,20 @@ public class GroupBuyProductDto extends ProductDto implements Serializable {
     public void setGroupBuyProductSpecs(List<GroupBuyProductSpecDto> groupBuyProductSpecs) {
         this.groupBuyProductSpecs = groupBuyProductSpecs;
     }
+
+    public Date getBatchStartTime() {
+        return batchStartTime;
+    }
+
+    public void setBatchStartTime(Date batchStartTime) {
+        this.batchStartTime = batchStartTime;
+    }
+
+    public Date getBatchEndTime() {
+        return batchEndTime;
+    }
+
+    public void setBatchEndTime(Date batchEndTime) {
+        this.batchEndTime = batchEndTime;
+    }
 }

+ 14 - 0
java110-bean/src/main/java/com/java110/dto/product/ProductActivityDto.java

@@ -7,6 +7,12 @@ import java.util.Date;
 
 public class ProductActivityDto extends PageDto implements Serializable {
 
+    public static final String ACT_TYPE_GROUP ="GROUP"; //团购
+    public static final String ACT_TYPE_SKILL ="SKILL"; //秒杀
+
+
+
+    private String actType;
     private double actPrice; // 活动价格
     private double actStock; // 活动库存
     private double actSales; // 活动销量
@@ -61,4 +67,12 @@ public class ProductActivityDto extends PageDto implements Serializable {
     public void setActProdDesc(String actProdDesc) {
         this.actProdDesc = actProdDesc;
     }
+
+    public String getActType() {
+        return actType;
+    }
+
+    public void setActType(String actType) {
+        this.actType = actType;
+    }
 }

+ 3 - 1
java110-db/src/main/resources/mapper/goods/GroupBuyProductServiceDaoImplMapper.xml

@@ -20,9 +20,11 @@
         select t.group_prod_name,t.group_prod_name groupProdName,t.product_id,t.product_id
         productId,t.user_count,t.user_count userCount,t.group_id,t.group_id groupId,t.group_prod_desc,t.group_prod_desc
         groupProdDesc,t.status_cd,t.status_cd statusCd,t.sort,t.state,t.store_id,t.store_id
-        storeId,t.batch_id,t.batch_id batchId,p.prod_name prodName,p.prod_desc prodDesc
+        storeId,t.batch_id,t.batch_id batchId,p.prod_name prodName,p.prod_desc prodDesc,
+        gbb.batch_start_time batchStartTime,gbb.batch_end_time batchEndTime
         from group_buy_product t
         inner join product p on t.product_id = p.product_id and p.status_cd = '0' and t.store_id = p.store_id
+        LEFT JOIN group_buy_batch gbb on t.batch_id = gbb.batch_id and gbb.store_id = t.store_id and gbb.status_cd = '0'
         where 1 =1
         <if test="groupProdName !=null and groupProdName != ''">
             and t.group_prod_name= #{groupProdName}

+ 17 - 5
service-goods/src/main/java/com/java110/goods/bmo/product/impl/GetProductBMOImpl.java

@@ -2,17 +2,15 @@ package com.java110.goods.bmo.product.impl;
 
 import com.java110.dto.file.FileRelDto;
 import com.java110.dto.groupBuyProduct.GroupBuyProductDto;
+import com.java110.dto.groupBuyProductSpec.GroupBuyProductSpecDto;
+import com.java110.dto.product.ProductActivityDto;
 import com.java110.dto.product.ProductDto;
 import com.java110.dto.product.ProductSpecDetailDto;
 import com.java110.dto.productDetail.ProductDetailDto;
 import com.java110.dto.productSpecValue.ProductSpecValueDto;
 import com.java110.goods.bmo.product.IGetProductBMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
-import com.java110.intf.goods.IGroupBuyProductInnerServiceSMO;
-import com.java110.intf.goods.IProductDetailInnerServiceSMO;
-import com.java110.intf.goods.IProductInnerServiceSMO;
-import com.java110.intf.goods.IProductSpecDetailInnerServiceSMO;
-import com.java110.intf.goods.IProductSpecValueInnerServiceSMO;
+import com.java110.intf.goods.*;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -43,6 +41,10 @@ public class GetProductBMOImpl implements IGetProductBMO {
     @Autowired
     private IGroupBuyProductInnerServiceSMO groupBuyProductInnerServiceSMOImpl;
 
+
+    @Autowired
+    private IGroupBuyProductSpecInnerServiceSMO groupBuyProductSpecInnerServiceSMOImpl;
+
     /**
      * @param productDto
      * @return 订单服务能够接受的报文
@@ -159,6 +161,16 @@ public class GetProductBMOImpl implements IGetProductBMO {
             return;
         }
 
+        productDto.setActType(ProductActivityDto.ACT_TYPE_GROUP);
+        productDto.setActEndTime(groupBuyProductDtos.get(0).getBatchEndTime());
+        productDto.setActProdName(groupBuyProductDtos.get(0).getGroupProdName());
+        productDto.setActProdDesc(groupBuyProductDtos.get(0).getGroupProdDesc());
+
+        GroupBuyProductSpecDto groupBuyProductSpecDto = new GroupBuyProductSpecDto();
+        groupBuyProductSpecDto.setStoreId(groupBuyProductDtos.get(0).getStoreId());
+        groupBuyProductSpecDto.setProductId(groupBuyProductDtos.get(0).getProductId());
+        groupBuyProductSpecInnerServiceSMOImpl.queryGroupBuyProductSpecs(groupBuyProductSpecDto);
+
 
     }
 

+ 15 - 11
service-goods/src/main/java/com/java110/goods/bmo/product/impl/UpdateProductBMOImpl.java

@@ -69,18 +69,22 @@ public class UpdateProductBMOImpl implements IUpdateProductBMO {
         }
         if (productSpecValuePos != null) {
             //删除所有 规格
-            ProductSpecValuePo deleteProductSpecValuePo = new ProductSpecValuePo();
-            deleteProductSpecValuePo.setStoreId(productPo.getStoreId());
-            deleteProductSpecValuePo.setProductId(productPo.getProductId());
-            productSpecValueInnerServiceSMOImpl.deleteProductSpecValue(deleteProductSpecValuePo);
+//            ProductSpecValuePo deleteProductSpecValuePo = new ProductSpecValuePo();
+//            deleteProductSpecValuePo.setStoreId(productPo.getStoreId());
+//            deleteProductSpecValuePo.setProductId(productPo.getProductId());
+//            productSpecValueInnerServiceSMOImpl.deleteProductSpecValue(deleteProductSpecValuePo);
             for (ProductSpecValuePo productSpecValuePo : productSpecValuePos) {
-                productSpecValuePo.setStoreId(productPo.getStoreId());
-                productSpecValuePo.setProductId(productPo.getProductId());
-                productSpecValuePo.setValueId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_valueId));
-                flag = productSpecValueInnerServiceSMOImpl.saveProductSpecValue(productSpecValuePo);
-
-                if (flag < 1) {
-                    throw new IllegalArgumentException("保存规格失败");
+                if (StringUtil.isEmpty(productSpecValuePo.getValueId())
+                        || productSpecValuePo.getValueId().startsWith("-")) {
+                    productSpecValuePo.setStoreId(productPo.getStoreId());
+                    productSpecValuePo.setProductId(productPo.getProductId());
+                    productSpecValuePo.setValueId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_valueId));
+                    flag = productSpecValueInnerServiceSMOImpl.saveProductSpecValue(productSpecValuePo);
+                    if (flag < 1) {
+                        throw new IllegalArgumentException("保存规格失败");
+                    }
+                } else {
+                    productSpecValueInnerServiceSMOImpl.updateProductSpecValue(productSpecValuePo);
                 }
             }
         }