提交 d05d7daa authored 作者: liuhaiquan's avatar liuhaiquan

Merge remote-tracking branch 'origin/bug_truck_integral_20231211'

......@@ -28,3 +28,4 @@ mvnw.cmd
/dist/
/nbdist/
/.nb-gradle/
/nbsdk/
......@@ -16,4 +16,10 @@ public class DriverPageIntegralTruckRankParam extends PageParam {
@ApiModelProperty(value = "车牌列表", hidden = true)
List<String> truckNoList;
@ApiModelProperty(value = "车辆添加截止时间", hidden = true)
private String time;
@ApiModelProperty(value = "统计时间(周一)", hidden = true)
private String statisticsDate;
}
......@@ -170,19 +170,12 @@ public class IntegralTruckServiceImpl implements IntegralTruckService {
List<String> truckNoList = driverTruckList.stream().map(item -> item.getTruckNo()).collect(Collectors.toList());
param.setTruckNoList(truckNoList);
param.setTime(LocalDateTimeUtils.formatTime(LocalDateTimeUtils.getStartWeek()));
param.setStatisticsDate(time);
IPage<IntegralTruckVO> page = integralTruckDao.driverPageTruckRank(param);
truckNoList = page.getRecords().stream().map(item -> item.getTruckNo()).collect(Collectors.toList());
if (!truckNoList.isEmpty()) {
List<IntegralStatistics> statisticsList = integralStatisticsDao.selectListByStatisticsDateAndTruckNoList(time, truckNoList);
Map<String, Integer> rankMap = statisticsList.stream().collect(Collectors.toMap(item -> item.getTruckNo(), item -> item.getRank()));
Map<String, Integer> integralMap = statisticsList.stream().collect(Collectors.toMap(item -> item.getTruckNo(), item -> item.getIntegral()));
for (IntegralTruckVO item : page.getRecords()) {
item.setRank(rankMap.get(item.getTruckNo()));
item.setIntegral(integralMap.get(item.getTruckNo()));
}
Map<String, IntegralTruckVO> truckMap = page.getRecords().stream().collect(Collectors.toMap(item -> item.getTruckNo(), item -> item));
......
......@@ -53,17 +53,20 @@ public class IntegralTruckSqlProvider {
public String driverPageTruckRank(@Param("page") Page<IntegralTruckVO> page, @Param("param")DriverPageIntegralTruckRankParam param) {
return new SQL(){{
SELECT(" id, truck_no, " +
" driver_name, driver_mobile, " +
" echelon, integral, rank, " +
" date_format(create_time, '%Y-%m-%d %H:%i:%s') as createTime, " +
" date_format(modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime ");
SELECT(" a.id, a.truck_no, " +
" a.driver_name, a.driver_mobile, " +
" a.echelon, b.integral, b.rank, " +
" date_format(a.create_time, '%Y-%m-%d %H:%i:%s') as createTime, " +
" date_format(a.modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime ");
FROM("integral_truck");
FROM("integral_truck a");
LEFT_OUTER_JOIN("integral_statistics b on a.truck_no = b.truck_no and b.statistics_date = #{param.statisticsDate}");
WHERE("truck_no in (\""+ StringUtils.join(param.getTruckNoList(), "\",\"") +"\") ");
ORDER_BY("integral desc, create_time desc");
WHERE("a.truck_no in (\""+ StringUtils.join(param.getTruckNoList(), "\",\"") +"\") ");
WHERE("a.create_time < #{param.time}");
ORDER_BY("b.integral desc, a.create_time desc");
}}.toString();
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论