zoujiajian 11 months ago
parent
commit
5338513af2

+ 1 - 1
netflix-service/src/main/java/com/cyksj/service/claude/ClaudeCodeService.java

@@ -136,7 +136,7 @@ public interface ClaudeCodeService {
 	/**
 	 * 获取用户奖励明细
 	 */
-	ClaudeCodeRewardDetailsResp getUserRewardDetails(Long userId);
+	ClaudeCodeRewardDetailsResp getUserRewardDetails(Long userId, Boolean general);
 
 	/**
 	 * 发送积分卡

+ 46 - 44
netflix-service/src/main/java/com/cyksj/service/claude/impl/ClaudeCodeServiceImpl.java

@@ -885,16 +885,16 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
 	}
 
 	@Override
-	public ClaudeCodeRewardDetailsResp getUserRewardDetails(Long userId) {
+	public ClaudeCodeRewardDetailsResp getUserRewardDetails(Long userId, Boolean general) {
 		List<Long> userIdList = userBindRelationService.getRelationUserIdList(userId, null);
 
 		ClaudeCodeRewardDetailsResp response = new ClaudeCodeRewardDetailsResp();
 
 		// 获取用户Claude Code信息
 		ClaudeCodeUser claudeCodeUser = claudeCodeUserMapper.selectOne(
-			Wrappers.lambdaQuery(ClaudeCodeUser.class)
-				.in(ClaudeCodeUser::getUserId, userIdList)
-				.last("limit 1")
+				Wrappers.lambdaQuery(ClaudeCodeUser.class)
+						.in(ClaudeCodeUser::getUserId, userIdList)
+						.last("limit 1")
 		);
 
 		// 设置可重置次数
@@ -907,55 +907,57 @@ public class ClaudeCodeServiceImpl implements ClaudeCodeService {
 
 		// 获取可用积分卡数量
 		Integer availableCreditCards = claudeCodeCreditCardMapper.selectCount(
-			Wrappers.lambdaQuery(ClaudeCodeCreditCard.class)
-				.eq(ClaudeCodeCreditCard::getStatus, 0)
-					.in(ClaudeCodeCreditCard::getUserId,userIdList)
-				.isNull(ClaudeCodeCreditCard::getUsedUserId)
+				Wrappers.lambdaQuery(ClaudeCodeCreditCard.class)
+						.eq(ClaudeCodeCreditCard::getStatus, 0)
+						.in(ClaudeCodeCreditCard::getUserId, userIdList)
+						.isNull(ClaudeCodeCreditCard::getUsedUserId)
 		);
 		response.setAvailableCreditCards(availableCreditCards != null ? availableCreditCards : 0);
-		//提现门槛
-		DistributePointsExchangeMoney distributePointsExchangeMoney = distributePointsExchangeMoneyMapper.selectOne(Wrappers.lambdaQuery(DistributePointsExchangeMoney.class).last("limit 1"));
-		response.setThresholdMoney(BigDecimal.valueOf(distributePointsExchangeMoney.getMinPoints()).divide(BigDecimal.valueOf(distributePointsExchangeMoney.getPoints())).multiply(distributePointsExchangeMoney.getMoney()));
+		//是否是普通推广
+		if (general != null && general) {
+			//提现门槛
+			DistributePointsExchangeMoney distributePointsExchangeMoney = distributePointsExchangeMoneyMapper.selectOne(Wrappers.lambdaQuery(DistributePointsExchangeMoney.class).last("limit 1"));
+			response.setThresholdMoney(BigDecimal.valueOf(distributePointsExchangeMoney.getMinPoints()).divide(BigDecimal.valueOf(distributePointsExchangeMoney.getPoints())).multiply(distributePointsExchangeMoney.getMoney()));
 
-		// 获取分销相关数据
-		try {
-			User user = userMapper.selectById(userId);
-			List<DistributeWaitingSendPoints> distributeWaitingSendPoints = distributeWaitingSendPointsMapper.selectList(Wrappers.lambdaQuery(DistributeWaitingSendPoints.class).eq(DistributeWaitingSendPoints::getSendStatus, DistributeWaitingSendPoints.Status.waiting).eq(DistributeWaitingSendPoints::getSharedId, userId).select(DistributeWaitingSendPoints::getPoints));
-			BigDecimal waitingPoints = BigDecimal.ZERO;
-			if (!distributeWaitingSendPoints.isEmpty()) {
-				Optional<BigDecimal> points = distributeWaitingSendPoints.stream().map(DistributeWaitingSendPoints::getPoints).reduce(BigDecimal::add);
-				if (points.isPresent()) {
-					waitingPoints = points.get();
+			// 获取分销相关数据
+			try {
+				User user = userMapper.selectById(userId);
+				List<DistributeWaitingSendPoints> distributeWaitingSendPoints = distributeWaitingSendPointsMapper.selectList(Wrappers.lambdaQuery(DistributeWaitingSendPoints.class).eq(DistributeWaitingSendPoints::getSendStatus, DistributeWaitingSendPoints.Status.waiting).eq(DistributeWaitingSendPoints::getSharedId, userId).select(DistributeWaitingSendPoints::getPoints));
+				BigDecimal waitingPoints = BigDecimal.ZERO;
+				if (!distributeWaitingSendPoints.isEmpty()) {
+					Optional<BigDecimal> points = distributeWaitingSendPoints.stream().map(DistributeWaitingSendPoints::getPoints).reduce(BigDecimal::add);
+					if (points.isPresent()) {
+						waitingPoints = points.get();
+					}
+				}
+				GoodsDon goodsDon = goodsDonMapper.selectById(Constant.CLAUDE_CODE_GOODS_ID);
+				//cc 分销平台比例
+				if (goodsDon != null) {
+					response.setRate(goodsDon.getRate());
 				}
-			}
-			GoodsDon goodsDon = goodsDonMapper.selectById(Constant.CLAUDE_CODE_GOODS_ID);
-			//cc 分销平台比例
-			if (goodsDon != null) {
-				response.setRate(goodsDon.getRate());
-			}
 
-			if (user.getPoints().compareTo(BigDecimal.ZERO) <= 0 && waitingPoints.compareTo(BigDecimal.ZERO) <= 0) {
+				if (user.getPoints().compareTo(BigDecimal.ZERO) <= 0 && waitingPoints.compareTo(BigDecimal.ZERO) <= 0) {
+					response.setGotMoney(BigDecimal.ZERO);
+					response.setWaitingMoney(BigDecimal.ZERO);
+				} else {
+					BigDecimal points = BigDecimal.valueOf(distributePointsExchangeMoney.getPoints());
+					BigDecimal money = distributePointsExchangeMoney.getMoney();
+					BigDecimal oneHundred = BigDecimal.valueOf(100);
+					if (user.getPoints().compareTo(BigDecimal.ZERO) >= 0) {
+						response.setGotMoney(user.getPoints().divide(points).multiply(money).divide(oneHundred, 2, RoundingMode.HALF_DOWN));
+					}
+					if (user.getPoints().compareTo(BigDecimal.ZERO) >= 0) {
+						response.setWaitingMoney(waitingPoints.divide(points).multiply(money).divide(oneHundred, 2, RoundingMode.DOWN));
+					}
+				}
+
+			} catch (Exception e) {
+				log.warn("获取用户{}分销数据异常", userId, e);
+				// 设置默认值
 				response.setGotMoney(BigDecimal.ZERO);
 				response.setWaitingMoney(BigDecimal.ZERO);
-			} else {
-				BigDecimal points = BigDecimal.valueOf(distributePointsExchangeMoney.getPoints());
-				BigDecimal money = distributePointsExchangeMoney.getMoney();
-				BigDecimal oneHundred = BigDecimal.valueOf(100);
-				if (user.getPoints().compareTo(BigDecimal.ZERO) >= 0) {
-					response.setGotMoney(user.getPoints().divide(points).multiply(money).divide(oneHundred, 2, RoundingMode.HALF_DOWN));
-				}
-				if (user.getPoints().compareTo(BigDecimal.ZERO) >= 0) {
-					response.setWaitingMoney(waitingPoints.divide(points).multiply(money).divide(oneHundred, 2, RoundingMode.DOWN));
-				}
 			}
-
-		} catch (Exception e) {
-			log.warn("获取用户{}分销数据异常", userId, e);
-			// 设置默认值
-			response.setGotMoney(BigDecimal.ZERO);
-			response.setWaitingMoney(BigDecimal.ZERO);
 		}
-
 		return response;
 	}
 

+ 2 - 2
netflix-web/src/main/java/com/cyksj/web/controller/claude/ClaudeCodeController.java

@@ -544,9 +544,9 @@ public class ClaudeCodeController {
 	 * 获取用户奖励ino
 	 */
 	@GetMapping("/reward-details")
-	public Result<ClaudeCodeRewardDetailsResp> getUserRewardDetails() {
+	public Result<ClaudeCodeRewardDetailsResp> getUserRewardDetails(Boolean general) {
 		long userId = StpUserUtil.getLoginIdAsLong();
-		ClaudeCodeRewardDetailsResp result = claudeCodeService.getUserRewardDetails(userId);
+		ClaudeCodeRewardDetailsResp result = claudeCodeService.getUserRewardDetails(userId, general);
 		return GatewayResponse.SUCCESS.newBuilder().toResult(result);
 	}