金币转赠统一国家代理
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.exception.ServiceException;
|
||||
import com.accompany.core.model.PartitionInfo;
|
||||
import com.accompany.core.model.RegionInfo;
|
||||
import com.accompany.core.model.Users;
|
||||
import com.accompany.core.service.SysConfService;
|
||||
import com.accompany.core.service.common.JedisLockService;
|
||||
import com.accompany.core.service.common.JedisService;
|
||||
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.PartitionUtil;
|
||||
import com.accompany.core.vo.UserLevelVo;
|
||||
@@ -66,6 +68,8 @@ import java.time.ZonedDateTime;
|
||||
import java.util.*;
|
||||
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
|
||||
private PartitionInfoService partitionInfoService;
|
||||
|
||||
@Autowired
|
||||
private RegionInfoService regionInfoService;
|
||||
|
||||
/**
|
||||
* 获取当前用户曾转赠过的用户(去重)
|
||||
* @param uid
|
||||
@@ -408,6 +415,21 @@ public class DiamondGiveHistoryService extends ServiceImpl<DiamondGiveHistoryMap
|
||||
&& (CollectionUtils.isEmpty(erbanNoList) || !erbanNoList.contains(users.getErbanNo()))) {
|
||||
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
|
||||
giveCheck(uid, toUid, diamondNum, realSpendDiamondNum);
|
||||
}
|
||||
|
Reference in New Issue
Block a user