|
@@ -27,6 +27,11 @@ import cn.hutool.core.lang.Assert;
|
|
|
import jakarta.validation.Valid;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
|
|
|
+import java.time.Duration;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.time.ZoneId;
|
|
|
+import java.util.Date;
|
|
|
+
|
|
|
/**
|
|
|
* <p>
|
|
|
* 协议(客商)车牌关系 服务实现类
|
|
@@ -63,7 +68,7 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
new Page<>(pageNum, pageSize),
|
|
|
new LambdaQueryWrapper<ContractPlaceNumberRel>()
|
|
|
.eq(sysUser != null, ContractPlaceNumberRel::getContractId, sysUser.getContractId())
|
|
|
- .orderByDesc(ContractPlaceNumberRel::getStartTime)
|
|
|
+ .orderByDesc(ContractPlaceNumberRel::getStartTime)
|
|
|
|
|
|
//.like(StrUtil.isNotBlank(keywords), ContractPlaceNumberRel::getCategoryName, keywords)
|
|
|
);
|
|
@@ -130,19 +135,36 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
int pageNum = queryParams.getPageNum();
|
|
|
int pageSize = queryParams.getPageSize();
|
|
|
// 查询数据
|
|
|
- LambdaQueryWrapper<ContractPlaceNumberRel> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper.ge(StrUtil.isNotBlank(queryParams.getStartTimeBegin()), ContractPlaceNumberRel::getStartTime, queryParams.getStartTimeBegin()).le(StrUtil.isNotBlank(queryParams.getStartTimeEnd()), ContractPlaceNumberRel::getStartTime, queryParams.getStartTimeEnd());
|
|
|
- queryWrapper.ge(StrUtil.isNotBlank(queryParams.getEndTimeBegin()), ContractPlaceNumberRel::getEndTime, queryParams.getEndTimeBegin()).le(StrUtil.isNotBlank(queryParams.getEndTimeEnd()), ContractPlaceNumberRel::getEndTime, queryParams.getEndTimeEnd());
|
|
|
- queryWrapper.eq(StrUtil.isNotBlank(queryParams.getPhone()),ContractPlaceNumberRel::getPhone, queryParams.getPhone());
|
|
|
- queryWrapper.orderByDesc(ContractPlaceNumberRel::getStartTime);
|
|
|
-
|
|
|
+ LambdaQueryWrapper<ContractPlaceNumberRel> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.ge(StrUtil.isNotBlank(queryParams.getStartTimeBegin()), ContractPlaceNumberRel::getStartTime, queryParams.getStartTimeBegin()).le(StrUtil.isNotBlank(queryParams.getStartTimeEnd()), ContractPlaceNumberRel::getStartTime, queryParams.getStartTimeEnd());
|
|
|
+ queryWrapper.ge(StrUtil.isNotBlank(queryParams.getEndTimeBegin()), ContractPlaceNumberRel::getEndTime, queryParams.getEndTimeBegin()).le(StrUtil.isNotBlank(queryParams.getEndTimeEnd()), ContractPlaceNumberRel::getEndTime, queryParams.getEndTimeEnd());
|
|
|
+ queryWrapper.eq(StrUtil.isNotBlank(queryParams.getPhone()), ContractPlaceNumberRel::getPhone, queryParams.getPhone());
|
|
|
+ queryWrapper.orderByDesc(ContractPlaceNumberRel::getStartTime);
|
|
|
+
|
|
|
Page<ContractPlaceNumberRel> dictItemPage = this.page(
|
|
|
new Page<>(pageNum, pageSize),
|
|
|
- queryWrapper
|
|
|
- );
|
|
|
+ queryWrapper
|
|
|
+ );
|
|
|
|
|
|
// 实体转换
|
|
|
Page<ContractPlaceNumberRelVO> pageResult = converter.entity2Page(dictItemPage);
|
|
|
+ for (ContractPlaceNumberRelVO record : pageResult.getRecords()) {
|
|
|
+ Date startTime = record.getStartTime();
|
|
|
+ Date endTime = record.getEndTime();
|
|
|
+ // 将 Date 转换为 LocalDateTime
|
|
|
+ LocalDateTime startLocalDateTime = startTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
|
|
|
+ LocalDateTime endLocalDateTime = endTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
|
|
|
+
|
|
|
+ // 计算时间差
|
|
|
+ Duration duration = Duration.between(startLocalDateTime, endLocalDateTime);
|
|
|
+
|
|
|
+ // 获取天、小时、分钟和秒
|
|
|
+ long days = duration.toDays();
|
|
|
+ long hours = duration.toHours() % 24;
|
|
|
+ long minutes = duration.toMinutes() % 60;
|
|
|
+ long seconds = duration.getSeconds() % 60;
|
|
|
+ record.setCoverTime(days + "天" + hours + "小时" + minutes + "分钟" + seconds + "秒");
|
|
|
+ }
|
|
|
return pageResult;
|
|
|
}
|
|
|
|