Commit 8ddc1a88 by chongfu.liang

Merge branch 'feature/1.9.27-小助手更改调用逻辑' into develop

# Conflicts:
#	assortment-ordercenter-sdk/pom.xml
#	assortment-ordercenter-sdk/readme.md
#	assortment-shoppingcart-sdk/pom.xml
#	assortment-shoppingcart-sdk/readme.md
#	order-application-service/pom.xml
#	order-management/pom.xml
#	ordercenter-sdk/pom.xml
#	ordercenter-sdk/readme.md
#	shopping-cart-application-service/pom.xml
parents ccffbc7f f8c4f701
...@@ -181,4 +181,7 @@ public class InterfaceAddressConstant { ...@@ -181,4 +181,7 @@ public class InterfaceAddressConstant {
* 新增结算信息 * 新增结算信息
*/ */
public static final String CREATE_SETTLEMENT="order/v2/createSettlement"; public static final String CREATE_SETTLEMENT="order/v2/createSettlement";
//小助手营业额统计
public static final String QUERY_ORDER_STATISTICS = "order/v2/queryOrderStatistics";
} }
package com.freemud.application.sdk.api.ordercenter.response.orderInfo;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class OrderStatisticsResp {
private Long todayOrderCount;
private BigDecimal todayTotalAmount;
private BigDecimal yesterdayTotalAmount;
private Long yesterdayOrderCount;
private BigDecimal todayEachOrderPrice;
private BigDecimal yesterdayEachOrderPrice;
}
...@@ -13,6 +13,7 @@ import com.freemud.application.sdk.api.ordercenter.response.AfterSalesListResp; ...@@ -13,6 +13,7 @@ import com.freemud.application.sdk.api.ordercenter.response.AfterSalesListResp;
import com.freemud.application.sdk.api.ordercenter.response.OrderItemStatisticsResponse; import com.freemud.application.sdk.api.ordercenter.response.OrderItemStatisticsResponse;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.AfterSalesOrderResp; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.AfterSalesOrderResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderStatisticsResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.QueryByCodeResponse; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.QueryByCodeResponse;
import com.freemud.application.sdk.api.util.RequestThirdPartyUtils; import com.freemud.application.sdk.api.util.RequestThirdPartyUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -141,6 +142,18 @@ public class OrderDownLoadSdkService { ...@@ -141,6 +142,18 @@ public class OrderDownLoadSdkService {
return baseDownLoadResponse; return baseDownLoadResponse;
} }
/**
* 小助手营业额统计查询
*/
public BaseDownLoadResponse<OrderStatisticsResp> queryOrderStatistics(OrderConditionsReq request, String trackingNo) {
long begin = System.currentTimeMillis();
BaseDownLoadResponse<OrderStatisticsResp> responseDTO = RequestThirdPartyUtils.httpJsonReqComplexDownLoad(restTemplate, InterfaceAddressConstant.QUERY_ORDER_STATISTICS,
createBaseRequest(request, trackingNo), new ParameterizedTypeReference<BaseDownLoadResponse<OrderStatisticsResp>>() {
});
ThirdPartyLog.infoConvertJson(begin, System.currentTimeMillis(), InterfaceAddressConstant.QUERY_ORDER_BY_CONDITIONS, request, responseMini(responseDTO));
return responseHandle(responseDTO);
}
private <T> BaseDownLoadResponse<T> responseHandle(BaseDownLoadResponse<T> responseDTO) { private <T> BaseDownLoadResponse<T> responseHandle(BaseDownLoadResponse<T> responseDTO) {
BaseDownLoadResponse baseDownLoadResponse = new BaseDownLoadResponse(); BaseDownLoadResponse baseDownLoadResponse = new BaseDownLoadResponse();
if (responseDTO == null) { if (responseDTO == null) {
...@@ -171,4 +184,7 @@ public class OrderDownLoadSdkService { ...@@ -171,4 +184,7 @@ public class OrderDownLoadSdkService {
request.setTrackingNo(trackingNo); request.setTrackingNo(trackingNo);
return request; return request;
} }
} }
...@@ -48,6 +48,8 @@ public class ShoppingCartConvertAdapter { ...@@ -48,6 +48,8 @@ public class ShoppingCartConvertAdapter {
cartGoodsDetailDto.setSkuName(product.getSkuName()); cartGoodsDetailDto.setSkuName(product.getSkuName());
cartGoodsDetailDto.setPicture(getProductsVo != null ? getProductsVo.getSpuPicture() : ""); cartGoodsDetailDto.setPicture(getProductsVo != null ? getProductsVo.getSpuPicture() : "");
cartGoodsDetailDto.setActivityType(ActivityTypeEnum.TYPE_81.getCode()); cartGoodsDetailDto.setActivityType(ActivityTypeEnum.TYPE_81.getCode());
cartGoodsDetailDto.setClassificationId(getProductsVo.getCategory());
cartGoodsDetailDto.setClassificationName(getProductsVo.getCategoryName());
List<ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra> cartGoodsExtraList = new ArrayList<>(); List<ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra> cartGoodsExtraList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(product.getAttributes())) { if (CollectionUtils.isNotEmpty(product.getAttributes())) {
for (CreateOrderVo.PremiumExchangeActivity.Product.Attribute attribute : product.getAttributes()) { for (CreateOrderVo.PremiumExchangeActivity.Product.Attribute attribute : product.getAttributes()) {
...@@ -323,6 +325,8 @@ public class ShoppingCartConvertAdapter { ...@@ -323,6 +325,8 @@ public class ShoppingCartConvertAdapter {
cartGoods.setCreateTimeMili(cartGood.getCreateTimeMili()); cartGoods.setCreateTimeMili(cartGood.getCreateTimeMili());
cartGoods.setSkuName(cartGood.getSkuName()); cartGoods.setSkuName(cartGood.getSkuName());
cartGoods.setSkuName(cartGood.getSkuName()); cartGoods.setSkuName(cartGood.getSkuName());
cartGood.setClassificationId(cartGood.getClassificationId());
cartGood.setClassificationName(cartGood.getClassificationName());
cartGoods.setActivityType(ActivityTypeEnum.TYPE_61.getCode()); cartGoods.setActivityType(ActivityTypeEnum.TYPE_61.getCode());
return cartGoods; return cartGoods;
} }
......
...@@ -88,6 +88,8 @@ public class BuyAndGiftsPromotionService implements IPromotionService { ...@@ -88,6 +88,8 @@ public class BuyAndGiftsPromotionService implements IPromotionService {
cartGoods.setUnit(product.getUnit()); cartGoods.setUnit(product.getUnit());
cartGoods.setWeight(product.getWeight()); cartGoods.setWeight(product.getWeight());
cartGoods.setQty(sendGoods.getSendNumber()); cartGoods.setQty(sendGoods.getSendNumber());
cartGoods.setClassificationId(product.getCategory());
cartGoods.setClassificationName(product.getCategoryName());
// nodeId标识activeCode,用于计算均摊时每个商品在每个活动上均摊金额 // nodeId标识activeCode,用于计算均摊时每个商品在每个活动上均摊金额
cartGoods.setNodeId(sendActivity.getActivityCode()); cartGoods.setNodeId(sendActivity.getActivityCode());
cartGoodsList.add(cartGoods); cartGoodsList.add(cartGoods);
......
...@@ -221,6 +221,8 @@ public class BuySendPromotionService implements IPromotionService { ...@@ -221,6 +221,8 @@ public class BuySendPromotionService implements IPromotionService {
} }
ActivityCalculationDiscountResponseDto.CalculationDiscountResult.SendActivity.SendGoods sendGoods = sendGoodsMap.get(cartGood.getSpuId()); ActivityCalculationDiscountResponseDto.CalculationDiscountResult.SendActivity.SendGoods sendGoods = sendGoodsMap.get(cartGood.getSpuId());
CartGoods cartGoods = shoppingCartConvertAdapter.convent2CartGoods(cartGood, sendGoods.getNowPrice()); CartGoods cartGoods = shoppingCartConvertAdapter.convent2CartGoods(cartGood, sendGoods.getNowPrice());
cartGoods.setClassificationId(cartGood.getClassificationId());
cartGoods.setClassificationName(cartGood.getClassificationName());
cartGoods.setQty(sendGoods.getSendNumber() > 0 ? sendGoods.getSendNumber() : SEND_NUMBER); cartGoods.setQty(sendGoods.getSendNumber() > 0 ? sendGoods.getSendNumber() : SEND_NUMBER);
newCartGoodsList.add(cartGoods); newCartGoodsList.add(cartGoods);
......
...@@ -9,16 +9,19 @@ import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto; ...@@ -9,16 +9,19 @@ import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest; import cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest;
import cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse; import cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.enums.ActivityTypeEnum;
import cn.freemud.service.IPromotionService; import cn.freemud.service.IPromotionService;
import cn.freemud.service.thirdparty.CustomScoreClient; import cn.freemud.service.thirdparty.CustomScoreClient;
import cn.freemud.utils.LogUtil; import cn.freemud.utils.LogUtil;
import com.freemud.application.sdk.api.constant.FMStatusCode; import com.freemud.application.sdk.api.constant.FMStatusCode;
import com.freemud.application.sdk.api.log.ErrorLog; import com.freemud.application.sdk.api.log.ErrorLog;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
...@@ -66,15 +69,28 @@ public class CustomerScoreService implements IPromotionService { ...@@ -66,15 +69,28 @@ public class CustomerScoreService implements IPromotionService {
customerScoreVo.setReduceAmount(getValue(userScoreUseDetail.getResult().getReduceAmount())); customerScoreVo.setReduceAmount(getValue(userScoreUseDetail.getResult().getReduceAmount()));
customerScoreVo.setReducePriceLimit(getValue(userScoreUseDetail.getResult().getReducePriceLimit())); customerScoreVo.setReducePriceLimit(getValue(userScoreUseDetail.getResult().getReducePriceLimit()));
customerScoreVo.setOverlayOffers(userScoreUseDetail.getResult().getOverlayOffers()); customerScoreVo.setOverlayOffers(userScoreUseDetail.getResult().getOverlayOffers());
customerScoreVo.setScoreReduceState(getValue(userScoreUseDetail.getResult().getScoreState()));
// 是否可优惠同享{0所有订单均可抵扣,1仅限原价订单才可抵扣(享受了促销活动、或使用了优惠券,不能进行积分抵扣 // 是否可优惠同享{0所有订单均可抵扣,1仅限原价订单才可抵扣(享受了促销活动、或使用了优惠券,不能进行积分抵扣
if (getValue(userScoreUseDetail.getResult().getOverlayOffers()) == 0) { if (getValue(userScoreUseDetail.getResult().getOverlayOffers()) == 0) {
customerScoreVo.setScoreReduceState(getValue(userScoreUseDetail.getResult().getScoreState())); customerScoreVo.setScoreReduceState(getValue(userScoreUseDetail.getResult().getScoreState()));
} else { } else {
if (StringUtils.isNotBlank(shoppingCartInfoRequestVo.getCouponCode()) || (calculationDiscountResult != null && calculationDiscountResult.getTotalDiscountAmount().intValue() > 0)) { if (StringUtils.isNotBlank(shoppingCartInfoRequestVo.getCouponCode()) || (calculationDiscountResult != null && calculationDiscountResult.getTotalDiscountAmount().intValue() > 0)
//积分抵扣开关禁用 || (calculationDiscountResult != null && !CollectionUtils.isEmpty(calculationDiscountResult.getDiscounts()))) {
customerScoreVo.setScoreReduceState(5); int type81 = 0;
userScoreUseDetail.getResult().setScoreState(5); for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount discount : calculationDiscountResult.getDiscounts()) {
discountAmount = 0; if (ActivityTypeEnum.TYPE_81.getCode().equals(discount.getType())) {
type81 = 1;
break;
}
}
//积分抵扣开关禁用 过滤换购
if (type81 == 0 || (type81 == 1 && !CollectionUtils.isEmpty(shoppingCartInfoRequestVo.getSendGoods()))
|| (type81 == 1 && calculationDiscountResult.getDiscounts().size() > 1)) {
customerScoreVo.setScoreReduceState(5);
userScoreUseDetail.getResult().setScoreState(5);
discountAmount = 0;
customerScoreVo.setReduceAmount(0);
}
} }
} }
......
...@@ -1561,9 +1561,10 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -1561,9 +1561,10 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
if (CollectionUtils.isEmpty(allCartGoodsList)) { if (CollectionUtils.isEmpty(allCartGoodsList)) {
qty = cartGoods.getQty(); qty = cartGoods.getQty();
} else { } else {
qty = cartGoods.getQty();
for (CartGoods goods : allCartGoodsList) { for (CartGoods goods : allCartGoodsList) {
if (goods.getSkuId().equals(cartGoods.getSkuId()) && goods.getSpuId().equals(cartGoods.getSpuId())) { if (goods.getSkuId().equals(cartGoods.getSkuId()) && goods.getSpuId().equals(cartGoods.getSpuId())) {
qty = qty + cartGoods.getQty(); qty += goods.getQty();
} }
} }
} }
......
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