From 2c16ba7f4cdfedf4ec05395e20caf9c87f2b5101 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 09 八月 2023 18:15:50 +0800
Subject: [PATCH] 修改funddetail文件上传

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java |  188 +++++++++++++++++++++++++++++++---------------
 1 files changed, 125 insertions(+), 63 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
index 38adfd8..27aaf49 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -7,6 +7,7 @@
 import java.util.List;
 import java.util.Map;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.ruoyi.common.config.RuoYiConfig;
@@ -136,8 +137,7 @@
         serviceFundShared.setSerfunid(serviceFundShared.getId());
         serviceFundShared.setId(null);
         sharedService.save(serviceFundShared);
-        //鏁版嵁鍙戦�佺粰璐㈠姟
-        uploadOAFileAndUpdateDb(serviceFundShared);
+
         //fundId涓轰富琛ㄧ殑ID
         Map<String, Object> columnMap = new HashMap<>();
         columnMap.put("fundid", id);
@@ -149,6 +149,8 @@
             //fundID涓簊ervice_fund_shared琛ㄧ殑涓婚敭ID
             serviceFunddetailShareds.get(i).setFundid(serviceFundShared.getId());
             serviceFunddetailShareds.get(i).setId(null);
+            //鏁版嵁鍙戦�佺粰璐㈠姟
+            uploadOAFileAndUpdateDb(serviceFunddetailShareds.get(i));
         }
         boolean result = detailSharedService.saveBatch(serviceFunddetailShareds);
         return result;
@@ -733,14 +735,12 @@
         return id;
     }
 
-    int uploadOAFileAndUpdateDb(ServiceFundShared remShare) {
+    int uploadOAFileAndUpdateDb(ServiceFunddetailShared remShare) {
         //涓婁紶OA鏂囦欢
         //String strUrl = "http://129.88.242.39:8899/seeyon/rest/token?userName=opo&password=127814f8-84e8-4304-84a5-a71573567efd&loginName=demo3";
         String strUrl = "http://129.88.242.39:8899/seeyon/rest/token";
         //String strUrl = "http://slb.hospitalstar.com:8899/seeyon/rest/token";
         //涓婁紶鏂囦欢鎴愬姛鍚庯紝鍘绘洿鏂扮浉鍏崇殑鏁版嵁搴�
-
-
         Map<String, Object> map = new HashMap<String, Object>();
         map.put("userName", "opo");
         map.put("password", "4126407a-9821-4874-be41-6568abd6dbe5");
@@ -755,74 +755,136 @@
         JSONObject json1 = JSONObject.parseObject(strRes);
         strRes = json1.get("id").toString();
 
-        ///if(strRes.isEmpty() || "" == strRes) return -1;// 涓虹┖浠h〃澶辫触
-
-        //涓嬮潰闇�姹傝皟鐢ㄦ枃浠剁殑鎺ュ彛锛岃皟鐢ㄦ垚鍔熻繑鍥炲悗锛屽緱鍒癴ilename鍜宖ileid 鐢ㄨ繖浜屼釜鍊煎幓鏇存柊鏁版嵁
-
         String filePath = RuoYiConfig.getUploadPath();
-        String strMutfileUrl = remShare.getAnnexbankcard();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑
-
         String strFUrl = "http://129.88.242.39:8899/seeyon/rest/attachment?token=" + strRes;
-        //String strFUrl = "http://slb.hospitalstar.com:8899/seeyon/rest/attachment?token="+strRes;
-        //strFUrl = String.format(strFUrl, strRes);
+        List<RbDetailFile> parseArray2 = new ArrayList<>();
+        List<RbDetailFile> parseArray = JSON.parseArray(remShare.getAnnexfiles(), RbDetailFile.class);
+        for (int i = 0; i < parseArray.size(); i++) {
+            RbDetailFile rbDetailFile = parseArray.get(i);
+            log.info("filePath鐨勪慨鏀�:{}", filePath);
+            String url = rbDetailFile.getUrl();
+            //file鐢ㄧ殑鏄粷瀵逛綅缃�
+            String substring = url.substring(url.indexOf("/profile/upload") + "/profile/upload".length());
+//            String strFile = rbDetailFile.getUrl().replace(filePath, "/profile/upload");
+            File filetest = new File(filePath + substring);
 
-        /*File test = null;
-        File file = new File("E:\\YYJQ\\OPO\\WEB\\Upload\\upload\\2023\\02\\17");
-        if (file.exists() && file.isDirectory()) {
-            // 鑾峰彇鎵�鏈夌洸鐩掓枃浠跺す
-            File[] ones = file.listFiles();
-            for (File one : ones) {
-                test = one;
-            }
-        }*/
-
-        String filename = "";
-        String fileid = "";
-
-        String[] urlArray = strMutfileUrl.split(",");
-        for (int i = 0; i < urlArray.length; i++) {
-            String strOneFileName = urlArray[i];
-            String strTemp = strOneFileName.substring(15);
-            String strFile = filePath + strTemp;
-            //FileUploadUtils.getAbsoluteFile(filePath,strOneFileName);
-            String struploadResult = "";
-            File filetest = new File(strFile);
             try {
-                struploadResult = HttpClientKit.sendPostWithFile(filetest, strFUrl);
+                String struploadResult = HttpClientKit.sendPostWithFile(filetest, strFUrl);
+                log.info("绗笁鏂逛紶鍥炵殑鏁版嵁: {}", struploadResult);
+                if (StringUtils.isEmpty(struploadResult)) {
+                    log.info("HttpClientKit.sendPostWithFile 璇锋眰涓虹┖浜� filetest:{},  strFUrl:{} ", filetest, strFUrl);
+                    return 0;
+                }
+                //鑾峰彇fileid
+                JSONObject jsonR = JSONObject.parseObject(struploadResult);
+                JSONArray jsonArr = jsonR.getJSONArray("atts");
+                log.info("绗笁鏂逛紶鍥炵殑鏁版嵁鑾峰彇鐨刟tts : {}", jsonArr);
+                for (int j = 0; j < jsonArr.size(); j++) {
+                    JSONObject jsonRet = jsonArr.getJSONObject(j);
+                    rbDetailFile.setFileid(jsonRet.get("fileUrl").toString());
+                }
             } catch (Exception e) {
                 e.printStackTrace();
             }
-
-
-            //String strFRes = HttpClientKit.postMsg(strFUrl,jsonFObj);
-            if (struploadResult == null) return 0;
-            if (struploadResult.isEmpty()) return 0;
-
-            JSONObject jsonR = JSONObject.parseObject(struploadResult);
-
-            JSONArray jsonArr = jsonR.getJSONArray("atts");
-            for (int j = 0; j < jsonArr.size(); j++) {
-                JSONObject jsonRet = jsonArr.getJSONObject(j);
-                String name1 = jsonRet.get("filename").toString();
-                String id1 = jsonRet.get("fileUrl").toString();
-                filename += name1;
-                fileid += id1;
-                if (i != urlArray.length - 1) {
-                    filename += ",";
-                    fileid += ",";
-                }
-            }
-
+            parseArray2.add(rbDetailFile);
         }
-
-        long nId = remShare.getId();
-        remShare.setId(nId);
-        remShare.setFilename(filename);
-        remShare.setFileid(fileid);
-        boolean bRet = sharedService.updateById(remShare);
-        if (!bRet) return -1;
+        remShare.setAnnexfiles(JSON.toJSONString(parseArray2));
+        log.info("ServiceReimbursementdetailShared 鏄惁鍔犱笂浜唂ileid : {}", remShare);
 
         return 0;
     }
 
+
+//    int uploadOAFileAndUpdateDb(ServiceFundShared remShare) {
+//        //涓婁紶OA鏂囦欢
+//        //String strUrl = "http://129.88.242.39:8899/seeyon/rest/token?userName=opo&password=127814f8-84e8-4304-84a5-a71573567efd&loginName=demo3";
+//        String strUrl = "http://129.88.242.39:8899/seeyon/rest/token";
+//        //String strUrl = "http://slb.hospitalstar.com:8899/seeyon/rest/token";
+//        //涓婁紶鏂囦欢鎴愬姛鍚庯紝鍘绘洿鏂扮浉鍏崇殑鏁版嵁搴�
+//
+//
+//        Map<String, Object> map = new HashMap<String, Object>();
+//        map.put("userName", "opo");
+//        map.put("password", "4126407a-9821-4874-be41-6568abd6dbe5");
+//        map.put("loginName", "demo3");
+//
+//        JSONObject jsonObj = new JSONObject(map);
+//
+//        System.out.println("uploadOAFileAndUpdateDb + jsonObject" + jsonObj.toString() + "\r\n" + jsonObj.toJSONString());
+//        String strRes = HttpClientKit.postOpr(strUrl, jsonObj.toString());//
+//        //String strRes = HttpClientKit.postMsg(strUrl,jsonObj);//寰楀埌杩斿洖鐨則oken?
+//
+//        JSONObject json1 = JSONObject.parseObject(strRes);
+//        strRes = json1.get("id").toString();
+//
+//        ///if(strRes.isEmpty() || "" == strRes) return -1;// 涓虹┖浠h〃澶辫触
+//
+//        //涓嬮潰闇�姹傝皟鐢ㄦ枃浠剁殑鎺ュ彛锛岃皟鐢ㄦ垚鍔熻繑鍥炲悗锛屽緱鍒癴ilename鍜宖ileid 鐢ㄨ繖浜屼釜鍊煎幓鏇存柊鏁版嵁
+//
+//        String filePath = RuoYiConfig.getUploadPath();
+//        String strMutfileUrl = remShare.getAnnexbankcard();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑
+//
+//        String strFUrl = "http://129.88.242.39:8899/seeyon/rest/attachment?token=" + strRes;
+//        //String strFUrl = "http://slb.hospitalstar.com:8899/seeyon/rest/attachment?token="+strRes;
+//        //strFUrl = String.format(strFUrl, strRes);
+//
+//        /*File test = null;
+//        File file = new File("E:\\YYJQ\\OPO\\WEB\\Upload\\upload\\2023\\02\\17");
+//        if (file.exists() && file.isDirectory()) {
+//            // 鑾峰彇鎵�鏈夌洸鐩掓枃浠跺す
+//            File[] ones = file.listFiles();
+//            for (File one : ones) {
+//                test = one;
+//            }
+//        }*/
+//
+//        String filename = "";
+//        String fileid = "";
+//
+//        String[] urlArray = strMutfileUrl.split(",");
+//        for (int i = 0; i < urlArray.length; i++) {
+//            String strOneFileName = urlArray[i];
+//            String strTemp = strOneFileName.substring(15);
+//            String strFile = filePath + strTemp;
+//            //FileUploadUtils.getAbsoluteFile(filePath,strOneFileName);
+//            String struploadResult = "";
+//            File filetest = new File(strFile);
+//            try {
+//                struploadResult = HttpClientKit.sendPostWithFile(filetest, strFUrl);
+//            } catch (Exception e) {
+//                e.printStackTrace();
+//            }
+//
+//
+//            //String strFRes = HttpClientKit.postMsg(strFUrl,jsonFObj);
+//            if (struploadResult == null) return 0;
+//            if (struploadResult.isEmpty()) return 0;
+//
+//            JSONObject jsonR = JSONObject.parseObject(struploadResult);
+//
+//            JSONArray jsonArr = jsonR.getJSONArray("atts");
+//            for (int j = 0; j < jsonArr.size(); j++) {
+//                JSONObject jsonRet = jsonArr.getJSONObject(j);
+//                String name1 = jsonRet.get("filename").toString();
+//                String id1 = jsonRet.get("fileUrl").toString();
+//                filename += name1;
+//                fileid += id1;
+//                if (i != urlArray.length - 1) {
+//                    filename += ",";
+//                    fileid += ",";
+//                }
+//            }
+//
+//        }
+//
+//        long nId = remShare.getId();
+//        remShare.setId(nId);
+//        remShare.setFilename(filename);
+//        remShare.setFileid(fileid);
+//        boolean bRet = sharedService.updateById(remShare);
+//        if (!bRet) return -1;
+//
+//        return 0;
+//    }
+
 }

--
Gitblit v1.9.3