zwhui před 2 roky
rodič
revize
e1a784eb23

+ 7 - 17
netflix-service/src/main/java/com/cyksj/service/midjourney/impl/MidjourneyServiceImpl.java

@@ -13,8 +13,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.cyksj.common.EnvCommonService;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.common.task.GlobalThreadPoolTaskExecutor;
-import com.cyksj.common.util.Codec;
-import com.cyksj.common.util.J11HttpC;
 import com.cyksj.common.util.Jsons;
 import com.cyksj.common.util.StringUtil;
 import com.cyksj.mapper.MidjourneyUserConversationMapper;
@@ -34,20 +32,11 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
-import javax.imageio.ImageIO;
 import javax.imageio.stream.FileImageOutputStream;
-import java.awt.image.BufferedImage;
 import java.io.*;
-import java.net.URI;
-import java.net.URLEncoder;
-import java.net.http.HttpResponse;
-import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Path;
-import java.security.MessageDigest;
-import java.time.ZoneOffset;
 import java.util.*;
-import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.stream.Collectors;
 
 /**
@@ -182,16 +171,17 @@ public class MidjourneyServiceImpl implements MidjourneyService {
     /**
      * 恢复次数
      */
-    public Long recoverUserLimit(Long id,Integer mode,Long num){
+    public void recoverUserLimit(Long id,Integer mode,Long num){
         if (mode == 1){
-            num =  redisService.incr(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + id, 1L);
+            redisService.incr(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + id, 1L);
+            midjourneyUserMapper.incrFastNum(id, 1);
         }
         if (mode == 2){
-            if (num != null) {
-                num = redisService.incr(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + id, 1L);
+            if (num != null){
+                redisService.incr(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + id, 1L);
+                midjourneyUserMapper.incrRelaxNum(id, 1);
             }
         }
-        return num;
     }
 //    /**
 //     * 同步数据库
@@ -234,6 +224,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
         if (customId.contains("BOOKMARK")) {
             conversation.setBookmark(true);
             conversationMapper.updateById(conversation);
+            recoverUserLimit(user.getId(), user.getMode(),num);
             return null;
         }
         Map<String, Object> param = MapUtil.builder(new HashMap<String,Object>())
@@ -296,7 +287,6 @@ public class MidjourneyServiceImpl implements MidjourneyService {
             log.error("action:" + action + " error message:" + submitResult.getDescription());
             throw BusinessRuntimeException.getInstance("队列已满,请稍后尝试");
         }
-        // 增加使用次数
         if (StringUtils.isNotBlank(accountWithMinUsage) && mode == 2) {
             submitResult.setInstanceId(Long.valueOf(accountWithMinUsage));
         }