From fadd75018c5cce0586e761b875ac6bb268033f73 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 24 四月 2024 16:44:14 +0800 Subject: [PATCH] 代码提交 --- ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java | 109 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 88 insertions(+), 21 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..01b4ad9 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 @@ -100,8 +100,14 @@ if (serviceReimbursement.getRecordstatus() != null) { wrappers.eq(ServiceReimbursement::getRecordstatus, serviceReimbursement.getRecordstatus()); } + if (serviceReimbursement.getUploadStates() != null) { + wrappers.eq(ServiceReimbursement::getUploadStates, serviceReimbursement.getUploadStates()); + } if (StringUtils.isNotBlank(serviceReimbursement.getUploadflag())) { wrappers.eq(ServiceReimbursement::getUploadflag, serviceReimbursement.getUploadflag()); + } + if (serviceReimbursement.getFlowlevel() != null) { + wrappers.eq(ServiceReimbursement::getFlowlevel, serviceReimbursement.getFlowlevel()); } /* if (serviceReimbursement.getStarttime()!=null && serviceReimbursement.getEndtime()!=null){ @@ -125,6 +131,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 +139,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")) { } } } @@ -144,6 +159,17 @@ @Transactional public Boolean addSharedData(Long id) { log.info("addSharedData鏂规硶鐨勫叆鍙俰d :{}", id); + //鍏堝垽鏂竴涓媠hare琛ㄦ槸鍚﹀凡缁忔彃鍏� + ServiceReimbursementShared reimbursementShared1 = new ServiceReimbursementShared(); + reimbursementShared1.setReimid(id); + reimbursementShared1.setDelFlag(0L); + List<ServiceReimbursementShared> serviceReimbursementShareds = sharedService.queryList(reimbursementShared1); + log.info("serviceReimbursementShareds鐨勬煡璇㈢粨鏋� :{}", serviceReimbursementShareds.size()); + if (!CollectionUtils.isEmpty(serviceReimbursementShareds)) { + return true; + } + + //濡傛灉娌℃湁鎻掑叆锛屽垯璧颁笅闈㈢殑娴佺▼ ServiceReimbursement serviceReimbursement = serviceReimbursementMapper.selectById(id); Map<String, Object> columnMap = new HashMap<>(); columnMap.put("rbid", id); @@ -170,10 +196,27 @@ serviceReimbursementdetailShareds.get(i).setId(null); //涓婁紶OA鏂囦欢 log.info("涓婁紶OA鏂囦欢鏂规硶鐨勫叆鍙�:{}", serviceReimbursementdetailShareds.get(i)); - uploadOAFileAndUpdateDb(serviceReimbursementdetailShareds.get(i)); + try { + uploadOAFileAndUpdateDb(serviceReimbursementdetailShareds.get(i)); + } catch (Exception e) { + log.error("Exception涓璻eimShare鐨勫叆鍙俰d涓猴細{}", serviceReimbursementShared.getId()); + if (serviceReimbursementShared.getId() != null) { + Boolean aBoolean = sharedService.delResharedInfoById(serviceReimbursementShared.getId()); + log.error("鏂囦欢涓婁紶澶辫触锛屽皢鍒嗕韩琛ㄦ暟鎹洖婊氾細{}", aBoolean); + } + return false; + } + } - 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 +224,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 +241,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 @@ -212,7 +261,7 @@ } - public int uploadOAFileAndUpdateDb(ServiceReimbursementdetailShared remShare) { + public int uploadOAFileAndUpdateDb(ServiceReimbursementdetailShared remShare) throws Exception { log.info("uploadOAFileAndUpdate鏂规硶鐨勫叆鍙�:{}", remShare); System.out.println("uploadOAFileAndUpdate鏂规硶鐨勫叆鍙�:" + remShare); //涓婁紶OA鏂囦欢 @@ -238,17 +287,31 @@ String strFUrl = "http://129.88.242.39:8899/seeyon/rest/attachment?token=" + 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); + List<RbDetailFile> invoicefilesList = new ArrayList<>(); - 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 { + //鏅�氭枃浠朵笂浼� + List<RbDetailFile> parseArray = JSON.parseArray(remShare.getAnnexfiles(), RbDetailFile.class); + //鍙戠エ鏂囦欢涓婁紶 + List<RbDetailFile> invoicefilesArray = JSON.parseArray(remShare.getInvoicefiles(), RbDetailFile.class); + //鏅�氶檮浠� + uploadFile(filePath, strFUrl, parseArray2, parseArray, remShare, "1"); + //鍙戠エ闄勪欢 + uploadFile(filePath, strFUrl, invoicefilesList, invoicefilesArray, remShare, "2"); + return 0; + } + + private Integer uploadFile(String filePath, String strFUrl, List<RbDetailFile> parseArray2, List<RbDetailFile> parseArray, ServiceReimbursementdetailShared remShare, String flag) throws Exception { + 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); log.info("璇锋眰绗笁鏂圭殑鍏ュ弬strFile : {}, strFUrl : {}", strFile, filePath); String struploadResult = HttpClientKit.sendPostWithFile(filetest, strFUrl); log.info("绗笁鏂逛紶鍥炵殑鏁版嵁: {}", struploadResult); @@ -265,13 +328,17 @@ JSONObject jsonRet = jsonArr.getJSONObject(j); rbDetailFile.setFileid(jsonRet.get("fileUrl").toString()); } - } 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