|
|
@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.date.DateField;
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.cyksj.common.exception.BusinessRuntimeException;
|
|
|
import com.cyksj.mapper.GoodsDonSkuMapper;
|
|
|
@@ -12,8 +13,10 @@ import com.cyksj.mapper.OrderDonMapper;
|
|
|
import com.cyksj.mapper.UserBenefitsComboRelationRecordMapper;
|
|
|
import com.cyksj.mapper.channel.UserPayEquipmentAvailableBenefitsMapper;
|
|
|
import com.cyksj.mapper.channel.UserPayEquipmentReceiveBenefitsRecordMapper;
|
|
|
+import com.cyksj.mapper.mirrorshop.UserMirrorShopMapper;
|
|
|
import com.cyksj.model.entity.*;
|
|
|
import com.cyksj.model.manage.views.GroupsRelationView;
|
|
|
+import com.cyksj.model.views.RenewalView;
|
|
|
import com.cyksj.model.views.UserAvailableGoodsTicketView;
|
|
|
import com.cyksj.service.exchange.ExchangeCodeService;
|
|
|
import com.cyksj.service.order.UserRealOrderBenefitsService;
|
|
|
@@ -21,6 +24,7 @@ import com.cyksj.service.relation.GroupRelationClearService;
|
|
|
import com.cyksj.service.user.UserBindRelationService;
|
|
|
import com.ejlchina.searcher.BeanSearcher;
|
|
|
import com.ejlchina.searcher.param.Operator;
|
|
|
+import com.ejlchina.searcher.util.MapBuilder;
|
|
|
import com.ejlchina.searcher.util.MapUtils;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
@@ -63,6 +67,8 @@ public class UserRealOrderBenefitsImpl implements UserRealOrderBenefitsService {
|
|
|
|
|
|
private final UserBindRelationService userBindRelationService;
|
|
|
|
|
|
+ private final UserMirrorShopMapper userMirrorShopMapper;
|
|
|
+
|
|
|
@Override
|
|
|
public Boolean getPayRealGoodsBenefits(Long userId, Long orderId, Long yhsId, List<GoodsDonSku> skuIds) {
|
|
|
Boolean isReceivedAll = true;
|
|
|
@@ -196,17 +202,28 @@ public class UserRealOrderBenefitsImpl implements UserRealOrderBenefitsService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<UserAvailableGoodsTicketView> getAvailableBenefitsTickets(Long userId, Long orderId,Long yhsId) {
|
|
|
+ public List<UserAvailableGoodsTicketView> getAvailableBenefitsTickets(Long userId, Long orderId, String customId, Integer cmt) {
|
|
|
List<Long> userIdList = userBindRelationService.getRelationUserIdList(userId, null);
|
|
|
List<UserAvailableGoodsTicketView> ticketViews = beanSearcher.searchAll(UserAvailableGoodsTicketView.class, MapUtils.builder()
|
|
|
.field(UserAvailableGoodsTicketView::getUserId, userIdList).op(Operator.InList)
|
|
|
.field(UserAvailableGoodsTicketView::getDeleted, true)
|
|
|
.field(UserAvailableGoodsTicketView::getRealOrderId, orderId)
|
|
|
.build());
|
|
|
+ MapBuilder builder = MapUtils.builder();
|
|
|
+ if (cmt != null && cmt == 2 && StrUtil.isNotBlank(customId)) {
|
|
|
+ UserMirrorShop userMirrorShop = userMirrorShopMapper.selectOne(Wrappers.lambdaQuery(UserMirrorShop.class)
|
|
|
+ .eq(UserMirrorShop::getCustomId, customId)
|
|
|
+ .last("limit 1"));
|
|
|
+ if (userMirrorShop != null) {
|
|
|
+ builder.field(RenewalView::getCmt, cmt).field(RenewalView::getYhsId, userMirrorShop.getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (cmt == null || cmt != 2) {
|
|
|
+ builder.field(RenewalView::getCmt, 2).op(Operator.NotEqual);
|
|
|
+ }
|
|
|
ticketViews.forEach(ticket -> {
|
|
|
- List<GroupsRelationView> relationViewList = beanSearcher.searchAll(GroupsRelationView.class, MapUtils.builder()
|
|
|
+ List<GroupsRelationView> relationViewList = beanSearcher.searchAll(GroupsRelationView.class, builder
|
|
|
.field(GroupsRelationView::getUserId, userIdList).op(Operator.InList)
|
|
|
- .field(GroupsRelationView::getYhsId, yhsId)
|
|
|
.field(GroupsRelationView::getGoodsId, ticket.getGoodsId())
|
|
|
.field(GroupsRelationView::getStatus, GroupsRelation.Status.validity.name())
|
|
|
.field(GroupsRelationView::getExpiryTime).op(Operator.NotNull)
|