java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml
@@ -1190,10 +1190,11 @@ <select id="getMonthReceivedDetailCount" parameterType="Map" resultType="Map"> select count(1) count from pay_fee_detail_month t inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333' left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' left join building_room br on t.obj_id = br.room_id and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' where 1=1 and t.status_cd = '0' and t.cur_month_time >= #{startDate} @@ -1219,14 +1220,15 @@ <!-- 月实收 查询--> <select id="getMonthReceivedDetailInfo" parameterType="Map" resultType="Map"> select t.obj_name objName,t.owner_name ownerName,t.link,t.fee_name feeName, pfd.start_time startTime,pfd.end_time endTime, select concat(f.floor_num,'-',bu.unit_num,'-',br.room_num) objName,t.owner_name ownerName,t.link,t.fee_name feeName, pfd.start_time startTime,pfd.end_time endTime, pfd.pay_order_id payOrderId,pfd.cashier_name cashierName, t.receivable_amount receivableAmount,t.received_amount receivedAmount,pfd.create_time createTime from pay_fee_detail_month t inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333' left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' left join building_room br on t.obj_id = br.room_id and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' where 1=1 and t.status_cd = '0' and t.cur_month_time >= #{startDate} @@ -1257,10 +1259,11 @@ <select id="getMonthReceivedDetailAmount" parameterType="Map" resultType="Map"> select ifnull(sum(t.received_amount),0.0) amount from pay_fee_detail_month t inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333' left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' left join building_room br on t.obj_id = br.room_id and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' where 1=1 and t.status_cd = '0' and t.cur_month_time >= #{startDate} @@ -1288,9 +1291,11 @@ <select id="getMonthOweDetailCount" parameterType="Map" resultType="Map"> select count(1) count from pay_fee_detail_month t inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333' left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' left join building_room br on t.obj_id = br.room_id and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' where 1=1 and t.status_cd = '0' and t.cur_month_time >= #{startDate} @@ -1317,12 +1322,14 @@ <!-- 月实收 查询--> <select id="getMonthOweDetailInfo" parameterType="Map" resultType="Map"> select t.obj_name objName,t.owner_name ownerName,t.link,t.fee_name feeName, pf.end_time startTime,t.deadline_time endTime, select concat(f.floor_num,'-',bu.unit_num,'-',br.room_num) objName,t.owner_name ownerName,t.link,t.fee_name feeName, pf.end_time startTime,t.deadline_time endTime, t.receivable_amount receivableAmount,t.received_amount receivedAmount from pay_fee_detail_month t inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333' left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' left join building_room br on t.obj_id = br.room_id and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' where 1=1 and t.status_cd = '0' and t.cur_month_time >= #{startDate} @@ -1354,9 +1361,11 @@ <select id="getMonthOweDetailAmount" parameterType="Map" resultType="Map"> select ifnull(sum(t.receivable_amount),0.0) amount from pay_fee_detail_month t inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0' and pf.payer_obj_type = '3333' left join pay_fee_detail pfd on t.detail_id = pfd.detail_id and pfd.status_cd = '0' left join building_room br on t.obj_id = br.room_id and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' where 1=1 and t.status_cd = '0' and t.cur_month_time >= #{startDate} service-api/src/main/java/com/java110/api/smo/assetImport/impl/ImportCustomCreateFeeSMOImpl.java
@@ -268,7 +268,7 @@ } successCount++; payFeePo = new PayFeePo(); payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId)); payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId,true)); payFeePo.setEndTime(importRoomFee.getStartTime()); payFeePo.setState(FeeDto.STATE_DOING); payFeePo.setCommunityId(importRoomFee.getCommunityId()); @@ -294,9 +294,17 @@ FeeAttrPo feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_IMPORT_FEE_NAME); feeAttrPo.setValue(feeConfigDtos.get(0).getFeeName()); feeAttrPo.setFeeId(payFeePo.getFeeId()); feeAttrPos.add(feeAttrPo); feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_PAY_OBJECT_NAME); feeAttrPo.setValue(importRoomFee.getObjName()); feeAttrPo.setFeeId(payFeePo.getFeeId()); feeAttrPos.add(feeAttrPo); @@ -304,7 +312,7 @@ if (!StringUtil.isEmpty(importRoomFee.getOwnerId())) { feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_ID); feeAttrPo.setValue(importRoomFee.getOwnerId()); feeAttrPo.setFeeId(payFeePo.getFeeId()); @@ -312,7 +320,7 @@ feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_NAME); feeAttrPo.setValue(importRoomFee.getOwnerName()); feeAttrPo.setFeeId(payFeePo.getFeeId()); @@ -320,7 +328,7 @@ feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_LINK); feeAttrPo.setValue(importRoomFee.getOwnerLink()); feeAttrPo.setFeeId(payFeePo.getFeeId()); service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeePreCmd.java
@@ -32,6 +32,7 @@ import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; import com.java110.utils.util.DateUtil; import com.java110.utils.util.StringUtil; import org.slf4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; @@ -280,8 +281,44 @@ reqJson.put("deductionAmount", 0.0); return 0.0; } BigDecimal money = new BigDecimal(0); BigDecimal totalAccountAmount = new BigDecimal(0); for (AccountDto tmpAccountDto : accountDtos) { if (AccountDto.ACCT_TYPE_CASH.equals(tmpAccountDto.getAcctType())) { //现金账户 //账户金额 BigDecimal amount = new BigDecimal(tmpAccountDto.getAmount()); //获取应收金额 BigDecimal dedAmount = new BigDecimal("0.00"); if (reqJson.containsKey("receivedMoney") && !StringUtil.isEmpty(reqJson.getString("receivedMoney"))) { dedAmount = new BigDecimal(reqJson.getString("receivedMoney")); } else { dedAmount = new BigDecimal(reqJson.getString("deductionAmount")); } int flag = amount.compareTo(dedAmount); BigDecimal redepositAmount = new BigDecimal("0.00"); BigDecimal integralAmount = new BigDecimal("0.00"); if (flag == 1) { //现金账户大于应收金额,就用应收金额抵扣 redepositAmount = dedAmount; integralAmount = amount.subtract(dedAmount); } if (flag > -1) { //现金账户大于等于应收金额,就用应收金额抵扣 redepositAmount = dedAmount; integralAmount = amount.subtract(dedAmount); } if (flag == -1) { //现金账户小于实收金额,就用现金账户抵扣 redepositAmount = amount; } if (flag < 1) { //现金账户小于等于应收金额,就用现金账户抵扣 redepositAmount = amount; } if (flag == 0) { //现金账户等于应收金额 redepositAmount = amount; } money = money.add(redepositAmount); } // totalAccountAmount = totalAccountAmount.add(new BigDecimal(tmpAccountDto.getAmount())); } reqJson.put("deductionAmount", money.doubleValue()); reqJson.put("selectUserAccount", BeanConvertUtil.beanCovertJSONArray(accountDtos)); springboot/src/main/java/com/java110/boot/smo/assetImport/impl/ImportCustomCreateFeeSMOImpl.java
@@ -274,7 +274,7 @@ } successCount++; payFeePo = new PayFeePo(); payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId)); payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId,true)); payFeePo.setEndTime(importRoomFee.getStartTime()); payFeePo.setState(FeeDto.STATE_DOING); payFeePo.setCommunityId(importRoomFee.getCommunityId()); @@ -300,17 +300,24 @@ FeeAttrPo feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_IMPORT_FEE_NAME); feeAttrPo.setValue(feeConfigDtos.get(0).getFeeName()); feeAttrPo.setFeeId(payFeePo.getFeeId()); feeAttrPos.add(feeAttrPo); feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_PAY_OBJECT_NAME); feeAttrPo.setValue(importRoomFee.getObjName()); feeAttrPo.setFeeId(payFeePo.getFeeId()); feeAttrPos.add(feeAttrPo); if (!StringUtil.isEmpty(importRoomFee.getOwnerId())) { feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_ID); feeAttrPo.setValue(importRoomFee.getOwnerId()); feeAttrPo.setFeeId(payFeePo.getFeeId()); @@ -318,7 +325,7 @@ feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_NAME); feeAttrPo.setValue(importRoomFee.getOwnerName()); feeAttrPo.setFeeId(payFeePo.getFeeId()); @@ -326,7 +333,7 @@ feeAttrPo = new FeeAttrPo(); feeAttrPo.setCommunityId(importRoomFee.getCommunityId()); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId)); feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId,true)); feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_LINK); feeAttrPo.setValue(importRoomFee.getOwnerLink()); feeAttrPo.setFeeId(payFeePo.getFeeId());