From 00334dc3709c454daed8d3487808e47ece7e0a64 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 19 十二月 2024 13:44:33 +0800
Subject: [PATCH] 物业缴租金自动延期房屋有效期
---
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeConfirmCmd.java | 115 ++++++---------------------------------------------------
1 files changed, 13 insertions(+), 102 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeConfirmCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeConfirmCmd.java
index 3f1844f..05a4a97 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeConfirmCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeConfirmCmd.java
@@ -21,6 +21,7 @@
import com.java110.dto.repair.RepairDto;
import com.java110.dto.repair.RepairUserDto;
import com.java110.fee.bmo.fee.IFeeBMO;
+import com.java110.fee.bmo.fee.IFinishFeeNotify;
import com.java110.intf.acct.IAccountInnerServiceSMO;
import com.java110.intf.acct.ICouponUserDetailV1InnerServiceSMO;
import com.java110.intf.acct.ICouponUserV1InnerServiceSMO;
@@ -104,6 +105,9 @@
@Autowired
private IFeeAccountDetailServiceSMO feeAccountDetailServiceSMOImpl;
+ @Autowired
+ private IFinishFeeNotify finishFeeNotifyImpl;
+
//榛樿搴忓垪
protected static final int DEFAULT_SEQ = 1;
@@ -146,63 +150,14 @@
feeBMOImpl.addFeePreDetail(paramObj);
feeBMOImpl.modifyPreFee(paramObj);
- dealOwnerCartEndTime(paramObj);
+ //todo 涓哄仠杞﹁垂鍗曠嫭澶勭悊
+ finishFeeNotifyImpl.updateCarEndTime(paramObj.getString("feeId"), paramObj.getString("communityId"));
- //鍒ゆ柇鏄惁鏈夋淳鍗曞睘鎬D
- FeeAttrDto feeAttrDto = new FeeAttrDto();
- feeAttrDto.setCommunityId(paramObj.getString("communityId"));
- feeAttrDto.setFeeId(paramObj.getString("feeId"));
- feeAttrDto.setSpecCd(FeeAttrDto.SPEC_CD_REPAIR);
- List<FeeAttrDto> feeAttrDtos = feeAttrInnerServiceSMOImpl.queryFeeAttrs(feeAttrDto);
- //淇敼 娲惧崟鐘舵��
- if (feeAttrDtos != null && feeAttrDtos.size() > 0) {
- RepairPoolPo repairPoolPo = new RepairPoolPo();
- repairPoolPo.setRepairId(feeAttrDtos.get(0).getValue());
- repairPoolPo.setCommunityId(paramObj.getString("communityId"));
- repairPoolPo.setState(RepairDto.STATE_APPRAISE);
- int flag = repairPoolNewV1InnerServiceSMOImpl.updateRepairPoolNew(repairPoolPo);
- if (flag < 1) {
- throw new CmdException("鏇存柊寰俊娲惧崟姹犱俊鎭け璐�");
- }
- RepairUserDto repairUserDto = new RepairUserDto();
- repairUserDto.setRepairId(feeAttrDtos.get(0).getValue());
- repairUserDto.setState(RepairUserDto.STATE_PAY_FEE);
- //鏌ヨ寰呮敮浠樼姸鎬佺殑璁板綍
- List<RepairUserDto> repairUserDtoList = repairUserInnerServiceSMO.queryRepairUsers(repairUserDto);
- Assert.listOnlyOne(repairUserDtoList, "淇℃伅閿欒锛�");
- RepairUserPo repairUserPo = new RepairUserPo();
- repairUserPo.setRuId(repairUserDtoList.get(0).getRuId());
- repairUserPo.setState(RepairUserDto.STATE_FINISH_PAY_FEE);
- //濡傛灉鏄緟璇勪环鐘舵�侊紝灏辨洿鏂扮粨鏉熸椂闂�
- repairUserPo.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
- DecimalFormat df = new DecimalFormat("0.00");
- BigDecimal payment_amount = new BigDecimal(paramObj.getString("receivableAmount"));
- repairUserPo.setContext("宸叉敮浠�" + df.format(payment_amount) + "鍏�");
- flag = repairUserNewV1InnerServiceSMOImpl.updateRepairUserNew(repairUserPo);
- if (flag < 1) {
- throw new CmdException("鏇存柊寰俊娲惧崟姹犱俊鎭け璐�");
- }
- //鏂板寰呰瘎浠风姸鎬�
- RepairUserPo repairUser = new RepairUserPo();
- repairUser.setRuId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_ruId));
- repairUser.setStartTime(repairUserPo.getEndTime());
- repairUser.setState(RepairUserDto.STATE_EVALUATE);
- repairUser.setContext("寰呰瘎浠�");
- repairUser.setCommunityId(paramObj.getString("communityId"));
- repairUser.setCreateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
- repairUser.setRepairId(repairUserDtoList.get(0).getRepairId());
- repairUser.setStaffId(repairUserDtoList.get(0).getStaffId());
- repairUser.setStaffName(repairUserDtoList.get(0).getStaffName());
- repairUser.setPreStaffId(repairUserDtoList.get(0).getStaffId());
- repairUser.setPreStaffName(repairUserDtoList.get(0).getStaffName());
- repairUser.setPreRuId(repairUserDtoList.get(0).getRuId());
- repairUser.setRepairEvent("auditUser");
- repairUser.setbId("-1");
- flag = repairUserNewV1InnerServiceSMOImpl.saveRepairUserNew(repairUser);
- if (flag < 1) {
- throw new CmdException("鏇存柊寰俊娲惧崟姹犱俊鎭け璐�");
- }
- }
+ //todo 淇敼鎶ヤ慨鍗�
+ finishFeeNotifyImpl.updateRepair(paramObj.getString("feeId"), paramObj.getString("communityId"), paramObj.getString("receivedAmount"));
+
+ //todo 绉熼噾寤舵湡鎴垮眿缁撴潫鏃堕棿
+ finishFeeNotifyImpl.updateRoomEndTime(paramObj.getString("feeId"), paramObj.getString("communityId"));
//鏌ヨ pay_fee_detail 鏄惁缂磋垂
FeeDetailDto feeDetailDto = new FeeDetailDto();
@@ -215,7 +170,7 @@
//List<ComputeDiscountDto> computeDiscountDtos = (List<ComputeDiscountDto>) paramObj.get("computeDiscountDtos");
JSONArray computeDiscountDtos = paramObj.getJSONArray("computeDiscountDtos");
ComputeDiscountDto computeDiscountDto = null;
- if (computeDiscountDtos != null && computeDiscountDtos.size() > 0) {
+ if (!ListUtil.isNull(computeDiscountDtos)) {
for (int accountIndex = 0; accountIndex < computeDiscountDtos.size(); accountIndex++) {
computeDiscountDto = BeanConvertUtil.covertBean(computeDiscountDtos.getJSONObject(accountIndex), ComputeDiscountDto.class);
if (!StringUtil.isEmpty(computeDiscountDto.getArdId())) {
@@ -237,7 +192,7 @@
parkingSpaceApplyDto.setFeeId(paramObj.getString("feeId"));
parkingSpaceApplyDto.setState("2002");//瀹℃牳涓�
List<ParkingSpaceApplyDto> parkingSpaceApplyDtos = parkingSpaceApplyV1InnerServiceSMOImpl.queryParkingSpaceApplys(parkingSpaceApplyDto);
- if (parkingSpaceApplyDtos != null && parkingSpaceApplyDtos.size() > 0) {
+ if (!ListUtil.isNull(parkingSpaceApplyDtos)) {
ParkingSpaceApplyPo parkingSpaceApplyPo = new ParkingSpaceApplyPo();
parkingSpaceApplyPo.setApplyId(parkingSpaceApplyDtos.get(0).getApplyId());
parkingSpaceApplyPo.setState("3003");
@@ -417,49 +372,5 @@
}
}
- private void dealOwnerCartEndTime(JSONObject paramObj) {
- FeeDto feeDto = new FeeDto();
- feeDto.setFeeId(paramObj.getString("feeId"));
- feeDto.setCommunityId(paramObj.getString("communityId"));
- List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
- if (ListUtil.isNull(feeDtos)) {
- return;
- }
- //涓哄仠杞﹁垂鍗曠嫭澶勭悊
- if (!FeeDto.PAYER_OBJ_TYPE_CAR.equals(feeDtos.get(0).getPayerObjType())) {
- return;
- }
- Date feeEndTime = feeDtos.get(0).getEndTime();
- OwnerCarDto ownerCarDto = new OwnerCarDto();
- ownerCarDto.setCommunityId(paramObj.getString("communityId"));
- ownerCarDto.setCarId(feeDtos.get(0).getPayerObjId());
- List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
-
-
- Calendar endTimeCalendar = null;
- //杞︿綅璐圭敤缁
- if (ListUtil.isNull(ownerCarDtos)) {
- return;
- }
- for (OwnerCarDto tmpOwnerCarDto : ownerCarDtos) {
- //鍚庝粯璐� 鎴栬�呬俊鐢ㄦ湡杞﹁締 鍔犱竴涓湀
- if (FeeConfigDto.PAYMENT_CD_AFTER.equals(feeDtos.get(0).getPaymentCd())
- || OwnerCarDto.CAR_TYPE_CREDIT.equals(tmpOwnerCarDto.getCarType())) {
- endTimeCalendar = Calendar.getInstance();
- endTimeCalendar.setTime(feeEndTime);
- endTimeCalendar.add(Calendar.MONTH, 1);
- feeEndTime = endTimeCalendar.getTime();
- }
- if (tmpOwnerCarDto.getEndTime().getTime() < feeEndTime.getTime()) {
- OwnerCarPo ownerCarPo = new OwnerCarPo();
- ownerCarPo.setMemberId(tmpOwnerCarDto.getMemberId());
- ownerCarPo.setEndTime(DateUtil.getFormatTimeString(feeEndTime, DateUtil.DATE_FORMATE_STRING_A));
- int fage = ownerCarNewV1InnerServiceSMOImpl.updateOwnerCarNew(ownerCarPo);
- if (fage < 1) {
- throw new CmdException("鏇存柊璐圭敤淇℃伅澶辫触");
- }
- }
- }
- }
}
--
Gitblit v1.8.0