From 9b30285de6191e5fb2df447684ba2ed2c28d9db3 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 23 十一月 2023 11:49:04 +0800
Subject: [PATCH] 优化带啊
---
service-fee/src/main/java/com/java110/fee/bmo/fee/impl/FeeBMOImpl.java | 46 +++++++++++++++++++++++++++++++++++++---------
1 files changed, 37 insertions(+), 9 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/bmo/fee/impl/FeeBMOImpl.java b/service-fee/src/main/java/com/java110/fee/bmo/fee/impl/FeeBMOImpl.java
index 83a40f8..ea9f438 100644
--- a/service-fee/src/main/java/com/java110/fee/bmo/fee/impl/FeeBMOImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/bmo/fee/impl/FeeBMOImpl.java
@@ -5,7 +5,7 @@
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.factory.GenerateCodeFactory;
import com.java110.core.smo.IComputeFeeSMO;
-import com.java110.dto.RoomDto;
+import com.java110.dto.room.RoomDto;
import com.java110.dto.contract.ContractDto;
import com.java110.dto.fee.FeeConfigDto;
import com.java110.dto.fee.FeeDto;
@@ -18,18 +18,16 @@
import com.java110.intf.common.ICarInoutInnerServiceSMO;
import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
import com.java110.intf.community.IRoomInnerServiceSMO;
-import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
-import com.java110.intf.fee.IPayFeeDetailV1InnerServiceSMO;
-import com.java110.intf.fee.IPayFeeV1InnerServiceSMO;
+import com.java110.intf.fee.*;
import com.java110.intf.user.IUserV1InnerServiceSMO;
import com.java110.po.car.CarInoutPo;
import com.java110.po.fee.FeeAttrPo;
import com.java110.po.fee.PayFeeConfigPo;
import com.java110.po.fee.PayFeeDetailPo;
import com.java110.po.fee.PayFeePo;
-import com.java110.po.feeReceipt.FeeReceiptPo;
-import com.java110.po.feeReceiptDetail.FeeReceiptDetailPo;
+import com.java110.po.fee.FeeReceiptPo;
+import com.java110.po.fee.FeeReceiptDetailPo;
+import com.java110.utils.cache.CommonCache;
import com.java110.utils.constant.*;
import com.java110.utils.exception.ListenerExecuteException;
import com.java110.utils.util.Assert;
@@ -83,6 +81,9 @@
@Autowired
private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
+
+ @Autowired
+ private IFeeReceiptInnerServiceSMO feeReceiptInnerServiceSMOImpl;
/**
* 娣诲姞灏忓尯淇℃伅
@@ -372,6 +373,9 @@
*/
public JSONObject addFeePreDetail(JSONObject paramInJson) {
+ //todo 鐢熸垚鏀舵嵁缂栧彿
+ String receiptCode = feeReceiptInnerServiceSMOImpl.generatorReceiptCode(paramInJson.getString("communityId"));
+
JSONObject businessFeeDetail = new JSONObject();
businessFeeDetail.putAll(paramInJson);
businessFeeDetail.put("detailId", paramInJson.getString("detailId"));
@@ -423,9 +427,11 @@
payFeeDetail.setPayableAmount("0.0");
}
payFeeDetail.setPayOrderId(paramInJson.getString("oId"));
+ //todo 缂撳瓨鏀舵嵁缂栧彿
+ CommonCache.setValue(payFeeDetail.getDetailId() + CommonCache.RECEIPT_CODE, receiptCode, CommonCache.DEFAULT_EXPIRETIME_TWO_MIN);
// todo 鍒峰叆鏀堕摱浜哄憳淇℃伅
freshCashierInfo(payFeeDetail, paramInJson);
-
+ payFeeDetail.setOpenInvoice("N");
int flag = payFeeDetailNewV1InnerServiceSMOImpl.savePayFeeDetailNew(payFeeDetail);
if (flag < 1) {
throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "淇濆瓨璐圭敤鏄庣粏澶辫触");
@@ -691,12 +697,22 @@
if (paramInJson.containsKey("startTime")) {
time = paramInJson.getString("startTime");
}
+
+ //鏌ヨ璐圭敤椤�
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setConfigId(paramInJson.getString("configId"));
+ List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+ Assert.listOnlyOne(feeConfigDtos, "鏌ヨ璐圭敤椤归敊璇紒");
+
JSONObject businessUnit = new JSONObject();
businessUnit.put("feeId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId));
businessUnit.put("configId", paramInJson.getString("configId"));
businessUnit.put("feeTypeCd", paramInJson.getString("feeTypeCd"));
businessUnit.put("incomeObjId", paramInJson.getString("storeId"));
businessUnit.put("amount", "-1.00");
+ if (paramInJson.containsKey("amount") && !StringUtil.isEmpty(paramInJson.getString("amount"))) {
+ businessUnit.put("amount", paramInJson.getString("amount"));
+ }
businessUnit.put("startTime", time);
businessUnit.put("endTime", time);
businessUnit.put("communityId", paramInJson.getString("communityId"));
@@ -707,6 +723,12 @@
businessUnit.put("batchId", paramInJson.getString("batchId"));
businessUnit.put("userId", context.getReqHeaders().get(CommonConstant.HTTP_USER_ID));
paramInJson.put("feeId", businessUnit.getString("feeId"));
+
+ if(FeeDto.FEE_FLAG_CYCLE.equals(feeConfigDtos.get(0).getFeeFlag())) {
+ businessUnit.put("maxTime", feeConfigDtos.get(0).getEndTime());
+ }else {
+ businessUnit.put("maxTime", paramInJson.getString("endTime"));
+ }
return businessUnit;
}
@@ -717,7 +739,7 @@
feeAttrPo.setSpecCd(specCd);
feeAttrPo.setValue(value);
feeAttrPo.setFeeId(paramInJson.getString("feeId"));
- feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId, true));
return feeAttrPo;
}
@@ -781,6 +803,12 @@
businessUnit.put("batchId", paramInJson.getString("batchId"));
businessUnit.put("userId", dataFlowContext.getReqHeaders().get(CommonConstant.HTTP_USER_ID));
+ if(FeeDto.FEE_FLAG_CYCLE.equals(feeConfigDtos.get(0).getFeeFlag())) {
+ businessUnit.put("maxTime", feeConfigDtos.get(0).getEndTime());
+ }else {
+ businessUnit.put("maxTime", paramInJson.getString("endTime"));
+ }
+
paramInJson.put("feeId", businessUnit.getString("feeId"));
return businessUnit;
}
--
Gitblit v1.8.0