金币转赠统一国家代理
This commit is contained in:
@@ -34,11 +34,13 @@ import com.accompany.core.enumeration.I18nAlertEnum;
|
|||||||
import com.accompany.core.enumeration.PartitionEnum;
|
import com.accompany.core.enumeration.PartitionEnum;
|
||||||
import com.accompany.core.exception.ServiceException;
|
import com.accompany.core.exception.ServiceException;
|
||||||
import com.accompany.core.model.PartitionInfo;
|
import com.accompany.core.model.PartitionInfo;
|
||||||
|
import com.accompany.core.model.RegionInfo;
|
||||||
import com.accompany.core.model.Users;
|
import com.accompany.core.model.Users;
|
||||||
import com.accompany.core.service.SysConfService;
|
import com.accompany.core.service.SysConfService;
|
||||||
import com.accompany.core.service.common.JedisLockService;
|
import com.accompany.core.service.common.JedisLockService;
|
||||||
import com.accompany.core.service.common.JedisService;
|
import com.accompany.core.service.common.JedisService;
|
||||||
import com.accompany.core.service.partition.PartitionInfoService;
|
import com.accompany.core.service.partition.PartitionInfoService;
|
||||||
|
import com.accompany.core.service.region.RegionInfoService;
|
||||||
import com.accompany.core.util.I18NMessageSourceUtil;
|
import com.accompany.core.util.I18NMessageSourceUtil;
|
||||||
import com.accompany.core.util.PartitionUtil;
|
import com.accompany.core.util.PartitionUtil;
|
||||||
import com.accompany.core.vo.UserLevelVo;
|
import com.accompany.core.vo.UserLevelVo;
|
||||||
@@ -66,6 +68,8 @@ import java.time.ZonedDateTime;
|
|||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static com.accompany.common.constant.Constant.GLOBAL_CODE;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户转赠钻石记录表
|
* 用户转赠钻石记录表
|
||||||
*
|
*
|
||||||
@@ -118,6 +122,9 @@ public class DiamondGiveHistoryService extends ServiceImpl<DiamondGiveHistoryMap
|
|||||||
@Autowired
|
@Autowired
|
||||||
private PartitionInfoService partitionInfoService;
|
private PartitionInfoService partitionInfoService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private RegionInfoService regionInfoService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取当前用户曾转赠过的用户(去重)
|
* 获取当前用户曾转赠过的用户(去重)
|
||||||
* @param uid
|
* @param uid
|
||||||
@@ -408,6 +415,21 @@ public class DiamondGiveHistoryService extends ServiceImpl<DiamondGiveHistoryMap
|
|||||||
&& (CollectionUtils.isEmpty(erbanNoList) || !erbanNoList.contains(users.getErbanNo()))) {
|
&& (CollectionUtils.isEmpty(erbanNoList) || !erbanNoList.contains(users.getErbanNo()))) {
|
||||||
throw new ServiceException(BusiStatus.NO_TRANSFER_PERMISSION_CURRENTLY_AVAILABLE);
|
throw new ServiceException(BusiStatus.NO_TRANSFER_PERMISSION_CURRENTLY_AVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boolean partitionLimit = users.getPartitionId() == PartitionEnum.ARAB.getId()
|
||||||
|
|| users.getPartitionId() == PartitionEnum.TURKEY.getId()
|
||||||
|
|| users.getPartitionId() == PartitionEnum.ENGLISH2.getId();
|
||||||
|
|
||||||
|
List<String> regionCodeList = rechargeUserService.regionCodeList(uid);
|
||||||
|
Users toUser = usersService.getUsersByUid(toUid);
|
||||||
|
if (partitionLimit && CollectionUtils.isEmpty(regionCodeList)) {
|
||||||
|
throw new ServiceException(BusiStatus.RECHARGE_REGION_GIVE_LIMIT);
|
||||||
|
}else if (partitionLimit && toUser.getRegionId() != null && !regionCodeList.contains(GLOBAL_CODE)) {
|
||||||
|
RegionInfo regionInfo = regionInfoService.getById(toUser.getRegionId());
|
||||||
|
if (regionInfo == null || !regionCodeList.contains(regionInfo.getCode())) {
|
||||||
|
throw new ServiceException(BusiStatus.RECHARGE_REGION_GIVE_LIMIT);
|
||||||
|
}
|
||||||
|
}
|
||||||
// 條件限制檢測2
|
// 條件限制檢測2
|
||||||
giveCheck(uid, toUid, diamondNum, realSpendDiamondNum);
|
giveCheck(uid, toUid, diamondNum, realSpendDiamondNum);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user