From 926b0e68e108d0866d79c1a366e3d14d1cebac4b Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期一, 04 十二月 2023 10:23:10 +0800 Subject: [PATCH] 代码提交 --- ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java | 78 +++++++++++++++++++++++++++++---------- 1 files changed, 58 insertions(+), 20 deletions(-) diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java index 01c8600..5288147 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java @@ -6,15 +6,15 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.LockSupport; import java.util.stream.Collectors; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.config.RuoYiConfig; -import com.ruoyi.common.tax.TaxtUtils; +import com.ruoyi.common.exception.base.BaseException; +import com.ruoyi.common.utils.ChineseUtils; import com.ruoyi.common.utils.HttpClientKit; import com.ruoyi.common.utils.bean.DtoConversionUtils; import com.ruoyi.common.utils.poi.ExcelUtil; @@ -27,7 +27,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -140,8 +139,18 @@ } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public Boolean addFundSharedInfo(Long id) { + log.info("fund琛ㄧ殑id锛歿}", id); + //鍒ゆ柇涓�涓嬶紝share琛ㄦ槸鍚﹀凡缁忓瓨鍦ㄤ簡 + Map<String, Object> map = new HashMap<>(); + map.put("serfunid", id); + map.put("del_flag", 0); + List<ServiceFundShared> serviceFundSharedList = serviceFundSharedMapper.selectByMap(map); + if (!CollectionUtils.isEmpty(serviceFundSharedList)) { + return true; + } + ServiceFund serviceFund = serviceFundMapper.selectById(id); ServiceFundShared serviceFundShared = DtoConversionUtils.sourceToTarget(serviceFund, ServiceFundShared.class); serviceFundShared.setSerfunid(serviceFundShared.getId()); @@ -671,7 +680,6 @@ @Override public int countItem(Long infoid, Long itemid) { List<ServiceFund> serviceFunds = serviceFundMapper.getInfoByInfoId(infoid); - int count = 0; for (ServiceFund s : serviceFunds) { long fundid = s.getId(); @@ -691,18 +699,27 @@ List<ServiceFunddetailVO> serviceFunddetails = serviceFundVO.getServiceFunddetails(); if (CollectionUtils.isEmpty(serviceFunddetails)) { - System.out.println("serviceFunddetails涓虹┖鍠�"); - return null; + throw new BaseException("serviceFunddetails涓虹┖鍠�"); } + + BigDecimal bigDecimal = new BigDecimal(0.0); // 淇濆瓨璇︽儏鏁版嵁 for (ServiceFunddetailVO serviceFunddetailVO : serviceFunddetails) { + + if (StringUtils.isEmpty(serviceFunddetailVO.getBankcardno())) { + throw new BaseException("璇锋鏌ラ摱琛屽崱鍙锋槸鍚︿负绌�,濮撳悕锛�" + serviceFunddetailVO.getBeneficiaryname()); + } serviceFunddetailVO.setFundid(id); //灏囬檮浠惰浆鎴恓son if (!CollectionUtils.isEmpty(serviceFunddetailVO.getAnnexfilesList())) { serviceFunddetailVO.setAnnexfiles(JSON.toJSONString(serviceFunddetailVO.getAnnexfilesList())); + } else { + serviceFunddetailVO.setAnnexfiles(null); } if (!CollectionUtils.isEmpty(serviceFunddetailVO.getInvoicefilesList())) { serviceFunddetailVO.setInvoicefiles(JSON.toJSONString(serviceFunddetailVO.getInvoicefilesList())); + } else { + serviceFunddetailVO.setInvoicefiles(null); } ServiceFunddetail serviceFunddetail = DtoConversionUtils.sourceToTarget(serviceFunddetailVO, ServiceFunddetail.class); @@ -711,8 +728,13 @@ } else { serviceFunddetailService.updateById(serviceFunddetail); } - } + bigDecimal = bigDecimal.add(BigDecimal.valueOf(serviceFunddetailVO.getAmount())); + + + } + serviceFundVO.setPretaxcost(bigDecimal.doubleValue()); + serviceFundMapper.updateById(serviceFundVO); return id; } @@ -753,17 +775,23 @@ } @Override - public Boolean totaltax(TotalTaxVO totalTaxVO) { + public Map<String, List<ServiceFunddetailExcel>> totaltax(TotalTaxVO totalTaxVO) { + if (CollectionUtils.isEmpty(totalTaxVO.getFundids())) { + throw new BaseException("璇峰嬀閫変箣鍚庯紝鍐嶈繘琛屽悎璁′釜绋�"); + } + Map<String, List<ServiceFunddetailExcel>> map = new HashMap<>(); + if (totalTaxVO.getIsTaxAfter() == null) { //濡備綍涓虹┖锛岄粯璁ゅ綋娌℃湁绠楄繃绋庯紝杩涜鍚堣 totalTaxVO.setIsTaxAfter(0); } List<ServiceFunddetail> serviceFunddetails = serviceFunddetailMapper.totlaTax(totalTaxVO.getFundids()); + if (CollectionUtils.isEmpty(serviceFunddetails)) { + throw new BaseException("鏌ヨ鐨勮鎯呮暟鎹负绌�"); + } //鐢ㄤ簬杩斿洖excel List<ServiceFunddetailExcel> serviceFunddetailList = new ArrayList<>(); - //鎵撳嵃excel - ExcelUtil<ServiceFunddetailExcel> util = new ExcelUtil<ServiceFunddetailExcel>(ServiceFunddetailExcel.class); if (totalTaxVO.getIsTaxAfter() == 1) { //閫氳繃鍙楃泭浜哄悕绉帮紝灏嗙◣鍓嶃�佺◣鍚庣殑鍊肩浉鍔� @@ -788,10 +816,13 @@ } serviceFunddetailList.add(serviceFunddetailExcel); } - //鎵撳嵃绠楄繃绋庝箣鍚庣殑锛屽悎璁xcel - util.exportExcel(serviceFunddetailList, "鍚堣涓◣锛堢◣鍚庯級"); + //杩斿洖绠楄繃绋庝箣鍚庣殑锛屽悎璁� + map.put("鍚堣涓◣锛堢◣鍚庯級", serviceFunddetailList); + return map; + } else { - a : for (ServiceFunddetail serviceFunddetail : serviceFunddetails) { + a: + for (ServiceFunddetail serviceFunddetail : serviceFunddetails) { ServiceFunddetailExcel sfeBefore = new ServiceFunddetailExcel(); ServiceFunddetailExcel sfeAfter = new ServiceFunddetailExcel(); @@ -804,7 +835,14 @@ for (ServiceFunddetail serviceFunddetail2 : serviceFunddetails) { - if (serviceFunddetail.getBeneficiaryname().trim().equals(serviceFunddetail2.getBeneficiaryname().trim()) && !(serviceFunddetail2.getServicesscopename().trim().equals("绋庡悗"))) { + if (StringUtils.isEmpty(serviceFunddetail2.getServicesscopename())) { + ServiceFund serviceFund = null; + if (serviceFunddetail2.getFundid() == null) { + serviceFund = serviceFundMapper.selectById(serviceFunddetail2.getFundid()); + } + throw new BaseException("鏈嶅姟璇存槑涓虹┖,璇锋鏌ュ悗鍐嶈绠�,鎹愮尞鑰呬负 :" + serviceFund.getDonorname()); + } + if (serviceFunddetail.getBeneficiaryname().equals(serviceFunddetail2.getBeneficiaryname()) && !(serviceFunddetail2.getServicesscopename().equals("绋庡悗"))) { //绱绋庡墠 sfeBefore.setIdcardno(serviceFunddetail2.getIdcardno()); sfeBefore.setBankcardno(serviceFunddetail2.getBankcardno()); @@ -820,7 +858,7 @@ } sfeBefore.setTaxedamount(null); - } else if (serviceFunddetail.getBeneficiaryname().trim().equals(serviceFunddetail2.getBeneficiaryname().trim()) && serviceFunddetail2.getServicesscopename().trim().equals("绋庡悗")) { + } else if (serviceFunddetail.getBeneficiaryname().equals(serviceFunddetail2.getBeneficiaryname()) && serviceFunddetail2.getServicesscopename().equals("绋庡悗")) { //绱绋庡悗 sfeAfter.setIdcardno(serviceFunddetail2.getIdcardno()); sfeAfter.setBankcardno(serviceFunddetail2.getBankcardno()); @@ -844,10 +882,10 @@ if (ObjectUtils.isNotEmpty(sfeAfter.getBeneficiaryname())) serviceFunddetailList.add(sfeAfter); } - //鎵撳嵃绠楃◣涔嬪墠鐨勶紝鍚堣excel - util.exportExcel(serviceFunddetailList, "鍚堣涓◣锛堢◣鍓嶏級"); + //杩斿洖绠楃◣涔嬪墠鐨勶紝鍚堣 + map.put("鍚堣涓◣锛堢◣鍓嶏級", serviceFunddetailList); + return map; } - return true; } -- Gitblit v1.9.3