From 00e066b1b6c1f2c5e94adfcf50b49cf2a3d682d0 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期二, 12 九月 2023 13:43:02 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 727 +++++++++++++++++++++++++++++++++---------------------- 1 files changed, 433 insertions(+), 294 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java index cac7c25..c7957f2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java @@ -1,7 +1,5 @@ package com.ruoyi.web.controller.project; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.config.RuoYiConfig; @@ -13,8 +11,8 @@ import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.exception.ServiceException; -import com.ruoyi.common.utils.HttpClientKit; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.bean.DtoConversionUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.project.domain.*; import com.ruoyi.project.domain.dto.ServiceReimbursementDto; @@ -29,16 +27,18 @@ import freemarker.template.TemplateException; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.apache.ibatis.annotations.Options; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.io.*; import java.math.BigDecimal; -import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; +import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -48,6 +48,7 @@ * @author ruoyi * @date 2022-01-24 */ +@Slf4j @Api("鎶ラ攢鐢宠") @RestController @RequestMapping("/project/reimbursement") @@ -56,10 +57,10 @@ private IServiceReimbursementService serviceReimbursementService; @Autowired - private IServiceReimbursementpayeeService reimbursementpayeeService; + private IServiceReimbursementSharedService serviceReimbursementSharedService; @Autowired - private IServiceReimbursementSharedService serviceReimbursementServiceShare; + private IServiceReimbursementpayeeService reimbursementpayeeService; @Autowired private IServiceReimbursementdetailService serviceReimbursementdetailService; @@ -69,6 +70,9 @@ @Autowired private IServiceFundflowService serviceFundflowService; + + @Autowired + private IServiceFundService serviceFundService; @Autowired private ISysPostService postService; @@ -97,6 +101,7 @@ public TableDataInfo list(ServiceReimbursement serviceReimbursement) { SysUser user = SecurityUtils.getLoginUser().getUser(); serviceReimbursement.setCreateBy(user.getUserName()); + serviceReimbursement.setUsername(user.getNickName()); startPage(); List<ServiceReimbursement> list = serviceReimbursementService.queryList(serviceReimbursement); return getDataTable(list); @@ -151,6 +156,21 @@ } //startPage(); List<SpFinancialExpensesReimbursementOut> list = serviceReimbursementService.getListBypower(loginUser.getUsername(), 1, APPLICANT, APPLICATIONBEGTIME, APPLICATIONENDTIME, loginUser.getDeptId().toString(), CHECKFLAG, APPLYTYPE); + //鏍规嵁缁忓姙浜虹瓫閫� + if (StringUtils.isNotBlank(spFinancialExpensesIn.getUsername())) { + list = list.stream().filter(reimbursementOut -> reimbursementOut.getUsername().contains(spFinancialExpensesIn.getUsername())).collect(Collectors.toList()); // 鎸塶ame瀛楁杩囨护 + } + //鏍规嵁閲戦绛涢�� + if (spFinancialExpensesIn.getMoney() != null) { + list = list.stream().filter(reimbursementOut -> new BigDecimal(reimbursementOut.getAmountrequested()) == new BigDecimal(spFinancialExpensesIn.getMoney())).collect(Collectors.toList()); + } + //鏍规嵁鍒涘缓鏃堕棿鎺掑簭 + Collections.sort(list, new Comparator<SpFinancialExpensesReimbursementOut>() { + @Override + public int compare(SpFinancialExpensesReimbursementOut o1, SpFinancialExpensesReimbursementOut o2) { + return o2.getCreateTime().compareTo(o1.getCreateTime()); + } + }); return getCustomDataTable(list, pageNum, pageSize); } @@ -199,237 +219,237 @@ public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) { boolean b = serviceReimbursementService.save(serviceReimbursement); - if (b) { - addReiSharedDatd(serviceReimbursement, 1); - } +// if (b) { +// addReiSharedDatd(serviceReimbursement, 1); +// } Long id = serviceReimbursement.getId(); return AjaxResult.success(id); } - public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { - //remShare = ; - ServiceReimbursementShared remShare = null; - if (nType == 1) { - remShare = new ServiceReimbursementShared(); - remShare.setReimid(serviceReimbursement.getId()); - } else //modify - { - List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId()); - if (remlist != null) - remShare = remlist.get(0); - } - - remShare.setUserno(serviceReimbursement.getUserno()); - remShare.setUsername(serviceReimbursement.getUsername()); - remShare.setTravelers(serviceReimbursement.getTravelers()); - remShare.setIdcardtype(serviceReimbursement.getIdcardtype()); - remShare.setIdcardno(serviceReimbursement.getIdcardno()); - remShare.setPhone(serviceReimbursement.getPhone()); - remShare.setDepositbank(serviceReimbursement.getDepositbank()); - remShare.setBankcardno(serviceReimbursement.getBankcardno()); - remShare.setBranchbankname(serviceReimbursement.getBranchbankname()); - remShare.setAnnexbankcard(serviceReimbursement.getAnnexbankcard()); - remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); - //remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); - // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested())); - - Double nTemp = serviceReimbursement.getAmountrequested(); - if (nTemp == null) nTemp = 0d; - remShare.setAmountrequested(BigDecimal.valueOf(nTemp)); - - nTemp = serviceReimbursement.getPrepaidamount(); - if (nTemp == null) nTemp = 0.0; - remShare.setPrepaidamount(BigDecimal.valueOf(nTemp)); - - remShare.setInvoicecount(serviceReimbursement.getInvoicecount()); - remShare.setAttachcount(serviceReimbursement.getAttachcount()); - remShare.setManagerno(serviceReimbursement.getManagerno()); - remShare.setManagername(serviceReimbursement.getManagername()); - remShare.setDeptmentno(serviceReimbursement.getDeptmentno()); - remShare.setDeptmentname(serviceReimbursement.getDeptmentname()); - remShare.setOpochecker(serviceReimbursement.getOpochecker()); - remShare.setFinvicepresident(serviceReimbursement.getFinvicepresident()); - remShare.setBusvicepresident(serviceReimbursement.getBusvicepresident()); - remShare.setOfficedirector(serviceReimbursement.getOfficedirector()); - remShare.setFinancedirector(serviceReimbursement.getFinancedirector()); - remShare.setFinancechecher(serviceReimbursement.getFinancechecher()); - remShare.setInfoid(serviceReimbursement.getInfoid()); - remShare.setDonorno(serviceReimbursement.getDonorno()); - - remShare.setDonorname(serviceReimbursement.getDonorname()); - remShare.setReason(serviceReimbursement.getReason()); - remShare.setRecordstatus(serviceReimbursement.getRecordstatus()); - remShare.setUploadflag(serviceReimbursement.getUploadflag()); - remShare.setUploadtime(serviceReimbursement.getUploadtime()); - - nTemp = serviceReimbursement.getTotalamount(); - if (nTemp == null) nTemp = 0.0; - remShare.setTotalamount(BigDecimal.valueOf(nTemp)); - - remShare.setBigstrmoney(serviceReimbursement.getBigstrmoney()); - remShare.setFlowlevel(serviceReimbursement.getFlowlevel()); - remShare.setCosttype(serviceReimbursement.getCosttype()); - remShare.setCosttypename(serviceReimbursement.getCosttypename()); - remShare.setFileurl(serviceReimbursement.getAnnexfiles()); - remShare.setDonorbank(serviceReimbursement.getDonorbank()); - remShare.setDonorbankcard(serviceReimbursement.getDonorbankcard()); - remShare.setDonorremark(serviceReimbursement.getDonorremark()); - - nTemp = serviceReimbursement.getDonoramount(); - if (nTemp == null) nTemp = 0.0; - remShare.setDonoramount(nTemp); - remShare.setDonorrelatives(serviceReimbursement.getDonorrelatives()); - //remShare.setOaid(serviceReimbursement.getOaid()); - //remShare.setDonorno(serviceReimbursement.getDonorno()); - - boolean bRet = false; - if (nType == 1) { - bRet = serviceReimbursementServiceShare.save(remShare); - } else { - //remShare.setId(serviceReimbursement.); - bRet = serviceReimbursementServiceShare.updateById(remShare); - } - - //if(!bRet) return -1; - String strMutfileUrl = remShare.getFileurl(); - //鏈夐檮浠舵椂鎵嶈皟鐢ㄧ涓夋柟杩涜涓婁紶 - if (strMutfileUrl == null) return 0; - if (strMutfileUrl.isEmpty()) return 0; - - try { - uploadOAFileAndUpdateDb(remShare); - } catch (Exception e) { - logger.error("璋冪敤绗笁鏂规帴鍙e嚭閿�!"); - e.printStackTrace(); - } - - //姝ゅ淇濆瓨鎴愬姛鍚庤涓婁紶OA锛屼繚瀛樿繑鍥炲�� - - return 0; - } +// public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { +// //remShare = ; +// ServiceReimbursementShared remShare = new ServiceReimbursementShared(); +// if (nType == 1) { +// // remShare = new ServiceReimbursementShared(); +// remShare.setReimid(serviceReimbursement.getId()); +// } else //modify +// { +// List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId()); +// if (!CollectionUtils.isEmpty(remlist)) remShare = remlist.get(0); +// } +// +// remShare.setUserno(serviceReimbursement.getUserno()); +// remShare.setUsername(serviceReimbursement.getUsername()); +// remShare.setTravelers(serviceReimbursement.getTravelers()); +// remShare.setIdcardtype(serviceReimbursement.getIdcardtype()); +// remShare.setIdcardno(serviceReimbursement.getIdcardno()); +// remShare.setPhone(serviceReimbursement.getPhone()); +// remShare.setDepositbank(serviceReimbursement.getDepositbank()); +// remShare.setBankcardno(serviceReimbursement.getBankcardno()); +// remShare.setBranchbankname(serviceReimbursement.getBranchbankname()); +// remShare.setAnnexbankcard(serviceReimbursement.getAnnexbankcard()); +// remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); +// //remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); +// // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested())); +// +// Double nTemp = serviceReimbursement.getAmountrequested(); +// if (nTemp == null) nTemp = 0d; +// remShare.setAmountrequested(BigDecimal.valueOf(nTemp)); +// +// nTemp = serviceReimbursement.getPrepaidamount(); +// if (nTemp == null) nTemp = 0.0; +// remShare.setPrepaidamount(BigDecimal.valueOf(nTemp)); +// +// remShare.setInvoicecount(serviceReimbursement.getInvoicecount()); +// remShare.setAttachcount(serviceReimbursement.getAttachcount()); +// remShare.setManagerno(serviceReimbursement.getManagerno()); +// remShare.setManagername(serviceReimbursement.getManagername()); +// remShare.setDeptmentno(serviceReimbursement.getDeptmentno()); +// remShare.setDeptmentname(serviceReimbursement.getDeptmentname()); +// remShare.setOpochecker(serviceReimbursement.getOpochecker()); +// remShare.setFinvicepresident(serviceReimbursement.getFinvicepresident()); +// remShare.setBusvicepresident(serviceReimbursement.getBusvicepresident()); +// remShare.setOfficedirector(serviceReimbursement.getOfficedirector()); +// remShare.setFinancedirector(serviceReimbursement.getFinancedirector()); +// remShare.setFinancechecher(serviceReimbursement.getFinancechecher()); +// remShare.setInfoid(serviceReimbursement.getInfoid()); +// remShare.setDonorno(serviceReimbursement.getDonorno()); +// +// remShare.setDonorname(serviceReimbursement.getDonorname()); +// remShare.setReason(serviceReimbursement.getReason()); +// remShare.setRecordstatus(serviceReimbursement.getRecordstatus()); +// remShare.setUploadflag(serviceReimbursement.getUploadflag()); +// remShare.setUploadtime(serviceReimbursement.getUploadtime()); +// +// nTemp = serviceReimbursement.getTotalamount(); +// if (nTemp == null) nTemp = 0.0; +// remShare.setTotalamount(BigDecimal.valueOf(nTemp)); +// +// remShare.setBigstrmoney(serviceReimbursement.getBigstrmoney()); +// remShare.setFlowlevel(serviceReimbursement.getFlowlevel()); +// remShare.setCosttype(serviceReimbursement.getCosttype()); +// remShare.setCosttypename(serviceReimbursement.getCosttypename()); +// remShare.setFileurl(serviceReimbursement.getAnnexfiles()); +// remShare.setDonorbank(serviceReimbursement.getDonorbank()); +// remShare.setDonorbankcard(serviceReimbursement.getDonorbankcard()); +// remShare.setDonorremark(serviceReimbursement.getDonorremark()); +// +// nTemp = serviceReimbursement.getDonoramount(); +// if (nTemp == null) nTemp = 0.0; +// remShare.setDonoramount(nTemp); +// remShare.setDonorrelatives(serviceReimbursement.getDonorrelatives()); +// //remShare.setOaid(serviceReimbursement.getOaid()); +// //remShare.setDonorno(serviceReimbursement.getDonorno()); +// +// boolean bRet = false; +// if (nType == 1) { +// bRet = serviceReimbursementServiceShare.save(remShare); +// } else { +// //remShare.setId(serviceReimbursement.); +// bRet = serviceReimbursementServiceShare.updateById(remShare); +// } +// +// //if(!bRet) return -1; +// String strMutfileUrl = remShare.getFileurl(); +// //鏈夐檮浠舵椂鎵嶈皟鐢ㄧ涓夋柟杩涜涓婁紶 +// if (strMutfileUrl == null) return 0; +// if (strMutfileUrl.isEmpty()) return 0; +// +// try { +// uploadOAFileAndUpdateDb(remShare); +// } catch (Exception e) { +// logger.error("璋冪敤绗笁鏂规帴鍙e嚭閿�!"); +// e.printStackTrace(); +// } +// +// //姝ゅ淇濆瓨鎴愬姛鍚庤涓婁紶OA锛屼繚瀛樿繑鍥炲�� +// +// return 0; +// } - int uploadOAFileAndUpdateDb(ServiceReimbursementShared 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"; - //涓婁紶鏂囦欢鎴愬姛鍚庯紝鍘绘洿鏂扮浉鍏崇殑鏁版嵁搴� +// int uploadOAFileAndUpdateDb(ServiceReimbursementShared 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.getFileurl();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑 +// +// 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(); +// } +// +// +// /*CloseableHttpClient httpClient = HttpClients.createDefault(); +// //鍒涘缓post鏂规硶杩炴帴瀹炰緥锛屽湪post鏂规硶涓紶鍏ュ緟杩炴帴鍦板潃 +// HttpPost httpPost = new HttpPost(strFUrl); +// CloseableHttpResponse response = null; +// +// String struploadResult = ""; +// try { +// //璁剧疆璇锋眰鍙傛暟锛堢被浼糷tml椤甸潰涓璶ame灞炴�э級 +// MultipartEntityBuilder entity = MultipartEntityBuilder.create(); +// //entity.setMode(HttpMultipartMode.BROWSER_COMPATIBLE); +// entity.setCharset(Charset.forName("UTF-8")); +// +// byte[] fileBytes = Files.readAllBytes(Paths.get(strFile)); +// if (fileBytes != null) { +// //鍐呭绫诲瀷锛岀敤浜庡畾涔夌綉缁滄枃浠剁殑绫诲瀷鍜岀綉椤电殑缂栫爜锛屽喅瀹氭枃浠舵帴鏀舵柟灏嗕互浠�涔堝舰寮忋�佷粈涔堢紪鐮佽鍙栬繖涓枃浠� +// ContentType OCTEC_STREAM = ContentType.create("application/octet-stream", Charset.forName("UTF-8")); +// //娣诲姞鏂囦欢 +// entity.addBinaryBody("file", fileBytes, OCTEC_STREAM, strTemp); +// } +// +// httpPost.setEntity(entity.build()); +// //鍙戣捣璇锋眰锛屽苟杩斿洖璇锋眰鍝嶅簲 +// response = httpClient.execute(httpPost); +// struploadResult = EntityUtils.toString(response.getEntity(), "utf-8"); +// } +// 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 = serviceReimbursementServiceShare.updateById(remShare); +//// if (!bRet) return -1; +// +// return 0; +// } - - 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.getFileurl();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑 - - 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(); - } - - - /*CloseableHttpClient httpClient = HttpClients.createDefault(); - //鍒涘缓post鏂规硶杩炴帴瀹炰緥锛屽湪post鏂规硶涓紶鍏ュ緟杩炴帴鍦板潃 - HttpPost httpPost = new HttpPost(strFUrl); - CloseableHttpResponse response = null; - - String struploadResult = ""; - try { - //璁剧疆璇锋眰鍙傛暟锛堢被浼糷tml椤甸潰涓璶ame灞炴�э級 - MultipartEntityBuilder entity = MultipartEntityBuilder.create(); - //entity.setMode(HttpMultipartMode.BROWSER_COMPATIBLE); - entity.setCharset(Charset.forName("UTF-8")); - - byte[] fileBytes = Files.readAllBytes(Paths.get(strFile)); - if (fileBytes != null) { - //鍐呭绫诲瀷锛岀敤浜庡畾涔夌綉缁滄枃浠剁殑绫诲瀷鍜岀綉椤电殑缂栫爜锛屽喅瀹氭枃浠舵帴鏀舵柟灏嗕互浠�涔堝舰寮忋�佷粈涔堢紪鐮佽鍙栬繖涓枃浠� - ContentType OCTEC_STREAM = ContentType.create("application/octet-stream", Charset.forName("UTF-8")); - //娣诲姞鏂囦欢 - entity.addBinaryBody("file", fileBytes, OCTEC_STREAM, strTemp); - } - - httpPost.setEntity(entity.build()); - //鍙戣捣璇锋眰锛屽苟杩斿洖璇锋眰鍝嶅簲 - response = httpClient.execute(httpPost); - struploadResult = EntityUtils.toString(response.getEntity(), "utf-8"); - } - 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 = serviceReimbursementServiceShare.updateById(remShare); - if (!bRet) return -1; - - return 0; - } /** * 宸梾璐逛笂鎶� @@ -439,6 +459,22 @@ @PostMapping("/travelexpensereport") public AjaxResult travelexpensereport(@RequestBody CheckFundVO checkFundVO) { ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid()); + //濡傛灉绛変簬100锛岃鏄庡凡缁忚蛋鍒板尰闄㈣储鍔¢偅杈逛簡锛涜储鍔¢偅杈瑰彇鏁版嵁鏄粠鍒嗕韩琛ㄥ彇锛屾墍浠ワ紝杩欓噷鐩存帴寰�鍒嗕韩琛ㄩ噷娣诲姞鏁版嵁灏辫浜�; + if (!Objects.isNull(serviceReimbursement) && serviceReimbursement.getBackflowlevel() != null) { +// if (serviceReimbursement.getBackflowlevel() == 100 || serviceReimbursement.getBackflowlevel() == 199) { + if (serviceReimbursement.getBackflowlevel() == 199) { + //灏嗛��鍥為樁娈佃缃垚100 + serviceReimbursement.setBackflowlevel(100L); + serviceReimbursement.setFlowlevel(100L); + serviceReimbursement.setRecordstatus(0); + serviceReimbursementService.updateById(serviceReimbursement); + + //灏嗕慨鏀圭殑涓婃姤鏁版嵁 鏂板涓�鏉� + serviceReimbursementService.addSharedData(checkFundVO.getFundid()); + + return success(); + } + } if (serviceReimbursement != null) { Integer TotalLevel = 0; LoginUser loginUser = getLoginUser(); @@ -446,14 +482,25 @@ List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId()); if (!postids.contains(2)) { - serviceReimbursement.setFlowlevel(1L); serviceReimbursement.setRecordstatus(2); + if (serviceReimbursement.getBackflowlevel() != null) { + serviceReimbursement.setFlowlevel(serviceReimbursement.getBackflowlevel()); + } else { + serviceReimbursement.setBackflowlevel(1L); + serviceReimbursement.setFlowlevel(1L); + } } else { - serviceReimbursement.setFlowlevel(0L); serviceReimbursement.setRecordstatus(0); + if (serviceReimbursement.getBackflowlevel() != null) { + serviceReimbursement.setFlowlevel(serviceReimbursement.getBackflowlevel()); + } else { + serviceReimbursement.setFlowlevel(0L); + serviceReimbursement.setBackflowlevel(0L); + } + } - if (!postids.contains(2)) { + if (!postids.contains(2) && (serviceReimbursement.getBackflowlevel() == null || serviceReimbursement.getBackflowlevel() == 0)) { ServiceFundflow serviceFundflow = new ServiceFundflow(); serviceFundflow.setFundid(serviceReimbursement.getId()); serviceFundflow.setCheckuserno(user.getUserName()); @@ -482,16 +529,18 @@ @Log(title = "瀹℃牳璐圭敤", businessType = BusinessType.OTHER) @PostMapping("/checkfund") public AjaxResult checkFund(@RequestBody CheckFundVO checkFundVO) { + log.info("瀹℃牳璐圭敤鐨勫叆鍙� : {}", checkFundVO); ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid()); + log.info("瀹℃牳璐圭敤鐨剆erviceReimbursementService.getById杩斿弬 : {}", serviceReimbursement); if (serviceReimbursement != null) { - Integer TotalLevel = 0; + Integer totalLevel = 0; LoginUser loginUser = getLoginUser(); ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule(); serviceFundflowrule.setFundtype(1); serviceFundflowrule.setApplytype("0"); serviceFundflowrule.setCheckuserno(loginUser.getUsername()); List<ServiceFundflowrule> serviceFundflowrules = serviceFundflowruleService.queryList(serviceFundflowrule); - + log.info("瀹℃牳璐圭敤鐨剆erviceFundflowruleService.queryList杩斿弬 : {}", serviceFundflowrules.size()); if (serviceFundflowrules == null || serviceFundflowrules.stream().count() == 0) { return AjaxResult.error(HttpStatus.ERROR, "褰撳墠浜哄憳鏃犳璁板綍瀹℃牳鏉冮檺"); } @@ -501,36 +550,50 @@ } if (serviceFundflowrules != null && serviceFundflowrules.stream().count() > 0) { - TotalLevel = serviceFundflowrules.get(0).getTotallevel(); + totalLevel = serviceFundflowrules.get(0).getTotallevel(); + + } Integer CheckFlag = 0; Integer RecordStatus = serviceReimbursement.getRecordstatus(); Integer FlowLevel = Integer.valueOf(serviceReimbursement.getFlowlevel().toString()); + if (Objects.isNull(serviceReimbursement.getBackflowlevel()) && !Objects.isNull(serviceReimbursement.getFlowlevel())) { + serviceReimbursement.setBackflowlevel(Long.valueOf(FlowLevel.toString())); + } Integer OriginalFlowLevel = FlowLevel; if (checkFundVO.getFlowconclusion() == 1) { CheckFlag = 1; - if (TotalLevel == 0) { + if (totalLevel == 0) { + //99 鍙栨秷 RecordStatus = 99; } else { - if (TotalLevel == FlowLevel + 1) { + if (totalLevel == FlowLevel + 1) { RecordStatus = 99; } else { RecordStatus = (FlowLevel + 1) * 2; } } FlowLevel = FlowLevel + 1; + serviceReimbursement.setBackflowlevel(Long.valueOf(FlowLevel)); } else { CheckFlag = 2; - RecordStatus = (FlowLevel + 1) * 2 - 1; - FlowLevel = (FlowLevel - 1); - if (FlowLevel < 0) { + + if (CheckFlag == 2) { + //搴斿尰闄㈣姹傚鏋滃嚭鐜伴��鍥烇紝鐩存帴閫�鍒板彂璧疯�� FlowLevel = 0; + RecordStatus = -1; + } else { + //涓嬮潰鏄師鏉ョ殑鍐欐硶锛屼竴绾т竴绾х殑寰�涓嬮��锛屽尰闄㈢幇鍦ㄤ笉瑕佽繖鏍锋悶浜嗭紝涓嬮潰杩欐浠g爜鍏堜繚鐣欙紝绛夊尰闄㈠洖蹇冭浆鎰忥紝鍐嶇粰鏀惧紑 + RecordStatus = (FlowLevel + 1) * 2 - 1; + FlowLevel = (FlowLevel - 1); + if (FlowLevel < 0) { + FlowLevel = 0; + } } } serviceReimbursement.setRecordstatus(RecordStatus); serviceReimbursement.setFlowlevel(Long.valueOf(FlowLevel.toString())); - ServiceFundflow serviceFundflow = new ServiceFundflow(); SysUser user = loginUser.getUser(); serviceFundflow.setFundid(serviceReimbursement.getId()); @@ -539,13 +602,17 @@ serviceFundflow.setFundtype(1); serviceFundflow.setApplytype("0"); serviceFundflow.setFlowconclusion(CheckFlag); - serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent()); + if (StringUtils.isNotBlank(checkFundVO.getFlowcontent())) { + serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent()); + } else { + serviceFundflow.setFlowcontent(checkFundVO.getFlowconclusion() == 1 ? "閫氳繃" : "涓嶉�氳繃"); + } serviceFundflow.setFlowlevel(OriginalFlowLevel + 1); serviceFundflowService.save(serviceFundflow); List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId()); - - if (!postids.contains(2)) { + log.info("postService.selectPostListByUserId : {}", postids.size()); + if (!postids.contains(2) && !postids.contains(6) && (serviceReimbursement.getBackflowlevel() == null || serviceReimbursement.getBackflowlevel() == 0)) { if (CheckFlag == 2 && OriginalFlowLevel == 1) { ServiceFundflow serviceFundflowAuto = new ServiceFundflow(); serviceFundflowAuto.setFundid(serviceReimbursement.getId()); @@ -557,9 +624,9 @@ serviceFundflowAuto.setFlowcontent("闈炰笓鑱屼汉鍛樹簩绾у鏍告嫆缁濆悗鐩存帴閫�鍥炲埌淇敼鐘舵��"); serviceFundflowAuto.setFlowlevel(1); serviceFundflowService.save(serviceFundflowAuto); - serviceReimbursement.setRecordstatus(1); } + } serviceReimbursementService.updateById(serviceReimbursement); @@ -574,11 +641,16 @@ serviceSystemmessage.setIsread(0); serviceSystemmessage.setMessagetype(1); serviceSystemmessage.setRelevantno(serviceReimbursement.getId()); + log.info("CheckFlag鐨勫�� : {}", CheckFlag); if (CheckFlag == 1) { //閫氳繃 serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁�氳繃"); serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceReimbursement.getDonorname() + "銆戠殑宸梾璐圭敵璇峰凡閫氳繃" + (OriginalFlowLevel + 1) + "绾у鏍�"); - + log.info("totalLevel鐨勫�� : {}, OriginalFlowLevel鐨勫��:{}", totalLevel, OriginalFlowLevel); + if (totalLevel == OriginalFlowLevel + 1) { + //鎵�鏈夋暟鎹柊澧炲埌澶囦唤琛� + serviceReimbursementService.addSharedData(checkFundVO.getFundid()); + } } else { //椹冲洖 serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁┏鍥�"); @@ -599,13 +671,13 @@ @ApiOperation("淇敼鎶ラ攢鐢宠") //@PreAuthorize("@ss.hasPermi('project:reimbursement:edit')") @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.UPDATE) - @PutMapping + @PostMapping("/reimbursementEdit") @RepeatSubmit public AjaxResult edit(@RequestBody ServiceReimbursement serviceReimbursement) { boolean b = serviceReimbursementService.updateById(serviceReimbursement); - if (b) { - addReiSharedDatd(serviceReimbursement, 2); - } +// if (b) { +// addReiSharedDatd(serviceReimbursement, 2); +// } return toAjax(b); } @@ -618,9 +690,9 @@ @PostMapping("/editMoney") public AjaxResult editMoney(@RequestBody List<ReimbursementService> serviceReimbursement) { boolean b = serviceReimbursementService.updateById(null); - if (b) { - addReiSharedDatd(null, 2); - } +// if (b) { +// addReiSharedDatd(null, 2); +// } return toAjax(b); } @@ -629,8 +701,8 @@ */ @ApiOperation("鍒犻櫎鎶ラ攢鐢宠") //@PreAuthorize("@ss.hasPermi('project:reimbursement:remove')") - @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") + @Log(title = "鎶ラ攢鐢宠") + @GetMapping("/remove/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(serviceReimbursementService.removeByIds(Arrays.asList(ids))); } @@ -644,6 +716,7 @@ Map dataMap = new HashMap(); getData(dataMap, id); String filePath = getClass().getResource("/template/").getPath(); + log.info("涓嬭浇鍦板潃鏄暐锛燂紵锛焮}", filePath); System.out.println(filePath); //璁剧疆妯℃湰瑁呯疆鏂规硶鍜岃矾寰�,FreeMarker鏀寔澶氱妯℃澘瑁呰浇鏂规硶銆傚彲浠ラ噸servlet锛宑lasspath锛屾暟鎹簱鏁欑▼瑁呰浇锛� configuration.setDirectoryForTemplateLoading(new File(filePath)); @@ -656,7 +729,7 @@ e.printStackTrace(); } String newTime = String.valueOf(Calendar.getInstance().getTimeInMillis()); - String name = "宸梾璐规姤閿�鐢宠鍗昣" + dataMap.get("XM") + "_" + newTime; + String name = "宸梾璐规姤閿�鐢宠鍗昣" + dataMap.get("JSR") + "_" + newTime; //杈撳嚭鏂囨。璺緞鍙婂悕绉� File outFile = new File(RuoYiConfig.getProfile() + "/download/wordtemplate/" + name + ".doc"); @@ -699,11 +772,16 @@ ServiceReimbursementEo serviceReimbursementEo = new ServiceReimbursementEo(); serviceReimbursementEo.setId(id); List<ServiceReimbursementEo> rdInfoByItem = serviceReimbursementService.getRDInfoByItem(serviceReimbursementEo); + log.info("rdInfoByItem鏄惁涓虹┖ :{}", CollectionUtils.isEmpty(rdInfoByItem) ? null : rdInfoByItem.size()); + for (int i = 0; i < rdInfoByItem.size(); i++) { + ServiceReimbursementEo serviceReimbursementEo1 = rdInfoByItem.get(i); + String codeByInfo = PersonType.getCodeByInfo(serviceReimbursementEo1.getPersontype()); + serviceReimbursementEo1.setPersontype(codeByInfo); + } //鑾峰彇鎶ラ攢鏀粯淇℃伅 List<ServiceReimbursementpayee> reimbursementpayeeInfo = reimbursementpayeeService.getReimbursementpayeeInfo(serviceReimbursementEo); - - Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream() - .collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype)); + log.info("reimbursementpayeeInfo鏄惁涓虹┖ :{}", CollectionUtils.isEmpty(reimbursementpayeeInfo) ? null : reimbursementpayeeInfo.size()); + Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream().collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype)); List<Map<String, BigDecimal>> list = new ArrayList<>(); StringBuffer FYXM1 = new StringBuffer(); StringBuffer FYXM2 = new StringBuffer(); @@ -719,30 +797,76 @@ BigDecimal keyOneMoney = new BigDecimal(0.00); BigDecimal keyTwoMoney = new BigDecimal(0.00); for (ServiceReimbursementEo serviceReimbursementEo1 : values) { - otherMoney = otherMoney.add(serviceReimbursementEo1.getTrafficexpense()).add(serviceReimbursementEo1.getHotelexpense()) - .add(serviceReimbursementEo1.getFoodexpenses()).add(serviceReimbursementEo1.getFoodallowance()) - .add(serviceReimbursementEo1.getOtherexpense()).add(serviceReimbursementEo1.getOtherfeeamount()); + otherMoney = otherMoney.add(serviceReimbursementEo1.getTrafficexpense()).add(serviceReimbursementEo1.getHotelexpense()).add(serviceReimbursementEo1.getCityfee()).add(serviceReimbursementEo1.getFoodexpenses()).add(serviceReimbursementEo1.getFoodallowance()).add(serviceReimbursementEo1.getOtherexpense()).add(serviceReimbursementEo1.getOtherfeeamount()); } map.put(key, otherMoney); list.add(map); - // 涓嶄负涓撳鎴栧灞� - if (!key.equals("3") && !key.equals("4")) { - //灏嗕笂涓�娆$殑娓呯┖ - FYXM1.delete(0, FYXM1.length()); - //鍐嶆柊澧� - otherMoneyall = otherMoneyall.add(otherMoney); - FYXM1.append("OPO宸ヤ綔浜哄憳" + ":" + otherMoneyall + " "); - } else { - if (flag == 0) { - key1 = key; - flag = 1; - } - if (key1 == key) { - FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney); - allMoney = allMoney.add(otherMoney); + // 涓嶄负涓撳鎴栧灞烇紝key鏈夊彲鑳芥槸鏁板瓧锛屾湁鍙兘鏄眽瀛� + Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$"); + boolean matches = pattern.matcher(key).matches(); + if (matches) { + if (!key.equals("3") && !key.equals("4")) { + //灏嗕笂涓�娆$殑娓呯┖ + FYXM1.delete(0, FYXM1.length()); + //鍐嶆柊澧� + otherMoneyall = otherMoneyall.add(otherMoney); + FYXM1.append("OP0 宸ヤ綔浜哄憳鎶ラ攢宸梾璐�" + ":" + otherMoneyall + " "); } else { - FYXM3.append(PersonType.getInfoByCode(key) + ":" + otherMoney); - allMoney = allMoney.add(otherMoney); + if (flag == 0) { + key1 = key; + flag = 1; + } + if (key1 == key) { + if (key.equals("3")) { +// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney); + FYXM2.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney); + allMoney = allMoney.add(otherMoney); + } else { + FYXM2.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney); + allMoney = allMoney.add(otherMoney); + } + } else { + if (key.equals("3")) { +// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney); + FYXM3.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney); + allMoney = allMoney.add(otherMoney); + } else { + FYXM3.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney); + allMoney = allMoney.add(otherMoney); + } + } + } + } else { + if (!key.equals("涓撳") && !key.equals("瀹跺睘")) { + //灏嗕笂涓�娆$殑娓呯┖ + FYXM1.delete(0, FYXM1.length()); + //鍐嶆柊澧� + otherMoneyall = otherMoneyall.add(otherMoney); + FYXM1.append("OP0 宸ヤ綔浜哄憳鎶ラ攢宸梾璐�" + ":" + otherMoneyall + " "); + } else { + if (flag == 0) { + key1 = key; + flag = 1; + } + if (key1 == key) { + if (key.equals("涓撳")) { +// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney); + FYXM2.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney); + allMoney = allMoney.add(otherMoney); + } else { + FYXM2.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney); + allMoney = allMoney.add(otherMoney); + } + } else { + if (key.equals("涓撳")) { +// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney); + FYXM3.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney); + allMoney = allMoney.add(otherMoney); + } else { + FYXM3.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney); + allMoney = allMoney.add(otherMoney); + } + } } } } @@ -772,6 +896,7 @@ String date = formatter.format(dt); String time = date.substring(0, 10); + dataMap.put("XZBH", rdInfoByItem.get(0).getBh() == null ? "" : rdInfoByItem.get(0).getBh()); dataMap.put("TBYYMMDD", time); dataMap.put("BXDFJ", rdInfoByItem.get(0).getAttachcount() == null ? " " : "" + rdInfoByItem.get(0).getAttachcount()); dataMap.put("JXZXM", rdInfoByItem.get(0).getDonorname() == null ? "" : rdInfoByItem.get(0).getDonorname()); @@ -791,19 +916,30 @@ } else { dataMap.put("FYXM3", ""); } - // dataMap.put("JEXS", rdInfoByItem.get(0).getAmountrequested()); dataMap.put("JEXS", allMoney); - //double temp = 0; - //temp = Math.round(serviceReimbursement.getAmountrequested() * 100) * 0.01d; - // dataMap.put("JEDS", convert(rdInfoByItem.get(0).getAmountrequested().doubleValue()) + "鏁�"); dataMap.put("JEDS", convert(allMoney.doubleValue()) + "鏁�"); String remark = ""; for (ServiceReimbursementpayee serviceReimbursementpayee : reimbursementpayeeInfo) { - remark += "<w:br/> "+PersonType.getInfoByCode(serviceReimbursementpayee.getPersontype())+ "(" + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount(); - remark += " 鍏�; " + serviceReimbursementpayee.getBankname() + ": " + serviceReimbursementpayee.getBankcardno() + ") 澶囨敞: " + serviceReimbursementpayee.getRemark(); + remark += "<w:br/> " + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount(); + remark += " 鍏�; "; + if (!StringUtils.isEmpty(serviceReimbursementpayee.getBankname())) { + remark += serviceReimbursementpayee.getBankname() + " ( " + serviceReimbursementpayee.getBankcardno() + ")"; + } + remark += " 澶囨敞: " + serviceReimbursementpayee.getPersontype(); + if (!StringUtils.isEmpty(serviceReimbursementpayee.getRemark())) { + remark += serviceReimbursementpayee.getRemark(); + } } dataMap.put("BXBZ", remark); + + dataMap.put("ZXFZR", StringUtils.isEmpty(rdInfoByItem.get(0).getOpochecker()) ? "" : rdInfoByItem.get(0).getOpochecker()); +// + dataMap.put("CWFYZ", StringUtils.isEmpty(rdInfoByItem.get(0).getFinvicepresident()) ? "" : rdInfoByItem.get(0).getFinvicepresident()); + dataMap.put("YWFYZ", StringUtils.isEmpty(rdInfoByItem.get(0).getBusvicepresident()) ? "" : rdInfoByItem.get(0).getBusvicepresident()); + dataMap.put("BGSZR", StringUtils.isEmpty(rdInfoByItem.get(0).getOfficedirector()) ? "" : rdInfoByItem.get(0).getOfficedirector()); + dataMap.put("CWBZR", StringUtils.isEmpty(rdInfoByItem.get(0).getFinancedirector()) ? "" : rdInfoByItem.get(0).getFinancedirector()); + dataMap.put("CWSH", StringUtils.isEmpty(rdInfoByItem.get(0).getFinancechecher()) ? "" : rdInfoByItem.get(0).getFinancechecher()); dataMap.put("YYMMDD", time); @@ -846,11 +982,16 @@ map.put("DA", s.getDeparture() == null ? "" : s.getDeparture()); Date et = s.getEndtime(); - SimpleDateFormat formatter_et = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String date_et = formatter_et.format(et); - String year_et = date_et.substring(0, 4); - String month_et = date_et.substring(5, 7); - String day_et = date_et.substring(8, 10); + String year_et = null; + String month_et = null; + String day_et = null; + if (et != null) { + SimpleDateFormat formatter_et = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String date_et = formatter_et.format(et); + year_et = date_et.substring(0, 4); + month_et = date_et.substring(5, 7); + day_et = date_et.substring(8, 10); + } map.put("AY", year_et == null ? "" : year_et); map.put("AM", month_et == null ? "" : month_et); @@ -995,9 +1136,7 @@ } result = result.replaceAll("闆朵粺", "闆�").replaceAll("闆朵桨", "闆�") //鎶婂崟浣�'浜�','涓�','鍏�'鏀惧埌鏈�鍚庢浛鎹€�� - .replaceAll("闆舵嬀", "闆�").replaceAll("闆堕浂", "闆�") - .replaceAll("闆堕浂", "闆�").replaceAll("闆朵嚎", "浜�") - .replaceAll("闆朵竾", "涓�").replaceAll("闆跺厓", "鍏�"); + .replaceAll("闆舵嬀", "闆�").replaceAll("闆堕浂", "闆�").replaceAll("闆堕浂", "闆�").replaceAll("闆朵嚎", "浜�").replaceAll("闆朵竾", "涓�").replaceAll("闆跺厓", "鍏�"); // result = result.replaceAll("闆朵粺", "闆�"); // result = result.replaceAll("闆朵桨", "闆�"); // result = result.replaceAll("闆舵嬀", "闆�"); -- Gitblit v1.9.3