Commit 8c57992b by huvchao@126.com

Merge remote-tracking branch 'remotes/origin/feature/1.9.11_goodsGroup' into qa

# Conflicts:
#	assortment-ordercenter-sdk/pom.xml
#	assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/adapter/OrderSdkAdapter.java
#	order-application-service/pom.xml
parents d8b2fc24 21428b30
......@@ -2496,15 +2496,7 @@ public class OrderSdkAdapter {
extInfo.setThirdCategoryId(product.getThirdCategoryId());
}
// todo 订单行扩展字段商品组
if(StringUtils.isNotBlank(product.getGroupId())){
extInfo.setGroupId(product.getGroupId());
}
if(StringUtils.isNotBlank(product.getGroupName())){
extInfo.setGroupName(product.getGroupName());
}
if(StringUtils.isNotBlank(product.getThirdGroupCode())){
extInfo.setThirdGroupCode(product.getThirdGroupCode());
}
extInfo.setProductGroupList(product.getProductGroupList());
orderItemCreateReq.setExtInfo(JSONObject.toJSONString(extInfo));
orderItemList.add(orderItemCreateReq);
......
......@@ -13,6 +13,7 @@
package com.freemud.sdk.api.assortment.order.request.order;
import com.freemud.sdk.api.assortment.order.config.BaseConfig;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
import lombok.Data;
import java.util.List;
......@@ -155,18 +156,6 @@ public class CreateOrderProductRequest extends BaseConfig {
*/
private String thirdProductPropertyId;
/**
* 商品组id。非码商品组ID唯一
*/
private String groupId;
/**
* 商品组名称
*/
private String groupName;
/**
* 第三方商品组编码。后台人工录入,有可能不唯一。
*/
private String thirdGroupCode;
/** 商品组 **/
private List<ProductGroupVo> productGroupList;
}
......@@ -13,8 +13,11 @@
package com.freemud.sdk.api.assortment.order.request.order;
import com.freemud.sdk.api.assortment.order.config.BaseConfig;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
import lombok.Data;
import java.util.List;
@Data
public class OrderProductAddInfoDto extends BaseConfig {
......@@ -43,12 +46,6 @@ public class OrderProductAddInfoDto extends BaseConfig {
*/
private String thirdCategoryId;
/** 商品组ID */
private String groupName;
/** 商品组名称 */
private String thirdGroupCode;
/** 第三方商品分类 */
private String groupId;
/** 商品组 **/
private List<ProductGroupVo> productGroupList;
}
package com.freemud.sdk.api.assortment.order.vo;
import com.netflix.discovery.provider.Serializer;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 商品组信息
*/
@Data
@Serializer
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class ProductGroupVo {
/**
* 商品组id。非码商品组ID唯一
*/
private String groupId;
/**
* 商品组名称
*/
private String groupName;
/**
* 第三方商品组编码。后台人工录入,有可能不唯一。
*/
private String thirdGroupId;
}
......@@ -127,6 +127,7 @@ public class ItemServiceImpl implements ItemService{
* 套餐商品保存第三方信息
*/
private void saveComboProductsThirdInfo(ProductInfo productBean,Map<String, GetProductsVo> resultMap){
GetProductsVo spuProductsVo = resultMap.get(productBean.getPid());
//套餐固定商品
if (CollectionUtils.isNotEmpty(productBean.getProductComboList())) {
for (ProductComboListDto productComboListDto : productBean.getProductComboList()) {
......@@ -135,6 +136,26 @@ public class ItemServiceImpl implements ItemService{
comboProductsVo.setProductCode(productComboListDto.getProductCode());
//第三方商品属性信息
comboProductsVo.setProductAttributeGroupList(productComboListDto.getProductAttributeGroupList());
if(CollectionUtils.isNotEmpty(spuProductsVo.getProductGroupList())){
/** 商品组 */
for(ProductGroup group : spuProductsVo.getProductGroupList()){
if(CollectionUtils.isNotEmpty(group.getGroupDetail())){
for(GroupDetail detail : group.getGroupDetail()){
if(detail.getProductId().equals(productComboListDto.getProductId())){
ProductGroup targetGroup = new ProductGroup();
targetGroup.setGroupCode(group.getGroupCode());
targetGroup.setName(group.getName());
targetGroup.setGroupDetail(Lists.newArrayList(detail));
List<ProductGroup> productGroupList = Lists.newArrayList(targetGroup);
comboProductsVo.setProductGroupList(productGroupList);
break;
}
}
}
}
}
resultMap.put(productComboListDto.getProductId(), comboProductsVo);
}
}
......@@ -142,15 +163,24 @@ public class ItemServiceImpl implements ItemService{
//套餐商品内可选商品
if (CollectionUtils.isNotEmpty(productBean.getProductGroupList()) && CollectionUtils.isNotEmpty(productBean.getProductGroupList().get(0).getGroupDetail())) {
//套餐商品可选商品集合
List<GroupDetail> groupDetails = productBean.getProductGroupList().get(0).getGroupDetail();
for (GroupDetail groupDetailBean : groupDetails){
//多规格获取sku信息
GetProductsVo groupProductsVo = new GetProductsVo();
groupProductsVo.setCustomerCode(groupDetailBean.getCustomerCode());
groupProductsVo.setProductCode(groupDetailBean.getProductCode());
//第三方商品属性信息
groupProductsVo.setProductAttributeGroupList(groupDetailBean.getProductAttributeGroupList());
resultMap.put(groupDetailBean.getProductId(), groupProductsVo);
for(ProductGroup group : productBean.getProductGroupList()){
for(GroupDetail groupDetailBean : group.getGroupDetail()){
//多规格获取sku信息
GetProductsVo groupProductsVo = new GetProductsVo();
groupProductsVo.setCustomerCode(groupDetailBean.getCustomerCode());
groupProductsVo.setProductCode(groupDetailBean.getProductCode());
//第三方商品属性信息
groupProductsVo.setProductAttributeGroupList(groupDetailBean.getProductAttributeGroupList());
ProductGroup targetGroup = new ProductGroup();
targetGroup.setGroupCode(group.getGroupCode());
targetGroup.setName(group.getName());
targetGroup.setGroupDetail(Lists.newArrayList(groupDetailBean));
List<ProductGroup> productGroupList = Lists.newArrayList(targetGroup);
groupProductsVo.setProductGroupList(productGroupList);
resultMap.put(groupDetailBean.getProductId(), groupProductsVo);
}
}
}
}
......
......@@ -33,6 +33,7 @@ import cn.freemud.entities.dto.order.CreateOrderOperateDto;
import cn.freemud.entities.dto.order.FacePayRequestDto;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.product.AttributeValue;
import cn.freemud.entities.dto.product.GroupDetail;
import cn.freemud.entities.dto.product.ProductAttributeGroup;
import cn.freemud.entities.dto.product.ProductGroup;
import cn.freemud.entities.dto.shoppingCart.NewShoppingCartClearDto;
......@@ -99,6 +100,7 @@ import com.freemud.sdk.api.assortment.order.response.order.*;
import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.util.LockUtils;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
import com.freemud.sdk.api.assortment.orderdistributor.entity.dto.PaymentMqMessageDto;
import com.freemud.sdk.api.assortment.orderdistributor.service.PaymentQueueService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
......@@ -1664,12 +1666,17 @@ public class OrderServiceImpl implements Orderservice {
*/
private void setProductGroupInfo(List<ProductGroup> productGroupList, CreateOrderProductRequest product) {
if (CollectionUtils.isEmpty(productGroupList)) return;
// try{}catch (Exception e){e.printStackTrace();}
if (CollectionUtils.isNotEmpty(productGroupList.get(0).getGroupDetail())) {
product.setGroupId(productGroupList.get(0).getGroupDetail().get(0).getGroupId());
List<ProductGroupVo> targetGroupList = Lists.newArrayList();
for (ProductGroup productGroup : productGroupList) {
for (GroupDetail groupDetail : productGroup.getGroupDetail()) {
ProductGroupVo productGroupVo = ProductGroupVo.builder()
.groupId(groupDetail.getGroupId()).groupName(productGroup.getName())
.thirdGroupId(productGroup.getGroupCode()).build();
targetGroupList.add(productGroupVo);
}
}
product.setGroupName(productGroupList.get(0).getName());
product.setThirdGroupCode(productGroupList.get(0).getGroupCode());
product.setProductGroupList(targetGroupList);
}
private String getThirdPropertyId(List<ProductAttributeGroup> productAttributeGroups, String addInfo) {
......
......@@ -13,84 +13,7 @@
</encoder>
</appender>
<springProfile name="default">
<logger name="cn.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<logger name="com.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<appender name="FREEMUD_DEV_DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/${PROJECT_NAME}/freemud_api_${PROJECT_NAME}-dev.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_HOME}/${PROJECT_NAME}/freemud_api_${PROJECT_NAME}-dev-%d{yyyy-MM-dd}.log</fileNamePattern>
</rollingPolicy>
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<charset>UTF-8</charset>
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
<pattern>%d %p [%thread] (%file:%line\) - [${spring.application.name}, %tid] %m%n </pattern>
</layout>
</encoder>
</appender>
<logger name="cn.freemud" level="debug" additivity="false">
<appender-ref ref="FREEMUD_DEV_DEBUG"/>
</logger>
<logger name="com.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
</springProfile>
<springProfile name="mock">
<logger name="cn.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<logger name="com.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
</springProfile>
<springProfile name="qa">
<logger name="cn.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<logger name="com.freemud" level="debug" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
</springProfile>
<springProfile name="dev">
<appender name="FREEMUD_TEST_DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/${PROJECT_NAME}/freemud_api_${PROJECT_NAME}-test.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_HOME}/${PROJECT_NAME}/freemud_api-${PROJECT_NAME}-%d{yyyy-MM-dd}.log</fileNamePattern>
</rollingPolicy>
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<charset>UTF-8</charset>
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
<pattern>%d %p [%thread] (%file:%line\) - [${spring.application.name}, %tid] %m%n </pattern>
</layout>
</encoder>
</appender>
<logger name="cn.freemud" level="debug" additivity="false">
<appender-ref ref="FREEMUD_TEST_DEBUG"/>
</logger>
<logger name="com.freemud" level="debug" additivity="false">
<appender-ref ref="FREEMUD_TEST_DEBUG"/>
</logger>
</springProfile>
<springProfile name="pro">
<logger name="cn.freemud" level="info" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
<logger name="com.freemud" level="info" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
</springProfile>
<root level="info">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment