From 62d277337f838bbc47c82b08f118e58c35f6a0a1 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期五, 28 二月 2020 21:39:31 +0800
Subject: [PATCH] Merge branch 'master' of https://github.com/java110/MicroCommunity

---
 WebService/src/main/java/com/java110/web/smo/file/impl/GetFileSMOImpl.java |   27 +++++++++++++++------------
 1 files changed, 15 insertions(+), 12 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/smo/file/impl/GetFileSMOImpl.java b/WebService/src/main/java/com/java110/web/smo/file/impl/GetFileSMOImpl.java
index c54ea58..a122c1c 100644
--- a/WebService/src/main/java/com/java110/web/smo/file/impl/GetFileSMOImpl.java
+++ b/WebService/src/main/java/com/java110/web/smo/file/impl/GetFileSMOImpl.java
@@ -9,8 +9,7 @@
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Base64Convert;
 import com.java110.utils.util.BeanConvertUtil;
-import com.java110.web.core.AbstractComponentSMO;
-import com.java110.web.core.BaseComponentSMO;
+import com.java110.core.component.BaseComponentSMO;
 import com.java110.web.smo.file.IGetFileSMO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpHeaders;
@@ -34,22 +33,20 @@
     private RestTemplate restTemplate;
 
     @Override
-    public ResponseEntity<Object> getFile(IPageData pd) throws SMOException,IOException {
+    public ResponseEntity<Object> getFile(IPageData pd) throws SMOException, IOException {
         JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
-
-        super.validatePageInfo(pd);
 
         Assert.hasKeyAndValue(paramIn, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈灏忓尯ID");
         Assert.hasKeyAndValue(paramIn, "fileId", "璇锋眰鎶ユ枃涓湭鍖呭惈鏂囦欢ID");
 
-        super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.GET_FILE);
+        /*super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.GET_FILE);
 
         ComponentValidateResult result = super.validateStoreStaffCommunityRelationship(pd, restTemplate);
 
         Map paramMap = BeanConvertUtil.beanCovertMap(result);
-        paramIn.putAll(paramMap);
+        paramIn.putAll(paramMap);*/
 
-        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/file.getFile";
+        String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/file.getFile" + mapToUrlParam(paramIn);
 
 
         ResponseEntity<String> responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(),
@@ -58,7 +55,7 @@
 
         //澶勭悊鏂囦欢涓嬭浇鍔熻兘
         if (responseEntity.getStatusCode() != HttpStatus.OK) {
-            return new ResponseEntity<Object>(responseEntity.getBody(),responseEntity.getStatusCode());
+            return new ResponseEntity<Object>(responseEntity.getBody(), responseEntity.getStatusCode());
         }
 
         JSONObject outParam = JSONObject.parseObject(responseEntity.getBody());
@@ -68,11 +65,17 @@
         } else {
             headers.add("content-type", "application/octet-stream");
         }
-        headers.add("Content-Disposition", "attachment; filename=" + outParam.getString("fileName"));
+        //headers.add("Content-Disposition", "attachment; filename=" + outParam.getString("fileName"));
+        headers.add("Accept-Ranges", "bytes");
 
-        byte[] context = Base64Convert.base64ToByte(outParam.getString("context"));
+        byte[] context = Base64Convert.base64ToByte(outParam.getString("context").replace("data:image/webp;base64,", "")
+                .replace("data:image/webp;base64,", "")
+                .replace("data:image/png;base64,", "")
+                .replace("data:image/jpeg;base64,", "")
+                .replace("data:application/octet-stream;base64,","")
+        );
 
-        return new ResponseEntity<Object>(context,headers,HttpStatus.OK);
+        return new ResponseEntity<Object>(context, headers, HttpStatus.OK);
     }
 
     public RestTemplate getRestTemplate() {

--
Gitblit v1.8.0