| 
					
				 | 
			
			
				@@ -3,6 +3,7 @@ package com.ruoyi.finance.service.impl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.alibaba.fastjson.JSONArray; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ruoyi.approvalFlow.domain.AuditItems; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ruoyi.approvalFlow.service.impl.AuditItemsAbout; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ruoyi.approvalFlow.service.impl.AuditItemsServiceImpl; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -75,6 +76,7 @@ import java.io.File; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.io.FileOutputStream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.io.OutputStream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.math.BigDecimal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.text.ParseException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.text.SimpleDateFormat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.stream.Collectors; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -727,20 +729,35 @@ public class TFeeServiceImpl implements ITFeeService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWareHouseFees.setTimeExamine(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<FeeVO> list = tFeeMapper.selectFinancialLedgerList(tWareHouseFees); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        for (FeeVO feeVO:list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (int i = 0; i < list.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             FeeDTO feeDTO = new FeeDTO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             feeDTO.setFDc(tWareHouseFees.getfDc()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            feeDTO.setFCorpId(feeVO.getfCorpid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            feeDTO.setFAuditList(tWareHouseFees.getTimeExamine()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            feeDTO.setFBstimeExamine(tWareHouseFees.getfBstimeExamine()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            feeDTO.setFCorpId(list.get(i).getfCorpid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            BigDecimal amount = new BigDecimal("0.00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            BigDecimal stlamount = new BigDecimal("0.00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (ObjectUtils.isNotNull(list.get(i).getReviewDate())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                List<String> list1 = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                list1.add(list.get(i).getReviewDate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                list1.add(list.get(i).getReviewDate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (tWareHouseFees.getSwitchSection() == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    feeDTO.setFAuditList(list1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    feeDTO.setFBstimeExamine(list1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                feeDTO.setFAuditList(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                feeDTO.setFBstimeExamine(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             List<FeeVO> feeVOList = tFeeMapper.selectFinancialLedgerDetails(feeDTO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // 应收费用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            BigDecimal amount = feeVOList.stream().map(FeeVO::getFAmount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            amount = amount.add(feeVOList.stream().map(FeeVO::getFAmount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // 已收费用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            BigDecimal stlamount = feeVOList.stream().map(FeeVO::getFStlamount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            feeVO.setFAmount(amount); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            feeVO.setNnfinished(amount.subtract(stlamount)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            feeVO.setFStlamount(stlamount); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            stlamount = stlamount.add(feeVOList.stream().map(FeeVO::getFStlamount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            list.get(i).setFAmount(amount); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            list.get(i).setNnfinished(amount.subtract(stlamount)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            list.get(i).setFStlamount(stlamount); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1901,7 +1918,7 @@ public class TFeeServiceImpl implements ITFeeService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             map.put("message", "费用明细数据有误,请找管理员"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else if ("DZ".equals(type) || "KHDZ".equals(type)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             BigDecimal subtract = amount.subtract(accamount); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(subtract.compareTo(new BigDecimal(0)) == 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (subtract.compareTo(new BigDecimal(0)) == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (subtract.compareTo(money) <= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     flag = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     map.put("message", "提单号" + bills.getfMblno() + "的" + tFees.getfName() + "对账金额超过可对账金额,当前可对账金额为" + subtract + "元"); 
			 |