Commit 5cd709d7 by zhiheng.zhang

Merge remote-tracking branch 'origin/master'

parents 75549577 48e674e5
...@@ -187,5 +187,10 @@ public class OrderExtInfoDto { ...@@ -187,5 +187,10 @@ public class OrderExtInfoDto {
*/ */
private String stationId; private String stationId;
/**
* 线下订单储值卡支付金额
*/
private Integer svcAmount;
} }
...@@ -13,12 +13,11 @@ ...@@ -13,12 +13,11 @@
package cn.freemud.controller; package cn.freemud.controller;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.GetMemberInfoRequestDto;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.enums.CreateOrderType;
import cn.freemud.enums.OrderChannelType; import cn.freemud.enums.OrderChannelType;
import cn.freemud.enums.ResponseResult; import cn.freemud.enums.ResponseResult;
import cn.freemud.service.ShoppingCartNewService; import cn.freemud.service.ShoppingCartNewService;
import cn.freemud.service.ShoppingCartToolsService;
import cn.freemud.service.impl.ShoppingCartMallServiceImpl; import cn.freemud.service.impl.ShoppingCartMallServiceImpl;
import cn.freemud.service.impl.ShoppingCartMealServiceImpl; import cn.freemud.service.impl.ShoppingCartMealServiceImpl;
import cn.freemud.service.impl.ShoppingCartNewServiceImpl; import cn.freemud.service.impl.ShoppingCartNewServiceImpl;
...@@ -28,7 +27,6 @@ import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo ...@@ -28,7 +27,6 @@ import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo
import com.freemud.api.assortment.datamanager.enums.IappIdType; import com.freemud.api.assortment.datamanager.enums.IappIdType;
import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager; import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager;
import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare; import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import com.alibaba.fastjson.JSON;
import com.freemud.application.sdk.api.log.ApiAnnotation; import com.freemud.application.sdk.api.log.ApiAnnotation;
import com.freemud.application.sdk.api.log.LogParams; import com.freemud.application.sdk.api.log.LogParams;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -177,4 +175,14 @@ public class ShoppingCartController { ...@@ -177,4 +175,14 @@ public class ShoppingCartController {
return SDKCommonBaseContextWare.getBean(ShoppingCartToolsServiceImpl.class).clear(request); return SDKCommonBaseContextWare.getBean(ShoppingCartToolsServiceImpl.class).clear(request);
} }
/**
* 线下订单查询接口
*/
@ApiAnnotation(logMessage = "/getMemberInfo")
@PostMapping(value = "/getMemberInfo")
public BaseResponse getMemberInfo(@LogParams @RequestBody GetMemberInfoRequestDto request) {
return SDKCommonBaseContextWare.getBean(ShoppingCartNewServiceImpl.class).getMemberInfo(request);
}
} }
package cn.freemud.entities.dto;
import lombok.Data;
import java.util.List;
@Data
public class GetMemberInfoRequestDto {
private String partnerId;
private String mobile;
private String userId;
/**
* 实际支付金额(分)
*/
private Integer actualPayAmount;
/**
* 下单门店号
*/
private String storeId;
/**
* 门店名称
*/
private String storeName;
/**
* 订单原金额(分)
*/
private Integer originalAmount;
/**
* 下单渠道
*/
private Integer orderClient;
/**
* 订单类型
*/
private Integer orderType;
/**
* 支付渠道
*/
private String payChannel;
/**
* 支付渠道名称
*/
private String payChannelName;
/**
* pos编号
*/
private String posCode;
/**
* 操作人
*/
private String operator;
/**
* 是否赠送积分 0是1否
*/
private Integer needBonus;
/**
* 订单商品信息
*/
private List<OrderItemRequest> orderItemList;
@Data
public static class OrderItemRequest {
/**
* 商品序号
*/
private Integer productSeq;
/**
* 平台商品编号
*/
private String productId;
/**
* 商家商品编号
*/
private String thirdProductId;
/**
* 商品名称
*/
private String productName;
/**
* 商品单价(分)
*/
private Integer productPrice;
/**
* 数量
*/
private Integer productQuantity;
/**
* 优惠分摊金额(分)
*/
private Integer productSharePrice;
/**
* 商品单位
*/
private String productWeightUnit;
/**
* 商品重量(克)
*/
private Integer weight;
/**
* 商品规格名称(大杯)
*/
private String productSpecName;
/**
* 商品属性名称(三分糖)
*/
private String productProperty;
/**
* 商家商品分类编号
*/
private String thirdCateCode;
/**
* 是否算积分
*/
private String needBonus;
}
}
package cn.freemud.entities.dto;
import lombok.Data;
import java.util.List;
@Data
public class GetMemberInfoResponseVo {
private String userId;
private Score score;
private List<Coupon> coupons;
private List<Card> cards;
@Data
public static class Score {
/**
* 当前可用积分
*/
private Integer currentScore;
/**
* 积分抵扣金额,单位分
*/
private Integer reduceAmount;
/**
* 抵扣积分
*/
private Integer reduceScore;
}
@Data
public static class Coupon {
/**
* 券名称
*/
private String couponName;
/**
* 券CODE
*/
private String couponCode;
/**
* 券类型 0:商品 券 1:代金券 3 折扣券
*/
private Integer cuoponType;
/**
* 如:2019-10-1 至 2019-10-10 当天有效
*/
private String couponLimit;
/**
* 优惠金额,单位分
*/
private Integer discountAmount;
/**
* 状态:-1:未激活 0:可用(剔除过期) 1:已使用 2:部分使用 3:取消 6:已过期(根据生失效日期) 99:未知(目前暂不支持)
*/
private Integer status;
private List<Product> products;
}
@Data
public static class Product {
/**
* 商户商品编号
*/
private String pid;
/**
* 商品名称
*/
private String name;
/**
* 最大可取商品个数
*/
private Integer number;
/**
* 商品折扣价,以分为单位
*/
private Integer priceAct;
/**
* 原价,以分为单位
*/
private Integer priceOriginal;
/**
* 支付信息
*/
Payment payment;
}
@Data
public static class Payment {
/**
* 线上已付金额,以分为单位
*/
private Integer paid;
/**
* 线下需要收取的金额,以分为单位
*/
private Integer remaining;
}
@Data
public static class Card {
/**
* 实充余额,单位分
*/
private Integer amount;
/**
* 赠送余额,单位分
*/
private Integer vamount;
/**
* 卡规格ID
*/
private String applyId;
/**
* 卡号
*/
private String cardCode;
/**
* 卡名称
*/
private String cardName;
}
}
...@@ -18,9 +18,7 @@ import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant; ...@@ -18,9 +18,7 @@ import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -101,6 +99,10 @@ public interface ShoppingCartNewService { ...@@ -101,6 +99,10 @@ public interface ShoppingCartNewService {
List<CartGoods> updateCartGoodsLegal(CartGoods cartGoods, String userId, ShoppingCartGoodsBaseResponseVo shoppingCartGoodsResponseVo, AddShoppingCartGoodsRequestVo addShoppingCartGoodsRequestVo, List<CartGoods> oldAllCartGoodsList); List<CartGoods> updateCartGoodsLegal(CartGoods cartGoods, String userId, ShoppingCartGoodsBaseResponseVo shoppingCartGoodsResponseVo, AddShoppingCartGoodsRequestVo addShoppingCartGoodsRequestVo, List<CartGoods> oldAllCartGoodsList);
default BaseResponse<GetMemberInfoResponseVo> getMemberInfo(GetMemberInfoRequestDto request){
return null;
};
/** /**
* 商品券校验券是否有效 * 商品券校验券是否有效
* *
......
...@@ -15,8 +15,10 @@ package cn.freemud.service.impl; ...@@ -15,8 +15,10 @@ package cn.freemud.service.impl;
import cn.freemud.adapter.ActivityAdapter; import cn.freemud.adapter.ActivityAdapter;
import cn.freemud.adapter.CouponAdapter; import cn.freemud.adapter.CouponAdapter;
import cn.freemud.adapter.ShoppingCartConvertAdapter; import cn.freemud.adapter.ShoppingCartConvertAdapter;
import cn.freemud.base.constant.Version;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.base.util.DateUtil; import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.CustomerScoreConstant;
import cn.freemud.constant.ResponseCodeConstant; import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.constant.ShoppingCartConstant; import cn.freemud.constant.ShoppingCartConstant;
import cn.freemud.entities.dto.*; import cn.freemud.entities.dto.*;
...@@ -29,6 +31,8 @@ import cn.freemud.entities.dto.openplatform.WeixinProductResponseDto; ...@@ -29,6 +31,8 @@ import cn.freemud.entities.dto.openplatform.WeixinProductResponseDto;
import cn.freemud.entities.dto.shoppingCart.SendPoint; import cn.freemud.entities.dto.shoppingCart.SendPoint;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto; import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.dto.user.GetSessionUserInfoDto; import cn.freemud.entities.dto.user.GetSessionUserInfoDto;
import cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest;
import cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
...@@ -51,20 +55,25 @@ import com.alibaba.fastjson.JSONObject; ...@@ -51,20 +55,25 @@ import com.alibaba.fastjson.JSONObject;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerStoreDeliveryConfig; import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerStoreDeliveryConfig;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerStoreDeliveryConfigManager; import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerStoreDeliveryConfigManager;
import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager; import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager;
import com.freemud.application.sdk.api.constant.FMStatusCode;
import com.freemud.application.sdk.api.log.ApiLog; import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.ErrorLog; import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.membercenter.request.GetMemberByMobileRequest;
import com.freemud.application.sdk.api.membercenter.request.QueryReceiveAddressRequest; import com.freemud.application.sdk.api.membercenter.request.QueryReceiveAddressRequest;
import com.freemud.application.sdk.api.membercenter.request.StatisticalPropertyRequest;
import com.freemud.application.sdk.api.membercenter.request.StatisticalScoreRequest;
import com.freemud.application.sdk.api.membercenter.response.GetMemberByMobileResponse;
import com.freemud.application.sdk.api.membercenter.response.GetSvcInfoByMemberIdResponse;
import com.freemud.application.sdk.api.membercenter.response.QueryReceiveAddressResponse; import com.freemud.application.sdk.api.membercenter.response.QueryReceiveAddressResponse;
import com.freemud.application.sdk.api.membercenter.response.StatisticalScoreResponse;
import com.freemud.application.sdk.api.membercenter.service.MemberCenterService; import com.freemud.application.sdk.api.membercenter.service.MemberCenterService;
import com.freemud.application.sdk.api.membercenter.service.MemberPropertyService;
import com.freemud.application.sdk.api.paymentcenter.client.request.SVCCardAmountRequest; import com.freemud.application.sdk.api.paymentcenter.client.request.SVCCardAmountRequest;
import com.freemud.application.sdk.api.paymentcenter.client.response.SVCCardAmountResponse; import com.freemud.application.sdk.api.paymentcenter.client.response.SVCCardAmountResponse;
import com.freemud.application.sdk.api.paymentcenter.client.service.PaymentNewService; import com.freemud.application.sdk.api.paymentcenter.client.service.PaymentNewService;
import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO; import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO;
import com.freemud.application.sdk.api.promotioncenter.dto.promotion.DiscountDTO;
import com.freemud.application.sdk.api.storecenter.request.QueryDeliveryRequest;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest; import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
import com.freemud.application.sdk.api.storecenter.response.QueryDeliverDetailResponse;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse; import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService; import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant; import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant;
...@@ -73,6 +82,7 @@ import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest; ...@@ -73,6 +82,7 @@ import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest;
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService; import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl; import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.ObjectUtils;
...@@ -172,12 +182,24 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -172,12 +182,24 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
@Autowired @Autowired
private CalculationSharingValidatorService calculationSharingValidatorService; private CalculationSharingValidatorService calculationSharingValidatorService;
@Autowired
private CustomerExtendClient customerExtendClient;
@Autowired
private MemberPropertyService memberPropertyService;
@Autowired
private CustomScoreClient customScoreClient;
@Value("${saas.cart.sharing}") @Value("${saas.cart.sharing}")
private String sharing; private String sharing;
@Autowired @Autowired
private ShoppingCartRelationFactory shoppingCartRelationFactory; private ShoppingCartRelationFactory shoppingCartRelationFactory;
/** /**
* 从微信卡券向购物车中添加商品 * 从微信卡券向购物车中添加商品
*/ */
...@@ -908,6 +930,159 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -908,6 +930,159 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
return ResponseUtil.success(shoppingCartGoodsDto); return ResponseUtil.success(shoppingCartGoodsDto);
} }
@Override
public BaseResponse<GetMemberInfoResponseVo> getMemberInfo(GetMemberInfoRequestDto request) {
GetMemberInfoResponseVo responseData = new GetMemberInfoResponseVo();
/*
GetMemberByMobileRequest getMemberByMobileRequest = new GetMemberByMobileRequest();
getMemberByMobileRequest.setIsHaveChannels("1");
getMemberByMobileRequest.setMobile(request.getMobile());
getMemberByMobileRequest.setPartnerId(request.getPartnerId());
*/
String partnerId = request.getPartnerId();
// com.freemud.application.sdk.api.base.BaseResponse<GetMemberByMobileResponse> memberByMobile = memberCenterService.getMemberByMobile(getMemberByMobileRequest, LogThreadLocal.getTrackingNo());
// String memberId = memberByMobile.getData().getMemberId();
String memberId = request.getUserId();
responseData.setUserId(memberId);
List<GetMemberInfoRequestDto.OrderItemRequest> orderItemList = request.getOrderItemList();
if (CollectionUtils.isEmpty(orderItemList)){
// 优惠券
GetMemberCouponListRequestDto getMemberCouponListRequestDto = new GetMemberCouponListRequestDto(partnerId, memberId);
getMemberCouponListRequestDto.setStatusFlags(Arrays.asList(CouponStatus.STATUS_0.getCode()));
getMemberCouponListRequestDto.setPageNum(1);
getMemberCouponListRequestDto.setPageSize(Integer.MAX_VALUE);
GetMemberCouponListResponseDto.Result result = getMemberCouponList(getMemberCouponListRequestDto);
List<GetMemberCouponListResponseDto.Result.MemberCoupon> memberCoupons = result.getMemberCoupons();
Date nowDate = new Date();
memberCoupons = memberCoupons.stream().filter(item -> filterExpireCoupon(nowDate, item.getEndTime())).collect(Collectors.toList());//过滤掉过期的券
List<GetMemberInfoResponseVo.Coupon> coupons = memberCoupons.stream().map(each -> convert2MemberCoupon(each)).collect(toList());
responseData.setCoupons(coupons);
// 积分
GetMemberInfoResponseVo.Score score = new GetMemberInfoResponseVo.Score();
StatisticalScoreRequest statisticalScoreRequest = new StatisticalScoreRequest();
statisticalScoreRequest.setMemberId(memberId);
statisticalScoreRequest.setPartnerId(partnerId);
com.freemud.application.sdk.api.base.BaseResponse<StatisticalScoreResponse> statisticalScoreResponseBaseResponse = memberPropertyService.statisticalScore(statisticalScoreRequest, LogThreadLocal.getTrackingNo());
StatisticalScoreResponse statisticalScoreResponse = statisticalScoreResponseBaseResponse.getData();
score.setCurrentScore(statisticalScoreResponse.getCurrentScore());
responseData.setScore(score);
} else {
// 优惠券
List<CartGoods> cartGoodsList = orderItemList.stream().map(each -> convert2ShopCartGoods(each)).collect(toList());
ActivityClassifyCouponBean activityClassifyCouponBean = couponService.availableCoupon(cartGoodsList, partnerId
, memberId, request.getStoreId(), "", false, request.getOrderType(), 0, "");
List<GetMemberInfoResponseVo.Coupon> coupons = activityClassifyCouponBean.getUsableCoupons().stream().map(each -> convert2MemberCoupon(each)).collect(toList());
responseData.setCoupons(coupons);
// 积分
GetUserScoreUseDetailRequest scoreRequest = new GetUserScoreUseDetailRequest();
scoreRequest.setMemberId(memberId);
scoreRequest.setPaidAmount(request.getActualPayAmount());
scoreRequest.setPartnerId(partnerId);
GetUserScoreUserDetailResponse userScoreUseDetail = customScoreClient.getUserScoreUseDetail(scoreRequest);
GetUserScoreUserDetailResponse.UserScoreDetailVo result = userScoreUseDetail.getResult();
GetMemberInfoResponseVo.Score score = new GetMemberInfoResponseVo.Score();
score.setCurrentScore(result.getCurrentScore());
score.setReduceAmount(result.getReduceAmount());
score.setReduceScore(result.getUseScore());
responseData.setScore(score);
}
// 储值卡
StatisticalPropertyRequest getMemberCardRequest = new StatisticalPropertyRequest();
getMemberCardRequest.setPartnerId(partnerId);
getMemberCardRequest.setMemberId(memberId);
com.freemud.application.sdk.api.base.BaseResponse<List<GetSvcInfoByMemberIdResponse>> svcInfoByMemberId = memberPropertyService.getSvcInfoByMemberId(getMemberCardRequest, LogThreadLocal.getTrackingNo());
List<GetSvcInfoByMemberIdResponse> memberCardResponses = svcInfoByMemberId.getData();
if(CollectionUtils.isNotEmpty(memberCardResponses)) {
// 查询储值卡的余额
List<String> cardCodes = memberCardResponses.stream().map(GetSvcInfoByMemberIdResponse::getCardCode).collect(Collectors.toList());
SVCCardAmountRequest svcCardAmountRequest = new SVCCardAmountRequest();
svcCardAmountRequest.setCardCodes(cardCodes);
svcCardAmountRequest.setPartnerId(partnerId);
com.freemud.application.sdk.api.base.BaseResponse<SVCCardAmountResponse> svcCardAmountResponseBaseResponse = paymentNewService.querySVCCardAmount(svcCardAmountRequest, LogThreadLocal.getTrackingNo());
List<SVCCardAmountResponse.CardSimpleInfo> cardSimpleInfos = svcCardAmountResponseBaseResponse.getData().getData().getCardSimpleInfos();
List<GetMemberInfoResponseVo.Card> cards = cardSimpleInfos.stream().map(each -> convert2MemberSvcCard(each)).collect(toList());
responseData.setCards(cards);
}
return ResponseUtil.success(responseData);
}
private boolean filterExpireCoupon(Date now, String endTime){
if (StringUtils.isBlank(endTime)){
return true;
}
Date date = DateUtil.convert2Date(endTime, DateUtil.FORMAT_yyyyMMdd_date);
return now.before(date);
}
private GetMemberInfoResponseVo.Coupon convert2MemberCoupon(GetMemberCouponListResponseDto.Result.MemberCoupon each){
GetMemberInfoResponseVo.Coupon coupon = new GetMemberInfoResponseVo.Coupon();
coupon.setStatus(each.getStatus());
if (each.getCouponType() == 0){
coupon.setProducts(null); // TODO
} else {
coupon.setProducts(null);
}
coupon.setCuoponType(each.getCouponType());
coupon.setCouponName(each.getCouponName());
String limit = each.getStartTime() + "至" + each.getEndTime() + "当天有效";
coupon.setCouponLimit(limit);
coupon.setCouponCode(each.getCouponCode());
return coupon;
}
private GetMemberInfoResponseVo.Coupon convert2MemberCoupon(ActivityCouponBean each){
GetMemberInfoResponseVo.Coupon coupon = new GetMemberInfoResponseVo.Coupon();
coupon.setStatus(0);
if (each.getCouponType() == 0){
coupon.setProducts(null); // TODO
} else {
coupon.setProducts(null);
}
coupon.setCuoponType(each.getCouponType());
coupon.setCouponName(each.getCouponName());
coupon.setDiscountAmount(Integer.valueOf(each.getDiscountAmount()));
coupon.setCouponLimit(null);
coupon.setCouponCode(each.getCouponCode());
return coupon;
}
private GetMemberInfoResponseVo.Card convert2MemberSvcCard(SVCCardAmountResponse.CardSimpleInfo each){
GetMemberInfoResponseVo.Card card = new GetMemberInfoResponseVo.Card();
card.setAmount(each.getAmount());
card.setApplyId(each.getApplyId());
card.setCardCode(each.getCardCode());
card.setCardName(each.getCardName());
card.setVamount(each.getVamount());
return card;
}
private CartGoods convert2ShopCartGoods(GetMemberInfoRequestDto.OrderItemRequest each){
CartGoods card = new CartGoods();
int saleValue = (each.getProductPrice() * each.getProductQuantity() - each.getProductSharePrice()) / each.getProductQuantity();
card.setAmount(Long.valueOf(saleValue));
card.setOriginalPrice(each.getProductPrice() == null ? 0L : Long.valueOf(each.getProductPrice()));
card.setQty(each.getProductQuantity());
card.setSkuId(each.getProductId());
card.setSpuId(each.getProductId());
return card;
}
private void packgeAdditional(ShoppingCartInfoRequestVo shoppingCartInfoRequestVo, CreateOrderVo.PremiumExchangeActivity premiumExchangeActivity) { private void packgeAdditional(ShoppingCartInfoRequestVo shoppingCartInfoRequestVo, CreateOrderVo.PremiumExchangeActivity premiumExchangeActivity) {
ArrayList<ShoppingCartInfoRequestVo.SendGoods> senGoods = new ArrayList<>(); ArrayList<ShoppingCartInfoRequestVo.SendGoods> senGoods = new ArrayList<>();
...@@ -2235,4 +2410,23 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -2235,4 +2410,23 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
return oldCoupons; return oldCoupons;
} }
/**
* 获取会员服务的优惠券列表
*
* @param getMemberCouponListRequestDto
* @return
*/
public GetMemberCouponListResponseDto.Result getMemberCouponList(GetMemberCouponListRequestDto getMemberCouponListRequestDto) {
GetMemberCouponListResponseDto getMemberCouponListResponseDto = null;
try {
getMemberCouponListResponseDto = customerExtendClient.getMemberCouponListRequestDto(getMemberCouponListRequestDto);
} catch (Exception ex) {
log.error("会员服务优惠券接口调用失败", ex);
}
if (getMemberCouponListResponseDto != null && Objects.equals(getMemberCouponListResponseDto.getCode(), ResponseResult.SUCCESS.getCode())) {
return getMemberCouponListResponseDto.getData();
}
return null;
}
} }
...@@ -133,7 +133,7 @@ public class CouponServiceTest { ...@@ -133,7 +133,7 @@ public class CouponServiceTest {
List<CartGoods> cartGoods = Lists.newArrayList(); List<CartGoods> cartGoods = Lists.newArrayList();
CartGoods cartGood = new CartGoods(); CartGoods cartGood = new CartGoods();
cartGoods.add(cartGood); cartGoods.add(cartGood);
ActivityClassifyCouponBean activityClassifyCouponBean = couponService.availableCoupon(cartGoods, "1864", "122424124", "1011", "88123124", true, 1, 1); ActivityClassifyCouponBean activityClassifyCouponBean = couponService.availableCoupon(cartGoods, "1864", "122424124", "1011", "88123124", true, 1, 1, "");
assertTrue(activityClassifyCouponBean.getCouponNum() >= 1); assertTrue(activityClassifyCouponBean.getCouponNum() >= 1);
} }
......
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