|
|
@@ -124,7 +124,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
}
|
|
|
Date expiryTime = relation.getExpiryTime();
|
|
|
Integer claudeDailyLimit = sku.getClaudeDailyLimit();
|
|
|
- Integer claudeQuota = sku.getClaudeQuota();
|
|
|
+ Integer claudePermanentBalance = sku.getClaudePermanentBalance();
|
|
|
Long skuId = sku.getId();
|
|
|
Boolean isUpgrade = false;
|
|
|
Date renewExpiryTime = null;
|
|
|
@@ -142,12 +142,12 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
isUpgrade = true;
|
|
|
}
|
|
|
}
|
|
|
- generateOrUpdateClaudeCodeUser(relationUserId, relationId, claudeDailyLimit, claudeQuota, expiryTime, isUpgrade, orderId, skuId, renewExpiryTime, sku.getSpecVal(), userIdList);
|
|
|
+ generateOrUpdateClaudeCodeUser(relationUserId, relationId, claudeDailyLimit, claudePermanentBalance, expiryTime, isUpgrade, orderId, skuId, renewExpiryTime, sku.getSpecVal(), userIdList);
|
|
|
try {
|
|
|
//获取最新的claude code user
|
|
|
claudeCodeUser = claudeCodeUserMapper.selectOne(Wrappers.lambdaQuery(ClaudeCodeUser.class).eq(ClaudeCodeUser::getRelationId, relationId).last("limit 1"));
|
|
|
//生成claude code或更新用户套餐
|
|
|
- ClaudeCodeResp codeUserPackage = createOrUpdateClaudeCodeUserPackage(relation.getUserId(), claudeCodeUser.getPlanName(), claudeCodeUser.getClaudeDailyLimit(), claudeCodeUser.getClaudeQuota(), claudeCodeUser.getExpiryTime(), claudeCodeUser.getRelationId(), sku);
|
|
|
+ ClaudeCodeResp codeUserPackage = createOrUpdateClaudeCodeUserPackage(relation.getUserId(), claudeCodeUser.getPlanName(), claudeCodeUser.getClaudeDailyLimit(), claudeCodeUser.getClaudePermanentBalance(), claudeCodeUser.getExpiryTime(), claudeCodeUser.getRelationId(), sku);
|
|
|
if (!Constant.SUCCESS.equals(codeUserPackage.getMessage())) {
|
|
|
//重试更新code userInfo数据
|
|
|
setClaudeCodeUserRetryUpdateInfo(relationId);
|
|
|
@@ -164,7 +164,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void generateOrUpdateClaudeCodeUser(Long relationUserId, Long relationId, Integer claudeDailyLimit, Integer claudeQuota, Date expiryTime, Boolean isUpgrade, Long orderId, Long renewSkuId, Date renewExpiryTime, String planName, List<Long> userIdList) {
|
|
|
+ private void generateOrUpdateClaudeCodeUser(Long relationUserId, Long relationId, Integer claudeDailyLimit, Integer claudePermanentBalance, Date expiryTime, Boolean isUpgrade, Long orderId, Long renewSkuId, Date renewExpiryTime, String planName, List<Long> userIdList) {
|
|
|
ClaudeCodeUser claudeCodeUser = claudeCodeUserMapper.selectOne(Wrappers.lambdaQuery(ClaudeCodeUser.class).eq(ClaudeCodeUser::getRelationId, relationId).last("limit 1"));
|
|
|
if (claudeCodeUser == null) {
|
|
|
claudeCodeUser = new ClaudeCodeUser();
|
|
|
@@ -175,7 +175,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
claudeCodeUser.setRenewExpiryTime(renewExpiryTime);
|
|
|
claudeCodeUser.setPlanName(planName);
|
|
|
claudeCodeUser.setClaudeDailyLimit(claudeDailyLimit);
|
|
|
- claudeCodeUser.setClaudeQuota(claudeQuota);
|
|
|
+ claudeCodeUser.setClaudePermanentBalance(claudePermanentBalance);
|
|
|
}
|
|
|
claudeCodeUser.setUserId(relationUserId);
|
|
|
claudeCodeUser.setRelationId(relationId);
|
|
|
@@ -183,7 +183,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
if (claudeCodeUser.getId() == null) {
|
|
|
claudeCodeUser.setPlanName(planName);
|
|
|
claudeCodeUser.setClaudeDailyLimit(claudeDailyLimit);
|
|
|
- claudeCodeUser.setClaudeQuota(claudeQuota);
|
|
|
+ claudeCodeUser.setClaudePermanentBalance(claudePermanentBalance);
|
|
|
//可重置次数
|
|
|
Integer resetCount = claudeCodeUserResetRecordMapper.getUserResetCountByUserIds(userIdList);
|
|
|
if (resetCount != null && resetCount > 0) {
|
|
|
@@ -344,7 +344,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
//是否需要重试更新 cladueCode userInfo信息
|
|
|
if (claudeCodeUser.getIsRetry()) {
|
|
|
try {
|
|
|
- ClaudeCodeResp codeUserPackage = createOrUpdateClaudeCodeUserPackage(claudeCodeUser.getUserId(), claudeCodeUser.getPlanName(), claudeCodeUser.getClaudeDailyLimit(), claudeCodeUser.getClaudeQuota(), claudeCodeUser.getExpiryTime(), claudeCodeUser.getRelationId(), sku);
|
|
|
+ ClaudeCodeResp codeUserPackage = createOrUpdateClaudeCodeUserPackage(claudeCodeUser.getUserId(), claudeCodeUser.getPlanName(), claudeCodeUser.getClaudeDailyLimit(), claudeCodeUser.getClaudePermanentBalance(), claudeCodeUser.getExpiryTime(), claudeCodeUser.getRelationId(), sku);
|
|
|
if (!Constant.SUCCESS.equals(codeUserPackage.getMessage())) {
|
|
|
claudeCodeUser.setIsRetry(Boolean.TRUE);
|
|
|
claudeCodeUserMapper.updateById(claudeCodeUser);
|
|
|
@@ -365,7 +365,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
.relationId(claudeCodeUser.getRelationId())
|
|
|
.planName(sku.getCodexPlanName())
|
|
|
.openaiDailyLimit(sku.getOpenaiDailyLimit())
|
|
|
- .openaiQuota(sku.getOpenaiQuota())
|
|
|
+ .openaiPermanentBalance(sku.getOpenaiPermanentBalance())
|
|
|
.expiryTime(claudeCodeUser.getExpiryTime()).build();
|
|
|
codexService.createOrUpdateUserPackage(codexPackageReq);
|
|
|
}
|
|
|
@@ -374,7 +374,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
.planName(claudeCodeUser.getPlanName())
|
|
|
.relationId(claudeCodeUser.getRelationId())
|
|
|
.claudeDailyLimit(claudeCodeUser.getClaudeDailyLimit())
|
|
|
- .claudeQuota(claudeCodeUser.getClaudeQuota())
|
|
|
+ .claudePermanentBalance(claudeCodeUser.getClaudePermanentBalance())
|
|
|
.expiryTime(claudeCodeUser.getExpiryTime())
|
|
|
.skuId(groupsRelationMirrorView.getSkuId())
|
|
|
.renewSkuId(claudeCodeUser.getRenewSkuId())
|
|
|
@@ -384,16 +384,16 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
.build();
|
|
|
}
|
|
|
|
|
|
- public ClaudeCodeResp createOrUpdateClaudeCodeUserPackage(Long userId, String planName, Integer claudeDailyLimit, Integer claudeQuota, Date expiryTime, Long relationId, GoodsDonSku sku) throws Exception {
|
|
|
+ public ClaudeCodeResp createOrUpdateClaudeCodeUserPackage(Long userId, String planName, Integer claudeDailyLimit, Integer claudePermanentBalance, Date expiryTime, Long relationId, GoodsDonSku sku) throws Exception {
|
|
|
Map<String, Object> parmas = new HashMap<>();
|
|
|
parmas.put("plan_name", planName.replaceAll(";", ""));
|
|
|
parmas.put("claude_daily_limit", claudeDailyLimit);
|
|
|
- parmas.put("claude_quota", claudeQuota);
|
|
|
+ parmas.put("claude_quota", claudePermanentBalance);
|
|
|
//服务类型
|
|
|
parmas.put("service_type", "claude");
|
|
|
if (sku != null && sku.getIsCodex()) {
|
|
|
parmas.put("openai_daily_limit", sku.getOpenaiDailyLimit());
|
|
|
- parmas.put("openai_quota", sku.getOpenaiQuota());
|
|
|
+ parmas.put("openai_quota", sku.getOpenaiPermanentBalance());
|
|
|
//组合
|
|
|
parmas.put("service_type", "combined");
|
|
|
} else {
|
|
|
@@ -415,7 +415,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
.relationId(relationId)
|
|
|
.planName(sku.getCodexPlanName())
|
|
|
.openaiDailyLimit(sku.getOpenaiDailyLimit())
|
|
|
- .openaiQuota(sku.getOpenaiQuota())
|
|
|
+ .openaiPermanentBalance(sku.getOpenaiPermanentBalance())
|
|
|
.expiryTime(expiryTime).build();
|
|
|
codexService.createOrUpdateUserPackage(codexPackageReq);
|
|
|
} else {
|
|
|
@@ -441,7 +441,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
@Override
|
|
|
public void updateClaudeCodeUserPackageInfo(ClaudeCodeUser claudeCodeUser, Date expiryTime, GoodsDonSku sku) {
|
|
|
try {
|
|
|
- ClaudeCodeResp codeUserPackage = createOrUpdateClaudeCodeUserPackage(claudeCodeUser.getUserId(), claudeCodeUser.getPlanName(), claudeCodeUser.getClaudeDailyLimit(), claudeCodeUser.getClaudeQuota(), expiryTime, claudeCodeUser.getRelationId(), sku);
|
|
|
+ ClaudeCodeResp codeUserPackage = createOrUpdateClaudeCodeUserPackage(claudeCodeUser.getUserId(), claudeCodeUser.getPlanName(), claudeCodeUser.getClaudeDailyLimit(), claudeCodeUser.getClaudePermanentBalance(), expiryTime, claudeCodeUser.getRelationId(), sku);
|
|
|
if (!Constant.SUCCESS.equals(codeUserPackage.getMessage())) {
|
|
|
//重试标记
|
|
|
claudeCodeUser.setIsRetry(Boolean.TRUE);
|
|
|
@@ -1056,7 +1056,7 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
|
|
|
if (relationPresentSku == null) {
|
|
|
relationPresentSku = skuMapper.selectById(relationView.getSkuId());
|
|
|
}
|
|
|
- if (upgradeSku.getClaudeQuota().intValue() < relationPresentSku.getClaudeQuota().intValue()) {
|
|
|
+ if (upgradeSku.getClaudePermanentBalance().intValue() < relationPresentSku.getClaudePermanentBalance().intValue()) {
|
|
|
claudeCodeDeductDto.setDeductMoney(BigDecimal.ZERO);
|
|
|
return claudeCodeDeductDto;
|
|
|
}
|