|
@@ -2,9 +2,11 @@ package com.txz.mall.business.impl;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
+import com.txz.cif.dto.EarningsDTO;
|
|
|
import com.txz.cif.dto.UserDTO;
|
|
|
import com.txz.mall.business.PinkServiceBusiness;
|
|
|
import com.txz.mall.core.ServiceException;
|
|
|
+import com.txz.mall.dubbo.client.CifRedEnvelopeDubboServiceClient;
|
|
|
import com.txz.mall.dubbo.client.CifUserDubboServiceClient;
|
|
|
import com.txz.mall.enums.PinkOrderStatusEnum;
|
|
|
import com.txz.mall.enums.StorePinkStatusEnum;
|
|
@@ -41,7 +43,7 @@ public class PinkServiceBusinessImpl implements PinkServiceBusiness {
|
|
|
private final StorePinkService storePinkService;
|
|
|
private final StoreCombinationService storeCombinationService;
|
|
|
private final CifUserDubboServiceClient cifUserDubboServiceClient;
|
|
|
-
|
|
|
+ private final CifRedEnvelopeDubboServiceClient cifRedEnvelopeDubboServiceClient;
|
|
|
@Override
|
|
|
public List<StorePinkDetailVO> getAdminList(Long pinkId,String terminal) {
|
|
|
|
|
@@ -77,17 +79,29 @@ public class PinkServiceBusinessImpl implements PinkServiceBusiness {
|
|
|
|
|
|
Map<Long, UserDTO> userDTOMap = new HashMap<>();
|
|
|
Map<Long, StoreOrder> storeOrderMap = new HashMap<>();
|
|
|
-
|
|
|
+ //收益
|
|
|
+ Map<String, EarningsDTO> earningsDTOMap = new HashMap<>();
|
|
|
|
|
|
if (!CollectionUtils.isEmpty(pinkList)) {
|
|
|
|
|
|
+
|
|
|
+
|
|
|
List<String> orderCodeList = pinkList.stream().map(StorePink::getOrderId).collect(Collectors.toList());
|
|
|
+
|
|
|
+
|
|
|
Condition conditionOrder = new Condition(StoreOrder.class);
|
|
|
Example.Criteria criteriaOrder = conditionOrder.createCriteria();
|
|
|
criteriaOrder.andEqualTo("isDelete", 0);
|
|
|
criteriaOrder.andIn("orderId", orderCodeList);
|
|
|
List<StoreOrder> storeOrderList = storeOrderService.findByCondition(conditionOrder);
|
|
|
|
|
|
+ //查询订单收益
|
|
|
+ List<EarningsDTO> earningsByOrders = cifRedEnvelopeDubboServiceClient.getEarningsByOrders(orderCodeList);
|
|
|
+ if(!CollectionUtils.isEmpty(earningsByOrders)){
|
|
|
+ earningsDTOMap = earningsByOrders.stream().filter(a->!ObjectUtils.isEmpty(a)).collect(Collectors.toMap(EarningsDTO::getOrderNo, a -> a, (b, c) -> c));
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
if(!CollectionUtils.isEmpty(storeOrderList)){
|
|
|
storeOrderMap = storeOrderList.stream().collect(Collectors.toMap(StoreOrder::getId, a -> a, (b, c) -> c));
|
|
|
}
|
|
@@ -106,14 +120,20 @@ public class PinkServiceBusinessImpl implements PinkServiceBusiness {
|
|
|
storePinkDetailVO.setAvatar(userDTO.getHeadPic());
|
|
|
if("pc".equals(terminal)) {
|
|
|
StoreOrder storeOrder = storeOrderMap.get(pink.getOrderIdKey());
|
|
|
+
|
|
|
+ EarningsDTO earningsDTO = earningsDTOMap.get(pink.getOrderId());
|
|
|
+
|
|
|
if(!ObjectUtils.isEmpty(storeOrder)){
|
|
|
storePinkDetailVO.setOrderId(storeOrder.getOrderId()); //订单id
|
|
|
storePinkDetailVO.setPayTime(storeOrder.getPayTime()); //支付时间
|
|
|
- storePinkDetailVO.setCommission(BigDecimal.TEN);//佣金
|
|
|
+
|
|
|
storePinkDetailVO.setCreateTime(storeOrder.getCreateTime());//下单时间
|
|
|
}
|
|
|
- storePinkDetailVO.setUserPhone(userDTO.getPhoneNo());
|
|
|
+ if(!ObjectUtils.isEmpty(earningsDTO)){
|
|
|
+ storePinkDetailVO.setCommission(earningsDTO.getEarnings());//返利
|
|
|
+ }
|
|
|
|
|
|
+ storePinkDetailVO.setUserPhone(userDTO.getPhoneNo());
|
|
|
|
|
|
}
|
|
|
storePinkDetailVO.setNickname(userDTO.getName());
|