Commit 13151cd2 authored by hanfeng's avatar hanfeng

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform into base-modify

parents f41b9e05 65d4b822
......@@ -36,6 +36,8 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.map.HashedMap;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -83,7 +85,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
public OrderVehicleCrosstown get(Integer id) {
return selectById(id);
}
public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd");
public List<OrderVehicleCrosstownDto> selectByOrderId(OrderVehicleCrosstownDto orderVehicleCrosstownDto) {
List<OrderVehicleCrosstownDto> list = mapper.selectByOrderId(orderVehicleCrosstownDto);
......@@ -157,7 +159,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
@Transactional(rollbackFor = Exception.class)
public ObjectRestResponse<OrderVehicleCrosstownDto> add(OrderVehicleCrosstownDto orderVehicleCrosstownDto) {
log.info("添加的参数:orderVehicaleCrosstown = {}", orderVehicleCrosstownDto);
log.info("交还车参数:orderVehicaleCrosstown = {}", orderVehicleCrosstownDto);
UserDTO userDTO = userInfoBiz.getAdminUserInfo();
if (userDTO == null) {
return ObjectRestResponse.createFailedResult(ResultCode.RSTOKEN_EXPIRED_CODE, "token is null or invalid");
......@@ -307,14 +309,14 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
baseOrder = baseOrderBiz.updateSelectiveByIdReT(baseOrder);
} else if (baseOrder.getStatus() == OrderStatusEnum.ORDER_WAIT.getCode()) { //还车
//提前还车,结束时间大于当前时间
DateTime nowTime = DateTime.now();
DateTime endTime = new DateTime(orderRentVehicleDetail.getEndTime());
DateTime startTime = new DateTime(orderRentVehicleDetail.getStartTime());
DateTime nowTime = DateTime.parse(DateTime.now().toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER);
DateTime endTime = DateTime.parse(new DateTime(orderRentVehicleDetail.getEndTime()).toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER);
DateTime startTime = DateTime.parse(new DateTime(orderRentVehicleDetail.getStartTime()).toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER);
//实际预定的天数
int actualDay = getDaysBetweenDateTime(startTime, endTime);
if (orderRentVehicleDetail.getEndTime() > nowTime.getMillis()) {
//提前的天数
int noUsedDay = getDaysBetweenDateTime(nowTime, endTime);
//提前的天数, 当天就算使用一天
int noUsedDay = getDaysBetweenDateTime(nowTime, endTime) - 1;
//退还未使用的天数,或者金额,扣除违约金,实际未使用天数的金额,最多3000元
InProgressVO inProgressVO = orderCalculateBiz.inProgressCalculate(baseOrder, actualDay - noUsedDay);
if (inProgressVO != null) {
......@@ -328,7 +330,7 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
}
BigDecimal cost = new BigDecimal(0);
cost.add(inProgressVO.getExtraAmount()).add(inProgressVO.getViolateAmount());
updateCrossRefund(orderVehicleCrosstown, cost, OrderViolateEnum.AFTER.getCode());
updateCrossRefund(orderVehicleCrosstown, cost, OrderViolateEnum.BEFORE.getCode());
//延期还车,结束时间小于当前时间
} else if (orderRentVehicleDetail.getEndTime() < nowTime.getMillis()) {
//延期的天数, 延期违约金是延期天数*200%
......
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