Commit b85656a4 by chongfu.liang

资产查询接口

parent a282a450
...@@ -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.*;
...@@ -53,14 +55,20 @@ import com.alibaba.fastjson.JSONObject; ...@@ -53,14 +55,20 @@ 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.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.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;
...@@ -178,6 +186,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -178,6 +186,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
private CustomerExtendClient customerExtendClient; private CustomerExtendClient customerExtendClient;
@Autowired @Autowired
private MemberPropertyService memberPropertyService;
@Autowired
private CustomScoreClient customScoreClient; private CustomScoreClient customScoreClient;
@Value("${saas.cart.sharing}") @Value("${saas.cart.sharing}")
...@@ -948,27 +959,61 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -948,27 +959,61 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
responseData.setCoupons(coupons); responseData.setCoupons(coupons);
// 积分 // 积分
GetUserScoreUseDetailRequest scoreRequest = new GetUserScoreUseDetailRequest();
scoreRequest.setMemberId(memberId);
scoreRequest.setPaidAmount(0);
scoreRequest.setPartnerId(partnerId);
GetUserScoreUserDetailResponse userScoreUseDetail = customScoreClient.getUserScoreUseDetail(scoreRequest);
GetUserScoreUserDetailResponse.UserScoreDetailVo scoreDetailVo = userScoreUseDetail.getResult();
GetMemberInfoResponseVo.Score score = new GetMemberInfoResponseVo.Score(); GetMemberInfoResponseVo.Score score = new GetMemberInfoResponseVo.Score();
score.setCurrentScore(scoreDetailVo.getCurrentScore()); StatisticalScoreRequest statisticalScoreRequest = new StatisticalScoreRequest();
score.setTotalScore(scoreDetailVo.get); statisticalScoreRequest.setMemberId(memberId);
score.setUsedScore(); statisticalScoreRequest.setPartnerId(partnerId);
com.freemud.application.sdk.api.base.BaseResponse<StatisticalScoreResponse> statisticalScoreResponseBaseResponse = memberPropertyService.statisticalScore(statisticalScoreRequest, LogThreadLocal.getTrackingNo());
responseData.setScore(); StatisticalScoreResponse statisticalScoreResponse = statisticalScoreResponseBaseResponse.getData();
score.setCurrentScore(statisticalScoreResponse.getCurrentScore());
score.setTotalScore(statisticalScoreResponse.getTotalScore());
score.setUsedScore(statisticalScoreResponse.getUsedScore());
responseData.setScore(score);
} else { } 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();
return null; GetMemberInfoResponseVo.Score score = new GetMemberInfoResponseVo.Score();
score.setUsedScore(result.getUseScore());
score.setCurrentScore(result.getCurrentScore());
score.setTotalScore(result.getUseScore() + result.getCurrentScore());
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){ private boolean filterExpireCoupon(Date now, String endTime){
...@@ -995,6 +1040,44 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -995,6 +1040,44 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
return coupon; 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.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.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<>();
......
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