CodexService.java 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.cyksj.service.codex;
  2. import com.cyksj.model.entity.CodexUser;
  3. import com.cyksj.model.entity.GoodsDonSku;
  4. import com.cyksj.model.entity.OrderDon;
  5. import com.cyksj.model.request.CodexUpgradePayReq;
  6. import com.cyksj.model.request.UpdateDailyLimitRequest;
  7. import com.cyksj.model.request.codex.CodexUserPackageReq;
  8. import com.cyksj.model.response.CodexDeductResp;
  9. import com.cyksj.model.response.claudecode.ClaudeCodeResp;
  10. import com.cyksj.model.views.CodexUserInfoView;
  11. import java.util.Date;
  12. /**
  13. * 项目名: yhlxj11111111
  14. * 文件名: CodexService
  15. * 创建者: Claude
  16. * 创建时间:2025/9/15
  17. */
  18. public interface CodexService {
  19. /**
  20. * 获取用户Codex信息
  21. */
  22. CodexUserInfoView getCodexUserInfo(Long userId);
  23. /**
  24. * 创建或更新用户套餐
  25. */
  26. void createOrUpdateUserPackage(CodexUserPackageReq req);
  27. /**
  28. * 获取用户OpenAI使用统计
  29. */
  30. ClaudeCodeResp getUserOpenAIUsage(Long userId, String period);
  31. /**
  32. * 更新用户OpenAI每日美金限额
  33. */
  34. ClaudeCodeResp updateUserOpenAIDailyLimit(Long userId, UpdateDailyLimitRequest request);
  35. /**
  36. * 获取系统OpenAI指标统计
  37. */
  38. ClaudeCodeResp getSystemMetrics(String period, String metric);
  39. /**
  40. * 获取Java系统专用的用户OpenAI控制台数据
  41. */
  42. ClaudeCodeResp getJavaUserDashboard(Long userId);
  43. /**
  44. * 获取Java系统专用的用户OpenAI图表+明细联动数据
  45. */
  46. ClaudeCodeResp getJavaUserAnalytics(Long userId, String start, String end, Integer page, Integer limit, String order);
  47. void delCodexUser(Long userId, Long relationId);
  48. void createOrUpdateCodexUserInfo(Long orderId, Long relationId, Long userId, GoodsDonSku sku, Integer orderType);
  49. /**
  50. * 调用第三方api 更新codexUser
  51. */
  52. void updateCodexUserPackageInfo(CodexUser codexUser, Date expiryTime, GoodsDonSku finalSku);
  53. ClaudeCodeResp createOrUpdateCodexUserPackageApi(Long userId, String planName, Integer openaiDailyLimit, Integer openaiQuota, Date expiryTime) throws Exception;
  54. CodexDeductResp getDeductMoney(Long userId, Long relationId);
  55. OrderDon deductSubmitOrder(CodexUpgradePayReq payReq) throws Exception;
  56. }