From dcd3eb3bbbc25b01155493f20f5680fc6d4aee11 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 26 十月 2023 16:02:07 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java |  110 +++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 78 insertions(+), 32 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
index 322bbe7..d0be9a1 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
@@ -125,6 +125,7 @@
         for (int j = 0; j < rbDetailList.size(); j++) {
             ServiceReimbursementdetail serviceReimbursementdetail = rbDetailList.get(j);
             String annexfiles = serviceReimbursementdetail.getAnnexfiles();
+            String invoicefiles = serviceReimbursementdetail.getInvoicefiles();
             ServiceReimbursementdetailVO serviceReimbursementdetailVO = DtoConversionUtils.sourceToTarget(serviceReimbursementdetail, ServiceReimbursementdetailVO.class);
             if (StringUtils.isNotBlank(annexfiles)) {
                 try {
@@ -132,6 +133,14 @@
                 } catch (Exception e) {
                     if (e.getMessage().equals("invalid comment")) {
                         log.error("鎶ュ紓甯镐簡锛岃�佸ぇ涓嶈鎴戝鐞�");
+                    }
+                }
+            }
+            if (StringUtils.isNotBlank(invoicefiles)) {
+                try {
+                    serviceReimbursementdetailVO.setInvoicefilesList(JSON.parseArray(invoicefiles));
+                } catch (Exception e) {
+                    if (e.getMessage().equals("invalid comment")) {
                     }
                 }
             }
@@ -173,7 +182,14 @@
             uploadOAFileAndUpdateDb(serviceReimbursementdetailShareds.get(i));
         }
 
-        detailSharedService.saveBatch(serviceReimbursementdetailShareds);
+//        detailSharedService.saveBatch(serviceReimbursementdetailShareds);
+        for (ServiceReimbursementdetailShared serviceReimbursementdetailShared : serviceReimbursementdetailShareds) {
+            if (ObjectUtils.isNotEmpty(serviceReimbursementdetailShared)) {
+                detailSharedService.save(serviceReimbursementdetailShared);
+            } else {
+                log.info("serviceReimbursementdetailShared涓虹┖浜�");
+            }
+        }
 
         //灏唖erviceReimbursementpayee琛ㄩ噷鐨刬d璧嬪�肩粰Rpid; 灏唖erviceReimbursementShared閲岀殑ID璧嬪�肩粰RBID,骞跺皢serviceReimbursementpayeeShared琛ㄩ噷鐨刬d缃┖锛岀敱鏁版嵁搴撻噸鏂扮敓鎴�
         for (int i = 0; i < serviceReimbursementpayees.size(); i++) {
@@ -181,8 +197,14 @@
             serviceReimbursementpayeeShareds.get(i).setRbid(serviceReimbursementShared.getId());
             serviceReimbursementpayeeShareds.get(i).setId(null);
         }
-        payeeSharedService.saveBatch(serviceReimbursementpayeeShareds);
 
+        for (ServiceReimbursementpayeeShared serviceReimbursementpayeeShared : serviceReimbursementpayeeShareds) {
+            if (ObjectUtils.isNotEmpty(serviceReimbursementpayeeShared)) {
+                payeeSharedService.save(serviceReimbursementpayeeShared);
+            } else {
+                log.info("serviceReimbursementpayeeShared涓虹┖浜嗭紒");
+            }
+        }
         return true;
     }
 
@@ -192,8 +214,8 @@
     }
 
     @Override
-    public List<SpFinancialExpensesReimbursementOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT, Integer CHECKFLAG, Integer APPLYTYPE) {
-        return serviceReimbursementMapper.getListBypower(PAUSERNO, PAFUNDTYPE, PAAPPLICANT, PAAPPLICATIONBEGTIME, PAAPPLICATIONENDTIME, PADEPARTMENT, CHECKFLAG, APPLYTYPE);
+    public List<SpFinancialExpensesReimbursementOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT, Integer CHECKFLAG, Integer APPLYTYPE, Integer CHECKSTATUS,String donorname) {
+        return serviceReimbursementMapper.getListBypower(PAUSERNO, PAFUNDTYPE, PAAPPLICANT, PAAPPLICATIONBEGTIME, PAAPPLICATIONENDTIME, PADEPARTMENT, CHECKFLAG, APPLYTYPE, CHECKSTATUS,donorname);
     }
 
     @Override
@@ -238,40 +260,64 @@
         String strFUrl = "http://129.88.242.39:8899/seeyon/rest/attachment?token=" + strRes;
 
         List<RbDetailFile> parseArray2 = new ArrayList<>();
+        List<RbDetailFile> invoicefilesList = new ArrayList<>();
+
+        //鏅�氭枃浠朵笂浼�
         List<RbDetailFile> parseArray = JSON.parseArray(remShare.getAnnexfiles(), RbDetailFile.class);
-        for (int i = 0; i < parseArray.size(); i++) {
-            RbDetailFile rbDetailFile = parseArray.get(i);
+        //鍙戠エ鏂囦欢涓婁紶
+        List<RbDetailFile> invoicefilesArray = JSON.parseArray(remShare.getInvoicefiles(), RbDetailFile.class);
+        //鏅�氶檮浠�
+        uploadFile(filePath, strFUrl, parseArray2, parseArray, remShare, "1");
 
-            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);
-            try {
-                log.info("璇锋眰绗笁鏂圭殑鍏ュ弬strFile : {}, strFUrl : {}", strFile, filePath);
-                String struploadResult = HttpClientKit.sendPostWithFile(filetest, strFUrl);
-                log.info("绗笁鏂逛紶鍥炵殑鏁版嵁: {}", struploadResult);
-                if (StringUtils.isEmpty(struploadResult)) {
-                    log.info("HttpClientKit.sendPostWithFile 璇锋眰涓虹┖浜� filetest:{},  strFUrl:{} ", filetest, strFUrl);
-                    return 0;
-                }
+        //鍙戠エ闄勪欢
+        uploadFile(filePath, strFUrl, invoicefilesList, invoicefilesArray, remShare, "2");
+        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());
+    private Integer uploadFile(String filePath, String strFUrl, List<RbDetailFile> parseArray2, List<RbDetailFile> parseArray, ServiceReimbursementdetailShared remShare, String flag) {
+        if (!CollectionUtils.isEmpty(parseArray)) {
+            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");
+                System.out.println("reimbursement鏈嶅姟鐨刦ilePath + substring鏄贡鐮佸悧: " + filePath + substring);
+                File filetest = new File(filePath + substring);
+                try {
+                    log.info("璇锋眰绗笁鏂圭殑鍏ュ弬strFile : {}, strFUrl : {}", strFile, filePath);
+                    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();
+                    log.error("HttpClientKit.sendPostWithFile 鎶ラ敊浜� : " + e.getMessage());
                 }
-            } catch (Exception e) {
-                e.printStackTrace();
-                log.error("HttpClientKit.sendPostWithFile 鎶ラ敊浜� : " + e.getMessage());
+                parseArray2.add(rbDetailFile);
             }
-            parseArray2.add(rbDetailFile);
         }
-        remShare.setAnnexfiles(JSON.toJSONString(parseArray2));
+        if (flag.equals("1")) {
+            //濡傛灉flag涓�1,鍒欐槸鏅��
+            remShare.setAnnexfiles(JSON.toJSONString(parseArray2));
+
+        } else if (flag.equals("2")) {
+            //濡傛灉flag涓�2,鍒欐槸鍙戠エ
+            remShare.setInvoicefiles(JSON.toJSONString(parseArray2));
+        }
         log.info("ServiceReimbursementdetailShared 鏄惁鍔犱笂浜唂ileid : {}", remShare);
         return 0;
     }

--
Gitblit v1.9.3