From b7cd70a1dc48f2cd2f5ed36d09f92c8ebcc62c8b Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 03 十一月 2023 15:20:45 +0800 Subject: [PATCH] 修改审批流程 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 68 ++++++++++++++++++++++++++------- 1 files changed, 53 insertions(+), 15 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 90cf6dd..e8634d5 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 @@ -75,6 +75,9 @@ private IServiceFundService serviceFundService; @Autowired + private IBaseOnlyvalueService baseOnlyvalueService; + + @Autowired private ISysPostService postService; @Autowired @@ -132,8 +135,10 @@ String APPLICATIONENDTIME = spFinancialExpensesIn.getAPPLICATIONENDTIME(); Integer CHECKFLAG = spFinancialExpensesIn.getCHECKFLAG(); Integer APPLYTYPE = spFinancialExpensesIn.getAPPLYTYPE(); + Integer checkstatus = spFinancialExpensesIn.getCheckstatus(); Integer pageNum = spFinancialExpensesIn.getPageNum(); Integer pageSize = spFinancialExpensesIn.getPageSize(); + String donorname = spFinancialExpensesIn.getDonorname(); if (pageNum == null) { pageNum = 1; @@ -155,15 +160,21 @@ APPLICATIONENDTIME = ""; } //startPage(); - List<SpFinancialExpensesReimbursementOut> list = serviceReimbursementService.getListBypower(loginUser.getUsername(), 1, APPLICANT, APPLICATIONBEGTIME, APPLICATIONENDTIME, loginUser.getDeptId().toString(), CHECKFLAG, APPLYTYPE); + List<SpFinancialExpensesReimbursementOut> list = serviceReimbursementService.getListBypower(loginUser.getUsername(), 1, APPLICANT, APPLICATIONBEGTIME, APPLICATIONENDTIME, loginUser.getDeptId().toString(), CHECKFLAG, APPLYTYPE, checkstatus, donorname); + //鏍规嵁缁忓姙浜虹瓫閫� 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()).compareTo(new BigDecimal(spFinancialExpensesIn.getMoney())) == 0).collect(Collectors.toList()); + } + //鏍规嵁鍒涘缓鏃堕棿鎺掑簭 Collections.sort(list, new Comparator<SpFinancialExpensesReimbursementOut>() { @Override public int compare(SpFinancialExpensesReimbursementOut o1, SpFinancialExpensesReimbursementOut o2) { - return o2.getCreateTime().compareTo(o1.getCreateTime()); + return o1.getCreateTime().compareTo(o2.getCreateTime()); } }); return getCustomDataTable(list, pageNum, pageSize); @@ -212,13 +223,13 @@ @RepeatSubmit @Options(useGeneratedKeys = true, keyProperty = "id") public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) { - - boolean b = serviceReimbursementService.save(serviceReimbursement); -// if (b) { -// addReiSharedDatd(serviceReimbursement, 1); -// } - Long id = serviceReimbursement.getId(); - return AjaxResult.success(id); + if (!Objects.isNull(serviceReimbursement)) { + serviceReimbursement.setCheckstatus(serviceReimbursement.getCheckstatus() == null ? 1 : serviceReimbursement.getCheckstatus()); + boolean b = serviceReimbursementService.save(serviceReimbursement); + Long id = serviceReimbursement.getId(); + return AjaxResult.success(id); + } + return error(); } // public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { @@ -456,17 +467,24 @@ 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) { + if (serviceReimbursement.getBackflowlevel() == 100 || serviceReimbursement.getBackflowlevel() == 199) { +// if (serviceReimbursement.getBackflowlevel() == 199) { //灏嗛��鍥為樁娈佃缃垚100 serviceReimbursement.setBackflowlevel(100L); - serviceReimbursement.setFlowlevel(100L); - serviceReimbursement.setRecordstatus(0); + //閫�鍥炲啀鎻愪氦锛岄渶瑕佸啀鍒板嚭绾抽偅閲� + serviceReimbursement.setFlowlevel(1L); + serviceReimbursement.setRecordstatus(2); serviceReimbursementService.updateById(serviceReimbursement); //灏嗕慨鏀圭殑涓婃姤鏁版嵁 鏂板涓�鏉� - serviceReimbursementService.addSharedData(checkFundVO.getFundid()); +// serviceReimbursementService.addSharedData(checkFundVO.getFundid()); + return success(); + } else if (serviceReimbursement.getBackflowlevel() == 2) { + //鑱傜閫�鍥炵殑锛屼篃闇�瑕佽蛋鍑虹撼閭i噷 + serviceReimbursement.setFlowlevel(1L); + serviceReimbursement.setRecordstatus(2); + serviceReimbursementService.updateById(serviceReimbursement); return success(); } } @@ -562,12 +580,24 @@ //99 鍙栨秷 RecordStatus = 99; } else { + if (totalLevel == FlowLevel + 1) { RecordStatus = 99; } else { RecordStatus = (FlowLevel + 1) * 2; } } + + if (serviceReimbursement.getFlowlevel() == 1 && serviceReimbursement.getBackflowlevel() == 100) { + log.info("鍑哄樊琛ヨ创琚� 璐㈠姟閫�鍥炲啀鎻愪氦锛屽嚭绾冲啀娆″鎵癸紝涔嬪悗鎻愪氦鍒拌储鍔�"); + //璇存槑鏄储鍔¢��鍥炲啀鎻愪氦鐨�.闇�瑕佸嚭绾冲啀鐪嬩竴閬嶏紝娌¢棶棰樹箣鍚庯紝寰�鍒嗕韩琛ㄩ噷鏂板 + serviceReimbursementService.addSharedData(serviceReimbursement.getId()); + serviceReimbursement.setFlowlevel(100L); + serviceReimbursement.setRecordstatus(99); + serviceReimbursementService.updateById(serviceReimbursement); + return AjaxResult.success(); + } + FlowLevel = FlowLevel + 1; serviceReimbursement.setBackflowlevel(Long.valueOf(FlowLevel)); } else { @@ -585,6 +615,8 @@ FlowLevel = 0; } } + + } serviceReimbursement.setRecordstatus(RecordStatus); @@ -622,6 +654,10 @@ serviceReimbursement.setRecordstatus(1); } + } + //001瀹℃壒閫氳繃涔嬪悗锛屽氨闇�瑕佹妸鈥滃姙鍏涓讳换鈥濈殑鍚嶅瓧濉笂 + if (checkFundVO.getFlowconclusion() == 1 && user.getUserName().equals("001")) { + serviceReimbursement.setOfficedirector(user.getNickName()); } serviceReimbursementService.updateById(serviceReimbursement); @@ -711,6 +747,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)); @@ -723,7 +760,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"); @@ -890,6 +927,7 @@ String date = formatter.format(dt); String time = date.substring(0, 10); + dataMap.put("ZB", rdInfoByItem.get(0).getDeptmentname() == null ? "" : rdInfoByItem.get(0).getDeptmentname()); 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()); -- Gitblit v1.9.3