java110
2023-07-11 212aa4ae1f54fe4d3e51b9695224f9f86cd1bd22
java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java
@@ -1,14 +1,17 @@
package com.java110.core.smo;
import com.java110.dto.RoomDto;
import com.alibaba.fastjson.JSONObject;
import com.java110.dto.room.RoomDto;
import com.java110.dto.fee.FeeDto;
import com.java110.dto.integral.IntegralRuleConfigDto;
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 com.java110.po.fee.FeeReceiptDetailPo;
import java.util.Date;
import java.util.List;
@@ -30,6 +33,13 @@
     * @return
     */
    Date getFeeEndTime();
    /**
     * 获取 deadlineTime
     * @param feeDto
     * @return
     */
    Date getDeadlineTime(FeeDto feeDto);
    /**
     * 计算欠费金额
@@ -138,6 +148,11 @@
     */
    double dayCompare(Date fromDate, Date toDate);
    /**
        *字符串的日期格式的计算
        */
    long daysBetween(Date smdate,Date bdate) ;
    double getReportFeePrice(ReportFeeDto tmpReportFeeDto, ReportRoomDto reportRoomDto, ReportCarDto reportCarDto);
    void computeEveryOweFee(FeeDto tmpFeeDto);
@@ -150,4 +165,35 @@
     * @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);
    /**
     * 租金处理
     * @param feeDto
     * @param custEndTime
     */
    void dealRentRateCustEndTime(FeeDto feeDto, Date custEndTime);
    long computeOneIntegralQuantity(IntegralRuleConfigDto integralRuleConfigDto, JSONObject reqJson);
}