| | |
| | | import cc.mrbird.febs.vip.mapper.MallVipConfigMapper; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import java.util.List; |
| | | import cn.hutool.core.date.DateUnit; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.util.IdUtil; |
| | |
| | | @Override |
| | | public FebsResponse getCoupon(GetCouponDto getCouponDto) { |
| | | Long memberId = LoginUserUtil.getLoginUser().getId(); |
| | | Long goodsId = getCouponDto.getGoodsId(); |
| | | |
| | | String couponUUID = IdUtil.simpleUUID(); |
| | | // String couponUUID = getCouponDto.getCouponUUID(); |
| | | // QueryWrapper<MallMemberCoupon> objectQueryWrapper = new QueryWrapper<>(); |
| | | // objectQueryWrapper.eq("coupon_uuid",couponUUID); |
| | | // List<MallMemberCoupon> mallMemberCouponDone = mallMemberCouponMapper.selectList(objectQueryWrapper); |
| | | // if(CollUtil.isNotEmpty(mallMemberCouponDone)){ |
| | | // return new FebsResponse().success(); |
| | | // } |
| | | //验证商品存不存在,且上没上架 |
| | | MallGoods mallGoods = mallGoodsMapper.selectById(goodsId); |
| | | if(ObjectUtil.isEmpty(mallGoods) || MallGoods.ISSALE_STATUS_ENABLE != mallGoods.getIsSale()){ |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | //通过邀请人信息,获取能领取的优惠卷信息 |
| | | 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(); |
| | | Long goodsId = getCouponDto.getGoodsId(); |
| | | MallGoods mallGoods = mallGoodsMapper.selectById(goodsId); |
| | | //验证商品存不存在,且上没上架 |
| | | if(ObjectUtil.isNotEmpty(mallGoods) |
| | | && MallGoods.ISSALE_STATUS_ENABLE == mallGoods.getIsSale()){ |
| | | // List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdAndGoodsIdAndCouponId(memberId, goodsId, couponId,mallMember.getInviteId()); |
| | | // List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdAndGoodsIdAndCouponIdWithOutInviteId(memberId, goodsId, couponId); |
| | | List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdAndGoodsIdAndCouponIdWithOutInviteId(memberId, goodsId); |
| | | if(CollUtil.isEmpty(mallMemberCoupons)){ |
| | | //商品优惠卷如果绑定了,那么当前登陆者获取一张卷 |
| | | List<CouponGoods> couponGoodsList = couponGoodsMapper.selectByGoodIdAndCouponId(goodsId,couponId); |
| | | MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(couponId); |
| | | if(CollUtil.isNotEmpty(couponGoodsList)){ |
| | | MallMemberCoupon mallMemberCoupon = new MallMemberCoupon(); |
| | | mallMemberCoupon.setCouponId(couponId); |
| | | mallMemberCoupon.setCouponName(mallGoodsCoupon.getName()); |
| | | mallMemberCoupon.setMemberId(memberId); |
| | | mallMemberCoupon.setGoodsId(goodsId); |
| | | mallMemberCoupon.setCouponUuid(couponUUID); |
| | | mallMemberCoupon.setInviteId(mallMember.getInviteId()); |
| | | mallMemberCoupon.setState(1); |
| | | mallMemberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(),mallGoodsCoupon.getExpireDay())); |
| | | mallMemberCouponMapper.insert(mallMemberCoupon); |
| | | } |
| | | List<SalemanCoupon> salemanCouponList = salemanCouponMapper.selectByMemberId(mallMember.getId()); |
| | | if(CollUtil.isNotEmpty(salemanCouponList)){ |
| | | for(SalemanCoupon salemanCoupon : salemanCouponList){ |
| | | Long couponId = salemanCoupon.getCouponId(); |
| | | //验证是否已经领取过该优惠券 |
| | | List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdCouponIdWithOutInviteId(memberId, couponId); |
| | | if(CollUtil.isNotEmpty(mallMemberCoupons)){ |
| | | continue; |
| | | } |
| | | //商品优惠卷如果绑定了该商品,那么当前登陆者获取一张卷 |
| | | List<CouponGoods> couponGoodsList = couponGoodsMapper.selectByGoodIdAndCouponId(goodsId, couponId); |
| | | MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(couponId); |
| | | if(CollUtil.isNotEmpty(couponGoodsList) && ObjectUtil.isNotEmpty(mallGoodsCoupon)){ |
| | | MallMemberCoupon mallMemberCoupon = new MallMemberCoupon(); |
| | | mallMemberCoupon.setCouponId(couponId); |
| | | mallMemberCoupon.setCouponName(mallGoodsCoupon.getName()); |
| | | mallMemberCoupon.setMemberId(memberId); |
| | | mallMemberCoupon.setGoodsId(goodsId); |
| | | mallMemberCoupon.setCouponUuid(IdUtil.simpleUUID()); |
| | | mallMemberCoupon.setInviteId(mallMember.getInviteId()); |
| | | mallMemberCoupon.setState(1); |
| | | mallMemberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(), mallGoodsCoupon.getExpireDay())); |
| | | mallMemberCouponMapper.insert(mallMemberCoupon); |
| | | } |
| | | } |
| | | } |
| | |
| | | @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); |
| | | List<SalemanCoupon> salemanCouponList = salemanCouponMapper.selectByMemberId(mallMember.getId()); |
| | | if(CollUtil.isNotEmpty(salemanCouponList)){ |
| | | for(SalemanCoupon salemanCoupon : salemanCouponList){ |
| | | Long couponId = salemanCoupon.getCouponId(); |
| | | List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdCouponIdWithOutInviteId(memberId, couponId); |
| | | if(CollUtil.isEmpty(mallMemberCoupons)){ |
| | | //商品优惠卷如果绑定了,那么当前登陆者获取一张卷 |
| | | MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(couponId); |
| | | if(ObjectUtil.isNotEmpty(mallGoodsCoupon)){ |
| | | MallMemberCoupon mallMemberCoupon = new MallMemberCoupon(); |
| | | mallMemberCoupon.setCouponId(couponId); |
| | | mallMemberCoupon.setCouponName(mallGoodsCoupon.getName()); |
| | | mallMemberCoupon.setMemberId(memberId); |
| | | mallMemberCoupon.setCouponUuid(IdUtil.simpleUUID()); |
| | | mallMemberCoupon.setInviteId(mallMember.getInviteId()); |
| | | mallMemberCoupon.setState(1); |
| | | mallMemberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(),mallGoodsCoupon.getExpireDay())); |
| | | mallMemberCouponMapper.insert(mallMemberCoupon); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | MallMember member = this.baseMapper.selectById(loginUser.getId()); |
| | | |
| | | MallMember mallMember = new MallMember(); |
| | | mallMember.setId(member.getId()); |
| | | mallMember.setLastLoginTime(new Date()); |
| | | this.baseMapper.updateById(mallMember); |
| | | // MallMember mallMember = new MallMember(); |
| | | // mallMember.setId(member.getId()); |
| | | // mallMember.setLastLoginTime(new Date()); |
| | | // this.baseMapper.updateById(mallMember); |
| | | |
| | | this.baseMapper.updateLastLoginTime(member.getId(),new Date()); |
| | | |
| | | DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.UNALIVE_COUPON.getType(), DataDictionaryEnum.UNALIVE_COUPON.getCode()); |
| | | if (dic == null || StrUtil.isBlank(dic.getValue())) { |
| | |
| | | // objectQueryWrapper.eq("member_id",memberId); |
| | | // List<MallStoreMember> mallStoreMembers = mallStoreMemberMapper.selectList(objectQueryWrapper); |
| | | |
| | | List<MallStoreMember> mallStoreMembers = mallStoreMemberMapper.selectList( |
| | | new LambdaQueryWrapper<MallStoreMember>() |
| | | .eq(MallStoreMember::getMemberId, memberId) |
| | | .eq(MallStoreMember::getStoreItemId, bindStoreMemberDto.getStoreItemId()) |
| | | ); |
| | | if(CollUtil.isNotEmpty(mallStoreMembers)){ |
| | | return new FebsResponse().fail().message("您已经绑定过了"); |
| | | } |
| | | // List<MallStoreMember> mallStoreMembers = mallStoreMemberMapper.selectList( |
| | | // new LambdaQueryWrapper<MallStoreMember>() |
| | | // .eq(MallStoreMember::getMemberId, memberId) |
| | | // .eq(MallStoreMember::getStoreItemId, bindStoreMemberDto.getStoreItemId()) |
| | | // ); |
| | | // if(CollUtil.isNotEmpty(mallStoreMembers)){ |
| | | // return new FebsResponse().fail().message("您已经绑定过了"); |
| | | // } |
| | | |
| | | MallMember mallMember = this.baseMapper.selectById(memberId); |
| | | Integer sex = "女".equals(mallMember.getSex()) ? 3 : 2; |
| | |
| | | |
| | | // 获取当前登录用户的ID |
| | | Long memberId = LoginUserUtil.getLoginUser().getId(); |
| | | log.info("开始绑定医生{}",memberId); |
| | | // 从DTO中提取邀请ID和门店会员ID |
| | | String inviteId = dto.getInviteId(); |
| | | Long storeMemberId = dto.getStoreMemberId(); |
| | | |
| | | // 根据门店会员ID查询门店会员信息 |
| | | MallStoreMember mallStoreMember = mallStoreMemberMapper.selectById(storeMemberId); |
| | | MallStoreMember mallStoreMember = mallStoreMemberMapper.selectOne( |
| | | new LambdaQueryWrapper<MallStoreMember>() |
| | | .eq(MallStoreMember::getId,storeMemberId) |
| | | .eq(MallStoreMember::getMemberId,memberId) |
| | | ); |
| | | // 如果门店会员信息为空,抛出异常 |
| | | if(null == mallStoreMember){ |
| | | throw new FebsException("当前检测记录无法绑定!"); |
| | | } |
| | | // 如果门店会员的会员ID与当前登录用户ID不匹配,抛出异常 |
| | | if(mallStoreMember.getMemberId() != memberId){ |
| | | throw new FebsException("当前检测记录无法绑定!"); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | // 查询与当前门店会员ID关联的医生列表 |
| | | List<MallDoctor> mallDoctors = mallDoctorMapper.selectList(new LambdaQueryWrapper<MallDoctor>().eq(MallDoctor::getStoreMemberId, mallStoreMember.getId())); |
| | | List<MallDoctor> mallDoctors = mallDoctorMapper.selectList( |
| | | new LambdaQueryWrapper<MallDoctor>() |
| | | .eq(MallDoctor::getStoreMemberId, mallStoreMember.getId()) |
| | | .eq(MallDoctor::getMemberId, mallMember.getId()) |
| | | ); |
| | | // 如果医生列表为空,创建新的医生对象并设置相关信息,然后插入数据库 |
| | | if(CollUtil.isEmpty(mallDoctors)){ |
| | | MallDoctor mallDoctor = new MallDoctor(); |
| | |
| | | mallDoctor.setBindMemberId(mallStoreMember.getMemberId()); |
| | | mallDoctor.setBindPhone(mallStoreMember.getPhone()); |
| | | mallDoctor.setBindName(mallStoreMember.getName()); |
| | | mallDoctor.setBindInfo(mallStoreMember.getAccount()); |
| | | mallDoctor.setBindAge(mallStoreMember.getAge()); |
| | | |
| | | Long storeId = mallStoreMember.getStoreId(); |
| | | Long storeItemId = mallStoreMember.getStoreItemId(); |
| | | MallStore mallStore = mallStoreMapper.selectById(storeId); |
| | | MallStoreItem mallStoreItem = mallStoreItemMapper.selectById(storeItemId); |
| | | mallDoctor.setBindInfo(mallStore.getName()+"-"+mallStoreItem.getCode()); |
| | | mallDoctorMapper.insert(mallDoctor); |
| | | } |
| | | |
| | |
| | | ApiDoctorListVo apiDoctorListVo = new ApiDoctorListVo(); |
| | | apiDoctorListVo.setId(mallDoctor.getId()); |
| | | apiDoctorListVo.setStoreMemberId(mallDoctor.getStoreMemberId()); |
| | | apiDoctorListVo.setName(mallDoctor.getBindName()); |
| | | MallMember mallMember = this.baseMapper.selectById(mallDoctor.getMemberId()); |
| | | apiDoctorListVo.setName(mallMember.getName()); |
| | | apiDoctorListVo.setPhone(mallDoctor.getBindPhone()); |
| | | apiDoctorListVo.setBindAge(mallDoctor.getBindAge()); |
| | | apiDoctorListVo.setBindInfo(mallDoctor.getBindInfo()); |
| | |
| | | Long memberId = LoginUserUtil.getLoginUser().getId(); |
| | | |
| | | MallDoctor mallDoctor = mallDoctorMapper.selectById(dto.getId()); |
| | | if(memberId != mallDoctor.getBindMemberId()){ |
| | | if(!memberId.equals(mallDoctor.getBindMemberId())){ |
| | | throw new FebsException("当前授权无法删除!"); |
| | | } |
| | | mallDoctorMapper.deleteById(dto.getId()); |