|  | @@ -324,6 +324,9 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private HaiKongSendOrderInfoDetailRecordService haiKongSendOrderInfoDetailRecordService;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  | +    private StockChangeRecordService stockChangeRecordService;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public OrderEntity queryObject(Long id) {
 | 
	
		
			
				|  |  |          return orderDao.queryObject(id);
 | 
	
	
		
			
				|  | @@ -2177,13 +2180,16 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |          List<QueryGoodsVO> queryGoodsVOList = new ArrayList<>();
 | 
	
		
			
				|  |  |          Map<String, GoodsEntity> goodsEntityMap;
 | 
	
		
			
				|  |  |          List<GoodsEntity> goodsEntityList;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        List<StockChangeRecordEntity> stockChangeRecordEntities = new ArrayList<>();
 | 
	
		
			
				|  |  |          try {
 | 
	
		
			
				|  |  |              goodsList.forEach(map -> {
 | 
	
		
			
				|  |  |                  QueryGoodsVO queryGoodsVo = new QueryGoodsVO();
 | 
	
		
			
				|  |  |                  queryGoodsVo.setProdBarcode((String) map.get("prodBarcode"));
 | 
	
		
			
				|  |  |                  queryGoodsVo.setSku((String) map.get("goodsSn"));
 | 
	
		
			
				|  |  |                  queryGoodsVo.setStoreId(storeId.longValue());
 | 
	
		
			
				|  |  | -                queryGoodsVo.setSellVolume((Integer) map.get("sellVolume"));
 | 
	
		
			
				|  |  | +                Integer sellVolume = (Integer) map.get("sellVolume");
 | 
	
		
			
				|  |  | +                queryGoodsVo.setSellVolume(sellVolume);
 | 
	
		
			
				|  |  |                  queryGoodsVo.setRetailPrice(new BigDecimal(String.valueOf(map.get("retailPrice"))));
 | 
	
		
			
				|  |  |                  queryGoodsVo.setGoodsTaxes(new BigDecimal(String.valueOf(map.get("goodstaxes"))));
 | 
	
		
			
				|  |  |                  Object discountedPriceObj = map.get("discountedPrice");
 | 
	
	
		
			
				|  | @@ -2206,6 +2212,17 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |                      deductionPrice = new BigDecimal(deductionPriceObj.toString());
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  queryGoodsVo.setDeductionPrice(deductionPrice);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                StockChangeRecordEntity stockChangeRecordEntity = new StockChangeRecordEntity();
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setNumber(sellVolume);
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setMerchSn(user.getMerchSn());
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setThirdMerchSn(user.getThirdPartyMerchCode());
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setRemark("销售出库");
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setSku(queryGoodsVo.getProdBarcode());
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setStoreId(storeId);
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setType(Constants.StockChangeType.item_2.getType());
 | 
	
		
			
				|  |  | +                stockChangeRecordEntities.add(stockChangeRecordEntity);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  queryGoodsVOList.add(queryGoodsVo);
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |              // 将在循环中查询数据库改为一次性查询
 | 
	
	
		
			
				|  | @@ -2216,6 +2233,8 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |              throw new ServiceException(e);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          Map resultObj = Maps.newHashMap();
 | 
	
		
			
				|  |  |          // 海控需求,下单流程修改,收银端接收会员码,付款码,用户信息,订单数据
 | 
	
		
			
				|  |  |          // 1. 校验库存:保税仓库存 + 展销店库存 - 出区数 >= 购买数
 | 
	
	
		
			
				|  | @@ -2310,8 +2329,6 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |              listUtils.copyList(goodsEntityList, queryGoodsVOList);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              //生成商户订单号
 | 
	
		
			
				|  |  | -            SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
 | 
	
		
			
				|  |  | -//            String orderSn = "ZMHK" + format.format(new Date()) + CommonUtil.generateOrderNumber();
 | 
	
		
			
				|  |  |              Snowflake snowflake = IdUtil.createSnowflake(14, 14);
 | 
	
		
			
				|  |  |              String orderSn = "8" + snowflake.nextIdStr().substring(6);
 | 
	
		
			
				|  |  |              // 检查库存和更新库存
 | 
	
	
		
			
				|  | @@ -2526,6 +2543,12 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |              // 批量保存订单详情
 | 
	
		
			
				|  |  |              orderGoodsService.saveBatchOrderDetail(orderGoodsVoList);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            stockChangeRecordEntities.forEach(stockChangeRecordEntity -> {
 | 
	
		
			
				|  |  | +                stockChangeRecordEntity.setOrderSn(orderSn);
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            stockChangeRecordService.saveBatchByOrderSubmit(stockChangeRecordEntities);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              //清空预订单商品临时表
 | 
	
		
			
				|  |  |              Map orderInfoMap = Maps.newHashMap();
 | 
	
		
			
				|  |  |              orderInfoMap.put("orderInfo", order);
 | 
	
	
		
			
				|  | @@ -2633,9 +2656,10 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |                              orderGiftScoreRulesVo.setGenerateType(Constants.MemberScoreRulesEnum.TWO.getCode());
 | 
	
		
			
				|  |  |                              if (ratio.compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  |                                  // 算出所积的分
 | 
	
		
			
				|  |  | -                                int giftScore = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR).add(new BigDecimal(memberScore.get())).intValue();
 | 
	
		
			
				|  |  | +                                BigDecimal bigDecimal = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR);
 | 
	
		
			
				|  |  | +                                int giftScore = bigDecimal.add(new BigDecimal(memberScore.get())).intValue();
 | 
	
		
			
				|  |  |                                  memberScore.set(giftScore);
 | 
	
		
			
				|  |  | -                                orderGiftScoreRulesVo.setGiftScore(giftScore);
 | 
	
		
			
				|  |  | +                                orderGiftScoreRulesVo.setGiftScore(bigDecimal.intValue());
 | 
	
		
			
				|  |  |                                  orderGiftScoreRulesVo.setGenerateRatio(ratio);
 | 
	
		
			
				|  |  |                              } else {
 | 
	
		
			
				|  |  |                                  // 积分比例设置为0,该商品不记积分。
 | 
	
	
		
			
				|  | @@ -2663,9 +2687,10 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |                                      BigDecimal money = goodsMap.get(sku);
 | 
	
		
			
				|  |  |                                      if (ratio.compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  |                                          // 算出所积的分
 | 
	
		
			
				|  |  | -                                        int giftScore = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR).add(new BigDecimal(memberScore.get())).intValue();
 | 
	
		
			
				|  |  | +                                        BigDecimal bigDecimal = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR);
 | 
	
		
			
				|  |  | +                                        int giftScore = bigDecimal.add(new BigDecimal(memberScore.get())).intValue();
 | 
	
		
			
				|  |  |                                          memberScore.set(giftScore);
 | 
	
		
			
				|  |  | -                                        orderGiftScoreRulesVo.setGiftScore(giftScore);
 | 
	
		
			
				|  |  | +                                        orderGiftScoreRulesVo.setGiftScore(bigDecimal.intValue());
 | 
	
		
			
				|  |  |                                          orderGiftScoreRulesVo.setGenerateRatio(ratio);
 | 
	
		
			
				|  |  |                                      } else {
 | 
	
		
			
				|  |  |                                          // 积分比例设置为0,该商品不记积分。
 | 
	
	
		
			
				|  | @@ -2692,9 +2717,10 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |                                  BigDecimal money = goodsMap.get(sku);
 | 
	
		
			
				|  |  |                                  if (ratio.compareTo(BigDecimal.ZERO) != 0) {
 | 
	
		
			
				|  |  |                                      // 算出所积的分
 | 
	
		
			
				|  |  | -                                    int giftScore = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR).add(new BigDecimal(memberScore.get())).intValue();
 | 
	
		
			
				|  |  | +                                    BigDecimal bigDecimal = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR);
 | 
	
		
			
				|  |  | +                                    int giftScore = bigDecimal.add(new BigDecimal(memberScore.get())).intValue();
 | 
	
		
			
				|  |  |                                      memberScore.set(giftScore);
 | 
	
		
			
				|  |  | -                                    orderGiftScoreRulesVo.setGiftScore(giftScore);
 | 
	
		
			
				|  |  | +                                    orderGiftScoreRulesVo.setGiftScore(bigDecimal.intValue());
 | 
	
		
			
				|  |  |                                      orderGiftScoreRulesVo.setGenerateRatio(ratio);
 | 
	
		
			
				|  |  |                                  } else {
 | 
	
		
			
				|  |  |                                      // 积分比例设置为0,该商品不记积分。
 | 
	
	
		
			
				|  | @@ -4643,73 +4669,75 @@ public class OrderServiceImpl implements OrderService {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 根据收银端开关选择是否适用积分抵扣。
 | 
	
		
			
				|  |  |          boolean useScore = Objects.isNull(calculateOrderDiscountPriceVo.getUseScore()) || calculateOrderDiscountPriceVo.getUseScore();
 | 
	
		
			
				|  |  | -        if (useScore) {
 | 
	
		
			
				|  |  | -            // 计算完活动优惠后,计算积分抵扣。(活动与积分抵扣不互斥)
 | 
	
		
			
				|  |  | -            if (!org.springframework.util.StringUtils.isEmpty(memberCode)) {
 | 
	
		
			
				|  |  | -                String memberInfoByCodeResponseJson;
 | 
	
		
			
				|  |  | -                Response<Object> response;
 | 
	
		
			
				|  |  | -                try {
 | 
	
		
			
				|  |  | -                    // 查询会员信息
 | 
	
		
			
				|  |  | -                    if (memberCode.trim().length() == 11) {
 | 
	
		
			
				|  |  | -                        memberInfoByCodeResponseJson = haiKongMemberTemplate.getMemberInfoByPhone("{\"phone\":\"" + memberCode + "\"}");
 | 
	
		
			
				|  |  | -                    } else {
 | 
	
		
			
				|  |  | -                        memberInfoByCodeResponseJson = haiKongMemberTemplate.getMemberInfoByCode("{\"code\":\"" + memberCode + "\"}");
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | -                    response = JacksonUtil.fromListJson(memberInfoByCodeResponseJson, new TypeReference<Response<Object>>() {
 | 
	
		
			
				|  |  | -                    });
 | 
	
		
			
				|  |  | -                    if (Objects.isNull(response)) {
 | 
	
		
			
				|  |  | -                        LOGGER.error("请求会员系统出现异常!error:{}", memberInfoByCodeResponseJson);
 | 
	
		
			
				|  |  | -                        if (ErrorCodeConstants.MemberSysErrorCodeEnum.CODE_401.getCode().equals(response.getCode())) {
 | 
	
		
			
				|  |  | -                            JedisUtil.del(Constants.MEMBER_SYS_ACCESS_TOKEN_REDIS_KEY);
 | 
	
		
			
				|  |  | -                            throw new ServiceException(String.format("请求会员系统出现异常!会员码:%s,error:%s", memberCode, ErrorCodeConstants.MemberSysErrorCodeEnum.CODE_401.getDesc()));
 | 
	
		
			
				|  |  | -                        }
 | 
	
		
			
				|  |  | -                        throw new ServiceException(String.format("请求会员系统出现异常!会员码:%s,error:%s", memberCode, memberInfoByCodeResponseJson));
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | -                } catch (Exception e) {
 | 
	
		
			
				|  |  | -                    LOGGER.error("请求会员系统失败或处理响应失败!", e);
 | 
	
		
			
				|  |  | -                    throw new ServiceException(e);
 | 
	
		
			
				|  |  | +        // 计算完活动优惠后,计算积分抵扣。(活动与积分抵扣不互斥)
 | 
	
		
			
				|  |  | +        if (!org.springframework.util.StringUtils.isEmpty(memberCode)) {
 | 
	
		
			
				|  |  | +            String memberInfoByCodeResponseJson;
 | 
	
		
			
				|  |  | +            Response<Object> response;
 | 
	
		
			
				|  |  | +            try {
 | 
	
		
			
				|  |  | +                // 查询会员信息
 | 
	
		
			
				|  |  | +                if (memberCode.trim().length() == 11) {
 | 
	
		
			
				|  |  | +                    memberInfoByCodeResponseJson = haiKongMemberTemplate.getMemberInfoByPhone("{\"phone\":\"" + memberCode + "\"}");
 | 
	
		
			
				|  |  | +                } else {
 | 
	
		
			
				|  |  | +                    memberInfoByCodeResponseJson = haiKongMemberTemplate.getMemberInfoByCode("{\"code\":\"" + memberCode + "\"}");
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -                BigDecimal afterDiscountPrice;
 | 
	
		
			
				|  |  | -                if (response.getSuccess()) {
 | 
	
		
			
				|  |  | -                    MemberInfoDTO memberInfoDTO = JacksonUtil.fromStringJson(JacksonUtil.toJson(response.getData()), MemberInfoDTO.class);
 | 
	
		
			
				|  |  | -                    assert memberInfoDTO != null : String.format("会员码:【%s】会员信息错误!%s", memberCode, JacksonUtil.toJson(response));
 | 
	
		
			
				|  |  | -                    // 查询会员表
 | 
	
		
			
				|  |  | -                    calculateOrderDiscountPriceResponseVO.setOpenId(memberInfoDTO.getOpenId());
 | 
	
		
			
				|  |  | -                    calculateOrderDiscountPriceResponseVO.setMemberPhone(memberInfoDTO.getPhone());
 | 
	
		
			
				|  |  | -                    calculateOrderDiscountPriceResponseVO.setMemberCurrentAvailableScore(memberInfoDTO.getScore());
 | 
	
		
			
				|  |  | -                    calculateOrderDiscountPriceResponseVO.setLevelName(memberInfoDTO.getLevelName());
 | 
	
		
			
				|  |  | -                    UserEntity userEntity = userService.queryByOpenId(memberInfoDTO.getOpenId());
 | 
	
		
			
				|  |  | -                    String openId = memberInfoDTO.getOpenId();
 | 
	
		
			
				|  |  | -                    if (Objects.isNull(userEntity)) {
 | 
	
		
			
				|  |  | -                        userEntity = new UserEntity();
 | 
	
		
			
				|  |  | -                        userEntity.setOpenId(openId);
 | 
	
		
			
				|  |  | -                        userEntity.setMemberCode(memberCode);
 | 
	
		
			
				|  |  | -                        userEntity.setMobile(openId);
 | 
	
		
			
				|  |  | -                        userService.save(userEntity);
 | 
	
		
			
				|  |  | -                    } else {
 | 
	
		
			
				|  |  | -                        userEntity.setOpenId(openId);
 | 
	
		
			
				|  |  | -                        userEntity.setMobile(openId);
 | 
	
		
			
				|  |  | -                        userEntity.setMemberCode(memberCode);
 | 
	
		
			
				|  |  | -                        userService.update(userEntity);
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | -                    Integer score = memberInfoDTO.getScore();
 | 
	
		
			
				|  |  | -                    if (Objects.nonNull(score) && score > 0) {
 | 
	
		
			
				|  |  | -                        // 有积分
 | 
	
		
			
				|  |  | -                        afterDiscountPrice = calculatePreferentialPrice(orderTotalPrice, score, memberCode, openId, calculateOrderDiscountPriceResponseVO, goodsDetailsDtos, promotionSkuList, mkActivitiesEntityList);
 | 
	
		
			
				|  |  | -                        LOGGER.info("会员【{}】,当前积分:{},积分抵扣后的订单金额:{},积分抵扣前的订单金额:{}", openId, score, afterDiscountPrice, orderTotalPrice);
 | 
	
		
			
				|  |  | -                        calculateOrderDiscountPriceResponseVO.setOrderTotalPrice(afterDiscountPrice);
 | 
	
		
			
				|  |  | -                        calculateOrderDiscountPriceResponseVO.setGoodsDetailsDtos(goodsDetailsDtos);
 | 
	
		
			
				|  |  | -                        calculateOrderDiscountPriceResponseVO.setBeforeScore(score);
 | 
	
		
			
				|  |  | -                        // 订单完成后再添加积分消费记录,以及同步积分信息
 | 
	
		
			
				|  |  | -                        return calculateOrderDiscountPriceResponseVO;
 | 
	
		
			
				|  |  | -                    } else {
 | 
	
		
			
				|  |  | -                        LOGGER.error("会员【{}】积分为0,积分抵扣失败!", openId);
 | 
	
		
			
				|  |  | -                        return calculateOrderDiscountPriceResponseVO;
 | 
	
		
			
				|  |  | +                response = JacksonUtil.fromListJson(memberInfoByCodeResponseJson, new TypeReference<Response<Object>>() {
 | 
	
		
			
				|  |  | +                });
 | 
	
		
			
				|  |  | +                if (Objects.isNull(response)) {
 | 
	
		
			
				|  |  | +                    LOGGER.error("请求会员系统出现异常!error:{}", memberInfoByCodeResponseJson);
 | 
	
		
			
				|  |  | +                    if (ErrorCodeConstants.MemberSysErrorCodeEnum.CODE_401.getCode().equals(response.getCode())) {
 | 
	
		
			
				|  |  | +                        JedisUtil.del(Constants.MEMBER_SYS_ACCESS_TOKEN_REDIS_KEY);
 | 
	
		
			
				|  |  | +                        throw new ServiceException(String.format("请求会员系统出现异常!会员码:%s,error:%s", memberCode, ErrorCodeConstants.MemberSysErrorCodeEnum.CODE_401.getDesc()));
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | +                    throw new ServiceException(String.format("请求会员系统出现异常!会员码:%s,error:%s", memberCode, memberInfoByCodeResponseJson));
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            } catch (Exception e) {
 | 
	
		
			
				|  |  | +                LOGGER.error("请求会员系统失败或处理响应失败!", e);
 | 
	
		
			
				|  |  | +                throw new ServiceException(e);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            BigDecimal afterDiscountPrice;
 | 
	
		
			
				|  |  | +            if (response.getSuccess()) {
 | 
	
		
			
				|  |  | +                MemberInfoDTO memberInfoDTO = JacksonUtil.fromStringJson(JacksonUtil.toJson(response.getData()), MemberInfoDTO.class);
 | 
	
		
			
				|  |  | +                assert memberInfoDTO != null : String.format("会员码:【%s】会员信息错误!%s", memberCode, JacksonUtil.toJson(response));
 | 
	
		
			
				|  |  | +                // 查询会员表
 | 
	
		
			
				|  |  | +                calculateOrderDiscountPriceResponseVO.setOpenId(memberInfoDTO.getOpenId());
 | 
	
		
			
				|  |  | +                calculateOrderDiscountPriceResponseVO.setMemberPhone(memberInfoDTO.getPhone());
 | 
	
		
			
				|  |  | +                calculateOrderDiscountPriceResponseVO.setMemberCurrentAvailableScore(memberInfoDTO.getScore());
 | 
	
		
			
				|  |  | +                calculateOrderDiscountPriceResponseVO.setLevelName(memberInfoDTO.getLevelName());
 | 
	
		
			
				|  |  | +                UserEntity userEntity = userService.queryByOpenId(memberInfoDTO.getOpenId());
 | 
	
		
			
				|  |  | +                String openId = memberInfoDTO.getOpenId();
 | 
	
		
			
				|  |  | +                if (Objects.isNull(userEntity)) {
 | 
	
		
			
				|  |  | +                    userEntity = new UserEntity();
 | 
	
		
			
				|  |  | +                    userEntity.setOpenId(openId);
 | 
	
		
			
				|  |  | +                    userEntity.setMemberCode(memberCode);
 | 
	
		
			
				|  |  | +                    userEntity.setMobile(openId);
 | 
	
		
			
				|  |  | +                    userService.save(userEntity);
 | 
	
		
			
				|  |  |                  } else {
 | 
	
		
			
				|  |  | -                    LOGGER.error("查询会员信息失败!响应结果:{}", memberInfoByCodeResponseJson);
 | 
	
		
			
				|  |  | -                    throw new ServiceException(String.format("会员码:%s,错误码:%s,错误信息:%s", memberCode, response.getErrorCode(), response.getErrorMessage()));
 | 
	
		
			
				|  |  | +                    userEntity.setOpenId(openId);
 | 
	
		
			
				|  |  | +                    userEntity.setMobile(openId);
 | 
	
		
			
				|  |  | +                    userEntity.setMemberCode(memberCode);
 | 
	
		
			
				|  |  | +                    userService.update(userEntity);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                Integer score = memberInfoDTO.getScore();
 | 
	
		
			
				|  |  | +                // 是否适用积分抵扣
 | 
	
		
			
				|  |  | +                if (!useScore) {
 | 
	
		
			
				|  |  | +                    return calculateOrderDiscountPriceResponseVO;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | +                if (Objects.nonNull(score) && score > 0) {
 | 
	
		
			
				|  |  | +                    // 有积分
 | 
	
		
			
				|  |  | +                    afterDiscountPrice = calculatePreferentialPrice(orderTotalPrice, score, memberCode, openId, calculateOrderDiscountPriceResponseVO, goodsDetailsDtos, promotionSkuList, mkActivitiesEntityList);
 | 
	
		
			
				|  |  | +                    LOGGER.info("会员【{}】,当前积分:{},积分抵扣后的订单金额:{},积分抵扣前的订单金额:{}", openId, score, afterDiscountPrice, orderTotalPrice);
 | 
	
		
			
				|  |  | +                    calculateOrderDiscountPriceResponseVO.setOrderTotalPrice(afterDiscountPrice);
 | 
	
		
			
				|  |  | +                    calculateOrderDiscountPriceResponseVO.setGoodsDetailsDtos(goodsDetailsDtos);
 | 
	
		
			
				|  |  | +                    calculateOrderDiscountPriceResponseVO.setBeforeScore(score);
 | 
	
		
			
				|  |  | +                    // 订单完成后再添加积分消费记录,以及同步积分信息
 | 
	
		
			
				|  |  | +                    return calculateOrderDiscountPriceResponseVO;
 | 
	
		
			
				|  |  | +                } else {
 | 
	
		
			
				|  |  | +                    LOGGER.error("会员【{}】积分为0,积分抵扣失败!", openId);
 | 
	
		
			
				|  |  | +                    return calculateOrderDiscountPriceResponseVO;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            } else {
 | 
	
		
			
				|  |  | +                LOGGER.error("查询会员信息失败!响应结果:{}", memberInfoByCodeResponseJson);
 | 
	
		
			
				|  |  | +                throw new ServiceException(String.format("会员码:%s,错误码:%s,错误信息:%s", memberCode, response.getErrorCode(), response.getErrorMessage()));
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          calculateOrderDiscountPriceResponseVO.setGoodsDetailsDtos(goodsDetailsDtos);
 |