Pu Zhibing
3 天以前 af6456c60aa0d3cc931d3c85f652fa7e47d003e3
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
@@ -1,27 +1,40 @@
package com.ruoyi.member.service.impl.birthday;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.member.domain.dto.MerBirthdayEditDto;
import com.ruoyi.member.domain.dto.MgtBirthdayEditDto;
import com.ruoyi.member.domain.dto.MgtBirthdayGetDto;
import com.ruoyi.member.domain.dto.MgtBirthdayGiftDto;
import com.ruoyi.member.domain.pojo.birthday.BirthdayCard;
import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
import com.ruoyi.member.domain.vo.MerBirthdayEditInfoVo;
import com.ruoyi.member.domain.vo.MerBirthdayGetVo;
import com.ruoyi.member.domain.vo.MgtBirthdayGetVo;
import com.ruoyi.member.domain.vo.MgtBirthdayGiftVo;
import com.ruoyi.member.domain.vo.*;
import com.ruoyi.member.mapper.birthday.BirthdayCardMapper;
import com.ruoyi.member.service.birthday.BirthdayCardService;
import com.ruoyi.member.service.birthday.BirthdayGiftService;
import com.ruoyi.member.service.member.MemberGiftRecordService;
import com.ruoyi.member.service.member.MemberService;
import com.ruoyi.system.api.constant.AppErrorConstant;
import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
import com.ruoyi.system.api.domain.poji.member.BirthdayCard;
import com.ruoyi.system.api.domain.poji.member.Member;
import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord;
import com.ruoyi.system.api.domain.poji.shop.Shop;
import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo;
import com.ruoyi.system.api.service.RemoteShopService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.StringJoiner;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
 * <p>
@@ -39,6 +52,17 @@
    @Resource
    private BirthdayGiftService birthdayGiftService;
    @Resource
    private RemoteShopService remoteShopService;
    @Resource
    private MemberGiftRecordService memberGiftRecordService;
    @Resource
    private MemberService memberService;
    /**
     * @description  平台编辑生日卡
@@ -62,7 +86,7 @@
        }
        // 获取查询结果
        BirthdayCard birthdayCardOld = this.getOne(queryWrapper,false);
        // 如果查询结果不为空,则进行更新操作
        // 如果查询结果不为空,则进行更新为历史记录
        if (birthdayCardOld!=null) {
            // 设置删除标志为1
            birthdayCardOld.setDelFlag(1);
@@ -74,7 +98,11 @@
        // 创建新的生日卡
        BirthdayCard birthdayCard = new BirthdayCard();
        birthdayCard.setDelFlag(0);
        birthdayCard.setShopId(0L);
        if(mgtBirthdayEditDto.getShopId()!=null){
            birthdayCard.setShopId(mgtBirthdayEditDto.getShopId());
        }else{
            birthdayCard.setShopId(0L);
        }
        birthdayCard.setCardStatus(mgtBirthdayEditDto.getCardStatus());
        // 根据卡状态设置开启或关闭时间
        if(mgtBirthdayEditDto.getCardStatus()==1){
@@ -84,16 +112,16 @@
        }
        // 设置创建时间
        birthdayCard.setCreateTime(new Date());
        // 如果店铺ID不为空,则进行相关设置
        if(mgtBirthdayEditDto.getShopId()!=null){
        // 如果店铺ID为空,则进行相关设置
        if(mgtBirthdayEditDto.getShopId()==null){
            birthdayCard.setAreaFlag(mgtBirthdayEditDto.getAreaFlag());
            if(mgtBirthdayEditDto.getAreaFlag()==2){
            if(mgtBirthdayEditDto.getAreaFlag()!=null&&mgtBirthdayEditDto.getAreaFlag()==2){
                birthdayCard.setDesignatedArea(mgtBirthdayEditDto.getDesignatedArea());
            }else{
                birthdayCard.setDesignatedArea(null);
            }
            birthdayCard.setShopFlag(mgtBirthdayEditDto.getShopFlag());
            if(mgtBirthdayEditDto.getShopFlag()==2){
            if(mgtBirthdayEditDto.getShopFlag()!=null&&mgtBirthdayEditDto.getShopFlag()==2){
                birthdayCard.setApplicableShop(mgtBirthdayEditDto.getApplicableShop());
            }else{
                birthdayCard.setApplicableShop(null);
@@ -107,7 +135,7 @@
        List<MgtBirthdayGiftDto> mgtBirthdayGiftDtoList = mgtBirthdayEditDto.getMgtBirthdayGiftDtoList();
        List<BirthdayGift> birthdayGiftList = new ArrayList<>();
        // 如果生日礼物列表不为空,则进行相关设置
        if(!mgtBirthdayGiftDtoList.isEmpty()) {
        if(mgtBirthdayGiftDtoList!=null&&!mgtBirthdayGiftDtoList.isEmpty()) {
            mgtBirthdayGiftDtoList.forEach(dto -> {
                BirthdayGift birthdayGift = new BirthdayGift();
                birthdayGift.setDelFlag(0);
@@ -173,6 +201,10 @@
        MerBirthdayGetVo birthdayGetVo = new MerBirthdayGetVo();
        // 获取平台生日卡信息
        BirthdayCard birthdayCard = birthdayCardMapper.getPlatformBirthdayCard(shopId);
        Shop shop = remoteShopService.getShop(shopId).getData();
        if(birthdayCard.getAreaFlag()==2&&birthdayCard.getShopFlag()==1&&!StringUtils.checkString(birthdayCard.getDesignatedArea(),shop.getShopCityCode())){
            birthdayCard = null;
        }
        // 如果生日卡存在
        if (birthdayCard != null) {
            String giftDesc = "";
@@ -213,6 +245,7 @@
                giftDesc = giftSj.toString();
                birthdayGetVo.setGiftDesc(giftDesc);
            }
            birthdayGetVo.setCardStatus(birthdayCard.getCardStatus());
        }else{
            birthdayGetVo.setCardStatus(2);
        }
@@ -329,7 +362,7 @@
        // 创建新的生日卡
        BirthdayCard birthdayCard = new BirthdayCard();
        birthdayCard.setDelFlag(0);
        birthdayCard.setShopId(0L);
        birthdayCard.setShopId(merBirthdayEditDto.getShopId());
        birthdayCard.setCardStatus(merBirthdayEditDto.getCardStatus());
        // 根据卡状态设置开启或关闭时间
        if(merBirthdayEditDto.getCardStatus()==1){
@@ -362,7 +395,7 @@
                birthdayGift.setGiftName(dto.getGiftName());
                birthdayGift.setGiftNumber(dto.getGiftNumber());
                birthdayGift.setMoney(dto.getMoney());
                birthdayGift.setWinningProbability(dto.getWinningProbability());
                birthdayGift.setWinningProbability(new BigDecimal("100.00"));
                birthdayGiftList.add(birthdayGift);
            });
            // 批量保存生日礼物
@@ -391,7 +424,368 @@
            birthdayCard.setCreateTime(new Date());
            birthdayCard.setCreateUserId(merBirthdayEditDto.getUserId());
        }
        List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(birthdayCard.getCardId());
        if(merBirthdayEditDto.getCardStatus()==1){
            if(birthdayGiftList==null||birthdayGiftList.isEmpty()){
                throw new ServiceException(AppErrorConstant.BIRTHDAYCARD_NO_GIFT);
            }
        }
        birthdayCard.setCardStatus(merBirthdayEditDto.getCardStatus());
        this.saveOrUpdate(birthdayCard);
    }
    /**
     * @description 获取用户生日礼物
     * @author  jqs
     * @date    2023/7/7 10:55
     * @param shopId
     * @return  AppBirthdayCardVo
     */
    @Override
    public AppBirthdayCardVo getUserBirthdayCard(Long userId,Long shopId){
        AppBirthdayCardVo appBirthdayCardVo = new AppBirthdayCardVo();
        String currentYear = String.valueOf(LocalDate.now().getYear());
        List<MemberGiftRecord> memberGiftRecordList = memberGiftRecordService.listByUserIdAndYear(userId,currentYear);
        if(memberGiftRecordList!=null&&!memberGiftRecordList.isEmpty()){
            List<AppBirthdayGiftVo> birthdayGiftVoList = memberGiftRecordList.stream().map(
                    memberGiftRecord -> {
                        AppBirthdayGiftVo appBirthdayGiftVo = new AppBirthdayGiftVo();
                        switch (memberGiftRecord.getGiftType()) {
                            case 1:
                                // 礼物类型为1,即优惠券
                                appBirthdayGiftVo.setGiftName(memberGiftRecord.getCouponName());
                                appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getCouponNumber());
                                break;
                            case 2:
                                // 礼物类型为2,即商品
                                appBirthdayGiftVo.setGiftName(memberGiftRecord.getGoodsName());
                                appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getGoodsNumber());
                                break;
                            case 3:
                                // 礼物类型为3,即现金
                                appBirthdayGiftVo.setGiftName("现金");
                                appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue());
                                break;
                            case 4:
                                // 礼物类型为4,即礼品
                                appBirthdayGiftVo.setGiftName(memberGiftRecord.getGiftName());
                                appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getGiftNumber());
                                break;
                            default:
                                break;
                        }
                        return appBirthdayGiftVo;
                    }
            ).collect(Collectors.toList());
            appBirthdayCardVo.setGetGiftFlag(1);
            appBirthdayCardVo.setBirthdayGiftVoList(birthdayGiftVoList);
        }else{
            appBirthdayCardVo.setGetGiftFlag(0);
        }
        return appBirthdayCardVo;
    }
    /**
     * @description  获取用户生日礼物
     * @author  jqs
     * @date    2023/7/7 10:55
     * @param shopId
     * @return  AppBirthdayCardVo
     */
    @Override
    public AppBirthdayCardVo getBirthdayGift(Long userId, Long shopId){
        AppBirthdayCardVo appBirthdayCardVo = new AppBirthdayCardVo();
        List<AppBirthdayGiftVo> birthdayGiftVoList = new ArrayList<>();
        List<MemberGiftRecord> memberGiftRecordList = new ArrayList<>();
        List<BirthdayGiftSendDto> sendGoodsList = new ArrayList<>();
        List<BirthdayGiftSendDto> sendCouponList = new ArrayList<>();
        AppBirthdayGiftVo appBirthdayGiftVo;
        MemberGiftRecord memberGiftRecord;
        BigDecimal winningProbability;
        BigDecimal randomProbability;
        BirthdayGiftSendDto birthdayGiftSendDto;
        String prizeId;
        String currentYear = String.valueOf(LocalDate.now().getYear());
        Member member = memberService.getByUserId(userId);
        // 获取平台生日卡信息
        BirthdayCard plBirthdayCard = this.getBirthdayCard();
        //绑定的时候需要判断范围
        if(member.getBindingFlag()==1){
            //判断指定区域全部店铺
            if(plBirthdayCard.getShopFlag()==1&&plBirthdayCard.getAreaFlag()==2){
                Shop shop = remoteShopService.getShop(member.getRelationShopId()).getData();
                if(!StringUtils.checkString(plBirthdayCard.getDesignatedArea(),shop.getShopCityCode())){
                    plBirthdayCard = null;
                }
            }
            //判断指定店铺
            if(plBirthdayCard.getShopFlag()==2&&!StringUtils.checkString(plBirthdayCard.getApplicableShop(),shopId.toString())){
                plBirthdayCard = null;
            }
        }
        // 如果生日卡存在
        if (plBirthdayCard != null && plBirthdayCard.getCardStatus()==1) {
            // 获取生日卡对应的生日礼物列表
            List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(plBirthdayCard.getCardId());
            if(birthdayGiftList!=null&&!birthdayGiftList.isEmpty()){
                // 遍历生日礼物列表
                for (BirthdayGift birthdayGift : birthdayGiftList) {
                    winningProbability = birthdayGift.getWinningProbability();
                    randomProbability = new BigDecimal(new Random().nextInt(100));
                    if(winningProbability.compareTo(randomProbability)>0){
                        appBirthdayGiftVo = new AppBirthdayGiftVo();
                        memberGiftRecord = new MemberGiftRecord();
                        birthdayGiftSendDto = new BirthdayGiftSendDto();
                        BeanUtils.copyProperties(birthdayGift, memberGiftRecord);
                        prizeId = IdUtils.simpleUUID();
                        memberGiftRecord.setPrizeId(prizeId);
                        memberGiftRecord.setDelFlag(0);
                        memberGiftRecord.setVerifyStatus(1);
                        memberGiftRecord.setGiftFrom(1);
                        memberGiftRecord.setPrizeFrom(1);
                        memberGiftRecord.setGiftYear(currentYear);
                        memberGiftRecord.setCreateTime(new Date());
                        memberGiftRecord.setUserId(userId);
                        birthdayGiftSendDto.setUserId(userId);
                        birthdayGiftSendDto.setGiftFrom(1);
                        birthdayGiftSendDto.setGiftType(birthdayGift.getGiftType());
                        switch (birthdayGift.getGiftType()) {
                            case 1:
                                // 礼物类型为1,即优惠券
                                appBirthdayGiftVo.setGiftName(birthdayGift.getCouponName());
                                appBirthdayGiftVo.setGiftNumber(birthdayGift.getCouponNumber());
                                birthdayGiftSendDto.setCouponId(birthdayGift.getCouponId());
                                birthdayGiftSendDto.setCouponNumber(birthdayGift.getCouponNumber());
                                sendGoodsList.add(birthdayGiftSendDto);
                                memberGiftRecord.setCouponId(birthdayGift.getCouponId());
                                memberGiftRecord.setCouponName(birthdayGift.getCouponName());
                                memberGiftRecord.setCouponNumber(birthdayGift.getCouponNumber());
                                break;
                            case 2:
                                // 礼物类型为2,即商品
                                appBirthdayGiftVo.setGiftName(birthdayGift.getGoodsName());
                                appBirthdayGiftVo.setGiftNumber(birthdayGift.getGoodsNumber());
                                birthdayGiftSendDto.setGoodsId(birthdayGift.getGoodsId());
                                birthdayGiftSendDto.setCouponNumber(birthdayGift.getGoodsNumber());
                                sendCouponList.add(birthdayGiftSendDto);
                                memberGiftRecord.setGoodsId(birthdayGift.getGoodsId());
                                memberGiftRecord.setGoodsName(birthdayGift.getGoodsName());
                                memberGiftRecord.setGoodsNumber(birthdayGift.getGoodsNumber());
                                break;
                            case 3:
                                // 礼物类型为3,即现金
                                appBirthdayGiftVo.setGiftName("现金");
                                appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue());
                                memberGiftRecord.setMoney(birthdayGift.getMoney());
                                break;
                            case 4:
                                // 礼物类型为4,即礼品
                                appBirthdayGiftVo.setGiftName(birthdayGift.getGiftName());
                                appBirthdayGiftVo.setGiftNumber(birthdayGift.getGiftNumber());
                                memberGiftRecord.setGiftName(birthdayGift.getGiftName());
                                memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber());
                                break;
                            default:
                                break;
                        }
                        birthdayGiftVoList.add(appBirthdayGiftVo);
                        memberGiftRecordList.add(memberGiftRecord);
                    }
                }
            }
        }
        //获取商户营销开关状态
        if(member.getBindingFlag()==1){
            Integer marketingStatus = remoteShopService.getShopMarketingStatus(shopId).getData();
            if(marketingStatus>1){
                //获取商户生日卡
                LambdaQueryWrapper<BirthdayCard> queryWrapper = new LambdaQueryWrapper<>();
                queryWrapper.eq(BirthdayCard::getDelFlag,0);
                queryWrapper.eq(BirthdayCard::getShopId,shopId);
                BirthdayCard shopBirthdayCard = this.getOne(queryWrapper,false);
                // 如果生日卡存在
                if (shopBirthdayCard != null && shopBirthdayCard.getCardStatus()==1) {
                    // 获取生日卡对应的生日礼物列表
                    List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(shopBirthdayCard.getCardId());
                    if(!birthdayGiftList.isEmpty()){
                        // 遍历生日礼物列表
                        for (BirthdayGift birthdayGift : birthdayGiftList) {
                            winningProbability = birthdayGift.getWinningProbability();
                            randomProbability = new BigDecimal(new Random().nextInt(100));
                            if(winningProbability.compareTo(randomProbability)>0){
                                appBirthdayGiftVo = new AppBirthdayGiftVo();
                                memberGiftRecord = new MemberGiftRecord();
                                birthdayGiftSendDto = new BirthdayGiftSendDto();
                                BeanUtils.copyProperties(birthdayGift, memberGiftRecord);
                                prizeId = IdUtils.simpleUUID();
                                memberGiftRecord.setPrizeId(prizeId);
                                memberGiftRecord.setDelFlag(0);
                                memberGiftRecord.setVerifyStatus(1);
                                memberGiftRecord.setGiftFrom(2);
                                memberGiftRecord.setPrizeFrom(1);
                                memberGiftRecord.setShopId(shopId);
                                memberGiftRecord.setGiftYear(currentYear);
                                memberGiftRecord.setCreateTime(new Date());
                                memberGiftRecord.setUserId(userId);
                                birthdayGiftSendDto.setUserId(userId);
                                birthdayGiftSendDto.setGiftFrom(2);
                                birthdayGiftSendDto.setShopId(shopId);
                                birthdayGiftSendDto.setGiftType(birthdayGift.getGiftType());
                                switch (birthdayGift.getGiftType()) {
                                    case 1:
                                        // 礼物类型为1,即优惠券
                                        appBirthdayGiftVo.setGiftName(birthdayGift.getCouponName());
                                        appBirthdayGiftVo.setGiftNumber(birthdayGift.getCouponNumber());
                                        birthdayGiftSendDto.setCouponId(birthdayGift.getCouponId());
                                        birthdayGiftSendDto.setCouponNumber(birthdayGift.getCouponNumber());
                                        sendGoodsList.add(birthdayGiftSendDto);
                                        memberGiftRecord.setCouponId(birthdayGift.getCouponId());
                                        memberGiftRecord.setCouponName(birthdayGift.getCouponName());
                                        memberGiftRecord.setCouponNumber(birthdayGift.getCouponNumber());
                                        break;
                                    case 2:
                                        // 礼物类型为2,即商品
                                        appBirthdayGiftVo.setGiftName(birthdayGift.getGoodsName());
                                        appBirthdayGiftVo.setGiftNumber(birthdayGift.getGoodsNumber());
                                        birthdayGiftSendDto.setGoodsId(birthdayGift.getGoodsId());
                                        birthdayGiftSendDto.setCouponNumber(birthdayGift.getGoodsNumber());
                                        sendCouponList.add(birthdayGiftSendDto);
                                        memberGiftRecord.setGoodsId(birthdayGift.getGoodsId());
                                        memberGiftRecord.setGoodsName(birthdayGift.getGoodsName());
                                        memberGiftRecord.setGoodsNumber(birthdayGift.getGoodsNumber());
                                        break;
                                    case 3:
                                        // 礼物类型为3,即现金
                                        appBirthdayGiftVo.setGiftName("现金");
                                        appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue());
                                        memberGiftRecord.setMoney(birthdayGift.getMoney());
                                        break;
                                    case 4:
                                        // 礼物类型为4,即礼品
                                        appBirthdayGiftVo.setGiftName(birthdayGift.getGiftName());
                                        appBirthdayGiftVo.setGiftNumber(birthdayGift.getGiftNumber());
                                        memberGiftRecord.setGiftName(birthdayGift.getGiftName());
                                        memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber());
                                        break;
                                    default:
                                        break;
                                }
                                birthdayGiftVoList.add(appBirthdayGiftVo);
                                memberGiftRecordList.add(memberGiftRecord);
                            }
                        }
                    }
                }
            }
        }
        //保存用户礼物记录
        memberGiftRecordService.saveBatch(memberGiftRecordList);
        appBirthdayCardVo.setBirthdayGiftVoList(birthdayGiftVoList);
        return appBirthdayCardVo;
    }
    /**
     * @param page
     * @param userId
     * @return List<AppMemberPrizePageVo>
     * @description
     * @author jqs
     * @date 2023/7/11 18:02
     */
    @Override
    public List<AppMemberPrizePageVo> pageAppMemberPrize(Page page, Long userId) {
        List<AppMemberPrizePageVo> memberPrizePageVoList = birthdayCardMapper.pageAppMemberPrize(page, userId);
        if (memberPrizePageVoList != null && !memberPrizePageVoList.isEmpty()) {
            HashSet<Long> shopIdSet = new HashSet<>();
            for (AppMemberPrizePageVo appMemberPrizePageVo : memberPrizePageVoList) {
                appMemberPrizePageVo.setVerifyCode("3-" + appMemberPrizePageVo.getPrizeId());
                if (appMemberPrizePageVo.getShopId() != null) {
                    shopIdSet.add(appMemberPrizePageVo.getShopId());
                }
            }
            String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList()));
            MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto();
            mgtBaseBathDto.setIds(shopJoinedString);
            List<MgtSimpleShopVo> simpleShopVoList = remoteShopService.listShopSimpleVoByIds(mgtBaseBathDto).getData();
            Map<Long, MgtSimpleShopVo> shopMap = simpleShopVoList.stream()
                    .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity()));
            for (AppMemberPrizePageVo appMemberPrizePageVo : memberPrizePageVoList) {
                if (appMemberPrizePageVo.getShopId() != null) {
                    appMemberPrizePageVo.setVerifyShopName(shopMap.get(appMemberPrizePageVo.getShopId()).getShopName());
                }
            }
        }
        return memberPrizePageVoList;
    }
    /**
     * @description  判断生日卡开启状态
     * @author  jqs
     * @date    2023/8/1 15:43
     * @param
     * @return  void
     */
    @Override
    public Integer checkBirthdayCard(Long shopId,Integer bindingFlag){
        // 获取平台生日卡信息
        Boolean platformBirthdayCardOpen = true;
        BirthdayCard plBirthdayCard = birthdayCardMapper.getMerShopBirthdayCard(0L);
        if (plBirthdayCard == null || plBirthdayCard.getCardStatus()!=1) {
            platformBirthdayCardOpen = false;
        }else{
            //绑死店铺判断区域和店铺
            if(bindingFlag==1){
                //判断指定区域全部店铺
                if(plBirthdayCard.getShopFlag()==1&&plBirthdayCard.getAreaFlag()==2){
                    Shop shop = remoteShopService.getShop(shopId).getData();
                    if(!StringUtils.checkString(plBirthdayCard.getDesignatedArea(),shop.getShopCityCode())){
                        platformBirthdayCardOpen = false;
                    }
                }
                //判断指定店铺
                if(plBirthdayCard.getShopFlag()==2&&!StringUtils.checkString(plBirthdayCard.getApplicableShop(),shopId.toString())){
                    platformBirthdayCardOpen = false;
                }
            }
        }
        //判断店铺生日卡
        BirthdayCard shopBirthdayCard = birthdayCardMapper.getMerShopBirthdayCard(shopId);
        // 如果生日卡存在
        Boolean shopBirthdayCardOpen  = true;
        if(bindingFlag==1){
            if (shopBirthdayCard == null || shopBirthdayCard.getCardStatus()!=1) {
                shopBirthdayCardOpen = false;
            }
            Integer marketingStatus = remoteShopService.getShopMarketingStatus(shopId).getData();
            if(marketingStatus<=1){
                shopBirthdayCardOpen = false;
            }
        }else{
            shopBirthdayCardOpen = false;
        }
        if(platformBirthdayCardOpen||shopBirthdayCardOpen){
            return 1;
        }else{
            return 0;
        }
    }
    /**
     * @description  获取平台生日卡
     * @author  jqs
     * @date    2023/8/9 19:35
     * @param
     * @return  BirthdayCard
     */
    @Override
    public BirthdayCard getBirthdayCard(){
        LambdaQueryWrapper<BirthdayCard> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(BirthdayCard::getDelFlag,0);
        queryWrapper.eq(BirthdayCard::getShopId,0L);
        queryWrapper.eq(BirthdayCard::getCardStatus,1);
        BirthdayCard shopBirthdayCard = this.getOne(queryWrapper,false);
        return shopBirthdayCard;
    }
}