wuxw
2022-07-19 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54
java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java
old mode 100644 new mode 100755
@@ -1,8 +1,18 @@
package com.java110.core.smo;
import com.java110.dto.RoomDto;
import com.java110.dto.fee.FeeDto;
import com.java110.dto.machine.CarInoutDetailDto;
import com.java110.dto.machine.CarInoutDto;
import com.java110.dto.owner.OwnerCarDto;
import com.java110.dto.owner.OwnerDto;
import com.java110.dto.report.ReportCarDto;
import com.java110.dto.report.ReportFeeDto;
import com.java110.dto.report.ReportRoomDto;
import com.java110.po.feeReceiptDetail.FeeReceiptDetailPo;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
@@ -23,7 +33,23 @@
    Date getFeeEndTime();
    /**
     * 计算欠费金额
     *
     * @param tmpFeeDto
     */
    public void computeOweFee(FeeDto tmpFeeDto);
    /**
     * 刷新
     *
     * @param feeDto
     * @param feeReceiptDetailPo
     */
    void freshFeeReceiptDetail(FeeDto feeDto, FeeReceiptDetailPo feeReceiptDetailPo);
    /**
     * 根据周期 计算费用状态
     *
     * @param feeDto
     * @param cycles
     * @return
@@ -32,12 +58,30 @@
    /**
     * 查询费用对象名称
     *
     * @param feeDto
     * @return
     */
    public String getFeeObjName(FeeDto feeDto);
    /**
     * 查询费用的业主信息
     *
     * @param feeDto
     * @return
     */
    public OwnerDto getFeeOwnerDto(FeeDto feeDto);
    /**
     * 刷入 付费方名称
     *
     * @param feeDtos
     */
    public void freshFeeObjName(List<FeeDto> feeDtos);
    /**
     * 根据缴费周期计算 结束时间
     *
     * @param feeDto
     * @param cycles 缴费周期
     * @return
@@ -62,6 +106,8 @@
     */
    double getCycle();
    public Map getTargetEndDateAndOweMonth(FeeDto feeDto, OwnerCarDto ownerCarDto);
    /**
     * 获取目标结束时间和欠费月份
     *
@@ -79,7 +125,10 @@
     *
     * @return
     */
    double getFeePrice(FeeDto feeDto);
    public Map getFeePrice(FeeDto feeDto);
    public Map getFeePrice(FeeDto feeDto, RoomDto roomDto);
    /**
     * 时间差 按天折算
@@ -90,4 +139,44 @@
     */
    double dayCompare(Date fromDate, Date toDate);
    /**
        *字符串的日期格式的计算
        */
    long daysBetween(Date smdate,Date bdate) ;
    double getReportFeePrice(ReportFeeDto tmpReportFeeDto, ReportRoomDto reportRoomDto, ReportCarDto reportCarDto);
    void computeEveryOweFee(FeeDto tmpFeeDto);
    void computeEveryOweFee(FeeDto tmpFeeDto, RoomDto roomDto);
    /**
     * 计算停车时间和费用
     *
     * @param carInoutDtos
     */
    List<CarInoutDto> computeTempCarStopTimeAndFee(List<CarInoutDto> carInoutDtos);
    /**
     * 计算停车时间和费用
     *
     * @param carInoutDtos
     */
    List<CarInoutDetailDto> computeTempCarInoutDetailStopTimeAndFee(List<CarInoutDetailDto> carInoutDtos);
    /**
     * 租金处理
     *
     * @param feeDto
     */
    void dealRentRate(FeeDto feeDto);
    /**
     * 租金处理
     *
     * @param feeDto
     */
    void dealRentRateCycle(FeeDto feeDto,double cycle);
}