From 2b04605163633cbc4c1c801f31211d1ae0ccf0f5 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期六, 06 五月 2023 18:14:27 +0800 Subject: [PATCH] 代码修改 --- ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetail.java | 14 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 602 +++++++++++++----------- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailSharedController.java | 2 ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceReimbursementService.java | 3 ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementEo.java | 270 +++++++++++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java | 100 ++-- ruoyi-admin/src/main/java/com/ruoyi/web/controller/enums/PersonType.java | 47 + ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java | 7 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailServiceImpl.java | 14 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailSharedServiceImpl.java | 12 ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceReimbursementMapper.java | 9 ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml | 219 ++++++-- ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 2 ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java | 10 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java | 19 ruoyi-common/src/main/java/com/ruoyi/common/utils/bean/DtoConversionUtils.java | 64 ++ ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java | 18 17 files changed, 978 insertions(+), 434 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/enums/PersonType.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/enums/PersonType.java new file mode 100644 index 0000000..f729e52 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/enums/PersonType.java @@ -0,0 +1,47 @@ +package com.ruoyi.web.controller.enums; + +import com.ruoyi.common.enums.OrganEnum; + +/** + * 鐢ㄦ埛绫诲瀷 + * + * @author ls + */ +public enum PersonType +{ + OTHER("0", "鍏朵粬浜哄憳"), + PROFESSIONAL("1", "涓撹亴浜哄憳"), + COORDINATOR("2", "鍗忚皟鍛�"), + EXPERT("3","涓撳"), + KIN("4","瀹跺睘"); + + private final String code; + private final String info; + + PersonType(String code, String info) + { + this.code = code; + this.info = info; + } + + public String getCode() + { + return code; + } + + public String getInfo() + { + return info; + } + + public static String getInfoByCode(String code) { + PersonType[] personTypes = values(); + for (int i = 0; i < personTypes.length; i++) { + PersonType personType = personTypes[i]; + if (personType.getCode().equals(code)) { + return personType.getInfo(); + } + } + return null; + } +} 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 49201e0..7de9e32 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 @@ -23,11 +23,13 @@ import com.ruoyi.project.domain.vo.SpFinancialExpensesReimbursementOut; import com.ruoyi.project.service.*; import com.ruoyi.system.service.ISysPostService; +import com.ruoyi.web.controller.enums.PersonType; import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang.StringUtils; import org.apache.ibatis.annotations.Options; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -37,20 +39,19 @@ import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; - +import java.util.stream.Collectors; /** * 鎶ラ攢鐢宠Controller - * + * * @author ruoyi * @date 2022-01-24 */ @Api("鎶ラ攢鐢宠") @RestController @RequestMapping("/project/reimbursement") -public class ServiceReimbursementController extends BaseController -{ +public class ServiceReimbursementController extends BaseController { @Autowired private IServiceReimbursementService serviceReimbursementService; @@ -73,13 +74,15 @@ private IServiceSystemmessageService ServiceSystemmessage; private static Configuration configuration = null; + public ServiceReimbursementController() { configuration = new Configuration(); configuration.setDefaultEncoding("utf-8"); } - static String cashUnitLeft[] = { "鍏�", "鎷�", "浣�", "浠�", "涓�", "鎷�", "浣�", "浠�","浜�", "鎷�", "浣�", "浠�", "涓�" }; - static String cashUnitRight[] = { "瑙�", "鍒�", "鍘�" }; - static String upperNumber[] = { "闆�", "澹�", "璐�", "鍙�", "鑲�", "浼�", "闄�", "鏌�","鎹�", "鐜�" }; + + static String cashUnitLeft[] = {"鍏�", "鎷�", "浣�", "浠�", "涓�", "鎷�", "浣�", "浠�", "浜�", "鎷�", "浣�", "浠�", "涓�"}; + static String cashUnitRight[] = {"瑙�", "鍒�", "鍘�"}; + static String upperNumber[] = {"闆�", "澹�", "璐�", "鍙�", "鑲�", "浼�", "闄�", "鏌�", "鎹�", "鐜�"}; /** * 鏌ヨ鎶ラ攢鐢宠鍒楄〃 @@ -88,8 +91,7 @@ //@PreAuthorize("@ss.hasPermi('project:reimbursement:list')") @Log(title = "鏌ヨ鎶ラ攢鐢宠鍒楄〃", businessType = BusinessType.OTHER) @GetMapping("/list") - public TableDataInfo list(ServiceReimbursement serviceReimbursement) - { + public TableDataInfo list(ServiceReimbursement serviceReimbursement) { SysUser user = SecurityUtils.getLoginUser().getUser(); serviceReimbursement.setCreateBy(user.getUserName()); startPage(); @@ -102,8 +104,7 @@ */ @ApiOperation("鏍规嵁鏃ユ湡鏌ヨ鎶ラ攢鐢宠鍒楄〃") @GetMapping("/listWithDate") - public TableDataInfo listWithDate(ServiceReimbursementDto serviceReimbursementdto) - { + public TableDataInfo listWithDate(ServiceReimbursementDto serviceReimbursementdto) { startPage(); List<ServiceReimbursement> list = serviceReimbursementService.selectSearchList(serviceReimbursementdto); return getDataTable(list); @@ -115,45 +116,39 @@ @ApiOperation("鏍规嵁鏉冮檺鏄剧ず瀹℃牳鍒楄〃") @Log(title = "鏍规嵁鏉冮檺鏄剧ず瀹℃牳鍒楄〃", businessType = BusinessType.OTHER) @GetMapping("/listbypower") - public TableDataInfo getListBypower(SpFinancialExpensesIn spFinancialExpensesIn) - { + public TableDataInfo getListBypower(SpFinancialExpensesIn spFinancialExpensesIn) { LoginUser loginUser = getLoginUser(); - String APPLICANT=spFinancialExpensesIn.getAPPLICANT(); - String APPLICATIONBEGTIME=spFinancialExpensesIn.getAPPLICATIONBEGTIME(); - String APPLICATIONENDTIME=spFinancialExpensesIn.getAPPLICATIONENDTIME(); - Integer CHECKFLAG=spFinancialExpensesIn.getCHECKFLAG(); - Integer APPLYTYPE=spFinancialExpensesIn.getAPPLYTYPE(); - Integer pageNum=spFinancialExpensesIn.getPageNum(); - Integer pageSize=spFinancialExpensesIn.getPageSize(); + String APPLICANT = spFinancialExpensesIn.getAPPLICANT(); + String APPLICATIONBEGTIME = spFinancialExpensesIn.getAPPLICATIONBEGTIME(); + String APPLICATIONENDTIME = spFinancialExpensesIn.getAPPLICATIONENDTIME(); + Integer CHECKFLAG = spFinancialExpensesIn.getCHECKFLAG(); + Integer APPLYTYPE = spFinancialExpensesIn.getAPPLYTYPE(); + Integer pageNum = spFinancialExpensesIn.getPageNum(); + Integer pageSize = spFinancialExpensesIn.getPageSize(); - if(pageNum==null) - { - pageNum=1; + if (pageNum == null) { + pageNum = 1; } - if(pageSize==null) - { - pageSize=10; + if (pageSize == null) { + pageSize = 10; } - if(APPLICANT==null) - { - APPLICANT=""; + if (APPLICANT == null) { + APPLICANT = ""; } - if(APPLICATIONBEGTIME==null) - { - APPLICATIONBEGTIME=""; + if (APPLICATIONBEGTIME == null) { + APPLICATIONBEGTIME = ""; } - if(APPLICATIONENDTIME==null) - { - APPLICATIONENDTIME=""; + if (APPLICATIONENDTIME == null) { + APPLICATIONENDTIME = ""; } //startPage(); - List<SpFinancialExpensesReimbursementOut> list = serviceReimbursementService.getListBypower(loginUser.getUsername(),1,APPLICANT,APPLICATIONBEGTIME,APPLICATIONENDTIME,loginUser.getDeptId().toString(),CHECKFLAG,APPLYTYPE); - return getCustomDataTable(list,pageNum,pageSize); + List<SpFinancialExpensesReimbursementOut> list = serviceReimbursementService.getListBypower(loginUser.getUsername(), 1, APPLICANT, APPLICATIONBEGTIME, APPLICATIONENDTIME, loginUser.getDeptId().toString(), CHECKFLAG, APPLYTYPE); + return getCustomDataTable(list, pageNum, pageSize); } /** @@ -163,8 +158,7 @@ //@PreAuthorize("@ss.hasPermi('project:reimbursement:export')") @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.EXPORT) @GetMapping("/export") - public AjaxResult export(ServiceReimbursement serviceReimbursement) - { + public AjaxResult export(ServiceReimbursement serviceReimbursement) { List<ServiceReimbursement> list = serviceReimbursementService.queryList(serviceReimbursement); ExcelUtil<ServiceReimbursement> util = new ExcelUtil<ServiceReimbursement>(ServiceReimbursement.class); return util.exportExcel(list, "鎶ラ攢鐢宠鏁版嵁"); @@ -176,18 +170,17 @@ @ApiOperation("鑾峰彇鎶ラ攢鐢宠璇︾粏淇℃伅") //@PreAuthorize("@ss.hasPermi('project:reimbursement:query')") @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { + public AjaxResult getInfo(@PathVariable("id") Long id) { return AjaxResult.success(serviceReimbursementService.getById(id)); } @GetMapping("/getMaxId") - public AjaxResult getMaxId(){ + public AjaxResult getMaxId() { return AjaxResult.success(serviceReimbursementService.getMaxId()); } @GetMapping("/getRBDetailList/{id}") - public AjaxResult getRBDetailList(@PathVariable("id") Long id){ + public AjaxResult getRBDetailList(@PathVariable("id") Long id) { return AjaxResult.success(serviceReimbursementService.getRBDetailList(id)); } @@ -200,32 +193,27 @@ @PostMapping @RepeatSubmit @Options(useGeneratedKeys = true, keyProperty = "id") - public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) - { + 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) - { + public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { //remShare = ; ServiceReimbursementShared remShare = null; - if(nType == 1) - { + if (nType == 1) { remShare = new ServiceReimbursementShared(); remShare.setReimid(serviceReimbursement.getId()); - } - else //modify + } else //modify { List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId()); - if(remlist!=null) - remShare =remlist.get(0); + if (remlist != null) + remShare = remlist.get(0); } remShare.setUserno(serviceReimbursement.getUserno()); @@ -240,14 +228,14 @@ remShare.setAnnexbankcard(serviceReimbursement.getAnnexbankcard()); remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); //remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); - // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested())); + // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested())); Double nTemp = serviceReimbursement.getAmountrequested(); - if( nTemp == null) nTemp = 0d; + if (nTemp == null) nTemp = 0d; remShare.setAmountrequested(BigDecimal.valueOf(nTemp)); nTemp = serviceReimbursement.getPrepaidamount(); - if(nTemp == null) nTemp = 0.0; + if (nTemp == null) nTemp = 0.0; remShare.setPrepaidamount(BigDecimal.valueOf(nTemp)); remShare.setInvoicecount(serviceReimbursement.getInvoicecount()); @@ -272,7 +260,7 @@ remShare.setUploadtime(serviceReimbursement.getUploadtime()); nTemp = serviceReimbursement.getTotalamount(); - if(nTemp == null) nTemp = 0.0; + if (nTemp == null) nTemp = 0.0; remShare.setTotalamount(BigDecimal.valueOf(nTemp)); remShare.setBigstrmoney(serviceReimbursement.getBigstrmoney()); @@ -285,19 +273,16 @@ remShare.setDonorremark(serviceReimbursement.getDonorremark()); nTemp = serviceReimbursement.getDonoramount(); - if(nTemp == null) nTemp = 0.0; + 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) - { + if (nType == 1) { bRet = serviceReimbursementServiceShare.save(remShare); - } - else - { + } else { //remShare.setId(serviceReimbursement.); bRet = serviceReimbursementServiceShare.updateById(remShare); } @@ -305,43 +290,39 @@ //if(!bRet) return -1; String strMutfileUrl = remShare.getFileurl(); //鏈夐檮浠舵椂鎵嶈皟鐢ㄧ涓夋柟杩涜涓婁紶 - if(strMutfileUrl == null) return 0; - if(strMutfileUrl.isEmpty()) return 0; + if (strMutfileUrl == null) return 0; + if (strMutfileUrl.isEmpty()) return 0; - try - { + try { uploadOAFileAndUpdateDb(remShare); - } - catch (Exception e) - { + } catch (Exception e) { logger.error("璋冪敤绗笁鏂规帴鍙e嚭閿�!"); e.printStackTrace(); } //姝ゅ淇濆瓨鎴愬姛鍚庤涓婁紶OA锛屼繚瀛樿繑鍥炲�� - return 0; + return 0; } - int uploadOAFileAndUpdateDb(ServiceReimbursementShared remShare) - { - //涓婁紶OA鏂囦欢 + 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"); + map.put("userName", "opo"); + map.put("password", "4126407a-9821-4874-be41-6568abd6dbe5"); + map.put("loginName", "demo3"); - JSONObject jsonObj = new JSONObject(map); + JSONObject jsonObj = new JSONObject(map); - System.out.println("uploadOAFileAndUpdateDb + jsonObject"+jsonObj.toString() + "\r\n" + jsonObj.toJSONString()); - String strRes = HttpClientKit.postOpr(strUrl,jsonObj.toString());// + 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); @@ -351,10 +332,10 @@ //涓嬮潰闇�姹傝皟鐢ㄦ枃浠剁殑鎺ュ彛锛岃皟鐢ㄦ垚鍔熻繑鍥炲悗锛屽緱鍒癴ilename鍜宖ileid 鐢ㄨ繖浜屼釜鍊煎幓鏇存柊鏁版嵁 - String filePath = RuoYiConfig.getUploadPath(); - String strMutfileUrl = remShare.getFileurl();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑 + String filePath = RuoYiConfig.getUploadPath(); + String strMutfileUrl = remShare.getFileurl();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑 - String strFUrl = "http://129.88.242.39:8899/seeyon/rest/attachment?token="+strRes; + 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); @@ -372,20 +353,16 @@ String fileid = ""; String[] urlArray = strMutfileUrl.split(","); - for (int i = 0; i < urlArray.length; i++) - { + for (int i = 0; i < urlArray.length; i++) { String strOneFileName = urlArray[i]; String strTemp = strOneFileName.substring(15); - String strFile = filePath + strTemp ; + String strFile = filePath + strTemp; //FileUploadUtils.getAbsoluteFile(filePath,strOneFileName); String struploadResult = ""; File filetest = new File(strFile); - try - { - struploadResult = HttpClientKit.sendPostWithFile(filetest,strFUrl); - } - catch (Exception e) - { + try { + struploadResult = HttpClientKit.sendPostWithFile(filetest, strFUrl); + } catch (Exception e) { e.printStackTrace(); } @@ -421,34 +398,32 @@ }*/ //String strFRes = HttpClientKit.postMsg(strFUrl,jsonFObj); - if(struploadResult == null) return 0; - if(struploadResult.isEmpty()) return 0; + 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++) - { + for (int j = 0; j < jsonArr.size(); j++) { JSONObject jsonRet = jsonArr.getJSONObject(j); - String name1= jsonRet.get("filename").toString(); + String name1 = jsonRet.get("filename").toString(); String id1 = jsonRet.get("fileUrl").toString(); - filename+=name1; - fileid+=id1; - if(i!=urlArray.length-1) - { - filename+=","; - fileid+=","; + 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; + long nId = remShare.getId(); + remShare.setId(nId); + remShare.setFilename(filename); + remShare.setFileid(fileid); + boolean bRet = serviceReimbursementServiceShare.updateById(remShare); + if (!bRet) return -1; return 0; } @@ -459,28 +434,23 @@ @ApiOperation("宸梾璐逛笂鎶�") @Log(title = "宸梾璐逛笂鎶�", businessType = BusinessType.OTHER) @PostMapping("/travelexpensereport") - public AjaxResult travelexpensereport(@RequestBody CheckFundVO checkFundVO) - { - ServiceReimbursement serviceReimbursement= serviceReimbursementService.getById(checkFundVO.getFundid()); - if(serviceReimbursement!=null) - { - Integer TotalLevel=0; + public AjaxResult travelexpensereport(@RequestBody CheckFundVO checkFundVO) { + ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid()); + if (serviceReimbursement != null) { + Integer TotalLevel = 0; LoginUser loginUser = getLoginUser(); SysUser user = loginUser.getUser(); - List<Integer> postids =postService.selectPostListByUserId(loginUser.getUserId()); + List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId()); - if(!postids.contains(2)) - { + if (!postids.contains(2)) { serviceReimbursement.setFlowlevel(1L); serviceReimbursement.setRecordstatus(2); - } - else - { + } else { serviceReimbursement.setFlowlevel(0L); serviceReimbursement.setRecordstatus(0); } - if(!postids.contains(2)) { + if (!postids.contains(2)) { ServiceFundflow serviceFundflow = new ServiceFundflow(); serviceFundflow.setFundid(serviceReimbursement.getId()); serviceFundflow.setCheckuserno(user.getUserName()); @@ -496,10 +466,8 @@ serviceReimbursementService.updateById(serviceReimbursement); return AjaxResult.success(); - } - else - { - return AjaxResult.error(HttpStatus.NO_CONTENT,"璐圭敤缂栧彿涓嶆纭�"); + } else { + return AjaxResult.error(HttpStatus.NO_CONTENT, "璐圭敤缂栧彿涓嶆纭�"); } } @@ -510,72 +478,57 @@ @ApiOperation("瀹℃牳璐圭敤") @Log(title = "瀹℃牳璐圭敤", businessType = BusinessType.OTHER) @PostMapping("/checkfund") - public AjaxResult checkFund(@RequestBody CheckFundVO checkFundVO) - { - ServiceReimbursement serviceReimbursement= serviceReimbursementService.getById(checkFundVO.getFundid()); - if(serviceReimbursement!=null) - { - Integer TotalLevel=0; + public AjaxResult checkFund(@RequestBody CheckFundVO checkFundVO) { + ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid()); + if (serviceReimbursement != null) { + Integer TotalLevel = 0; LoginUser loginUser = getLoginUser(); - ServiceFundflowrule serviceFundflowrule=new ServiceFundflowrule(); + ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule(); serviceFundflowrule.setFundtype(1); serviceFundflowrule.setApplytype("0"); serviceFundflowrule.setCheckuserno(loginUser.getUsername()); - List<ServiceFundflowrule> serviceFundflowrules= serviceFundflowruleService.queryList(serviceFundflowrule); + List<ServiceFundflowrule> serviceFundflowrules = serviceFundflowruleService.queryList(serviceFundflowrule); - if(serviceFundflowrules==null || serviceFundflowrules.stream().count()==0) - { - return AjaxResult.error(HttpStatus.ERROR,"褰撳墠浜哄憳鏃犳璁板綍瀹℃牳鏉冮檺"); + if (serviceFundflowrules == null || serviceFundflowrules.stream().count() == 0) { + return AjaxResult.error(HttpStatus.ERROR, "褰撳墠浜哄憳鏃犳璁板綍瀹℃牳鏉冮檺"); } - if(serviceFundflowrules.get(0).getFlowlevel()-1!=serviceReimbursement.getFlowlevel()) - { - return AjaxResult.error(HttpStatus.ERROR,"褰撳墠浜哄憳涓庢璁板綍鐨勫鏍哥骇鍒笉绗�"); + if (serviceFundflowrules.get(0).getFlowlevel() - 1 != serviceReimbursement.getFlowlevel()) { + return AjaxResult.error(HttpStatus.ERROR, "褰撳墠浜哄憳涓庢璁板綍鐨勫鏍哥骇鍒笉绗�"); } - if(serviceFundflowrules!=null && serviceFundflowrules.stream().count()>0) - { - TotalLevel=serviceFundflowrules.get(0).getTotallevel(); + if (serviceFundflowrules != null && serviceFundflowrules.stream().count() > 0) { + TotalLevel = serviceFundflowrules.get(0).getTotallevel(); } - Integer CheckFlag=0; + Integer CheckFlag = 0; Integer RecordStatus = serviceReimbursement.getRecordstatus(); Integer FlowLevel = Integer.valueOf(serviceReimbursement.getFlowlevel().toString()); - Integer OriginalFlowLevel=FlowLevel; - if(checkFundVO.getFlowconclusion()==1) - { - CheckFlag=1; - if(TotalLevel==0) - { - RecordStatus=99; - } - else - { - if(TotalLevel==FlowLevel+1) - { - RecordStatus=99; - } - else - { - RecordStatus = (FlowLevel+1)*2; + Integer OriginalFlowLevel = FlowLevel; + if (checkFundVO.getFlowconclusion() == 1) { + CheckFlag = 1; + if (TotalLevel == 0) { + RecordStatus = 99; + } else { + if (TotalLevel == FlowLevel + 1) { + RecordStatus = 99; + } else { + RecordStatus = (FlowLevel + 1) * 2; } } - FlowLevel=FlowLevel+1; - } - else - { - CheckFlag=2; - RecordStatus = (FlowLevel+1)*2 - 1; - FlowLevel=(FlowLevel-1); - if(FlowLevel<0) - { - FlowLevel=0; + FlowLevel = FlowLevel + 1; + } else { + CheckFlag = 2; + 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(); + ServiceFundflow serviceFundflow = new ServiceFundflow(); SysUser user = loginUser.getUser(); serviceFundflow.setFundid(serviceReimbursement.getId()); serviceFundflow.setCheckuserno(user.getUserName()); @@ -584,16 +537,14 @@ serviceFundflow.setApplytype("0"); serviceFundflow.setFlowconclusion(CheckFlag); serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent()); - serviceFundflow.setFlowlevel(OriginalFlowLevel+1); + serviceFundflow.setFlowlevel(OriginalFlowLevel + 1); serviceFundflowService.save(serviceFundflow); - List<Integer> postids =postService.selectPostListByUserId(loginUser.getUserId()); + List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId()); - if(!postids.contains(2)) - { - if(CheckFlag==2 && OriginalFlowLevel==1) - { - ServiceFundflow serviceFundflowAuto=new ServiceFundflow(); + if (!postids.contains(2)) { + if (CheckFlag == 2 && OriginalFlowLevel == 1) { + ServiceFundflow serviceFundflowAuto = new ServiceFundflow(); serviceFundflowAuto.setFundid(serviceReimbursement.getId()); serviceFundflowAuto.setCheckuserno(user.getUserName()); serviceFundflowAuto.setCheckusername(user.getNickName()); @@ -610,7 +561,7 @@ serviceReimbursementService.updateById(serviceReimbursement); - ServiceSystemmessage serviceSystemmessage=new ServiceSystemmessage(); + ServiceSystemmessage serviceSystemmessage = new ServiceSystemmessage(); serviceSystemmessage.setFundtype(1); serviceSystemmessage.setApplytype("0"); serviceSystemmessage.setSenduserno(user.getUserName()); @@ -620,26 +571,21 @@ serviceSystemmessage.setIsread(0); serviceSystemmessage.setMessagetype(1); serviceSystemmessage.setRelevantno(serviceReimbursement.getId()); - if(CheckFlag==1) - { + if (CheckFlag == 1) { //閫氳繃 - serviceSystemmessage.setMessagetitle(""+(OriginalFlowLevel+1)+"绾у鏍搁�氳繃"); - serviceSystemmessage.setMessagecontent("鎮�"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime())+"鎻愪氦鐨勫叧浜庢崘鐚渚嬨��"+serviceReimbursement.getDonorname()+"銆戠殑宸梾璐圭敵璇峰凡閫氳繃"+(OriginalFlowLevel+1)+"绾у鏍�"); + serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁�氳繃"); + serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceReimbursement.getDonorname() + "銆戠殑宸梾璐圭敵璇峰凡閫氳繃" + (OriginalFlowLevel + 1) + "绾у鏍�"); - } - else - { + } else { //椹冲洖 - serviceSystemmessage.setMessagetitle(""+(OriginalFlowLevel+1)+"绾у鏍搁┏鍥�"); - serviceSystemmessage.setMessagecontent("鎮�"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime())+"鎻愪氦鐨勫叧浜庢崘鐚渚嬨��"+serviceReimbursement.getDonorname()+"銆戠殑宸梾璐圭敵璇峰凡琚�"+(OriginalFlowLevel+1)+"绾у鏍搁┏鍥烇紝鍘熷洜涓�"+checkFundVO.getFlowcontent()+""); + serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁┏鍥�"); + serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceReimbursement.getDonorname() + "銆戠殑宸梾璐圭敵璇峰凡琚�" + (OriginalFlowLevel + 1) + "绾у鏍搁┏鍥烇紝鍘熷洜涓�" + checkFundVO.getFlowcontent() + ""); } ServiceSystemmessage.save(serviceSystemmessage); return AjaxResult.success(); - } - else - { - return AjaxResult.error(HttpStatus.NO_CONTENT,"璐圭敤缂栧彿涓嶆纭�"); + } else { + return AjaxResult.error(HttpStatus.NO_CONTENT, "璐圭敤缂栧彿涓嶆纭�"); } } @@ -651,13 +597,11 @@ //@PreAuthorize("@ss.hasPermi('project:reimbursement:edit')") @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.UPDATE) @PutMapping - @RepeatSubmit - public AjaxResult edit(@RequestBody ServiceReimbursement serviceReimbursement) - { - boolean b= serviceReimbursementService.updateById(serviceReimbursement); - if(b) - { - addReiSharedDatd(serviceReimbursement,2); + @RepeatSubmit + public AjaxResult edit(@RequestBody ServiceReimbursement serviceReimbursement) { + boolean b = serviceReimbursementService.updateById(serviceReimbursement); + if (b) { + addReiSharedDatd(serviceReimbursement, 2); } return toAjax(b); } @@ -669,12 +613,10 @@ //@PreAuthorize("@ss.hasPermi('project:reimbursement:edit')") @Log(title = "瀹℃牳璐圭敤", businessType = BusinessType.OTHER) @PostMapping("/editMoney") - public AjaxResult editMoney(@RequestBody List<ReimbursementService> serviceReimbursement) - { - boolean b= serviceReimbursementService.updateById(null); - if(b) - { - addReiSharedDatd(null,2); + public AjaxResult editMoney(@RequestBody List<ReimbursementService> serviceReimbursement) { + boolean b = serviceReimbursementService.updateById(null); + if (b) { + addReiSharedDatd(null, 2); } return toAjax(b); } @@ -686,8 +628,7 @@ //@PreAuthorize("@ss.hasPermi('project:reimbursement:remove')") @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { + public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(serviceReimbursementService.removeByIds(Arrays.asList(ids))); } @@ -698,13 +639,13 @@ @GetMapping(value = "/download/{id}") public Map downloadInfo(@PathVariable("id") Long id) throws IOException { Map dataMap = new HashMap(); - getData(dataMap,id); + getData(dataMap, id); String filePath = getClass().getResource("/template/").getPath(); System.out.println(filePath); //璁剧疆妯℃湰瑁呯疆鏂规硶鍜岃矾寰�,FreeMarker鏀寔澶氱妯℃澘瑁呰浇鏂规硶銆傚彲浠ラ噸servlet锛宑lasspath锛屾暟鎹簱鏁欑▼瑁呰浇锛� configuration.setDirectoryForTemplateLoading(new File(filePath)); - Template t=null; + Template t = null; try { //鎹愮尞琛�.ftl涓鸿瑁呰浇鐨勬ā鏉� t = configuration.getTemplate("宸梾璐规姤閿�鐢宠鍗�.ftl"); @@ -712,14 +653,28 @@ e.printStackTrace(); } String newTime = String.valueOf(Calendar.getInstance().getTimeInMillis()); - String name = "宸梾璐规姤閿�鐢宠鍗昣"+dataMap.get("XM")+"_"+ newTime; + String name = "宸梾璐规姤閿�鐢宠鍗昣" + dataMap.get("XM") + "_" + newTime; //杈撳嚭鏂囨。璺緞鍙婂悕绉� - File outFile = new File(RuoYiConfig.getProfile()+"/download/wordtemplate/"+name+".doc"); + File outFile = new File(RuoYiConfig.getProfile() + "/download/wordtemplate/" + name + ".doc"); + + //鍒涘缓鏂囦欢澶� + File folderPath = new File(RuoYiConfig.getProfile() + "/download/wordtemplate"); + if (!folderPath.exists()) { + boolean success = folderPath.mkdirs(); + if (success) { + System.out.println("鐩綍鍒涘缓鎴愬姛"); + } else { + System.out.println("鐩綍鍒涘缓澶辫触"); + } + } else { + System.out.println("鐩綍宸插瓨鍦�"); + } + Writer out = null; try { - out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile),"utf-8")); + out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "utf-8")); } catch (FileNotFoundException e1) { e1.printStackTrace(); @@ -729,76 +684,156 @@ } catch (TemplateException e) { e.printStackTrace(); } - Map<String ,Object> map = new HashMap<>(); - map.put("downloadUrl", "/profile/download/wordtemplate/"+name+".doc"); + Map<String, Object> map = new HashMap<>(); + map.put("downloadUrl", "/profile/download/wordtemplate/" + name + ".doc"); return map; } - private void getData(Map dataMap,Long id) { - ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(id); - if (serviceReimbursement == null) { - throw new ServiceException("涓嬭浇澶辫触锛岀敤鎴蜂俊鎭嚭閿�", HttpStatus.NO_CONTENT); + private void getData(Map dataMap, Long id) { + + //ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(id); + ServiceReimbursement serviceReimbursement = null; + ServiceReimbursementEo serviceReimbursementEo = new ServiceReimbursementEo(); + serviceReimbursementEo.setId(id); + List<ServiceReimbursementEo> rdInfoByItem = serviceReimbursementService.getRDInfoByItem(serviceReimbursementEo); + + 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(); + StringBuffer FYXM3 = new StringBuffer(); + int flag = 0; + String key1 = null; + BigDecimal allMoney = new BigDecimal(0.00); + BigDecimal otherMoneyall = new BigDecimal(0.00); + for (String key : listMap.keySet()) { + Map<String, BigDecimal> map = new HashMap<>(); + List<ServiceReimbursementEo> values = listMap.get(key); + BigDecimal otherMoney = new BigDecimal(0.00); + 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()); + } + 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); + } else { + FYXM3.append(PersonType.getInfoByCode(key) + ":" + otherMoney); + allMoney = allMoney.add(otherMoney); + } + } + } + allMoney = allMoney.add(otherMoneyall); + if (FYXM1.length() == 0) { + if (FYXM2.length() != 0 && FYXM3.length() != 0) { + FYXM1.append(FYXM3); + FYXM3.setLength(0); + } else if (FYXM2.length() != 0 && FYXM3.length() == 0) { + FYXM1.append(FYXM2); + FYXM2.setLength(0); + } + } else if (FYXM2.length() == 0) { + if (FYXM3.length() != 0) { + FYXM2.append(FYXM3); + FYXM3.setLength(0); + } } - Date dt = serviceReimbursement.getCreateTime(); + if (rdInfoByItem == null || rdInfoByItem.size() == 0) { + throw new ServiceException("涓嬭浇澶辫触锛岀敤鎴蜂俊鎭嚭閿�", HttpStatus.NO_CONTENT); + } + + Date dt = rdInfoByItem.get(0).getCreateTime(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String date = formatter.format(dt); String time = date.substring(0, 10); dataMap.put("TBYYMMDD", time); - dataMap.put("BXDFJ", serviceReimbursement.getAttachcount() == 0 ? " " : "" + serviceReimbursement.getAttachcount()); - dataMap.put("JXZXM", serviceReimbursement.getDonorname() == null ? "" : serviceReimbursement.getDonorname()); - dataMap.put("JSR", serviceReimbursement.getUsername() == null ? "" : serviceReimbursement.getUsername()); - dataMap.put("FYXM1", "宸梾璐规姤閿�鎬婚噾棰濓細 " + String.format("%.2f", serviceReimbursement.getAmountrequested()).toString() + "鍏�"); - dataMap.put("FYXM2", ""); - dataMap.put("FYXM3", ""); - dataMap.put("JEXS", serviceReimbursement.getAmountrequested()); + dataMap.put("BXDFJ", rdInfoByItem.get(0).getAttachcount() == null ? " " : "" + rdInfoByItem.get(0).getAttachcount()); + dataMap.put("JXZXM", rdInfoByItem.get(0).getDonorname() == null ? "" : rdInfoByItem.get(0).getDonorname()); + dataMap.put("JSR", rdInfoByItem.get(0).getUsername() == null ? "" : rdInfoByItem.get(0).getUsername()); + if (FYXM1.length() != 0) { + dataMap.put("FYXM1", FYXM1.toString() + "鍏� "); + } else { + dataMap.put("FYXM1", ""); + } + if (FYXM2.length() != 0) { + dataMap.put("FYXM2", FYXM2.toString() + "鍏� "); + } else { + dataMap.put("FYXM2", ""); + } + if (FYXM3.length() != 0) { + dataMap.put("FYXM3", FYXM3.toString() + "鍏� "); + } 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(serviceReimbursement.getAmountrequested()) + "鏁�"); + // dataMap.put("JEDS", convert(rdInfoByItem.get(0).getAmountrequested().doubleValue()) + "鏁�"); + dataMap.put("JEDS", convert(allMoney.doubleValue()) + "鏁�"); String remark = ""; - remark += serviceReimbursement.getCosttypename() == null ? "" : serviceReimbursement.getCosttypename() + "("; + remark += rdInfoByItem.get(0).getCosttypename() == null ? "" : rdInfoByItem.get(0).getCosttypename() + "("; - remark += serviceReimbursement.getTravelers() == null ? "" : serviceReimbursement.getTravelers() + ": "; + remark += rdInfoByItem.get(0).getTravelers() == null ? "" : rdInfoByItem.get(0).getTravelers() + ": "; - remark += serviceReimbursement.getIdcardno() == null ? "" : serviceReimbursement.getIdcardno() + "; "; + remark += rdInfoByItem.get(0).getIdcardno() == null ? "" : rdInfoByItem.get(0).getIdcardno() + "; "; - remark += serviceReimbursement.getDepositbank() == null ? "" : serviceReimbursement.getDepositbank() + ": "; + remark += rdInfoByItem.get(0).getDepositbank() == null ? "" : rdInfoByItem.get(0).getDepositbank() + ": "; - remark += serviceReimbursement.getBankcardno() == null ? "" : serviceReimbursement.getBankcardno() + ")"; + remark += rdInfoByItem.get(0).getBankcardno() == null ? "" : rdInfoByItem.get(0).getBankcardno() + ")"; remark += "\n"; - remark += serviceReimbursement.getRemark() == null ? "" : serviceReimbursement.getRemark(); + remark += rdInfoByItem.get(0).getRemark() == null ? "" : rdInfoByItem.get(0).getRemark(); dataMap.put("BXBZ", remark); dataMap.put("YYMMDD", time); - dataMap.put("FJ", serviceReimbursement.getAttachcount() == 0 ? " " : "" + serviceReimbursement.getAttachcount()); - dataMap.put("FP", serviceReimbursement.getInvoicecount() == 0 ? " " : "" + serviceReimbursement.getInvoicecount()); - dataMap.put("XM", serviceReimbursement.getTravelers() == null ? "" : serviceReimbursement.getTravelers()); - dataMap.put("BXR", serviceReimbursement.getUsername() == null ? "" : serviceReimbursement.getUsername()); - dataMap.put("QYZZ", serviceReimbursement.getManagername() == null ? "" : serviceReimbursement.getManagername()); - dataMap.put("CCSY", serviceReimbursement.getReason() == null ? "" : serviceReimbursement.getReason()); + dataMap.put("FJ", rdInfoByItem.get(0).getAttachcount() == null ? " " : "" + rdInfoByItem.get(0).getAttachcount()); + dataMap.put("FP", rdInfoByItem.get(0).getInvoicecount() == null ? " " : "" + rdInfoByItem.get(0).getInvoicecount()); + dataMap.put("XM", rdInfoByItem.get(0).getTravelers() == null ? "" : rdInfoByItem.get(0).getTravelers()); + dataMap.put("BXR", rdInfoByItem.get(0).getUsername() == null ? "" : rdInfoByItem.get(0).getUsername()); + dataMap.put("QYZZ", rdInfoByItem.get(0).getManagername() == null ? "" : rdInfoByItem.get(0).getManagername()); + dataMap.put("CCSY", rdInfoByItem.get(0).getReason() == null ? "" : rdInfoByItem.get(0).getReason()); List<ServiceReimbursementdetail> rd = serviceReimbursementdetailService.getAllDetailsByRBID(id); if (rd == null) { throw new ServiceException("涓嬭浇澶辫触锛屾病鏈夊搴斾俊鎭�", HttpStatus.NO_CONTENT); } - List<Map<String, Object>> newsList = new ArrayList<Map<String,Object>>(); + List<Map<String, Object>> newsList = new ArrayList<Map<String, Object>>(); int days = 0; - double te = 0; - double cf = 0; - double he = 0; - double oe = 0; - double fe = 0; - double fa = 0; - double hj = 0; - double qt = 0; - for(ServiceReimbursementdetail s : rd) { - Map<String, Object> map=new HashMap<String, Object>(); + BigDecimal te = BigDecimal.ZERO; + BigDecimal cf = BigDecimal.ZERO; + BigDecimal he = BigDecimal.ZERO; + BigDecimal oe = BigDecimal.ZERO; + BigDecimal fe = BigDecimal.ZERO; + BigDecimal fa = BigDecimal.ZERO; + BigDecimal hj = BigDecimal.ZERO; + BigDecimal qt = BigDecimal.ZERO; + for (ServiceReimbursementdetail s : rd) { + Map<String, Object> map = new HashMap<String, Object>(); Date st = s.getStarttime(); SimpleDateFormat formatter_st = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -828,35 +863,35 @@ days += s.getDays(); map.put("JT", s.getTraffictype() == null ? "" : s.getTraffictype()); map.put("QTFSM", s.getOtherfeedesc() == null ? "" : s.getOtherfeedesc()); - map.put("JTF", s.getTrafficexpense() == 0.00 ? "" : String.format("%.2f", s.getTrafficexpense()).toString() + ""); - te += s.getTrafficexpense(); - map.put("SNJT", s.getCityfee() == 0.00 ? "" : String.format("%.2f", s.getCityfee()).toString() + ""); - cf += s.getCityfee(); - map.put("ZSF", s.getHotelexpense() == 0.00 ? "" : String.format("%.2f", s.getHotelexpense()).toString() + ""); - he += s.getHotelexpense(); - map.put("ZF", s.getOtherexpense() == 0.00 ? "" : String.format("%.2f", s.getOtherexpense()).toString() + ""); - oe += s.getOtherexpense(); - map.put("HSBX", s.getFoodexpenses() == 0.00 ? "" : String.format("%.2f",s.getFoodexpenses()).toString() + ""); - fe += s.getFoodexpenses(); - map.put("HSBZ", s.getFoodallowance() == 0.00 ? "" : String.format("%.2f",s.getFoodallowance()).toString() + ""); - fa += s.getFoodallowance(); - map.put("QTF", s.getOtherfeeamount() == 0.00 ? "" : String.format("%.2f",s.getOtherfeeamount()).toString() + ""); - qt += s.getOtherfeeamount(); - map.put("HJ", String.format("%.2f", s.getTrafficexpense() + s.getCityfee() + s.getHotelexpense() + s.getOtherexpense() + s.getFoodexpenses() + s.getFoodallowance() + s.getOtherfeeamount()).toString() + ""); - hj += s.getTrafficexpense() + s.getCityfee() + s.getHotelexpense() + s.getOtherexpense() + s.getFoodexpenses() + s.getFoodallowance() + s.getOtherfeeamount(); + map.put("JTF", s.getTrafficexpense().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getTrafficexpense()).toString() + ""); + te = te.add(s.getTrafficexpense()); + map.put("SNJT", s.getCityfee().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getCityfee()).toString() + ""); + cf = cf.add(s.getCityfee()); + map.put("ZSF", s.getHotelexpense().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getHotelexpense()).toString() + ""); + he = he.add(s.getHotelexpense()); + map.put("ZF", s.getOtherexpense().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getOtherexpense()).toString() + ""); + oe = oe.add(s.getOtherexpense()); + map.put("HSBX", s.getFoodexpenses().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getFoodexpenses()).toString() + ""); + fe = fe.add(s.getFoodexpenses()); + map.put("HSBZ", s.getFoodallowance().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getFoodallowance()).toString() + ""); + fa = fa.add(s.getFoodallowance()); + map.put("QTF", s.getOtherfeeamount().equals(BigDecimal.ZERO) ? "" : String.format("%.2f", s.getOtherfeeamount()).toString() + ""); + qt = qt.add(s.getOtherfeeamount()); + map.put("HJ", String.format("%.2f", s.getTrafficexpense().add(s.getCityfee()).add(s.getHotelexpense()).add(s.getOtherexpense()).add(s.getFoodexpenses()).add(s.getFoodallowance()).add(s.getOtherfeeamount())).toString() + ""); + hj = hj.add(s.getTrafficexpense().add(s.getCityfee()).add(s.getHotelexpense()).add(s.getOtherexpense()).add(s.getFoodexpenses()).add(s.getFoodallowance()).add(s.getOtherfeeamount())); //hj = Math.round(hj * 100) * 0.01d; - DecimalFormat df = new DecimalFormat("0.00"); +// DecimalFormat df = new DecimalFormat("0.00"); - hj = new Double(df.format(hj).toString()); + // hj = new Double(df.format(hj).toString()); newsList.add(map); } - dataMap.put("list",newsList); + dataMap.put("list", newsList); dataMap.put("TND", "" + days); dataMap.put("TJT", ""); - dataMap.put("TJTF", "" + String.format("%.2f",te).toString() + ""); - dataMap.put("TSNJT", "" + String.format("%.2f",cf).toString() + ""); + dataMap.put("TJTF", "" + String.format("%.2f", te).toString() + ""); + dataMap.put("TSNJT", "" + String.format("%.2f", cf).toString() + ""); dataMap.put("TZSF", "" + String.format("%.2f", he).toString() + ""); dataMap.put("TZF", "" + String.format("%.2f", oe).toString() + ""); dataMap.put("THSBX", "" + String.format("%.2f", fe).toString() + ""); @@ -864,17 +899,17 @@ dataMap.put("TQTF", "" + String.format("%.2f", qt).toString() + ""); dataMap.put("THJ", "" + String.format("%.2f", hj).toString() + ""); - dataMap.put("DS", convert(hj) + "鏁�"); + dataMap.put("DS", convert(hj.doubleValue()) + "鏁�"); //dataMap.put("DS", "鏁�"); dataMap.put("XS", String.format("%.2f", hj).toString() + ""); - dataMap.put("R", serviceReimbursement.getCosttypename() == null ? "" : serviceReimbursement.getCosttypename()); + dataMap.put("R", StringUtils.isEmpty(rdInfoByItem.get(0).getCosttypename()) ? "" : rdInfoByItem.get(0).getCosttypename()); } public static String convert(Double money) { String smoney = money.toString(); - try{ + try { if (smoney.indexOf(".") != -1) { //鎶婃暟鍊煎垎涓烘暣鏁板瀷鍜屽甫灏忔暟鐨勬暟鍊煎垎寮�澶勭悊銆� String left = smoney.substring(0, smoney.indexOf(".")); String right = smoney.substring(smoney.indexOf(".") + 1); @@ -884,7 +919,7 @@ } else { return convertLeft(smoney); } - }catch(IllegalArgumentException e){ + } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); System.out.println("璇疯緭鍏ヨ浆鎹㈣寖鍥村唴鐜伴噾"); return null; @@ -896,12 +931,12 @@ int length = left.length(); //鏍规嵁鍗曚綅'浜�','涓�','鍏�'锛屾妸鏁存暟閮ㄥ垎鍒嗕负3绉嶆儏鍐靛鐞嗐�� if (length <= 4) { //閲戦鍦ㄥ崈鍏冧互鍐呫�� - if(length == 1 && Integer.valueOf(left) == 0) //閲戦涓�'0'鍏冩椂鐨勭壒娈婃儏鍐点�� + if (length == 1 && Integer.valueOf(left) == 0) //閲戦涓�'0'鍏冩椂鐨勭壒娈婃儏鍐点�� return "闆跺厓"; return convertPart(left, length); } else if (length <= 8) { //閲戦鍦ㄥ崈涓囧厓浠ュ唴銆� - String part1 = left.substring(0,length - 4); + String part1 = left.substring(0, length - 4); String part2 = left.substring(length - 4, length); String result1 = convertPart(part1, length); @@ -952,7 +987,7 @@ String number = ""; String unit = ""; - if(part.equals("0000") && position == 8) //鐢ㄤ簬鎺掗櫎鍗曚綅涓�'涓�'鏃讹紝鍥涗綅鏁板�煎潎涓�'0'鐨勬儏鍐点�� + if (part.equals("0000") && position == 8) //鐢ㄤ簬鎺掗櫎鍗曚綅涓�'涓�'鏃讹紝鍥涗綅鏁板�煎潎涓�'0'鐨勬儏鍐点�� return ""; for (int i = 0; i < part.length(); i++) { int value = Integer.valueOf(String.valueOf(part.charAt(i))); @@ -977,7 +1012,6 @@ System.out.println(result); return result; } - } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java index 69f745a..703deed 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java @@ -1,7 +1,12 @@ package com.ruoyi.web.controller.project; +import java.math.BigDecimal; import java.util.Arrays; import java.util.List; + +import com.ruoyi.common.utils.bean.DtoConversionUtils; +import com.ruoyi.project.domain.ServiceReimbursementdetailShared; +import com.ruoyi.project.service.IServiceReimbursementdetailSharedService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; @@ -37,6 +42,8 @@ { @Autowired private IServiceReimbursementdetailService serviceReimbursementdetailService; + @Autowired + private IServiceReimbursementdetailSharedService detailSharedService; /** * 鏌ヨ鎶ラ攢鐢宠鏄庣粏鍒楄〃 @@ -109,15 +116,11 @@ public AjaxResult updateRDlList(@RequestBody List<ServiceReimbursementdetail> serviceReimbursementdetails) { for (ServiceReimbursementdetail serviceReimbursementdetail:serviceReimbursementdetails) { - - if(serviceReimbursementdetail.getId()!=null) { - serviceReimbursementdetailService.updateById(serviceReimbursementdetail); - }else { - //濡傛灉ID涓虹┖锛屽垯瑕佹柊澧� - add(serviceReimbursementdetail); - } + serviceReimbursementdetailService.saveOrUpdate(serviceReimbursementdetail); + //鏂板鎴栦慨鏀规姤閿�鐢宠鏄庣粏鍒嗕韩琛� + ServiceReimbursementdetailShared serviceReimbursementdetailShared = DtoConversionUtils.sourceToTarget(serviceReimbursementdetail, ServiceReimbursementdetailShared.class); + detailSharedService.saveOrUpdate(serviceReimbursementdetailShared); } - // return toAjax("null"); return null; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailSharedController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailSharedController.java index d9a3a17..a30ae9a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailSharedController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailSharedController.java @@ -1,4 +1,4 @@ -package com.ruoyi.project.controller; +package com.ruoyi.web.controller.project; import java.util.Arrays; import java.util.List; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java index 75f20a3..21d267d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java @@ -1,13 +1,13 @@ -package com.ruoyi.project.controller; +package com.ruoyi.web.controller.project; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collections; import java.util.List; -import com.ruoyi.project.domain.ReimbursementService; +import com.ruoyi.common.utils.bean.DtoConversionUtils; import com.ruoyi.project.domain.Reimbursementpayee; -import io.netty.util.internal.ObjectUtil; +import com.ruoyi.project.domain.ServiceReimbursementpayeeShared; +import com.ruoyi.project.service.IServiceReimbursementpayeeSharedService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.ObjectUtils; @@ -34,17 +34,19 @@ /** * 宸梾鎶ラ攢浠樻淇℃伅Controller - * + * * @author ruoyi * @date 2023-04-20 */ @Api("宸梾鎶ラ攢浠樻淇℃伅") @RestController @RequestMapping("/project/reimbursementpayee") -public class ServiceReimbursementpayeeController extends BaseController -{ +public class ServiceReimbursementpayeeController extends BaseController { @Autowired private IServiceReimbursementpayeeService serviceReimbursementpayeeService; + + @Autowired + private IServiceReimbursementpayeeSharedService serviceReimbursementpayeeSharedService; /** * 鏌ヨ宸梾鎶ラ攢浠樻淇℃伅鍒楄〃 @@ -52,13 +54,12 @@ @ApiOperation("鏌ヨ宸梾鎶ラ攢浠樻淇℃伅鍒楄〃") @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:list')") @GetMapping("/list") - public TableDataInfo list(ServiceReimbursementpayee serviceReimbursementpayee) - { + public TableDataInfo list(ServiceReimbursementpayee serviceReimbursementpayee) { startPage(); List<ServiceReimbursementpayee> list = serviceReimbursementpayeeService.queryList(serviceReimbursementpayee); - List<Reimbursementpayee> reimbursementpayees=new ArrayList<>(); - for(int i=0;i<list.size();i++){ - Reimbursementpayee reimbursementpayee=new Reimbursementpayee(); + List<Reimbursementpayee> reimbursementpayees = new ArrayList<>(); + for (int i = 0; i < list.size(); i++) { + Reimbursementpayee reimbursementpayee = new Reimbursementpayee(); reimbursementpayee.setCol_personname(list.get(i).getPersonname()); reimbursementpayee.setCol_personType(list.get(i).getPersontype()); reimbursementpayee.setCol_accounts(list.get(i).getBankcardno()); @@ -79,8 +80,7 @@ @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:export')") @Log(title = "宸梾鎶ラ攢浠樻淇℃伅", businessType = BusinessType.EXPORT) @GetMapping("/export") - public AjaxResult export(ServiceReimbursementpayee serviceReimbursementpayee) - { + public AjaxResult export(ServiceReimbursementpayee serviceReimbursementpayee) { List<ServiceReimbursementpayee> list = serviceReimbursementpayeeService.queryList(serviceReimbursementpayee); ExcelUtil<ServiceReimbursementpayee> util = new ExcelUtil<ServiceReimbursementpayee>(ServiceReimbursementpayee.class); return util.exportExcel(list, "宸梾鎶ラ攢浠樻淇℃伅鏁版嵁"); @@ -92,42 +92,47 @@ @ApiOperation("鑾峰彇宸梾鎶ラ攢浠樻淇℃伅璇︾粏淇℃伅") @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:query')") @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { + public AjaxResult getInfo(@PathVariable("id") Long id) { return AjaxResult.success(serviceReimbursementpayeeService.getById(id)); } /** - * 鏂板宸梾鎶ラ攢浠樻淇℃伅 + * 鏂板鎴栦慨鏀瑰樊鏃呮姤閿�浠樻淇℃伅 */ - @ApiOperation("鏂板宸梾鎶ラ攢浠樻淇℃伅") + @ApiOperation("鏂板鎴栦慨鏀瑰樊鏃呮姤閿�浠樻淇℃伅") @PostMapping("/addOrUpdateRBpayee") - public AjaxResult addOrUpdateRBpayee(@RequestBody List<Reimbursementpayee> reimbursementPayees) - { - List<ServiceReimbursementpayee> addserviceReimbursementpayees=new ArrayList<>(); - List<ServiceReimbursementpayee> updateserviceReimbursementpayees=new ArrayList<>(); - for (Reimbursementpayee reimbursementPayee:reimbursementPayees) { - ServiceReimbursementpayee serviceReimbursementpayee=new ServiceReimbursementpayee(); - serviceReimbursementpayee.setRbid(reimbursementPayee.getRbid()); - serviceReimbursementpayee.setPersonname(reimbursementPayee.getCol_personname()); - serviceReimbursementpayee.setPersontype(reimbursementPayee.getCol_personType()); - serviceReimbursementpayee.setBankname(reimbursementPayee.getCol_bank()); - serviceReimbursementpayee.setBankcardno(reimbursementPayee.getCol_accounts()); - serviceReimbursementpayee.setPaiddate(reimbursementPayee.getCol_date()); - serviceReimbursementpayee.setRemark(reimbursementPayee.getCol_illustrate()); - serviceReimbursementpayee.setId(reimbursementPayee.getId()); - if(ObjectUtils.isEmpty(reimbursementPayee.getId())){ - addserviceReimbursementpayees.add(serviceReimbursementpayee); - }else { - updateserviceReimbursementpayees.add(serviceReimbursementpayee); - } + public AjaxResult addOrUpdateRBpayee(@RequestBody List<Reimbursementpayee> reimbursementPayees) { + List<ServiceReimbursementpayee> payees = new ArrayList<>(); + List<ServiceReimbursementpayeeShared> payeeSareds = new ArrayList<>(); + for (Reimbursementpayee reimbursementPayee : reimbursementPayees) { + //灏佽鏀粯鏁版嵁 + ServiceReimbursementpayee payee = new ServiceReimbursementpayee(); + payee.setRbid(reimbursementPayee.getRbid()); + payee.setPersonname(reimbursementPayee.getCol_personname()); + payee.setPersontype(reimbursementPayee.getCol_personType()); + payee.setBankname(reimbursementPayee.getCol_bank()); + payee.setBankcardno(reimbursementPayee.getCol_accounts()); + payee.setPaiddate(reimbursementPayee.getCol_date()); + payee.setRemark(reimbursementPayee.getCol_illustrate()); + payee.setId(reimbursementPayee.getId()); + //灏佽鏀粯鍒嗕韩鏁版嵁 + ServiceReimbursementpayeeShared payeeShared = new ServiceReimbursementpayeeShared(); + payeeShared.setRbid(reimbursementPayee.getRbid()); + payeeShared.setPersonname(reimbursementPayee.getCol_personname()); + payeeShared.setPersontype(reimbursementPayee.getCol_personType()); + payeeShared.setBankname(reimbursementPayee.getCol_bank()); + payeeShared.setBankcardno(reimbursementPayee.getCol_accounts()); + payeeShared.setPaiddate(reimbursementPayee.getCol_date()); + payeeShared.setRemark(reimbursementPayee.getCol_illustrate()); + payeeShared.setId(reimbursementPayee.getId()); + + payees.add(payee); + payeeSareds.add(payeeShared); } boolean b = false; - if(!CollectionUtils.isEmpty(addserviceReimbursementpayees)){ - b = serviceReimbursementpayeeService.saveBatch(addserviceReimbursementpayees); - }else { - b = serviceReimbursementpayeeService.updateBatchById(updateserviceReimbursementpayees); - } + b = serviceReimbursementpayeeService.saveOrUpdateBatch(payees); + b = serviceReimbursementpayeeSharedService.saveOrUpdateBatch(payeeSareds); + return toAjax(b); } @@ -139,8 +144,7 @@ @Log(title = "宸梾鎶ラ攢浠樻淇℃伅", businessType = BusinessType.INSERT) @PostMapping @RepeatSubmit - public AjaxResult add(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) - { + public AjaxResult add(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) { return toAjax(serviceReimbursementpayeeService.save(serviceReimbursementpayee)); } @@ -151,9 +155,8 @@ @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:edit')") @Log(title = "宸梾鎶ラ攢浠樻淇℃伅", businessType = BusinessType.UPDATE) @PutMapping - @RepeatSubmit - public AjaxResult edit(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) - { + @RepeatSubmit + public AjaxResult edit(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) { return toAjax(serviceReimbursementpayeeService.updateById(serviceReimbursementpayee)); } @@ -164,8 +167,7 @@ @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:remove')") @Log(title = "宸梾鎶ラ攢浠樻淇℃伅", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { + public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(serviceReimbursementpayeeService.removeByIds(Arrays.asList(ids))); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index 49953af..90c1fa5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -103,7 +103,7 @@ /** * 鑾峰彇璺敱淇℃伅 - * + * /addOrUpdateRBpayee/addOrUpdateRBpayee/addOrUpdateRBpayee * @return 璺敱淇℃伅 */ @GetMapping("getRouters") diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/bean/DtoConversionUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/bean/DtoConversionUtils.java new file mode 100644 index 0000000..9d89bf3 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/bean/DtoConversionUtils.java @@ -0,0 +1,64 @@ +package com.ruoyi.common.utils.bean; + +import org.springframework.beans.BeanUtils; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +/** + * DTO鍜宔ntity鐩镐簰杞寲宸ュ叿绫� + * + * @author liusheng + * @date 2023/5/06 + */ +public class DtoConversionUtils { + + /** + * entity杞寲涓篋TO + * + * @param source 瀹炰綋绫籩ntity + * @param target 鐩爣绫籇TO + * @return 杞寲鍚庣殑DTO + */ + public static <T> T sourceToTarget(Object source, Class<T> target){ + if(source == null){ + return null; + } + T targetObject = null; + try { + targetObject = target.newInstance(); + BeanUtils.copyProperties(source, targetObject); + } catch (Exception e) { + e.printStackTrace(); + } + + return targetObject; + } + + /** + * List<entity>杞寲涓篖ist<DTO> + * + * @param sourceList 瀹炰綋绫婚泦鍚圕ollection<entity> + * @param target 鐩爣绫籇TO + * @return 杞寲鍚庣殑Collection<DTO> + */ + public static <T> List<T> sourceToTarget(Collection<?> sourceList, Class<T> target){ + if(sourceList == null){ + return null; + } + + ArrayList<T> targetList = new ArrayList<>(sourceList.size()); + try { + for(Object source : sourceList){ + T targetObject = target.newInstance(); + BeanUtils.copyProperties(source, targetObject); + targetList.add(targetObject); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return targetList; + } +} diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java index b13c962..5e998e3 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java @@ -225,5 +225,15 @@ @ApiModelProperty("鎹愮尞瀹跺睘浜烘暟") private Integer donorrelatives; + + @ApiModelProperty("鐢宠鏃堕棿") + private Date createTime; + +// @ApiModelProperty("寮�濮嬫椂闂�") +// private Date starttime; +// +// @ApiModelProperty("缁撴潫鏃堕棿") +// private Date endtime; + } diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementEo.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementEo.java new file mode 100644 index 0000000..6f1a801 --- /dev/null +++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementEo.java @@ -0,0 +1,270 @@ +package com.ruoyi.project.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 鎶ラ攢鐢宠瀵硅薄鍏ュ弬瀵硅薄 + * + * @author 鍒樼渷 + * @date 2023-04-28 + */ +@Data +@ApiModel("鎶ラ攢鐢宠鍏ュ弬EO") +public class ServiceReimbursementEo extends BaseEntity +{ + + /** $column.columnComment */ + @ApiModelProperty("$column.columnComment") + //鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO) + @TableId(type = IdType.AUTO) + private Long id; + + /** 鎶ラ攢浜虹紪鍙� */ + @ApiModelProperty("鎶ラ攢浜虹紪鍙�") + @Excel(name = "鎶ラ攢浜虹紪鍙�") + private String userno; + + /** 鎶ラ攢浜哄鍚� */ + @ApiModelProperty("鎶ラ攢浜哄鍚�") + @Excel(name = "鎶ラ攢浜哄鍚�") + private String username; + + /** 璇佷欢绫诲瀷 鏍规嵁瀛楀吀sys_IDType */ + @ApiModelProperty("璇佷欢绫诲瀷 鏍规嵁瀛楀吀sys_IDType") + @Excel(name = "璇佷欢绫诲瀷 鏍规嵁瀛楀吀sys_IDType") + private String idcardtype; + + /** 璇佷欢鍙风爜 */ + @ApiModelProperty("璇佷欢鍙风爜") + @Excel(name = "璇佷欢鍙风爜") + private String idcardno; + + /** 鑱旂郴鐢佃瘽 */ + @ApiModelProperty("鑱旂郴鐢佃瘽") + @Excel(name = "鑱旂郴鐢佃瘽") + private String phone; + + /** 寮�鎴烽摱琛� */ + @ApiModelProperty("寮�鎴烽摱琛�") + @Excel(name = "寮�鎴烽摱琛�") + private String depositbank; + + /** 鍗″彿 */ + @ApiModelProperty("鍗″彿") + @Excel(name = "鍗″彿") + private String bankcardno; + + /** 鍒嗚鍚嶇О */ + @ApiModelProperty("鍒嗚鍚嶇О") + @Excel(name = "鍒嗚鍚嶇О") + private String branchbankname; + + /** 閾惰鍗$収鐗囪矾寰� 澶氫釜鐢�;鍒嗗紑 */ + @ApiModelProperty("閾惰鍗$収鐗囪矾寰� 澶氫釜鐢�;鍒嗗紑") + @Excel(name = "閾惰鍗$収鐗囪矾寰� 澶氫釜鐢�;鍒嗗紑") + private String annexbankcard; + + /** 闄勪欢璺緞 澶氫釜鐢�;鍒嗗紑 */ + @ApiModelProperty("闄勪欢璺緞 澶氫釜鐢�;鍒嗗紑") + @Excel(name = "闄勪欢璺緞 澶氫釜鐢�;鍒嗗紑") + private String annexfiles; + + /** 鐢宠閲戦 */ + @ApiModelProperty("鐢宠閲戦") + @Excel(name = "鐢宠閲戦") + private BigDecimal amountrequested; + + /** 浜ら�氳垂 */ + @ApiModelProperty("浜ら�氳垂") + @Excel(name = "浜ら�氳垂") + private BigDecimal trafficexpense; + + /** 浣忓璐� */ + @ApiModelProperty("浣忓璐�") + @Excel(name = "浣忓璐�") + private BigDecimal hotelexpense; + + /** 浼欓璐� */ + @ApiModelProperty("浼欓璐�") + @Excel(name = "浼欓璐�") + private BigDecimal foodexpenses; + + /** 浼欓璐硅ˉ鍔� */ + @ApiModelProperty("浼欓璐硅ˉ鍔�") + @Excel(name = "浼欓璐硅ˉ鍔�") + private BigDecimal foodallowance; + + /** 鏉傝垂 */ + @ApiModelProperty("鏉傝垂") + @Excel(name = "鏉傝垂") + private BigDecimal otherexpense; + + /** 鍏朵粬璐圭敤閲戦 */ + @ApiModelProperty("鍏朵粬璐圭敤閲戦") + @Excel(name = "鍏朵粬璐圭敤閲戦") + private BigDecimal otherfeeamount; + + + /** 棰勬敮璐圭敤 */ + @ApiModelProperty("棰勬敮璐圭敤") + @Excel(name = "棰勬敮璐圭敤") + private Double prepaidamount; + + /** 鍙戠エ寮犳暟 */ + @ApiModelProperty("鍙戠エ寮犳暟") + @Excel(name = "鍙戠エ寮犳暟") + private Long invoicecount; + + /** 闄勪欢鏁� */ + @ApiModelProperty("闄勪欢鏁�") + @Excel(name = "闄勪欢鏁�") + private Long attachcount; + + /** 閮ㄩ棬涓荤宸ュ彿 */ + @ApiModelProperty("閮ㄩ棬涓荤宸ュ彿") + @Excel(name = "閮ㄩ棬涓荤宸ュ彿") + private String managerno; + + /** 閮ㄩ棬涓荤鍚嶅瓧 */ + @ApiModelProperty("閮ㄩ棬涓荤鍚嶅瓧") + @Excel(name = "閮ㄩ棬涓荤鍚嶅瓧") + private String managername; + + /** 閮ㄩ棬缂栧彿 */ + @ApiModelProperty("閮ㄩ棬缂栧彿") + @Excel(name = "閮ㄩ棬缂栧彿") + private String deptmentno; + + /** 閮ㄩ棬鍚嶇О */ + @ApiModelProperty("閮ㄩ棬鍚嶇О") + @Excel(name = "閮ㄩ棬鍚嶇О") + private String deptmentname; + + /** 涓績绛惧瓧 */ + @ApiModelProperty("涓績绛惧瓧") + @Excel(name = "涓績绛惧瓧") + private String opochecker; + + /** 璐㈠姟鍓櫌闀跨瀛� */ + @ApiModelProperty("璐㈠姟鍓櫌闀跨瀛�") + @Excel(name = "璐㈠姟鍓櫌闀跨瀛�") + private String finvicepresident; + + /** 涓氬姟鍓櫌闀跨瀛� */ + @ApiModelProperty("涓氬姟鍓櫌闀跨瀛�") + @Excel(name = "涓氬姟鍓櫌闀跨瀛�") + private String busvicepresident; + + /** 鍔炲叕瀹や富浠荤瀛� */ + @ApiModelProperty("鍔炲叕瀹や富浠荤瀛�") + @Excel(name = "鍔炲叕瀹や富浠荤瀛�") + private String officedirector; + + /** 璐㈠姟瀹や富浠荤瀛� */ + @ApiModelProperty("璐㈠姟瀹や富浠荤瀛�") + @Excel(name = "璐㈠姟瀹や富浠荤瀛�") + private String financedirector; + + /** 璐㈠姟瀹℃牳 */ + @ApiModelProperty("璐㈠姟瀹℃牳") + @Excel(name = "璐㈠姟瀹℃牳") + private String financechecher; + + /** 鍏宠仈service_donatebaseinfo琛ㄧ殑ID */ + @ApiModelProperty("鍏宠仈service_donatebaseinfo琛ㄧ殑ID") + @Excel(name = "鍏宠仈service_donatebaseinfo琛ㄧ殑ID") + private Long infoid; + + /** 鎹愮尞鑰呯紪鍙� */ + @ApiModelProperty("鎹愮尞鑰呯紪鍙�") + @Excel(name = "鎹愮尞鑰呯紪鍙�") + private String donorno; + + /** 璁板綍鐘舵�� */ + @ApiModelProperty("璁板綍鐘舵��") + @Excel(name = "璁板綍鐘舵��") + private Integer recordstatus; + + /** 涓婁紶鏍囧織 */ + @ApiModelProperty("涓婁紶鏍囧織") + @Excel(name = "涓婁紶鏍囧織") + private String uploadflag; + + /** 涓婁紶鏃堕棿 */ + @ApiModelProperty("涓婁紶鏃堕棿") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "涓婁紶鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private Date uploadtime; + + @ApiModelProperty("鍑哄樊浜�") + @Excel(name = "鍑哄樊浜�") + private String travelers; + + @ApiModelProperty("鍑哄樊浜嬬敱") + private String reason; + + @ApiModelProperty("鎹愮尞鑰呭鍚�") + private String donorname; + + @ApiModelProperty("鎬婚噾棰�") + private Double totalamount; + + @ApiModelProperty("鎬婚噾棰濈殑澶у啓") + private String bigstrmoney; + + /** 闄勪欢鍦板潃锛宎dd by yangjb 20221124 */ + @ApiModelProperty("闄勪欢鍦板潃") + private String fileurl; + + private String remark; + + /** 褰撳墠瀹℃牳绾у埆 澶勪簬鍝釜闃舵 0锛氱敵璇凤紱1锛氫竴绾у鏍革紱2锛氫簩绾у鏍革紱3锛氫笁绾у鏍哥瓑 */ + @ApiModelProperty("褰撳墠瀹℃牳绾у埆") + private Long flowlevel; + + + /** 璐圭敤褰掑睘锛�0锛氬叾浠栦汉鍛橈紱1锛氫笓鑱屼汉鍛橈紱2锛氬崗璋冨憳锛�3锛氫笓瀹讹紱4锛氭崘鐚�呭灞� */ + @ApiModelProperty("璐圭敤褰掑睘") + private String persontype; + + /** 璐圭敤褰掑睘鎻忚堪 */ + @ApiModelProperty("璐圭敤褰掑睘鎻忚堪") + private String costtypename; + + @ApiModelProperty("鎹愮尞瀹跺睘閾惰") + private String donorbank; + + @ApiModelProperty("鎹愮尞瀹跺睘閾惰鍗″彿") + private String donorbankcard; + + @ApiModelProperty("鎹愮尞瀹跺睘璐圭敤璇存槑") + private String donorremark; + + @ApiModelProperty("鎹愮尞瀹跺睘璐圭敤閲戦") + private Double donoramount; + + @ApiModelProperty("鎹愮尞瀹跺睘浜烘暟") + private Integer donorrelatives; + + + @ApiModelProperty("鐢宠鏃堕棿") + private Date createTime; + + @ApiModelProperty("鐢宠鏃堕棿") + private Date starttime; + + @ApiModelProperty("鐢宠鏃堕棿") + private Date endtime; + +} + diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetail.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetail.java index 9a129cd..fdcba62 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetail.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetail.java @@ -64,7 +64,7 @@ /** 浜ら�氳垂 */ @ApiModelProperty("浜ら�氳垂") @Excel(name = "浜ら�氳垂") - private Double trafficexpense; + private BigDecimal trafficexpense; /** 浜ら�氬伐鍏� */ @ApiModelProperty("浜ら�氬伐鍏�") @@ -74,12 +74,12 @@ /** 甯傚唴浜ら�氳垂 */ @ApiModelProperty("甯傚唴浜ら�氳垂") @Excel(name = "甯傚唴浜ら�氳垂") - private Double cityfee; + private BigDecimal cityfee; /** 浣忓璐� */ @ApiModelProperty("浣忓璐�") @Excel(name = "浣忓璐�") - private Double hotelexpense; + private BigDecimal hotelexpense; /** 鍙戠エ寮犳暟 */ @ApiModelProperty("鍙戠エ寮犳暟") @@ -94,17 +94,17 @@ /** 鏉傝垂 */ @ApiModelProperty("鏉傝垂") @Excel(name = "鏉傝垂") - private Double otherexpense; + private BigDecimal otherexpense; /** 浼欓璐� */ @ApiModelProperty("浼欓璐�") @Excel(name = "浼欓璐�") - private Double foodexpenses; + private BigDecimal foodexpenses; /** 浼欓璐硅ˉ鍔� */ @ApiModelProperty("浼欓璐硅ˉ鍔�") @Excel(name = "浼欓璐硅ˉ鍔�") - private Double foodallowance; + private BigDecimal foodallowance; /** 闄勪欢琛� */ @ApiModelProperty("闄勪欢琛�") @@ -154,7 +154,7 @@ @Excel(name = "鎵�灞炶閬擄紙闀囷級鍚嶇О") private String traveltownname; - private Double otherfeeamount; + private BigDecimal otherfeeamount; private String otherfeedesc; diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java index 78220ef..5317094 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java @@ -177,15 +177,15 @@ @Excel(name = "鍏朵粬璐圭敤璇存槑") private String otherfeedesc; - /** 閲戦-鎺ュ彛 */ - @ApiModelProperty("閲戦-鎺ュ彛") - @Excel(name = "閲戦-鎺ュ彛") - private String jine; - - /** 鐞嗙敱-鎺ュ彛 */ - @ApiModelProperty("鐞嗙敱-鎺ュ彛") - @Excel(name = "鐞嗙敱-鎺ュ彛") - private String liyou; +// /** 閲戦-鎺ュ彛 */ +// @ApiModelProperty("閲戦-鎺ュ彛") +// @Excel(name = "閲戦-鎺ュ彛") +// private String jine; +// +// /** 鐞嗙敱-鎺ュ彛 */ +// @ApiModelProperty("鐞嗙敱-鎺ュ彛") +// @Excel(name = "鐞嗙敱-鎺ュ彛") +// private String liyou; } diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceReimbursementMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceReimbursementMapper.java index bf09d3e..5361cc7 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceReimbursementMapper.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceReimbursementMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import java.util.List; import com.ruoyi.project.domain.ServiceReimbursement; +import com.ruoyi.project.domain.ServiceReimbursementEo; import com.ruoyi.project.domain.dto.ServiceReimbursementDto; import com.ruoyi.project.domain.vo.SpFinancialExpensesReimbursementOut; import org.apache.ibatis.annotations.Param; @@ -33,4 +34,12 @@ List<ServiceReimbursement> getInfoByInfoId(Long infoid); List<ServiceReimbursement> getInfoByInfoIdRelatives(Long infoid); + + /** + * + * @param serviceReimbursementEo + * @return + */ + List<ServiceReimbursementEo> getRDInfoByItem(ServiceReimbursementEo serviceReimbursementEo); + } diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceReimbursementService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceReimbursementService.java index 1f00001..58eed72 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceReimbursementService.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceReimbursementService.java @@ -3,6 +3,7 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.project.domain.ServiceReimbursement; +import com.ruoyi.project.domain.ServiceReimbursementEo; import com.ruoyi.project.domain.ServiceReimbursementdetail; import com.ruoyi.project.domain.dto.ServiceReimbursementDto; import com.ruoyi.project.domain.vo.SpFinancialExpensesReimbursementOut; @@ -35,4 +36,6 @@ List<ServiceReimbursement> getInfoByInfoId(Long infoid); List<ServiceReimbursement> getInfoByInfoIdRelatives(Long infoid); + + List<ServiceReimbursementEo> getRDInfoByItem(ServiceReimbursementEo serviceReimbursementEo); } 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 6a5da46..f96033b 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 @@ -2,6 +2,7 @@ import java.util.List; import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.project.domain.ServiceReimbursementEo; import com.ruoyi.project.domain.ServiceReimbursementdetail; import com.ruoyi.project.domain.ServiceRelativesconfirmation; import com.ruoyi.project.domain.dto.ServiceReimbursementDto; @@ -106,4 +107,10 @@ return serviceReimbursementMapper.getInfoByInfoIdRelatives(infoid); } + @Override + public List<ServiceReimbursementEo> getRDInfoByItem(ServiceReimbursementEo serviceReimbursementEo){ + return serviceReimbursementMapper.getRDInfoByItem(serviceReimbursementEo); + } + + } diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailServiceImpl.java index d1bb09c..9c8153a 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailServiceImpl.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailServiceImpl.java @@ -1,9 +1,11 @@ package com.ruoyi.project.service.impl; +import java.math.BigDecimal; import java.util.List; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.project.domain.ServiceReimbursement; import com.ruoyi.project.mapper.ServiceReimbursementMapper; +import com.ruoyi.project.mapper.ServiceReimbursementdetailSharedMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -28,6 +30,9 @@ @Autowired ServiceReimbursementdetailMapper serviceReimbursementdetailMapper; + + @Autowired + ServiceReimbursementdetailSharedMapper detailSharedMapper; @Autowired ServiceReimbursementMapper serviceReimbursementMapper; @@ -77,10 +82,15 @@ Long rbid = serviceReimbursementdetail.getRbid(); ServiceReimbursement serviceReimbursement = serviceReimbursementMapper.selectById(rbid); Double amount = serviceReimbursement.getAmountrequested(); - amount = amount - serviceReimbursementdetail.getTrafficexpense() - serviceReimbursementdetail.getCityfee() - serviceReimbursementdetail.getHotelexpense() - serviceReimbursementdetail.getFoodexpenses() - serviceReimbursementdetail.getFoodallowance() - serviceReimbursementdetail.getOtherexpense() - serviceReimbursementdetail.getOtherfeeamount(); - serviceReimbursement.setAmountrequested(amount); + + BigDecimal subtract = BigDecimal.valueOf(amount).subtract(serviceReimbursementdetail.getTrafficexpense()).subtract(serviceReimbursementdetail.getCityfee()).subtract(serviceReimbursementdetail.getHotelexpense()) + .subtract(serviceReimbursementdetail.getFoodexpenses()).subtract(serviceReimbursementdetail.getFoodallowance()) + .subtract(serviceReimbursementdetail.getOtherexpense()).subtract(serviceReimbursementdetail.getOtherfeeamount()); + + serviceReimbursement.setAmountrequested(subtract.doubleValue()); int updateAmount = serviceReimbursementMapper.updateById(serviceReimbursement); + detailSharedMapper.deleteById(id); return serviceReimbursementdetailMapper.deleteById(id); } diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailSharedServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailSharedServiceImpl.java index a587d85..bbd97a3 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailSharedServiceImpl.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementdetailSharedServiceImpl.java @@ -124,12 +124,12 @@ if (StringUtils.isNotBlank(serviceReimbursementdetailShared.getOtherfeedesc())){ wrappers.eq(ServiceReimbursementdetailShared::getOtherfeedesc ,serviceReimbursementdetailShared.getOtherfeedesc()); } - if (StringUtils.isNotBlank(serviceReimbursementdetailShared.getJine())){ - wrappers.eq(ServiceReimbursementdetailShared::getJine ,serviceReimbursementdetailShared.getJine()); - } - if (StringUtils.isNotBlank(serviceReimbursementdetailShared.getLiyou())){ - wrappers.eq(ServiceReimbursementdetailShared::getLiyou ,serviceReimbursementdetailShared.getLiyou()); - } +// if (StringUtils.isNotBlank(serviceReimbursementdetailShared.getJine())){ +// wrappers.eq(ServiceReimbursementdetailShared::getJine ,serviceReimbursementdetailShared.getJine()); +// } +// if (StringUtils.isNotBlank(serviceReimbursementdetailShared.getLiyou())){ +// wrappers.eq(ServiceReimbursementdetailShared::getLiyou ,serviceReimbursementdetailShared.getLiyou()); +// } return this.list(wrappers); } diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml index a17f909..49a5689 100644 --- a/ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml +++ b/ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml @@ -1,94 +1,149 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper -PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" -"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.project.mapper.ServiceReimbursementMapper"> - + <resultMap type="ServiceReimbursement" id="ServiceReimbursementResult"> - <result property="id" column="ID" /> - <result property="delFlag" column="del_flag" /> - <result property="createBy" column="create_by" /> - <result property="createTime" column="create_time" /> - <result property="updateBy" column="update_by" /> - <result property="updateTime" column="update_time" /> - <result property="userno" column="UserNo" /> - <result property="username" column="UserName" /> - <result property="idcardtype" column="IDCardType" /> - <result property="idcardno" column="IDCardNo" /> - <result property="phone" column="Phone" /> - <result property="depositbank" column="DepositBank" /> - <result property="bankcardno" column="BankCardNo" /> - <result property="branchbankname" column="BranchBankName" /> - <result property="annexbankcard" column="AnnexBankCard" /> - <result property="annexfiles" column="AnnexFiles" /> - <result property="amountrequested" column="AmountRequested" /> - <result property="prepaidamount" column="PrepaidAmount" /> - <result property="invoicecount" column="InvoiceCount" /> - <result property="attachcount" column="AttachCount" /> - <result property="managerno" column="ManagerNo" /> - <result property="managername" column="ManagerName" /> - <result property="deptmentno" column="DeptmentNo" /> - <result property="deptmentname" column="DeptmentName" /> - <result property="opochecker" column="OPOchecker" /> - <result property="finvicepresident" column="FinVicePresident" /> - <result property="busvicepresident" column="BusVicePresident" /> - <result property="officedirector" column="OfficeDirector" /> - <result property="financedirector" column="FinanceDirector" /> - <result property="financechecher" column="FinanceChecher" /> - <result property="infoid" column="InfoID" /> - <result property="donorno" column="DonorNo" /> - <result property="remark" column="remark" /> - <result property="recordstatus" column="RecordStatus" /> - <result property="uploadflag" column="uploadflag" /> - <result property="uploadtime" column="uploadtime" /> - <result property="travelers" column="Travelers" /> - <result property="reason" column="Reason" /> - <result property="donorname" column="DonorName" /> - <result property="totalamount" column="totalAmount" /> - <result property="bigstrmoney" column="bigStrMoney" /> - <result property="flowlevel" column="FlowLevel" /> - <result property="costtype" column="costtype" /> - <result property="costtypename" column="costtypename" /> - <result property="fileurl" column="fileurl" /> - <result property="donorbank" column="donorbank" /> - <result property="donorbankcard" column="donorbankcard" /> - <result property="donorremark" column="donorremark" /> - <result property="donoramount" column="donoramount" /> - <result property="donorrelatives" column="donorrelatives" /> + <result property="id" column="ID"/> + <result property="delFlag" column="del_flag"/> + <result property="createBy" column="create_by"/> + <result property="createTime" column="create_time"/> + <result property="updateBy" column="update_by"/> + <result property="updateTime" column="update_time"/> + <result property="userno" column="UserNo"/> + <result property="username" column="UserName"/> + <result property="idcardtype" column="IDCardType"/> + <result property="idcardno" column="IDCardNo"/> + <result property="phone" column="Phone"/> + <result property="depositbank" column="DepositBank"/> + <result property="bankcardno" column="BankCardNo"/> + <result property="branchbankname" column="BranchBankName"/> + <result property="annexbankcard" column="AnnexBankCard"/> + <result property="annexfiles" column="AnnexFiles"/> + <result property="amountrequested" column="AmountRequested"/> + <result property="prepaidamount" column="PrepaidAmount"/> + <result property="invoicecount" column="InvoiceCount"/> + <result property="attachcount" column="AttachCount"/> + <result property="managerno" column="ManagerNo"/> + <result property="managername" column="ManagerName"/> + <result property="deptmentno" column="DeptmentNo"/> + <result property="deptmentname" column="DeptmentName"/> + <result property="opochecker" column="OPOchecker"/> + <result property="finvicepresident" column="FinVicePresident"/> + <result property="busvicepresident" column="BusVicePresident"/> + <result property="officedirector" column="OfficeDirector"/> + <result property="financedirector" column="FinanceDirector"/> + <result property="financechecher" column="FinanceChecher"/> + <result property="infoid" column="InfoID"/> + <result property="donorno" column="DonorNo"/> + <result property="remark" column="remark"/> + <result property="recordstatus" column="RecordStatus"/> + <result property="uploadflag" column="uploadflag"/> + <result property="uploadtime" column="uploadtime"/> + <result property="travelers" column="Travelers"/> + <result property="reason" column="Reason"/> + <result property="donorname" column="DonorName"/> + <result property="totalamount" column="totalAmount"/> + <result property="bigstrmoney" column="bigStrMoney"/> + <result property="flowlevel" column="FlowLevel"/> + <result property="costtype" column="costtype"/> + <result property="costtypename" column="costtypename"/> + <result property="fileurl" column="fileurl"/> + <result property="donorbank" column="donorbank"/> + <result property="donorbankcard" column="donorbankcard"/> + <result property="donorremark" column="donorremark"/> + <result property="donoramount" column="donoramount"/> + <result property="donorrelatives" column="donorrelatives"/> </resultMap> <sql id="selectServiceReimbursementVo"> - select ID, del_flag, create_by, create_time, update_by, update_time, UserNo, UserName, IDCardType, IDCardNo, Phone, DepositBank, BankCardNo, BranchBankName, AnnexBankCard, AnnexFiles, AmountRequested, PrepaidAmount, InvoiceCount, AttachCount, ManagerNo, ManagerName, DeptmentNo, DeptmentName, OPOchecker, FinVicePresident, BusVicePresident, OfficeDirector, FinanceDirector, FinanceChecher, InfoID, DonorNo, remark, RecordStatus, uploadflag, uploadtime, Travelers, DonorName, Reason, FlowLevel, costtype, costtypename,fileurl,donorbank,donorbankcard,donorremark, donoramount,donorrelatives from service_reimbursement + select ID, + del_flag, + create_by, + create_time, + update_by, + update_time, + UserNo, + UserName, + IDCardType, + IDCardNo, + Phone, + DepositBank, + BankCardNo, + BranchBankName, + AnnexBankCard, + AnnexFiles, + AmountRequested, + PrepaidAmount, + InvoiceCount, + AttachCount, + ManagerNo, + ManagerName, + DeptmentNo, + DeptmentName, + OPOchecker, + FinVicePresident, + BusVicePresident, + OfficeDirector, + FinanceDirector, + FinanceChecher, + InfoID, + DonorNo, + remark, + RecordStatus, + uploadflag, + uploadtime, + Travelers, + DonorName, + Reason, + FlowLevel, + costtype, + costtypename, + fileurl, + donorbank, + donorbankcard, + donorremark, + donoramount, + donorrelatives + from service_reimbursement </sql> - <select id="selectServiceReimbursementList" parameterType="ServiceReimbursement" resultMap="ServiceReimbursementResult"> + <select id="selectServiceReimbursementList" parameterType="ServiceReimbursement" + resultMap="ServiceReimbursementResult"> <include refid="selectServiceReimbursementVo"/> <where> - <if test="createBy != null and createBy != ''"> and create_by = #{createBy}</if> - <if test="createTime != null "> and create_time = #{createTime}</if> - <if test="username != null and username != ''"> and UserName like concat('%', #{username}, '%')</if> - <if test="deptmentname != null and deptmentname != ''"> and DeptmentName like concat('%', #{deptmentname}, '%')</if> - <if test="donorno != null and donorno != ''"> and DonorNo = #{donorno}</if> - <if test="recordstatus != null and recordstatus != ''"> and RecordStatus = #{recordstatus}</if> - <if test="uploadflag != null and uploadflag != ''"> and uploadflag = #{uploadflag}</if> - <if test="travelers != null and travelers != ''"> and Travelers = #{travelers}</if> + <if test="createBy != null and createBy != ''">and create_by = #{createBy}</if> + <if test="createTime != null ">and create_time = #{createTime}</if> + <if test="username != null and username != ''">and UserName like concat('%', #{username}, '%')</if> + <if test="deptmentname != null and deptmentname != ''">and DeptmentName like concat('%', #{deptmentname}, + '%') + </if> + <if test="donorno != null and donorno != ''">and DonorNo = #{donorno}</if> + <if test="recordstatus != null and recordstatus != ''">and RecordStatus = #{recordstatus}</if> + <if test="uploadflag != null and uploadflag != ''">and uploadflag = #{uploadflag}</if> + <if test="travelers != null and travelers != ''">and Travelers = #{travelers}</if> </where> </select> <select id="getMaxId" resultType="java.lang.Long"> - select max(ID) from service_reimbursement + select max(ID) + from service_reimbursement </select> <select id="selectSearchList" resultMap="ServiceReimbursementResult"> <include refid="selectServiceReimbursementVo"/> <where> - <if test="createTime != null and createTime != ''" > and create_time >= #{searchstarttime} and create_time <= #{searchendtime} </if> - <if test="travelers != null and travelers != ''"> and Travelers = #{travelers}</if> + <if test="createTime != null and createTime != ''">and create_time >= #{searchstarttime} and create_time + <= #{searchendtime} + </if> + <if test="travelers != null and travelers != ''">and Travelers = #{travelers}</if> </where> </select> - <select id="getListBypower" statementType="CALLABLE" resultType="com.ruoyi.project.domain.vo.SpFinancialExpensesReimbursementOut"> + <select id="getListBypower" statementType="CALLABLE" + resultType="com.ruoyi.project.domain.vo.SpFinancialExpensesReimbursementOut"> call SP_FINANCIAL_EXPENSES(#{PAUSERNO,mode=IN,jdbcType=VARCHAR},#{PAFUNDTYPE,mode=IN,jdbcType=INTEGER},#{PAAPPLICANT,mode=IN,jdbcType=VARCHAR},#{PAAPPLICATIONBEGTIME,mode=IN,jdbcType=VARCHAR},#{PAAPPLICATIONENDTIME,mode=IN,jdbcType=VARCHAR},#{PADEPARTMENT,mode=IN,jdbcType=VARCHAR},#{CHECKFLAG,mode=IN,jdbcType=INTEGER},#{APPLYTYPE,mode=IN,jdbcType=INTEGER}) </select> <select id="getInfoByInfoId" resultType="com.ruoyi.project.domain.ServiceReimbursement"> @@ -100,4 +155,34 @@ where infoid = #{infoid} and del_flag = '0' and costtype = "4" </select> + <select id="getRDInfoByItem" resultType="com.ruoyi.project.domain.ServiceReimbursementEo"> + SELECT a.id as id,a.UserNo as userno,a.FlowLevel as recordstatus,b.persontype as persontype,a.create_time as + createTime, + a.UserName as username,b.personname as travelers,a.AmountRequested as amountrequested,a.Reason as reason,a.Phone + as phone,a.DepositBank as depositbank,a.BankCardNo as bankcardno,a.DonorName as donorname,b.trafficexpense as + trafficexpense,b.hotelexpense as hotelexpense,b.FoodExpenses as foodexpenses, b.foodallowance as foodallowance, + b.otherexpense as otherexpense,b.otherfeeamount as otherfeeamount FROM service_reimbursement a LEFT JOIN + service_reimbursementdetail b on a.id=b.RBID where a.del_flag != 1 and b.del_flag!=1 + <if test="id != null"> + and a.id = #{id} + </if> + <if test='travelers != null and travelers != ""'> + and b.personname=#{travelers} + </if> + <if test='username != null and username != ""'> + and a.UserName=#{username} + </if> + <if test='recordstatus != null and recordstatus != ""'> + and a.FlowLevel=#{recordstatus} + </if> + <if test='travelers != null and travelers != ""'> + and b.personname=#{travelers} + </if> + <if test='starttime != null and endtime != ""'> + and a.create_time BETWEEN #{starttime} AND #{endtime} + </if> + + ORDER BY a.id desc + </select> + </mapper> \ No newline at end of file -- Gitblit v1.9.3