条件开通
This commit is contained in:
@@ -26,6 +26,7 @@ public class FilteredNacosRegistry extends NacosRegistry {
|
|||||||
"removeByMap",
|
"removeByMap",
|
||||||
"getByIdOpt",
|
"getByIdOpt",
|
||||||
"getOneOpt",
|
"getOneOpt",
|
||||||
|
"getOneAs",
|
||||||
"getObjOpt",
|
"getObjOpt",
|
||||||
"getObjAs",
|
"getObjAs",
|
||||||
"getObjAsOpt",
|
"getObjAsOpt",
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import com.czg.account.service.ShopConfigService;
|
|||||||
import com.czg.account.service.ShopInfoService;
|
import com.czg.account.service.ShopInfoService;
|
||||||
import com.czg.account.service.ShopUserService;
|
import com.czg.account.service.ShopUserService;
|
||||||
import com.czg.constant.TableValueConstant;
|
import com.czg.constant.TableValueConstant;
|
||||||
import com.czg.constants.PayTypeConstants;
|
|
||||||
import com.czg.exception.CzgException;
|
import com.czg.exception.CzgException;
|
||||||
import com.czg.market.dto.MemberConfigDTO;
|
import com.czg.market.dto.MemberConfigDTO;
|
||||||
import com.czg.market.dto.MemberLevelDTO;
|
import com.czg.market.dto.MemberLevelDTO;
|
||||||
@@ -25,7 +24,6 @@ import com.czg.market.enums.PointsConstant;
|
|||||||
import com.czg.market.service.*;
|
import com.czg.market.service.*;
|
||||||
import com.czg.market.vo.*;
|
import com.czg.market.vo.*;
|
||||||
import com.czg.order.entity.OrderInfo;
|
import com.czg.order.entity.OrderInfo;
|
||||||
import com.czg.order.entity.OrderPayment;
|
|
||||||
import com.czg.order.service.OrderPaymentService;
|
import com.czg.order.service.OrderPaymentService;
|
||||||
import com.czg.service.market.enums.OrderStatusEnums;
|
import com.czg.service.market.enums.OrderStatusEnums;
|
||||||
import com.czg.service.market.mapper.TbMemberConfigMapper;
|
import com.czg.service.market.mapper.TbMemberConfigMapper;
|
||||||
@@ -381,16 +379,17 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public boolean joinMemberByCondition(Long shopId, Long userId, ShopUser shopUser) {
|
public boolean joinMemberByCondition(Long shopId, Long userId, ShopUser shopUser) {
|
||||||
MemberConfigVO memberConfigVO = detail(shopId);
|
|
||||||
if (!memberConfigVO.getIsOpen().equals(1L)) {
|
|
||||||
log.info("超级会员未开启, 店铺id: {}", shopId);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (shopUser == null) {
|
if (shopUser == null) {
|
||||||
log.warn("用户不存在, 店铺id: {}, 用户id: {}", shopId, userId);
|
log.warn("用户不存在, 店铺id: {}, 用户id: {}", shopId, userId);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (shopUser.getStartTime() != null && shopUser.getEndTime() != null && DateUtil.isIn(DateUtil.date(), DateUtil.date(shopUser.getStartTime()), DateUtil.date(shopUser.getEndTime()))) {
|
if (shopUser.getIsVip() == 1 && shopUser.getStartTime() != null && shopUser.getEndTime() != null &&
|
||||||
|
DateUtil.isIn(DateUtil.date(), DateUtil.date(shopUser.getStartTime()), DateUtil.date(shopUser.getEndTime()))) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
MemberConfigVO memberConfigVO = detail(shopId);
|
||||||
|
if (!memberConfigVO.getIsOpen().equals(1L)) {
|
||||||
|
log.info("超级会员未开启, 店铺id: {}", shopId);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
MemberLevelConfig levelConfig = levelConfigService.getOne(new QueryWrapper().eq(MemberLevelConfig::getShopId, shopId).orderBy(MemberLevelConfig::getExperienceValue, true).limit(1));
|
MemberLevelConfig levelConfig = levelConfigService.getOne(new QueryWrapper().eq(MemberLevelConfig::getShopId, shopId).orderBy(MemberLevelConfig::getExperienceValue, true).limit(1));
|
||||||
@@ -417,9 +416,8 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
|
|||||||
orderInfoService.getOneAs(query().select("IFNULL(sum(pay_amount), 0) as total_amount").eq(OrderInfo::getShopId, shopId).eq(OrderInfo::getUserId, shopUser.getUserId())
|
orderInfoService.getOneAs(query().select("IFNULL(sum(pay_amount), 0) as total_amount").eq(OrderInfo::getShopId, shopId).eq(OrderInfo::getUserId, shopUser.getUserId())
|
||||||
.eq(OrderInfo::getStatus, OrderStatusEnums.DONE.getCode()), BigDecimal.class)
|
.eq(OrderInfo::getStatus, OrderStatusEnums.DONE.getCode()), BigDecimal.class)
|
||||||
.compareTo(new BigDecimal(item.getValue())) >= 0;
|
.compareTo(new BigDecimal(item.getValue())) >= 0;
|
||||||
case "RECHARGE_AMOUNT" ->
|
case "RECHARGE_AMOUNT" -> paymentService.countMemberInAmount(shopId, shopUser.getId())
|
||||||
paymentService.countMemberInAmount(shopId, shopUser.getId())
|
.compareTo(new BigDecimal(item.getValue())) >= 0;
|
||||||
.compareTo(new BigDecimal(item.getValue())) >= 0;
|
|
||||||
default -> throw new CzgException("会员开通条件类型错误");
|
default -> throw new CzgException("会员开通条件类型错误");
|
||||||
};
|
};
|
||||||
if (!canOpen) {
|
if (!canOpen) {
|
||||||
|
|||||||
Reference in New Issue
Block a user