From 3d33d2edc4f97215ffe1ed5a1c4a901280396ce1 Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <913652501@qq.com>
Date: Fri, 12 Jun 2020 16:58:55 +0800
Subject: [PATCH] Merge branch 'dev' of http://192.168.2.240:7070/r/kidgrow-microservices-platform into dev

---
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java |    3 ++-
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java               |   23 +++++++++++++++++++++++
 kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java                         |    9 ++++++---
 kidgrow-business/kidgrow-filecenter/pom.xml                                                                                                    |   11 +++++++++++
 4 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java
new file mode 100644
index 0000000..233b59b
--- /dev/null
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java
@@ -0,0 +1,23 @@
+package com.kidgrow.filecenter.config;
+
+import feign.form.spring.SpringFormEncoder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Primary;
+import org.springframework.context.annotation.Scope;
+
+//@Configuration
+public class FeignMultipartConfig {
+
+    @Bean
+    @Primary
+    @Scope("prototype")
+    public SpringFormEncoder multipartFormEncoder() {
+        return new SpringFormEncoder();
+    }
+
+    @Bean
+    public feign.Logger.Level multipartLoggerLevel() {
+        return feign.Logger.Level.FULL;
+    }
+}
+
diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
index 1e3ff69..030bc28 100644
--- a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
@@ -1,6 +1,7 @@
 package com.kidgrow.filecenter.feign;
 
 import com.kidgrow.common.constant.ServiceNameConstants;
+import com.kidgrow.filecenter.config.FeignMultipartConfig;
 import com.kidgrow.filecenter.feign.fallback.FileServiceFallbackFactory;
 import com.kidgrow.filecenter.model.FileInfo;
 import org.springframework.cloud.openfeign.FeignClient;
@@ -17,7 +18,7 @@
  * @CreateDate: Created in 2020/2/22 14:33 <br>
  * @Author: <a href="4345453@kidgrow.com">liuke</a>
  */
-@FeignClient(name = ServiceNameConstants.FILE_CENTER_SERVER, fallbackFactory = FileServiceFallbackFactory.class, decode404 = true)
+@FeignClient(name = ServiceNameConstants.FILE_CENTER_SERVER, configuration = FeignMultipartConfig.class,fallbackFactory = FileServiceFallbackFactory.class, decode404 = true)
 public interface FileService {
     /**
      * 根据条件查询
@@ -30,6 +31,8 @@
      * 根据条件查询
      * @param file
      */
-    @PostMapping(value = "/files-upload",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
-    FileInfo feignUpload(MultipartFile file);
+    @PostMapping(value = "/files-upload",produces = {MediaType.APPLICATION_JSON_UTF8_VALUE},consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+    FileInfo feignUpload(@RequestPart("file") MultipartFile file);
+
+
 }
diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
index d516700..fc724c6 100644
--- a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
+++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
@@ -7,6 +7,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RequestPart;
 import org.springframework.web.multipart.MultipartFile;
 
 /**
@@ -29,7 +30,7 @@
                 return null;
             }
             @Override
-            public FileInfo feignUpload(MultipartFile file) {
+            public FileInfo feignUpload(@RequestPart("file") MultipartFile file) {
                 return null;
             }
         };
diff --git a/kidgrow-business/kidgrow-filecenter/pom.xml b/kidgrow-business/kidgrow-filecenter/pom.xml
index 5267404..a9e9609 100644
--- a/kidgrow-business/kidgrow-filecenter/pom.xml
+++ b/kidgrow-business/kidgrow-filecenter/pom.xml
@@ -21,6 +21,17 @@
 
     <dependencies>
         <dependency>
+            <groupId>io.github.openfeign.form</groupId>
+            <artifactId>feign-form</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>io.github.openfeign.form</groupId>
+            <artifactId>feign-form-spring</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+        <dependency>
             <groupId>com.kidgrow</groupId>
             <artifactId>kidgrow-common-spring-boot-starter</artifactId>
         </dependency>

--
Gitblit v1.8.0