Commit f87042e4 by 徐康

餐道合商品

parent 3dcabfaa
...@@ -5,6 +5,7 @@ import cn.freemud.entities.dto.QueryOrdersResponseDto; ...@@ -5,6 +5,7 @@ import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.vo.CreateDeliveryPreferentialVo; import cn.freemud.entities.vo.CreateDeliveryPreferentialVo;
import cn.freemud.entities.vo.CreateDeliveryVo; import cn.freemud.entities.vo.CreateDeliveryVo;
import cn.freemud.entities.vo.ProductInfo; import cn.freemud.entities.vo.ProductInfo;
import cn.freemud.entities.vo.ProductVo;
import cn.freemud.enums.DeliveryChannelEnum; import cn.freemud.enums.DeliveryChannelEnum;
import cn.freemud.enums.OrderSourceType; import cn.freemud.enums.OrderSourceType;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
...@@ -21,9 +22,7 @@ import org.springframework.stereotype.Component; ...@@ -21,9 +22,7 @@ import org.springframework.stereotype.Component;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.*;
import java.util.Date;
import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -174,7 +173,32 @@ public class DeliveryAdapter { ...@@ -174,7 +173,32 @@ public class DeliveryAdapter {
simpleDateFormat.format(DateUtil.addHours(DateUtil.addMinutes(new Date(order.getGmtCreate()),storeInfo.getBizVO().getServiceTime()), -8)) :null; simpleDateFormat.format(DateUtil.addHours(DateUtil.addMinutes(new Date(order.getGmtCreate()),storeInfo.getBizVO().getServiceTime()), -8)) :null;
deliveryOrderRequestDto.setExpectDeliveryTimeByUTC(expectDeliveryTimeByUTC); deliveryOrderRequestDto.setExpectDeliveryTimeByUTC(expectDeliveryTimeByUTC);
} }
//---麦咖啡餐道专用---
Optional<QueryOrdersResponseDto.DataBean.OrderBean.ProductBean> productVoOptional = order.getProductList().stream()
.filter(o -> StringUtils.isNotBlank(JSON.parseObject(o.getExtInfo(), OrderProductAddInfoDto.class).getSplitIndex()))
.findFirst();
Map<String, Integer> existMap = new HashMap<>();
if(productVoOptional.isPresent()) {
int size = order.getProductList().size();
List<QueryOrdersResponseDto.DataBean.OrderBean.ProductBean> productVoList = new ArrayList<>();
for(int i=0;i<size;i++) {
QueryOrdersResponseDto.DataBean.OrderBean.ProductBean productBean = order.getProductList().get(i);
String splitIndex = JSON.parseObject(productBean.getExtInfo(), OrderProductAddInfoDto.class).getSplitIndex();
if(StringUtils.isBlank(splitIndex)) {
productVoList.add(productBean);
} else {
if(existMap.get(splitIndex) == null) {
existMap.put(splitIndex, productVoList.size());
productVoList.add(productBean);
} else {
QueryOrdersResponseDto.DataBean.OrderBean.ProductBean productBeanExists = productVoList.get(existMap.get(splitIndex));
productBeanExists.setNumber(productBeanExists.getNumber() + productBean.getNumber());
}
}
}
order.setProductList(productVoList);
}
List<ProductInfo> productInfos = new ArrayList<>(); List<ProductInfo> productInfos = new ArrayList<>();
if (CollectionUtils.isNotEmpty(order.getProductList())) { if (CollectionUtils.isNotEmpty(order.getProductList())) {
......
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