zwhui 2 lat temu
rodzic
commit
4b1c630024

+ 0 - 3
netflix-dao/src/main/java/com/cyksj/model/entity/MidjourneyUser.java

@@ -28,19 +28,16 @@ public class MidjourneyUser extends BaseEntity{
     /**
      * 用户凭证
      */
-    @TableField("userToken")
     private String userToken;
 
     /**
      * 过期时间
      */
-    @TableField("expireTime")
     private Date expireTime;
 
     /**
      * 车票id
      */
-    @TableField("relationId")
     private Long relationId;
 
     /**

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

@@ -21,7 +21,7 @@ public interface MidjourneyService {
 
     MidjourneyUserConversation submitShorten(MidjourneyUser user, String prompt) throws Exception;
 
-    List<MidjourneyUserConversation> listConversationByIds(MidjourneyUser user, List<Long> ids);
+    List<MidjourneyUserConversation> listConversationByIds(Integer mode, List<Long> ids) throws Exception;
 
     MidjourneyUserConversation submitAction(MidjourneyUser user, Long taskId, String customId) throws Exception;
 

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

@@ -23,6 +23,7 @@ import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 import javax.imageio.stream.FileImageOutputStream;
 import java.io.IOException;
@@ -59,15 +60,18 @@ public class MidjourneyServiceImpl implements MidjourneyService {
             imagineParam.put("base64Array", base64Array);
         }
         SubmitResult result = submit(user.getMode(),"imagine", imagineParam);
-        return saveConversation(user.getId(), Long.parseLong(result.getResult()),result.getProperties(),"IMAGINE", StringUtils.EMPTY);
+        return saveConversation(user.getId(), user.getMode(),Long.parseLong(result.getResult()),result.getProperties(),"IMAGINE", StringUtils.EMPTY);
     }
 
-    public MidjourneyUserConversation saveConversation(Long userId,Long taskId,Map<String,Object> properties, String action,String prompt) {
+    public MidjourneyUserConversation saveConversation(Long userId,Integer mode,Long taskId,Map<String,Object> properties, String action,String prompt) {
         MidjourneyUserConversation conversation = new MidjourneyUserConversation()
                 .setUserId(userId).setTaskId(taskId).setAction(action).setPrompt(prompt)
-                .setMode(1).setStartTime(System.currentTimeMillis()).setProgress("0%")
-                .setStatus("IN_PROGRESS").setChannelId(Long.parseLong(properties.get("discordChannelId").toString()))
-                .setInstanceId(Long.parseLong(properties.get("discordInstanceId").toString())).setTaskId(taskId);
+                .setMode(mode).setStartTime(System.currentTimeMillis()).setProgress("0%")
+                .setStatus("IN_PROGRESS").setTaskId(taskId);
+        if (MapUtil.isNotEmpty(properties)) {
+            conversation.setChannelId(Long.parseLong(properties.get("discordChannelId").toString()))
+                    .setInstanceId(Long.parseLong(properties.get("discordInstanceId").toString()));
+        }
         conversationMapper.insert(conversation);
         return conversation;
     }
@@ -77,7 +81,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
     public MidjourneyUserConversation submitDescribe(MidjourneyUser user, String base64) throws Exception {
         Map<String, Object> param = MapUtil.builder(new HashMap<String,Object>()).put("state", user.getId()).put("base64", base64).build();
         SubmitResult result = submit(user.getMode(),"describe", param);
-        return saveConversation(user.getId(), Long.parseLong(result.getResult()),result.getProperties(),"DESCRIBE", StringUtils.EMPTY);
+        return saveConversation(user.getId(), user.getMode(),Long.parseLong(result.getResult()),result.getProperties(),"DESCRIBE", StringUtils.EMPTY);
     }
 
     @Override
@@ -88,7 +92,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
             param.put("dimensions", dimensions);
         }
         SubmitResult result = submit(user.getMode(),"blend", param);
-        return saveConversation(user.getId(), Long.parseLong(result.getResult()),result.getProperties(),"BLEND", StringUtils.EMPTY);
+        return saveConversation(user.getId(), user.getMode(), Long.parseLong(result.getResult()),result.getProperties(),"BLEND", StringUtils.EMPTY);
     }
 
     @Override
@@ -102,7 +106,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
             param.put("maskBase64", maskBase64);
         }
         SubmitResult result = submit(user.getMode(),"modal", param);
-        return saveConversation(user.getId(), Long.parseLong(result.getResult()),result.getProperties(),"MODAL", StringUtils.EMPTY);
+        return saveConversation(user.getId(),  user.getMode(),Long.parseLong(result.getResult()),result.getProperties(),"MODAL", StringUtils.EMPTY);
     }
 
     @Override
@@ -110,7 +114,7 @@ public class MidjourneyServiceImpl implements MidjourneyService {
         Map<String, Object> param = MapUtil.builder(new HashMap<String,Object>())
                 .put("prompt", prompt).put("state", user.getId()).build();
         SubmitResult result = submit(user.getMode(),"shorten", param);
-        return saveConversation(user.getId(), Long.parseLong(result.getResult()),result.getProperties(),"SHORTEN", StringUtils.EMPTY);
+        return saveConversation(user.getId(), user.getMode(), Long.parseLong(result.getResult()),result.getProperties(),"SHORTEN", StringUtils.EMPTY);
     }
 
 
@@ -119,12 +123,13 @@ public class MidjourneyServiceImpl implements MidjourneyService {
         Map<String, Object> param = MapUtil.builder(new HashMap<String,Object>())
                 .put("taskId", taskId).put("state", user.getId()).put("customId", customId).build();
         SubmitResult result = submit(user.getMode(),"action", param);
-        return saveConversation(user.getId(), Long.parseLong(result.getResult()),result.getProperties(),"ACTION", StringUtils.EMPTY);
+        return saveConversation(user.getId(), user.getMode(), Long.parseLong(result.getResult()),result.getProperties(),"ACTION", StringUtils.EMPTY);
     }
 
 
     public SubmitResult submit(Integer mode,String action, Map<String, Object> param) throws Exception {
-        String body = HttpRequest.post(mode == 1 ? FAST_HOST : RELAX_HOST + getActionUrl(action)).form(param).header("Authorization", FAST_TOKEN).execute().body();
+        String url = (mode == 1 ? FAST_HOST : RELAX_HOST) + getActionUrl(action);
+        String body = HttpRequest.post(url).body(Jsons.toJson(param)).header("Authorization", FAST_TOKEN).execute().body();
         log.info("action body:{}", body);
         SubmitResult submitResult = Jsons.parseObject(body, SubmitResult.class);
         if (submitResult.getCode() != 1) {
@@ -150,9 +155,9 @@ public class MidjourneyServiceImpl implements MidjourneyService {
         }
     }
     @Override
-    public List<MidjourneyUserConversation> listConversationByIds(MidjourneyUser user, List<Long> ids) {
+    public List<MidjourneyUserConversation> listConversationByIds(Integer mode, List<Long> ids) throws Exception {
         List<MidjourneyUserConversation> list = new ArrayList<>();
-        listByIds(user.getMode(),ids).forEach(json -> {
+        listByIds(mode,ids).forEach(json -> {
             JSONObject jsons = JSONUtil.parseObj(json);
             MidjourneyUserConversation conversation = JSONUtil.toBean(jsons, MidjourneyUserConversation.class);
             conversation.setUserId(jsons.getLong("state"));
@@ -197,9 +202,9 @@ public class MidjourneyServiceImpl implements MidjourneyService {
         JSONObject result = JSONUtil.parseObj(HttpUtil.post("https://files.liuliangbang.vip/pic/ups", paramMap));
         return result.getJSONObject("value").getJSONArray("saved").getJSONObject(0).getJSONObject("info").getStr("cdnUrl");
     }
-    public JSONArray listByIds(Integer mode,List<Long> ids) {
+    public JSONArray listByIds(Integer mode,List<Long> ids) throws Exception {
         Map<String, Object> param = MapUtil.builder(new HashMap<String, Object>()).put("ids", ids).build();
-        String body = HttpRequest.post(mode == 1 ? FAST_HOST : RELAX_HOST + "/mj/task/list-by-condition").header("Authorization", FAST_TOKEN).form(param).execute().body();
+        String body = HttpRequest.post((mode == 1 ? FAST_HOST : RELAX_HOST) + "/mj/task/list-by-condition").header("Authorization", FAST_TOKEN).body(Jsons.toJson(param)).execute().body();
         log.info("listByIds body:{}", body);
         return JSONUtil.parseArray(body);
     }

+ 10 - 10
netflix-web/src/main/java/com/cyksj/web/controller/mirror/MidjourneyController.java

@@ -65,7 +65,7 @@ public class MidjourneyController {
        if (user.getMode() == 2){
            if (user.getMjRelaxNum() != null){
                if (user.getMjRelaxNum() > 0) {
-                   midjourneyUserMapper.update(null, Wrappers.lambdaUpdate(MidjourneyUser.class).set(MidjourneyUser::getMjFastNum, user.getMjFastNum() - 1).eq(MidjourneyUser::getId, user.getId()));
+                   midjourneyUserMapper.update(null, Wrappers.lambdaUpdate(MidjourneyUser.class).set(MidjourneyUser::getMjRelaxNum, user.getMjRelaxNum() - 1).eq(MidjourneyUser::getId, user.getId()));
                }else {
                    flag = false;
                }
@@ -82,8 +82,8 @@ public class MidjourneyController {
      * 提交Imagine任务
      */
     @PostMapping("/submit/imagine")
-    public Result<MidjourneyUserConversation> submitImagine(SubmitImagineDTO submitImagineDTO)throws Exception{
-        log.info("提交Imagine任务,提示:{},base64数组长度:{}",submitImagineDTO.getPrompt(),submitImagineDTO.getBase64Array().size());
+    public Result<MidjourneyUserConversation> submitImagine(@RequestBody SubmitImagineDTO submitImagineDTO)throws Exception{
+        log.info("提交Imagine任务,提示:{},base64数组长度:{}",submitImagineDTO.getPrompt(),submitImagineDTO.getBase64Array());
         MidjourneyUser user = getUser();
         checkUserFast(user);
         return GatewayResponse.SUCCESS.newBuilder().toResult(midjourneyService.submitImagine(user,submitImagineDTO.getPrompt(),submitImagineDTO.getBase64Array()));
@@ -93,7 +93,7 @@ public class MidjourneyController {
      * 提交Describe任务
      */
     @PostMapping("/submit/describe")
-    public Result<MidjourneyUserConversation> submitDescribe(SubmitDescribeDTO submitDescribeDTO)throws Exception{
+    public Result<MidjourneyUserConversation> submitDescribe(@RequestBody SubmitDescribeDTO submitDescribeDTO)throws Exception{
         log.info("提交Describe任务");
         MidjourneyUser user = getUser();
         checkUserFast(user);
@@ -104,7 +104,7 @@ public class MidjourneyController {
      * 提交Blend任务
      */
     @PostMapping("/submit/blend")
-    public Result<MidjourneyUserConversation> submitBlend(SubmitBlendDTO submitBlendDTO) throws Exception{
+    public Result<MidjourneyUserConversation> submitBlend(@RequestBody SubmitBlendDTO submitBlendDTO) throws Exception{
         log.info("提交Blend任务 dimensions:{},base64数组长度:{}", submitBlendDTO.getDimensions(), submitBlendDTO.getBase64Array().size());
         MidjourneyUser user = getUser();
         checkUserFast(user);
@@ -115,7 +115,7 @@ public class MidjourneyController {
      * 提交Modal任务
      */
     @PostMapping("/submit/modal")
-    public Result<MidjourneyUserConversation> submitModal(SubmitModalDTO submitModalDTO) throws Exception{
+    public Result<MidjourneyUserConversation> submitModal(@RequestBody SubmitModalDTO submitModalDTO) throws Exception{
         log.info("提交Modal任务,taskId:{},提示:{},base64数组长度:{}",submitModalDTO.getTaskId(),submitModalDTO.getPrompt(),submitModalDTO.getMaskBase64().length());
         MidjourneyUser user = getUser();
         checkUserFast(user);
@@ -126,7 +126,7 @@ public class MidjourneyController {
      * 提交Shorten任务
      */
     @PostMapping("/submit/shorten")
-    public Result<MidjourneyUserConversation> submitShorten(SubmitShortenDTO submitShortenDTO) throws Exception {
+    public Result<MidjourneyUserConversation> submitShorten(@RequestBody SubmitShortenDTO submitShortenDTO) throws Exception {
         log.info("提交Shorten任务 提示词:{}",submitShortenDTO.getPrompt());
         MidjourneyUser user = getUser();
         checkUserFast(user);
@@ -137,7 +137,7 @@ public class MidjourneyController {
      * 执行动作
      */
     @PostMapping("/submit/action")
-    public Result<MidjourneyUserConversation> action(SubmitActionDTO actionDTO) throws Exception {
+    public Result<MidjourneyUserConversation> action(@RequestBody SubmitActionDTO actionDTO) throws Exception {
         log.info("任务id:{},执行动作:{}",actionDTO.getTaskId(),actionDTO.getCustomId());
         MidjourneyUser user = getUser();
         checkUserFast(user);
@@ -161,10 +161,10 @@ public class MidjourneyController {
      * 根据ids查询会话
      */
     @GetMapping("/conversation/listByIds")
-    public Result<List<MidjourneyUserConversation>> conversationListByIds(@RequestParam(value = "ids" ) List<Long> ids){
+    public Result<List<MidjourneyUserConversation>> conversationListByIds(Integer mode,@RequestParam(value = "ids" ) List<Long> ids) throws Exception {
         MidjourneyUser user = getUser();
         log.info("根据ids查询会话 userId:{}",user.getId());
-        return GatewayResponse.SUCCESS.newBuilder().toResult(midjourneyService.listConversationByIds(user,ids));
+        return GatewayResponse.SUCCESS.newBuilder().toResult(midjourneyService.listConversationByIds(mode,ids));
     }
 
     /**