Commit 0cd94794 by 徐康

更新优惠问题

parent def49998
......@@ -103,6 +103,7 @@ import com.freemud.sdk.api.assortment.message.enums.MessageEventType;
import com.freemud.sdk.api.assortment.message.request.MessagePushOrderTemplateRequest;
import com.freemud.sdk.api.assortment.message.request.MessageTemplateRequest;
import com.freemud.sdk.api.assortment.message.service.IMessageTemplatePushService;
import com.freemud.sdk.api.assortment.order.enums.OldOrderAccountType;
import com.freemud.sdk.api.assortment.order.enums.OldOrderType;
import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.*;
......@@ -1539,7 +1540,7 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
* 随单购月卡调会员发券与更新订单使用的优惠券与买的优惠券
* @param orderBean
*/
private boolean withOrderBuyCoupon(QueryOrdersResponseDto.DataBean.OrderBean orderBean, String thirdPartyMemberId){
public boolean withOrderBuyCoupon(QueryOrdersResponseDto.DataBean.OrderBean orderBean, String thirdPartyMemberId){
LogUtil.info("发券入参:", thirdPartyMemberId, JSON.toJSONString(orderBean));
try{
List<String> cardIds = new ArrayList<>();
......@@ -1631,21 +1632,23 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
}
for(QueryOrdersResponseDto.DataBean.OrderBean.ProductBean productBean : orderBean.getProductList()) {
if(CollectionUtils.isNotEmpty(productBean.getDiscountList())) {
if(!ProductTypeEnum.getVirtualProductType().contains(productBean.getProductType()) && CollectionUtils.isNotEmpty(productBean.getDiscountList())) {
for (QueryOrdersResponseDto.DataBean.OrderBean.ProductBean.ProductDiscount discount : productBean.getDiscountList()) {
if(defaultCardCodes.contains(discount.getDiscountId())) {
if(null != discount.getDiscountType() && OldOrderAccountType.PRODUCT_COUPON.getCode().equals(discount.getDiscountType())
&& defaultCardCodes.contains(discount.getDiscountId())) {
UpdateCouponCodeReq.CouponUpdateInfo couponUpdateInfo = new UpdateCouponCodeReq.CouponUpdateInfo();
couponUpdateInfo.setProductSeq(productBean.getSequence());
couponUpdateInfo.setOldCouponCode(discount.getDiscountId());
List<SendCouponForqujiaDtoResponseDto.Card> list = cardMap.get(discount.getDiscountId());
List<SendCouponForqujiaDtoResponseDto.Card> list = new ArrayList<>(cardMap.get(discount.getDiscountId()));
if(CollectionUtils.isEmpty(list)) {
continue;
}
cardFor:
for(int i=0;i<list.size();i++) {
if(ResponseCodeConstant.RESPONSE_SUCCESS.equals(cardStatusMap.get(list.get(i)))) {
if(ResponseCodeConstant.RESPONSE_SUCCESS.equals(cardStatusMap.get(list.get(i).getCard_code()))) {
couponUpdateInfo.setCouponCode(list.get(i).getCard_code());
list.remove(i);
cardMap.put(discount.getDiscountId(), list);
break cardFor;
}
}
......
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