| | |
| | | import com.ruoyi.project.service.IServiceReimbursementdetailSharedService; |
| | | import com.ruoyi.project.service.IServiceReimbursementpayeeSharedService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.ObjectUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | @Override |
| | | public List<ServiceReimbursementdetailVO> getRBDetailList(Long id) { |
| | | log.info("getRBDetailList的入参:{}", id); |
| | | List<ServiceReimbursementdetailVO> serviceReimbursementdetailVOS = new ArrayList<>(); |
| | | List<ServiceReimbursementdetail> rbDetailList = serviceReimbursementdetailMapper.getRBDetailList(id); |
| | | log.info("getRBDetailList的入参:{}", CollectionUtils.isEmpty(rbDetailList) ? null : rbDetailList.size()); |
| | | for (int j = 0; j < rbDetailList.size(); j++) { |
| | | |
| | | ServiceReimbursementdetail serviceReimbursementdetail = rbDetailList.get(j); |
| | | String annexfiles = serviceReimbursementdetail.getAnnexfiles(); |
| | | ServiceReimbursementdetailVO serviceReimbursementdetailVO = DtoConversionUtils.sourceToTarget(serviceReimbursementdetail, ServiceReimbursementdetailVO.class); |
| | |
| | | columnMap.put("rbid", id); |
| | | //获取详情数据 |
| | | List<ServiceReimbursementdetail> details = serviceReimbursementdetailMapper.selectByMap(columnMap); |
| | | log.info("serviceReimbursementdetailMapper.selectByMap方法的返参参 :{}", details.size()); |
| | | log.info("serviceReimbursementdetailMapper.selectByMap方法的返参参 :{}", CollectionUtils.isEmpty(details) ? null : details.size()); |
| | | //获取支付数据 |
| | | List<ServiceReimbursementpayee> serviceReimbursementpayees = reimbursementpayeeMapper.selectByMap(columnMap); |
| | | log.info("reimbursementpayeeMapper.selectByMap方法的返参参 :{}", serviceReimbursementpayees.size()); |
| | | log.info("reimbursementpayeeMapper.selectByMap方法的返参参 :{}", CollectionUtils.isEmpty(serviceReimbursementpayees) ? null : serviceReimbursementpayees.size()); |
| | | //数据组装 |
| | | ServiceReimbursementShared serviceReimbursementShared = DtoConversionUtils.sourceToTarget(serviceReimbursement, ServiceReimbursementShared.class); |
| | | serviceReimbursementShared.setReimid(id); |
| | |
| | | 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为空了"); |
| | | } |
| | | } |
| | | |
| | | //将serviceReimbursementpayee表里的id赋值给Rpid; 将serviceReimbursementShared里的ID赋值给RBID,并将serviceReimbursementpayeeShared表里的id置空,由数据库重新生成 |
| | | for (int i = 0; i < serviceReimbursementpayees.size(); i++) { |
| | |
| | | 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; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | @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) { |
| | | return serviceReimbursementMapper.getListBypower(PAUSERNO, PAFUNDTYPE, PAAPPLICANT, PAAPPLICATIONBEGTIME, PAAPPLICATIONENDTIME, PADEPARTMENT, CHECKFLAG, APPLYTYPE,CHECKSTATUS); |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | JSONObject json1 = JSONObject.parseObject(strRes); |
| | | strRes = json1.get("id").toString(); |
| | | |
| | | log.info("strRes的值 : {}", strRes); |
| | | String filePath = RuoYiConfig.getUploadPath(); |
| | | 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); |
| | | log.info("filePath的修改:{}", filePath); |
| | | String strFile = rbDetailFile.getUrl().replaceAll("/profile/upload", filePath); |
| | | File filetest = new File(strFile); |
| | | 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; |
| | | } |
| | | if (!CollectionUtils.isEmpty(parseArray)) { |
| | | for (int i = 0; i < parseArray.size(); i++) { |
| | | RbDetailFile rbDetailFile = parseArray.get(i); |
| | | |
| | | //获取fileid |
| | | JSONObject jsonR = JSONObject.parseObject(struploadResult); |
| | | JSONArray jsonArr = jsonR.getJSONArray("atts"); |
| | | log.info("第三方传回的数据获取的atts : {}", jsonArr); |
| | | for (int j = 0; j < jsonArr.size(); j++) { |
| | | JSONObject jsonRet = jsonArr.getJSONObject(j); |
| | | rbDetailFile.setFileid(jsonRet.get("fileUrl").toString()); |
| | | 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服务的filePath + 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("第三方传回的数据获取的atts : {}", 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)); |
| | | log.info("ServiceReimbursementdetailShared 是否加上了fileid : {}", remShare); |