| | |
| | | |
| | | ReportCarDto reportCarDto = new ReportCarDto(); |
| | | reportCarDto.setCommunityId(reportFeeMonthStatisticsPo.getCommunityId()); |
| | | reportCarDto.setLeaseTypes(new String[]{OwnerCarDto.LEASE_TYPE_MONTH,OwnerCarDto.LEASE_TYPE_INNER,OwnerCarDto.LEASE_TYPE_SALE,OwnerCarDto.LEASE_TYPE_NO_MONEY}); |
| | | int count = reportCommunityServiceDaoImpl.getCarCount(reportCarDto); |
| | | |
| | | |
| | |
| | | Integer.parseInt(tmpReportFeeDto.getDecimalPlace())) + ""); |
| | | reportFeeMonthStatisticsServiceDaoImpl.updateReportFeeMonthStatisticsInfo(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsPo)); |
| | | } else { |
| | | |
| | | reportFeeMonthStatisticsPo.setOweAmount(oweAmount + ""); |
| | | reportFeeMonthStatisticsPo.setReceivedAmount("0"); |
| | | reportFeeMonthStatisticsPo.setReceivableAmount("0"); |
| | | reportFeeMonthStatisticsPo.setStatisticsId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_statisticsId)); |
| | | reportFeeMonthStatisticsPo.setCommunityId(tmpReportFeeDto.getCommunityId()); |
| | | reportFeeMonthStatisticsPo.setConfigId(tmpReportFeeDto.getConfigId()); |
| | | reportFeeMonthStatisticsPo.setFeeCreateTime(DateUtil.getFormatTimeString(tmpReportFeeDto.getEndTime(), DateUtil.DATE_FORMATE_STRING_A)); |
| | | reportFeeMonthStatisticsPo.setFeeId(tmpReportFeeDto.getFeeId()); |
| | | reportFeeMonthStatisticsPo.setFeeMonth(DateUtil.getMonth() + ""); |
| | | reportFeeMonthStatisticsPo.setFeeYear(DateUtil.getYear() + ""); |
| | | reportFeeMonthStatisticsPo.setCurMaxTime(DateUtil.getNextMonthFirstDay(DateUtil.DATE_FORMATE_STRING_A)); |
| | | reportFeeMonthStatisticsPo.setObjId(reportRoomDto.getRoomId()); |
| | | reportFeeMonthStatisticsPo.setObjType(FeeDto.PAYER_OBJ_TYPE_ROOM); |
| | | reportFeeMonthStatisticsPo.setFeeName(StringUtil.isEmpty(tmpReportFeeDto.getImportFeeName()) ? tmpReportFeeDto.getFeeName() : tmpReportFeeDto.getImportFeeName()); |
| | | if (RoomDto.ROOM_TYPE_ROOM.equals(reportRoomDto.getRoomType())) { |
| | | reportFeeMonthStatisticsPo.setObjName(reportRoomDto.getFloorNum() + "栋" + reportRoomDto.getUnitNum() + "单元" + reportRoomDto.getRoomNum() + "室"); |
| | | reportFeeMonthStatisticsPo.setObjNameNum(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getUnitNum() + "-" + reportRoomDto.getRoomNum()); |
| | | } else { |
| | | reportFeeMonthStatisticsPo.setObjName(reportRoomDto.getFloorNum() + "栋" + reportRoomDto.getRoomNum() + "室"); |
| | | reportFeeMonthStatisticsPo.setObjNameNum(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getRoomNum()); |
| | | } |
| | | //计算历史欠费 |
| | | reportFeeMonthStatisticsPo.setHisOweAmount(getHisOweAmount(tmpReportFeeDto) + ""); |
| | | reportFeeMonthStatisticsPo.setCurReceivableAmount(getCurFeeReceivableAmount(tmpReportFeeDto) + ""); |
| | | reportFeeMonthStatisticsPo.setCurReceivedAmount(getReceivedAmount(tmpReportFeeDto, 1) + ""); |
| | | reportFeeMonthStatisticsPo.setHisOweReceivedAmount(getReceivedAmount(tmpReportFeeDto, 2) + ""); |
| | | reportFeeMonthStatisticsPo.setPreReceivedAmount(getReceivedAmount(tmpReportFeeDto, 3) + ""); |
| | | reportFeeMonthStatisticsPo.setUpdateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A)); |
| | | //如果是 水费 电费 煤气费 |
| | | if (!FeeConfigDto.FEE_TYPE_CD_METER.equals(tmpReportFeeDto.getFeeTypeCd()) |
| | | && !FeeConfigDto.FEE_TYPE_CD_WATER.equals(tmpReportFeeDto.getFeeTypeCd()) |
| | | && !FeeConfigDto.FEE_TYPE_CD_GAS.equals(tmpReportFeeDto.getFeeTypeCd()) |
| | | ) { |
| | | reportFeeMonthStatisticsPo.setOweAmount(oweAmount + ""); |
| | | reportFeeMonthStatisticsPo.setReceivedAmount("0"); |
| | | reportFeeMonthStatisticsPo.setReceivableAmount("0"); |
| | | reportFeeMonthStatisticsPo.setStatisticsId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_statisticsId)); |
| | | reportFeeMonthStatisticsPo.setCommunityId(tmpReportFeeDto.getCommunityId()); |
| | | reportFeeMonthStatisticsPo.setConfigId(tmpReportFeeDto.getConfigId()); |
| | | reportFeeMonthStatisticsPo.setFeeCreateTime(DateUtil.getFormatTimeString(tmpReportFeeDto.getEndTime(), DateUtil.DATE_FORMATE_STRING_A)); |
| | | reportFeeMonthStatisticsPo.setFeeId(tmpReportFeeDto.getFeeId()); |
| | | reportFeeMonthStatisticsPo.setFeeMonth(DateUtil.getMonth() + ""); |
| | | reportFeeMonthStatisticsPo.setFeeYear(DateUtil.getYear() + ""); |
| | | reportFeeMonthStatisticsPo.setCurMaxTime(DateUtil.getNextMonthFirstDay(DateUtil.DATE_FORMATE_STRING_A)); |
| | | reportFeeMonthStatisticsPo.setObjId(reportRoomDto.getRoomId()); |
| | | reportFeeMonthStatisticsPo.setObjType(FeeDto.PAYER_OBJ_TYPE_ROOM); |
| | | reportFeeMonthStatisticsPo.setFeeName(StringUtil.isEmpty(tmpReportFeeDto.getImportFeeName()) ? tmpReportFeeDto.getFeeName() : tmpReportFeeDto.getImportFeeName()); |
| | | if (RoomDto.ROOM_TYPE_ROOM.equals(reportRoomDto.getRoomType())) { |
| | | reportFeeMonthStatisticsPo.setObjName(reportRoomDto.getFloorNum() + "栋" + reportRoomDto.getUnitNum() + "单元" + reportRoomDto.getRoomNum() + "室"); |
| | | reportFeeMonthStatisticsPo.setObjNameNum(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getUnitNum() + "-" + reportRoomDto.getRoomNum()); |
| | | } else { |
| | | reportFeeMonthStatisticsPo.setObjName(reportRoomDto.getFloorNum() + "栋" + reportRoomDto.getRoomNum() + "室"); |
| | | reportFeeMonthStatisticsPo.setObjNameNum(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getRoomNum()); |
| | | } |
| | | //计算历史欠费 |
| | | reportFeeMonthStatisticsPo.setHisOweAmount(getHisOweAmount(tmpReportFeeDto) + ""); |
| | | reportFeeMonthStatisticsPo.setCurReceivableAmount(getCurFeeReceivableAmount(tmpReportFeeDto) + ""); |
| | | reportFeeMonthStatisticsPo.setCurReceivedAmount(getReceivedAmount(tmpReportFeeDto, 1) + ""); |
| | | reportFeeMonthStatisticsPo.setHisOweReceivedAmount(getReceivedAmount(tmpReportFeeDto, 2) + ""); |
| | | reportFeeMonthStatisticsPo.setPreReceivedAmount(getReceivedAmount(tmpReportFeeDto, 3) + ""); |
| | | reportFeeMonthStatisticsPo.setUpdateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A)); |
| | | reportFeeMonthStatisticsServiceDaoImpl.saveReportFeeMonthStatisticsInfo(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsPo)); |
| | | } else { |
| | | //处理水电费,水电费根据开始时间要在相应月补充数据 |
| | |
| | | reportFeeMonthStatisticsDto.setCommunityId(tmpReportFeeDto.getCommunityId()); |
| | | reportFeeMonthStatisticsDto.setConfigId(tmpReportFeeDto.getConfigId()); |
| | | reportFeeMonthStatisticsDto.setObjId(tmpReportFeeDto.getPayerObjId()); |
| | | //reportFeeMonthStatisticsDto.setFeeId(tmpReportFeeDto.getFeeId()); |
| | | reportFeeMonthStatisticsDto.setFeeId(tmpReportFeeDto.getFeeId()); |
| | | reportFeeMonthStatisticsDto.setObjType(tmpReportFeeDto.getPayerObjType()); |
| | | reportFeeMonthStatisticsDto.setFeeYear(curYear); |
| | | reportFeeMonthStatisticsDto.setFeeMonth(curMonth); |
| | |
| | | Date curDate = DateUtil.getFirstDate();//11月1日 |
| | | //说明没有历史欠费 |
| | | if (curDate.getTime() < tmpReportFeeDto.getEndTime().getTime()) { |
| | | return 0.0; |
| | | } |
| | | if(FeeDto.STATE_FINISH.equals(tmpReportFeeDto.getState())){ |
| | | return 0.0; |
| | | } |
| | | |
| | |
| | | if (FeeDto.FEE_FLAG_ONCE.equals(tmpReportFeeDto.getFeeFlag())) { |
| | | return computeOnceFee(tmpReportFeeDto); |
| | | } |
| | | OwnerCarDto ownerCarDto = new OwnerCarDto(); |
| | | ownerCarDto.setCommunityId(tmpReportFeeDto.getCommunityId()); |
| | | ownerCarDto.setCarId(tmpReportFeeDto.getCarId()); |
| | | List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto); |
| | | if (ownerCarDtos == null || ownerCarDtos.size() < 1) { |
| | | // OwnerCarDto ownerCarDto = new OwnerCarDto(); |
| | | // ownerCarDto.setCommunityId(tmpReportFeeDto.getCommunityId()); |
| | | // ownerCarDto.setCarId(tmpReportFeeDto.getCarId()); |
| | | // List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto); |
| | | // if (ownerCarDtos == null || ownerCarDtos.size() < 1) { |
| | | // return 0.0; |
| | | // } |
| | | Date endTime = reportCarDto.getEndTime(); |
| | | |
| | | if(endTime == null){ |
| | | return 0.0; |
| | | } |
| | | Date endTime = ownerCarDtos.get(0).getEndTime(); |
| | | |
| | | Date maxEndDate = tmpReportFeeDto.getDeadlineTime(); |
| | | if (FeeDto.FEE_FLAG_CYCLE.equals(tmpReportFeeDto.getFeeFlag())) { |