From e8ded5b9dbc884741d7de7a7f4d36b517db3c8db Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期一, 22 九月 2025 18:06:02 +0800
Subject: [PATCH] 第三张报表导出0922
---
service-job/src/main/java/com/java110/job/importData/adapt/ImportHistoryFeeDetailQueueDataAdapt.java | 77 +++++++++++++++++++++++++++++++++++---
1 files changed, 70 insertions(+), 7 deletions(-)
diff --git a/service-job/src/main/java/com/java110/job/importData/adapt/ImportHistoryFeeDetailQueueDataAdapt.java b/service-job/src/main/java/com/java110/job/importData/adapt/ImportHistoryFeeDetailQueueDataAdapt.java
index 14d126d..df1231c 100644
--- a/service-job/src/main/java/com/java110/job/importData/adapt/ImportHistoryFeeDetailQueueDataAdapt.java
+++ b/service-job/src/main/java/com/java110/job/importData/adapt/ImportHistoryFeeDetailQueueDataAdapt.java
@@ -145,14 +145,13 @@
List<ImportRoomFee> importRoomFees = new ArrayList<>();
List<ImportRoomFee> importCarFees = new ArrayList<>();
- List<ImportRoomFee> importContractFees = new ArrayList<>();
List<CarInoutPo> carInoutPos = new ArrayList<>();
String communityId = assetImportLogDetailDto.getCommunityId();
JSONObject data = JSONObject.parseObject(assetImportLogDetailDto.getContent());
ImportRoomFee importRoomFee = BeanConvertUtil.covertBean(data, ImportRoomFee.class);
- if (DateUtil.getDateFromStringB(data.getString("chargeStart").split(" ")[0]).getTime() <= DateUtil.getDateFromStringB(assetImportLogDetailDto.getTakeTime().split(" ")[0]).getTime()){
- throw new IllegalStateException("璇ヨ垂鐢ㄤ负璧峰鏃堕棿灏忎簬灏忓尯鎺ョ鏃堕棿涓嶈繘琛屽鍏�");
- }
+// if (DateUtil.getDateFromStringB(data.getString("chargeStart").split(" ")[0]).getTime() <= DateUtil.getDateFromStringB(assetImportLogDetailDto.getTakeTime().split(" ")[0]).getTime()){
+// throw new IllegalStateException("璇ヨ垂鐢ㄤ负璧峰鏃堕棿灏忎簬灏忓尯鎺ョ鏃堕棿涓嶈繘琛屽鍏�");
+// }
if (importRoomFee.getEndTime() != null){
String[] split = importRoomFee.getEndTime().split(" ");
importRoomFee.setEndTime(split[0] + " 23:59:59");
@@ -285,11 +284,66 @@
try{
if(!(ListUtil.isNull(importRoomFees))){
+ if (DateUtil.getDateFromStringB(data.getString("chargeStart").split(" ")[0]).getTime() <= DateUtil.getDateFromStringB(assetImportLogDetailDto.getTakeTime().split(" ")[0]).getTime()){
+ ImportRoomFee original = importRoomFees.get(0);
+ ImportRoomFee importRoomFee1 = (ImportRoomFee) original.clone(); // 鍏嬮殕鏂板璞�
+ ImportRoomFee importRoomFee2 = (ImportRoomFee) original.clone(); // 鍏嬮殕鍙︿竴涓柊瀵硅薄
+ double cycle = (DateUtil.dayCompare(
+ DateUtil.getDateFromStringA(importRoomFee1.getStartTime()),
+ DateUtil.getDateFromStringA(importRoomFee1.getEndTime())
+ )) ;
+ double amount = Double.parseDouble(importRoomFee1.getAmount());
+ importRoomFees = new ArrayList<>();
+ importRoomFee1.setEndTime(DateUtil.getAddDayStringB(DateUtil.getDateFromStringB(assetImportLogDetailDto.getTakeTime().split(" ")[0]),-1) + " 23:59:59");
+ importRoomFee1.setCycle((DateUtil.dayCompare(
+ DateUtil.getDateFromStringA(importRoomFee1.getStartTime()),
+ DateUtil.getDateFromStringA(importRoomFee1.getEndTime())
+ )) + "");
+ importRoomFee1.setAmount((amount/cycle) * Double.parseDouble(importRoomFee1.getCycle()) + "");
+ importRoomFee2.setStartTime(assetImportLogDetailDto.getTakeTime().split(" ")[0] + " 00:00:00");
+ importRoomFee2.setCycle((DateUtil.dayCompare(
+ DateUtil.getDateFromStringA(importRoomFee2.getStartTime()),
+ DateUtil.getDateFromStringA(importRoomFee2.getEndTime())
+ )) + "");
+ importRoomFee2.setAmount(Double.parseDouble(importRoomFee2.getAmount()) - Double.parseDouble(importRoomFee1.getAmount()) + "");
+ importRoomFee1.setState("1600");
+ importRoomFee2.setState("1400");
+
+ importRoomFees.add(importRoomFee1);
+ importRoomFees.add(importRoomFee2);
+ }
importFeeDetails(importRoomFees.get(0).getStoreId(), importRoomFees.get(0).getUserId(), importRoomFees, importRoomFees.get(0).getBatchId());
}
if(!(ListUtil.isNull(importCarFees))){
+ if (DateUtil.getDateFromStringB(data.getString("chargeStart").split(" ")[0]).getTime() <= DateUtil.getDateFromStringB(assetImportLogDetailDto.getTakeTime().split(" ")[0]).getTime()){
+ importRoomFees = importCarFees;
+ ImportRoomFee importRoomFee1 = importRoomFees.get(0);
+ ImportRoomFee importRoomFee2 = importRoomFees.get(0);
+ importRoomFees = new ArrayList<>();
+ importRoomFee1.setEndTime(DateUtil.getAddDayStringB(DateUtil.getDateFromStringB(assetImportLogDetailDto.getTakeTime().split(" ")[0]),-1) + " 23:59:59");
+ double cycle = Double.parseDouble(importRoomFee1.getCycle());
+ double amount = Double.parseDouble(importRoomFee1.getAmount());
+ importRoomFee1.setCycle((DateUtil.dayCompare(
+ DateUtil.getDateFromStringA(importRoomFee1.getStartTime()),
+ DateUtil.getDateFromStringA(importRoomFee1.getEndTime())
+ )) + "");
+ importRoomFee1.setAmount((amount/cycle) * Double.parseDouble(importRoomFee1.getCycle()) + "");
+ importRoomFee2.setStartTime(assetImportLogDetailDto.getTakeTime().split(" ")[0] + " 00:00:00");
+ importRoomFee2.setCycle((DateUtil.dayCompare(
+ DateUtil.getDateFromStringA(importRoomFee2.getStartTime()),
+ DateUtil.getDateFromStringA(importRoomFee2.getEndTime())
+ )) + "");
+ importRoomFee2.setAmount(Double.parseDouble(importRoomFee2.getAmount()) - Double.parseDouble(importRoomFee1.getAmount()) + "");
+ importRoomFee1.setState("1600");
+ importRoomFee2.setState("1400");
- importCarFeeDetails2(importCarFees.get(0).getStoreId(), importCarFees.get(0).getUserId(), importCarFees, importCarFees.get(0).getBatchId());
+ importRoomFees.add(importRoomFee1);
+ importRoomFees.add(importRoomFee2);
+ importCarFeeDetails2(importCarFees.get(0).getStoreId(), importCarFees.get(0).getUserId(), importRoomFees, importCarFees.get(0).getBatchId());
+ }
+ else{
+ importCarFeeDetails2(importCarFees.get(0).getStoreId(), importCarFees.get(0).getUserId(), importCarFees, importCarFees.get(0).getBatchId());
+ }
}
}catch (IllegalStateException e){
throw new IllegalArgumentException(e.getMessage());
@@ -459,7 +513,7 @@
}
}
feeDto2.setCommunityId(importRoomFee.getCommunityId());
- if (new BigDecimal(importRoomFee.getAmount()).doubleValue() >= 0){
+ if (new BigDecimal(importRoomFee.getAmount()).doubleValue() >= 0 && !importRoomFee.getState().equals("1600")){
feeDto2.setStatusCd("0");
feeDto2.setUseStart(DateUtil.getDateFromStringA(importRoomFee.getStartTime()));
feeDto2.setUseEnd(DateUtil.getDateFromStringA(importRoomFee.getEndTime()));
@@ -468,7 +522,7 @@
if (new BigDecimal(importRoomFee.getAmount()).doubleValue() >= 0) {
feeDtos.removeIf(feeDto -> "2009001".equals(feeDto.getState()));
}
- if(feeDtos.size() == 0){
+ if(feeDtos.size() == 0 && !importRoomFee.getState().equals("1600")){
updateImportLogDetailState(importRoomFee.getDetailId(),new IllegalArgumentException("璐圭敤椤�"+importRoomFee.getFeeName()+"涓嶅瓨鍦�"));
throw new IllegalArgumentException("璐圭敤璁板綍"+importRoomFee.getFeeName()+"涓嶅瓨鍦�");
@@ -575,6 +629,9 @@
cycle = cycle - cycle - cycle;
payFeeDetailPo.setState("1300");
}
+ if (importRoomFee.getState() != null){
+ payFeeDetailPo.setState(importRoomFee.getState());
+ }
int count = feeDetailInnerServiceSMOImpl.queryFeeDetailsCountByVo(payFeeDetailPo);
payFeeDetailPo.setPayableAmount(importRoomFee.getAmount());
@@ -599,6 +656,12 @@
payFeeDetailPo.setState("1300");
int saved = feeDetailInnerServiceSMOImpl.saveFeeDetail(payFeeDetailPo);
return;
+ } else if (importRoomFee.getState().equals("1600")){
+ payFeeDetailPo.setDetailId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_detailId));
+ payFeeDetailPo.setReceivableAmount(computeFeeByCycle(tmpFeeDto,importRoomFee)+"");
+ payFeeDetailPo.setDiscountAmount("0");
+ int saved = feeDetailInnerServiceSMOImpl.saveFeeDetail(payFeeDetailPo);
+ return;
}
PayFeeDetailDiscountPo payFeeDetailDiscount = new PayFeeDetailDiscountPo();
--
Gitblit v1.8.0