fxi
Hentua
2024-01-24 b295ea4c6f8233d2e0d4ad2a25f7184398b13cf3
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -1,10 +1,7 @@
package cc.mrbird.febs.mall.service.impl;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.enumerates.AgentLevelEnum;
import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
import cc.mrbird.febs.common.enumerates.*;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.properties.XcxProperties;
import cc.mrbird.febs.common.utils.*;
@@ -304,7 +301,7 @@
            }
        }
        List<MallShoppingCart> carts = mallShoppingCartMapper.selectCartGoodsList(id);
        List<MallShoppingCart> carts = mallShoppingCartMapper.selectCartGoodsList(id, 1);
        Map<String, Object> result = new HashMap<>();
        result.put("order", orderCnt);
        result.put("carts", carts.size());
@@ -377,6 +374,12 @@
        Long id = LoginUserUtil.getLoginUser().getId();
        moneyFlowDto.setMemberId(id);
        IPage<MoneyFlowVo> pages = mallMoneyFlowMapper.selectApiMoneyFlowInPage(page, moneyFlowDto);
//        if (moneyFlowDto.getFlowType() == 3) {
//            pages.getRecords().forEach(item -> {
//                item.setDescription(ScoreFlowTypeEnum.getDescByValue(item.getType()));
//            });
//        }
        return new FebsResponse().success().data(pages);
    }
@@ -703,7 +706,15 @@
        if(StrUtil.isNotEmpty(avatarUrl)){
            mallMember.setAvatar(avatarUrl);
        }
//        mallMember.setSex(1 == apiXcxSaveInfoDto.getGender() ? "女" : "男");
        if (StrUtil.isNotBlank(apiXcxSaveInfoDto.getRealName())) {
            mallMember.setRealName(apiXcxSaveInfoDto.getRealName());
        }
        if (apiXcxSaveInfoDto.getBirthday() != null) {
            mallMember.setBirthday(apiXcxSaveInfoDto.getBirthday());
        }
        mallMember.setSex(1 == apiXcxSaveInfoDto.getGender() ? "女" : "男");
        this.baseMapper.updateById(mallMember);
        return new FebsResponse().success();
    }
@@ -935,6 +946,35 @@
    }
    @Override
    public FebsResponse scanCoupon(GetCouponDto getCouponDto) {
        Long memberId = LoginUserUtil.getLoginUser().getId();
        String couponUUID = IdUtil.simpleUUID();
        //通过邀请人信息,获取能领取的优惠卷信息
        MallMember mallMember = this.baseMapper.selectInfoByInviteId(getCouponDto.getInviteId());
        if(ObjectUtil.isNotEmpty(mallMember)){
            SalemanCoupon salemanCoupon = salemanCouponMapper.selectByMemberId(mallMember.getId());
            if(ObjectUtil.isNotEmpty(salemanCoupon)){
                Long couponId = salemanCoupon.getCouponId();
                List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdCouponIdWithOutInviteId(memberId, couponId);
                if(CollUtil.isEmpty(mallMemberCoupons)){
                    //商品优惠卷如果绑定了,那么当前登陆者获取一张卷
                    MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(couponId);
                    MallMemberCoupon mallMemberCoupon = new MallMemberCoupon();
                    mallMemberCoupon.setCouponId(couponId);
                    mallMemberCoupon.setCouponName(mallGoodsCoupon.getName());
                    mallMemberCoupon.setMemberId(memberId);
                    mallMemberCoupon.setCouponUuid(couponUUID);
                    mallMemberCoupon.setInviteId(mallMember.getInviteId());
                    mallMemberCoupon.setState(1);
                    mallMemberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(),mallGoodsCoupon.getExpireDay()));
                    mallMemberCouponMapper.insert(mallMemberCoupon);
                }
            }
        }
        return new FebsResponse().success();
    }
    @Override
    public FebsResponse memberCoupon(MallMemberCouponDto mallMemberCouponDto) {
        Long memberId = LoginUserUtil.getLoginUser().getId();
        IPage<MallMemberCouponVo> page = new Page<>(mallMemberCouponDto.getPageNum(), mallMemberCouponDto.getPageSize());
@@ -942,6 +982,19 @@
        mallMemberCouponDto.setExpireTime(DateUtil.date());
        IPage<MallMemberCouponVo> pages = mallMemberCouponMapper.selectListInPage(page, mallMemberCouponDto);
        return new FebsResponse().success().data(pages);
    }
    @Override
    public FebsResponse memberPayCoupon(MallMemberCouponDto mallMemberCouponDto) {
        Long memberId = LoginUserUtil.getLoginUser().getId();
        mallMemberCouponDto.setMemberId(memberId);
        mallMemberCouponDto.setExpireTime(DateUtil.date());
        List<Long> couponIds = couponGoodsMapper.selectByGoodId(mallMemberCouponDto.getGoodsId());
        List<MallMemberCouponVo> mallMemberCouponVos = new ArrayList<>();
        if(CollUtil.isNotEmpty(couponIds)){
            mallMemberCouponVos = mallMemberCouponMapper.selectListCreateInPage(mallMemberCouponDto,couponIds);
        }
        return new FebsResponse().success().data(mallMemberCouponVos);
    }
    @Override
@@ -953,6 +1006,7 @@
        MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(mallMemberCoupon.getCouponId());
        mallMemberCouponVo.setCostAmount(mallGoodsCoupon.getCostAmount());
        mallMemberCouponVo.setRealAmount(mallGoodsCoupon.getRealAmount());
        mallMemberCouponVo.setType(mallGoodsCoupon.getType());
        return new FebsResponse().success().data(mallMemberCouponVo);
    }