瀏覽代碼

gpt o1 使用次数

chenbiao 1 年之前
父節點
當前提交
ba1d1b12b8

+ 11 - 0
netflix-dao/src/main/java/com/cyksj/model/views/ChatGptUserView.java

@@ -39,6 +39,17 @@ public class ChatGptUserView {
      */
     private Long use;
 
+
+    /**
+     * o1-p
+     */
+    private Long o1PUse;
+
+    /**
+     * o1-mini
+     */
+    private Long o1MiniUse;
+
     /**
      * 是否可升级套餐
      */

+ 19 - 2
netflix-service/src/main/java/com/cyksj/service/chatgpt/impl/ChatGptAccountServiceImpl.java

@@ -373,6 +373,15 @@ public class ChatGptAccountServiceImpl implements ChatGptAccountService {
         }
     }
 
+    public JSONObject getConversationCount(String userToken) {
+        try {
+            String res = HttpUtil.get("http://154.198.213.52:9611/getConversationCount?userToken=" + userToken);
+            return new JSONObject(res);
+        }catch (Exception e){
+            return null;
+        }
+    }
+
 
     @Override
     public ChatgptSession checkSession(String carId) {
@@ -547,7 +556,9 @@ public class ChatGptAccountServiceImpl implements ChatGptAccountService {
                 UpgradePackage upgradePackage = upgradePackageMapper.selectById(chatgptUser.getPackageId());
                 packagePrice = upgradePackage.getPrice();
             }
-            return ChatGptUserView.builder()
+            JSONObject conversationCount = getConversationCount(chatgptUser.getUserToken());
+
+            ChatGptUserView view = ChatGptUserView.builder()
                     .skuName(goodsDonSku.getSubTitle())
                     .expireTime(chatgptUser.getExpireTime())
                     .limitNum(chatgptUser.getLimitNum())
@@ -557,17 +568,23 @@ public class ChatGptAccountServiceImpl implements ChatGptAccountService {
                     .goodsId(goodsDonSku.getGoodsId())
                     .skuId(goodsDonSku.getId())
                     .months(goodsDonSku.getMonths())
-                    .use(Math.min(chatgptUser.getLimitNum(), getConversationCount(chatgptUser.getUserToken(), chatgptUser.getLimitTime())))
+                    .use(Math.min(chatgptUser.getLimitNum(), conversationCount.getLong("count")))
                     .packageId(chatgptUser.getPackageId())
                     .packagePrice(packagePrice)
                     .isRenewPackage(chatgptUser.getRenewOrderId() != null ? true : false)
                     .renewSkuId(chatgptUser.getRenewSkuId())
                     .renewOrderId(chatgptUser.getRenewOrderId())
                     .build();
+            if (chatgptUser.getLimitNum() > 20) {
+                view.setO1PUse(Math.min(chatgptUser.getLimitNum() < 60 ? 5L : 15L, conversationCount.getLong("o1_p")));
+                view.setO1MiniUse(Math.min(chatgptUser.getLimitNum() < 60 ? 10L : 25L, conversationCount.getLong("o1_mini")));
+            }
+            return view;
         } else {
             throw BusinessRuntimeException.getInstance("您还未购买该车票");
         }
     }
+
     @Override
     public ChatGptUserView getUserInfoWithToken(String userToken) {
         if (checkCarAccountWithToken(userToken)) {