Merge remote-tracking branch 'origin/main'

This commit is contained in:
dzl 2025-04-28 17:49:38 +08:00
commit 1b5086afc4
3 changed files with 46 additions and 20 deletions

View File

@ -38,7 +38,7 @@ public class EbikeUser implements Serializable {
/** /**
* OPENID * OPENID
*/ */
private String openid; private String openId;
/** /**
* 手机号 * 手机号

View File

@ -31,7 +31,7 @@ public class EbikeUserServiceImpl extends ServiceImpl<EbikeUserMapper, EbikeUser
@Override @Override
public EbikeUser getUserByOpenId(String openId) { public EbikeUser getUserByOpenId(String openId) {
QueryWrapper query = QueryWrapper.create(); QueryWrapper query = QueryWrapper.create();
query.and(EBIKE_USER.OPENID.eq(openId)); query.and(EBIKE_USER.OPEN_ID.eq(openId));
return ebikeUserMapper.selectOneByQuery(query); return ebikeUserMapper.selectOneByQuery(query);
} }

View File

@ -313,7 +313,7 @@ public class UserOrdersServiceImpl extends ServiceImpl<UserOrdersMapper, EbikeUs
@Override @Override
public RspOrderDetailsInfo orderDetailsInfo(Long orderId) { public RspOrderDetailsInfo orderDetailsInfo(Long orderId) {
return this.mapper.selectOneWithRelationsByIdAs(orderId,RspOrderDetailsInfo.class); return this.mapper.selectOneWithRelationsByIdAs(orderId, RspOrderDetailsInfo.class);
} }
@Override @Override
@ -418,23 +418,49 @@ public class UserOrdersServiceImpl extends ServiceImpl<UserOrdersMapper, EbikeUs
* @return 当前时间段收取金额 * @return 当前时间段收取金额
*/ */
BigDecimal timeFee(TimeSegment timeSegment, ResFeignEbikeSysRcostsetDto feignEbikeSysRcostsetDto, List<EbikeOrderDetails> list, long orderId) { BigDecimal timeFee(TimeSegment timeSegment, ResFeignEbikeSysRcostsetDto feignEbikeSysRcostsetDto, List<EbikeOrderDetails> list, long orderId) {
BigDecimal decimal = new BigDecimal(0); BigDecimal decimal = BigDecimal.ZERO;
LocalDateTime start = timeSegment.getStart(); // LocalDateTime start = timeSegment.getStart();
LocalDateTime end = timeSegment.getEnd(); // LocalDateTime end = timeSegment.getEnd();
LocalTime orderStartupTime = LocalTime.of(start.getHour(), start.getMinute(), start.getSecond()); // LocalTime orderStartupTime = LocalTime.of(start.getHour(), start.getMinute(), start.getSecond());
LocalTime orderEndTime = LocalTime.of(end.getHour(), end.getMinute(), end.getSecond()); // LocalTime orderEndTime = LocalTime.of(end.getHour(), end.getMinute(), end.getSecond());
List<ResFeignEbikeSysRcostsetTimePeriodDto> ebikeSysRcostsetTimePeriodDtos = feignEbikeSysRcostsetDto.getEbikeSysRcostsetTimePeriodDtos(); // boolean checkedStart = false;
//收集订单所满足计费条件的所有时段费用 // List<ResFeignEbikeSysRcostsetTimePeriodDto> ebikeSysRcostsetTimePeriodDtos = feignEbikeSysRcostsetDto.getEbikeSysRcostsetTimePeriodDtos();
for (ResFeignEbikeSysRcostsetTimePeriodDto timePeriodDto : ebikeSysRcostsetTimePeriodDtos) { // //收集订单所满足计费条件的所有时段费用
LocalTime timePeriodDtoStartupTime = timePeriodDto.getStartupTime(); // for (ResFeignEbikeSysRcostsetTimePeriodDto timePeriodDto : ebikeSysRcostsetTimePeriodDtos) {
LocalTime timePeriodDtoEndTime = timePeriodDto.getEndTime(); // LocalTime timePeriodDtoStartupTime = timePeriodDto.getStartupTime();
boolean createBeforeTimePeriodDtoEndTime = orderStartupTime.isBefore(timePeriodDtoEndTime); // LocalTime timePeriodDtoEndTime = timePeriodDto.getEndTime();
boolean createAfterTimePeriodDtoStartupTime = orderEndTime.isAfter(timePeriodDtoStartupTime); // boolean createBeforeTimePeriodDtoEndTime = orderStartupTime.isBefore(timePeriodDtoEndTime);
//满足计费条件进行计费 // boolean createAfterTimePeriodDtoStartupTime = orderEndTime.isAfter(timePeriodDtoStartupTime);
if (createBeforeTimePeriodDtoEndTime && createAfterTimePeriodDtoStartupTime) { // //满足计费条件进行计费
// if (createBeforeTimePeriodDtoEndTime && createAfterTimePeriodDtoStartupTime) {
} // //起点在高峰内
} // boolean after = orderStartupTime.isAfter(timePeriodDtoStartupTime);
// boolean before = orderEndTime.isBefore(timePeriodDtoEndTime);
// if (after) {
// //添加起步费用
// BigDecimal startupCost = timePeriodDto.getStartupCost();
// Integer startupDuration = timePeriodDto.getStartupDuration();
// decimal = decimal.add(startupCost);
// long minutes = TimeUtils.betweenMinutes(orderStartupTime, orderEndTime);
// BigDecimal minutesNew = new BigDecimal(minutes);
// if (minutes > startupDuration) {
// BigDecimal startupDurationNew = new BigDecimal(startupDuration);
// BigDecimal subtract = minutesNew.subtract(startupDurationNew);
// //结束点在高峰内
// if (before) {
// BigDecimal durationCost = timePeriodDto.getDurationCost();
// Integer duration = timePeriodDto.getDuration();
// int ceil = NumberUtils.divideAndCeil(duration, subtract.intValue());
// BigDecimal ceilCost = BigDecimal.valueOf(ceil);
// //最终值
// BigDecimal multiply = durationCost.multiply(ceilCost);
// decimal = decimal.add(multiply);
// }
// }
// }
//
// }
// }
//计算常规费用 //计算常规费用
return decimal; return decimal;
} }