Commit 1df770f4 authored by 周健威's avatar 周健威

Merge remote-tracking branch 'origin/feature-24hour' into feature-24hour

parents 983f5ed1 7d9d3890
...@@ -121,7 +121,7 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -121,7 +121,7 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
@Autowired @Autowired
OrderCalculateBiz orderCalculateBiz; OrderCalculateBiz orderCalculateBiz;
public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd"); public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
public List<OrderPageVO> pageByParm(Map<String, Object> paramMap) { public List<OrderPageVO> pageByParm(Map<String, Object> paramMap) {
...@@ -226,34 +226,35 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -226,34 +226,35 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
//获取两个日期之间的天数(包含头尾) //获取两个日期之间的天数(包含头尾)
public int getDaysBetweenDateTimeHasStartEnd(DateTime startDay, DateTime endDay) { public int getDaysBetweenDateTimeHasStartEnd(DateTime startDay, DateTime endDay) {
int a = 0; int a = 0;
for (DateTime curDate = startDay; curDate.compareTo(endDay) <= 0; curDate = curDate.plusDays(1)) { for (DateTime curDate = startDay; curDate.compareTo(endDay) <= 0; curDate = curDate.plusHours(1)) {
a++; a++;
} }
return a; return a;
} }
public static void main(String[] args) { // public static void main(String[] args) {
DateTime dateTime = DateTime.parse("2019-09-20", DEFAULT_DATE_TIME_FORMATTER); // DateTime dateTime = DateTime.parse("2019-09-20 12:00:00", DEFAULT_DATE_TIME_FORMATTER);
DateTime dateTime1 = DateTime.parse("2019-09-22", DEFAULT_DATE_TIME_FORMATTER); // DateTime dateTime1 = DateTime.parse("2019-09-22 12:00:00", DEFAULT_DATE_TIME_FORMATTER);
BaseOrderBiz baseOrderBiz = new BaseOrderBiz(); // BaseOrderBiz baseOrderBiz = new BaseOrderBiz();
int a = baseOrderBiz.getDaysBetweenDateTimeHasStartEnd(dateTime,dateTime1) -1 ; // OrderCalculateBiz orderCalculateBiz = new OrderCalculateBiz();
System.out.println(a); // int a = orderCalculateBiz.getIncludeDays(1572246524350l,1572332924000l);
} // System.out.println(a);
// }
public void updateCrossRefund(OrderPageVO orderPageVO) { public void updateCrossRefund(OrderPageVO orderPageVO) {
//计算延期费用 //计算延期费用
DedDetailDTO dedDetailDTO = new DedDetailDTO(); DedDetailDTO dedDetailDTO = new DedDetailDTO();
//提前还车,结束时间大于当前时间 //提前还车,结束时间大于当前时间
DateTime nowTime = DateTime.parse(DateTime.now().toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER); Long nowTime = System.currentTimeMillis();
DateTime endTime = DateTime.parse(new DateTime(orderPageVO.getOrderRentVehicleDetail().getEndTime()).toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER); Long endTime = orderPageVO.getOrderRentVehicleDetail().getEndTime();
DateTime startTime = DateTime.parse(new DateTime(orderPageVO.getOrderRentVehicleDetail().getStartTime()).toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER); Long startTime = orderPageVO.getOrderRentVehicleDetail().getStartTime();
//设置使用天数 //设置使用天数
int userUsedDay = getDaysBetweenDateTimeHasStartEnd(startTime, nowTime); int userUsedDay = orderCalculateBiz.getIncludeDays(startTime, nowTime);
orderPageVO.getOrderRentVehicleDetail().setUsedDay(userUsedDay); orderPageVO.getOrderRentVehicleDetail().setUsedDay(userUsedDay);
orderRentVehicleBiz.updateSelectiveById(orderPageVO.getOrderRentVehicleDetail()); orderRentVehicleBiz.updateSelectiveById(orderPageVO.getOrderRentVehicleDetail());
//实际预定的天数 //实际预定的天数
int actualDay = getDaysBetweenDateTimeHasStartEnd(startTime, endTime); int actualDay = orderCalculateBiz.getIncludeDays(startTime, endTime);
Integer orderId = orderPageVO.getId(); Integer orderId = orderPageVO.getId();
List<OrderItem> items = orderItemBiz.selectList(new OrderItem() {{ List<OrderItem> items = orderItemBiz.selectList(new OrderItem() {{
setOrderId(orderId); setOrderId(orderId);
...@@ -272,10 +273,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -272,10 +273,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
/** /**
* 提前还车 * 提前还车
*/ */
if (getDaysBetweenDateTimeHasStartEnd(endTime, nowTime) < 1) { if (orderCalculateBiz.getIncludeDays(endTime, nowTime) < 1) {
StringBuilder stringBuilder = new StringBuilder(); StringBuilder stringBuilder = new StringBuilder();
//提前的天数, 当天就算使用一天 //提前的天数, 当天就算使用一天
int noUsedDay = getDaysBetweenDateTimeHasStartEnd(nowTime, endTime) - 1; int noUsedDay = orderCalculateBiz.getIncludeDays(nowTime, endTime);
//退还未使用的天数,或者金额,扣除违约金,实际未使用天数的金额,最多3000元 //退还未使用的天数,或者金额,扣除违约金,实际未使用天数的金额,最多3000元
// InProgressVO inProgressVO = new InProgressVO(); // InProgressVO inProgressVO = new InProgressVO();
// inProgressVO.setViolateAmount(new BigDecimal(200)); // inProgressVO.setViolateAmount(new BigDecimal(200));
...@@ -297,11 +298,11 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -297,11 +298,11 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
/** /**
* 延期还车 * 延期还车
*/ */
} else if (getDaysBetweenDateTimeHasStartEnd(endTime, nowTime) > 1) { } else if (orderCalculateBiz.getIncludeDays(endTime, nowTime) > 1) {
StringBuilder stringBuilder = new StringBuilder(); StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("违约金( ¥"); stringBuilder.append("违约金( ¥");
//延期的天数, 延期违约金是延期天数*200% //延期的天数, 延期违约金是延期天数*200%
int extraUsedDay = getDaysBetweenDateTimeHasStartEnd(endTime, nowTime) - 1; int extraUsedDay = orderCalculateBiz.getIncludeDays(endTime, nowTime);
if(extraUsedDay > 0) { if(extraUsedDay > 0) {
stringBuilder.append(amount); stringBuilder.append(amount);
stringBuilder.append(" x "); stringBuilder.append(" x ");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment