From cc8e103aed0cdaf681d813f7601a38d2dd134289 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期五, 11 八月 2023 00:22:17 +0800
Subject: [PATCH] 优化费用

---
 java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java |   90 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 88 insertions(+), 2 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java b/java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java
old mode 100644
new mode 100755
index 4c8972e..2c9fd5c
--- a/java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java
+++ b/java110-core/src/main/java/com/java110/core/smo/IComputeFeeSMO.java
@@ -1,9 +1,20 @@
 package com.java110.core.smo;
 
+import com.alibaba.fastjson.JSONObject;
+import com.java110.dto.room.RoomDto;
 import com.java110.dto.fee.FeeDto;
-import com.java110.po.feeReceiptDetail.FeeReceiptDetailPo;
+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.fee.FeeReceiptDetailPo;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -22,6 +33,13 @@
      * @return
      */
     Date getFeeEndTime();
+
+    /**
+     * 鑾峰彇 deadlineTime
+     * @param feeDto
+     * @return
+     */
+    Date getDeadlineTime(FeeDto feeDto);
 
     /**
      * 璁$畻娆犺垂閲戦
@@ -56,6 +74,21 @@
     public String getFeeObjName(FeeDto feeDto);
 
     /**
+     * 鏌ヨ璐圭敤鐨勪笟涓讳俊鎭�
+     *
+     * @param feeDto
+     * @return
+     */
+    public OwnerDto getFeeOwnerDto(FeeDto feeDto);
+
+    /**
+     * 鍒峰叆 浠樿垂鏂瑰悕绉�
+     *
+     * @param feeDtos
+     */
+    public void freshFeeObjName(List<FeeDto> feeDtos);
+
+    /**
      * 鏍规嵁缂磋垂鍛ㄦ湡璁$畻 缁撴潫鏃堕棿
      *
      * @param feeDto
@@ -82,6 +115,8 @@
      */
     double getCycle();
 
+    public Map getTargetEndDateAndOweMonth(FeeDto feeDto, OwnerCarDto ownerCarDto);
+
     /**
      * 鑾峰彇鐩爣缁撴潫鏃堕棿鍜屾瑺璐规湀浠�
      *
@@ -99,7 +134,10 @@
      *
      * @return
      */
-    double getFeePrice(FeeDto feeDto);
+    public Map getFeePrice(FeeDto feeDto);
+
+
+    public Map getFeePrice(FeeDto feeDto, RoomDto roomDto);
 
     /**
      * 鏃堕棿宸� 鎸夊ぉ鎶樼畻
@@ -110,4 +148,52 @@
      */
     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);
+
+
+    /**
+     * 绉熼噾澶勭悊
+     * @param feeDto
+     * @param custEndTime
+     */
+    void dealRentRateCustEndTime(FeeDto feeDto, Date custEndTime);
+
+    long computeOneIntegralQuantity(IntegralRuleConfigDto integralRuleConfigDto, JSONObject reqJson);
 }

--
Gitblit v1.8.0