zwhui 2 лет назад
Родитель
Сommit
21da9aa721

+ 1 - 1
netflix-service/src/main/java/com/cyksj/service/midjourney/MidjourneyAccountService.java

@@ -12,7 +12,7 @@ import java.util.List;
  * @date 2024/4/12 15:54
  * @date 2024/4/12 15:54
  */
  */
 public interface MidjourneyAccountService extends IService<MidjourneyAccount> {
 public interface MidjourneyAccountService extends IService<MidjourneyAccount> {
-    void addAccount(MidjourneyAccount midjourneyAccount);
+    void addAccount(MidjourneyAccount midjourneyAccount) throws Exception;
 
 
     void removeAccount(Long id);
     void removeAccount(Long id);
 
 

+ 12 - 9
netflix-service/src/main/java/com/cyksj/service/midjourney/impl/MidJourneyAccountServiceImpl.java

@@ -1,6 +1,7 @@
 package com.cyksj.service.midjourney.impl;
 package com.cyksj.service.midjourney.impl;
 
 
 import cn.hutool.core.lang.UUID;
 import cn.hutool.core.lang.UUID;
+import cn.hutool.core.map.MapUtil;
 import cn.hutool.http.HttpRequest;
 import cn.hutool.http.HttpRequest;
 import cn.hutool.http.HttpUtil;
 import cn.hutool.http.HttpUtil;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONObject;
@@ -8,6 +9,7 @@ import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.common.exception.BusinessRuntimeException;
+import com.cyksj.common.util.Jsons;
 import com.cyksj.common.util.StringUtil;
 import com.cyksj.common.util.StringUtil;
 import com.cyksj.mapper.*;
 import com.cyksj.mapper.*;
 import com.cyksj.model.entity.*;
 import com.cyksj.model.entity.*;
@@ -17,6 +19,7 @@ import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.dao.DuplicateKeyException;
 import org.springframework.dao.DuplicateKeyException;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 
 import javax.imageio.stream.FileImageOutputStream;
 import javax.imageio.stream.FileImageOutputStream;
 import java.io.IOException;
 import java.io.IOException;
@@ -50,7 +53,8 @@ public class MidJourneyAccountServiceImpl extends ServiceImpl<MidjourneyAccountM
     private final MidjourneyUserMapper midjourneyUserMapper;
     private final MidjourneyUserMapper midjourneyUserMapper;
 
 
     @Override
     @Override
-    public void addAccount(MidjourneyAccount midjourneyAccount) {
+    @Transactional(rollbackFor = Throwable.class)
+    public void addAccount(MidjourneyAccount midjourneyAccount) throws Exception {
         baseMapper.insert(midjourneyAccount);
         baseMapper.insert(midjourneyAccount);
         addAcount(midjourneyAccount);
         addAcount(midjourneyAccount);
         //拉取plus服务账号实例id
         //拉取plus服务账号实例id
@@ -60,6 +64,7 @@ public class MidJourneyAccountServiceImpl extends ServiceImpl<MidjourneyAccountM
     }
     }
 
 
     @Override
     @Override
+    @Transactional(rollbackFor = Throwable.class)
     public void removeAccount(Long id) {
     public void removeAccount(Long id) {
         MidjourneyAccount midjourneyAccount = baseMapper.selectById(id);
         MidjourneyAccount midjourneyAccount = baseMapper.selectById(id);
         if (midjourneyAccount == null) {
         if (midjourneyAccount == null) {
@@ -71,6 +76,7 @@ public class MidJourneyAccountServiceImpl extends ServiceImpl<MidjourneyAccountM
     }
     }
 
 
     @Override
     @Override
+    @Transactional(rollbackFor = Throwable.class)
     public void updateAccount(MidjourneyAccount midjourneyAccount) {
     public void updateAccount(MidjourneyAccount midjourneyAccount) {
         baseMapper.updateById(midjourneyAccount);
         baseMapper.updateById(midjourneyAccount);
         updAccount(midjourneyAccount);
         updAccount(midjourneyAccount);
@@ -97,9 +103,10 @@ public class MidJourneyAccountServiceImpl extends ServiceImpl<MidjourneyAccountM
         baseMapper.updateById(midjourneyAccount);
         baseMapper.updateById(midjourneyAccount);
     }
     }
 
 
-    private void addAcount(MidjourneyAccount midjourneyAccount) {
+
+    private void addAcount(MidjourneyAccount midjourneyAccount) throws Exception {
         Map<String, Object> accountParam = createAccountParam(midjourneyAccount);
         Map<String, Object> accountParam = createAccountParam(midjourneyAccount);
-        String body = HttpUtil.post(HOST + "/mj/account/create", accountParam);
+        String body = HttpRequest.post(HOST + "/mj/account/create").body(Jsons.toJson(accountParam)).execute().body();
         log.info("addAccount body:{}", body);
         log.info("addAccount body:{}", body);
         JSONObject jsonObject = JSONUtil.parseObj(body);
         JSONObject jsonObject = JSONUtil.parseObj(body);
         if (jsonObject.getInt("code") != 1) {
         if (jsonObject.getInt("code") != 1) {
@@ -125,14 +132,10 @@ public class MidJourneyAccountServiceImpl extends ServiceImpl<MidjourneyAccountM
         }
         }
     }
     }
 
 
-    private Long getAccount(Long id) {
-        String body = HttpRequest.post(HOST + "/mj/account/query").form("remark",id).execute().body();
+    private Long getAccount(Long id) throws Exception {
+        String body = HttpRequest.post(HOST + "/mj/account/query").body(Jsons.toJson(MapUtil.of("remark", id))).execute().body();
         log.info("getAccount body:{}", body);
         log.info("getAccount body:{}", body);
         JSONObject jsonObject = JSONUtil.parseObj(body);
         JSONObject jsonObject = JSONUtil.parseObj(body);
-        if (jsonObject.getInt("code") != 1) {
-            throw BusinessRuntimeException.getInstance("getAccount error message:" + jsonObject.getStr("description"));
-        }
-
         return JSONUtil.parseObj(JSONUtil.parseArray(jsonObject.getStr("content")).get(0)).get("id", Long.class);
         return JSONUtil.parseObj(JSONUtil.parseArray(jsonObject.getStr("content")).get(0)).get("id", Long.class);
     }
     }
 
 

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

@@ -47,7 +47,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
 
 
     private final MidjourneyUserConversationMapper conversationMapper;
     private final MidjourneyUserConversationMapper conversationMapper;
 
 
-    private static final List<String> progress = Arrays.asList("25%", "45%", "75%", "100%");
+    private static final List<String> progress = Arrays.asList("25%","35%", "45%","65%", "75%", "85%", "95%","100%");
 
 
     private static final GlobalThreadPoolTaskExecutor TASK_EXECUTOR = GlobalThreadPoolTaskExecutor.getInstance();
     private static final GlobalThreadPoolTaskExecutor TASK_EXECUTOR = GlobalThreadPoolTaskExecutor.getInstance();
 
 
@@ -182,7 +182,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
                     .eq(MidjourneyUserConversation::getUserId, conversation.getUserId()).last("limit 1"));
                     .eq(MidjourneyUserConversation::getUserId, conversation.getUserId()).last("limit 1"));
             if (dbConversation != null) {
             if (dbConversation != null) {
                 if (StringUtils.isNotBlank(conversation.getImageUrl())) {
                 if (StringUtils.isNotBlank(conversation.getImageUrl())) {
-                    dbConversation.setImageUrl(uploadPic(conversation.getImageUrl(), "conversation"+dbConversation.getId()));
+                    conversation.setImageUrl(uploadPic(conversation.getImageUrl(), "conversation"+dbConversation.getId()));
                 }
                 }
                 conversation.setId(dbConversation.getId());
                 conversation.setId(dbConversation.getId());
                 conversationMapper.updateById(conversation);
                 conversationMapper.updateById(conversation);

+ 1 - 1
netflix-web/src/main/java/com/cyksj/web/controller/manage/mj/MidJourneyController.java

@@ -39,7 +39,7 @@ public class MidJourneyController {
      * 移入MJ账号池
      * 移入MJ账号池
      */
      */
     @PostMapping("/addAccount")
     @PostMapping("/addAccount")
-    public Result<Void> addAccount(@RequestBody MidjourneyAccount midjourneyAccount) {
+    public Result<Void> addAccount(@RequestBody MidjourneyAccount midjourneyAccount) throws Exception {
         log.info("移入MJ账号池 midjourneyAccount:{}", midjourneyAccount);
         log.info("移入MJ账号池 midjourneyAccount:{}", midjourneyAccount);
         midjourneyAccountService.addAccount(midjourneyAccount);
         midjourneyAccountService.addAccount(midjourneyAccount);
         return GatewayResponse.SUCCESS.newBuilder().toResult();
         return GatewayResponse.SUCCESS.newBuilder().toResult();