java110
2022-06-01 e52ddfe8caf7d0027950033a5aff2a1fd3482e9d
service-report/src/main/java/com/java110/report/smo/impl/GeneratorFeeYearStatisticsInnerServiceSMOImpl.java
old mode 100644 new mode 100755
@@ -23,7 +23,7 @@
import com.java110.utils.cache.CommonCache;
import com.java110.utils.util.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.java110.core.log.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.web.bind.annotation.RequestBody;
@@ -173,7 +173,7 @@
        reportFeeDto.setPayerObjId(tmpReportCarDto.getCarId());
        reportFeeDto.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_CAR);
        //reportFeeDto.setState(FeeDto.STATE_DOING);
        reportFeeDto.setFeeFlag(FeeDto.FEE_FLAG_CYCLE);
        //reportFeeDto.setFeeFlag(FeeDto.FEE_FLAG_CYCLE);
        List<ReportFeeDto> feeDtos = reportFeeServiceDaoImpl.getFees(reportFeeDto);
        if (feeDtos == null || feeDtos.size() < 1) {
@@ -195,7 +195,7 @@
        reportFeeYearCollectionDto.setCommunityId(tmpReportCarDto.getCommunityId());
        reportFeeYearCollectionDto.setConfigId(tmpReportFeeDto.getConfigId());
        reportFeeYearCollectionDto.setObjId(tmpReportFeeDto.getPayerObjId());
        reportFeeYearCollectionDto.setFeeId(tmpReportFeeDto.getFeeId());
        //reportFeeYearCollectionDto.setFeeId(tmpReportFeeDto.getFeeId());
        reportFeeYearCollectionDto.setObjType(tmpReportFeeDto.getPayerObjType());
        List<ReportFeeYearCollectionDto> statistics = BeanConvertUtil.covertBeanList(
                reportFeeYearCollectionServiceDaoImpl.getReportFeeYearCollectionInfo(BeanConvertUtil.beanCovertMap(reportFeeYearCollectionDto)),
@@ -230,7 +230,7 @@
        Calendar configEndTime = Calendar.getInstance();
        configStartTime.setTime(tmpReportFeeDto.getConfigEndTime());
        int endYear = configEndTime.get(Calendar.YEAR);
        int curYear = Calendar.getInstance().get(Calendar.YEAR);
        int curYear = Calendar.getInstance().get(Calendar.YEAR) + 1;
        double feePrice = computeFeeSMOImpl.getReportFeePrice(tmpReportFeeDto, null, tmpReportCarDto);
        tmpReportFeeDto.setFeePrice(feePrice);
@@ -255,7 +255,8 @@
        reportFeeDto.setPayerObjId(reportRoomDto.getRoomId());
        reportFeeDto.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_ROOM);
        //reportFeeDto.setState(FeeDto.STATE_DOING);
        reportFeeDto.setFeeFlag(FeeDto.FEE_FLAG_CYCLE);
        //reportFeeDto.setFeeFlag(FeeDto.FEE_FLAG_CYCLE);
        List<ReportFeeDto> feeDtos = reportFeeServiceDaoImpl.getFees(reportFeeDto);
        if (feeDtos == null || feeDtos.size() < 1) {
@@ -280,7 +281,7 @@
        reportFeeYearCollectionDto.setCommunityId(reportRoomDto.getCommunityId());
        reportFeeYearCollectionDto.setConfigId(tmpReportFeeDto.getConfigId());
        reportFeeYearCollectionDto.setObjId(tmpReportFeeDto.getPayerObjId());
        reportFeeYearCollectionDto.setFeeId(tmpReportFeeDto.getFeeId());
        //reportFeeYearCollectionDto.setFeeId(tmpReportFeeDto.getFeeId());
        reportFeeYearCollectionDto.setObjType(tmpReportFeeDto.getPayerObjType());
        List<ReportFeeYearCollectionDto> statistics = BeanConvertUtil.covertBeanList(
                reportFeeYearCollectionServiceDaoImpl.getReportFeeYearCollectionInfo(BeanConvertUtil.beanCovertMap(reportFeeYearCollectionDto)),
@@ -297,9 +298,9 @@
            reportFeeYearCollectionPo.setObjType(FeeDto.PAYER_OBJ_TYPE_ROOM);
            reportFeeYearCollectionPo.setFeeName(StringUtil.isEmpty(tmpReportFeeDto.getImportFeeName()) ? tmpReportFeeDto.getFeeName() : tmpReportFeeDto.getImportFeeName());
            if (RoomDto.ROOM_TYPE_ROOM.equals(reportRoomDto.getRoomType())) {
                reportFeeYearCollectionPo.setObjName(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getUnitNum() + "-" + reportRoomDto.getRoomNum() );
                reportFeeYearCollectionPo.setObjName(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getUnitNum() + "-" + reportRoomDto.getRoomNum());
            } else {
                reportFeeYearCollectionPo.setObjName(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getRoomNum() );
                reportFeeYearCollectionPo.setObjName(reportRoomDto.getFloorNum() + "-" + reportRoomDto.getRoomNum());
            }
            reportFeeYearCollectionPo.setOwnerId(reportRoomDto.getOwnerId());
            reportFeeYearCollectionPo.setOwnerName(reportRoomDto.getOwnerName());
@@ -321,7 +322,7 @@
        int endYear = configEndTime.get(Calendar.YEAR);
        //当前年
        int curYear = Calendar.getInstance().get(Calendar.YEAR);
        int curYear = Calendar.getInstance().get(Calendar.YEAR) + 1;
        double feePrice = computeFeeSMOImpl.getReportFeePrice(tmpReportFeeDto, reportRoomDto, null);
        tmpReportFeeDto.setFeePrice(feePrice);
@@ -398,6 +399,14 @@
        int curYear = Calendar.getInstance().get(Calendar.YEAR);
        double cycleMonth = 12;
        if (FeeDto.FEE_FLAG_ONCE.equals(tmpReportFeeDto.getFeeFlag()) && FeeDto.STATE_DOING.equals(tmpReportFeeDto.getState())) { // 一次性费用 费用没有结束
            return StringUtil.isEmpty(tmpReportFeeDto.getAmount()) ? 0 : Double.parseDouble(tmpReportFeeDto.getAmount());
        }
        if (FeeDto.FEE_FLAG_ONCE.equals(tmpReportFeeDto.getFeeFlag())) { // 一次性费用没有应收 所以写成0
            return 0;
        }
        if (endYear == curYear) {
            try {
                cycleMonth = computeFeeSMOImpl.dayCompare(DateUtil.getDateFromString(curYear + "-01-01", DateUtil.DATE_FORMATE_STRING_B), tmpReportFeeDto.getConfigEndTime());
@@ -419,12 +428,13 @@
     */
    private double getReceivedAmount(ReportFeeDto tmpReportFeeDto, int year) {
        ReportFeeDetailDto feeDetailDto = new ReportFeeDetailDto();
        feeDetailDto.setFeeId(tmpReportFeeDto.getFeeId());
        feeDetailDto.setConfigId(tmpReportFeeDto.getConfigId());
        feeDetailDto.setPayerObjId(tmpReportFeeDto.getPayerObjId());
        String flag = CommonCache.getValue(RECEIVED_TIME);
        if (RECEIVED_TIME_START.equals(flag)) {
            feeDetailDto.setStartTime(year + "");
            feeDetailDto.setCurStartYear(year + "");
        } else {
            feeDetailDto.setEndTime(year + "");
            feeDetailDto.setCurEndYear(year + "");
        }
        double receivedAmount = reportFeeServiceDaoImpl.getFeeReceivedAmount(feeDetailDto);