注掉自动派单

This commit is contained in:
xiao-fajia 2024-10-04 22:13:23 +08:00
parent c436aa8d9d
commit ea93d5f209

View File

@ -412,39 +412,40 @@ public class RescueInfoServiceImpl extends ServiceImpl<RescueInfoMapper, RescueI
baseMapper.insert(rescueInfo);
detailService.save(new RescueInfoDetail(rescueInfo.getId(), "0", "救援发起", "救援发起"));
// 自动通知对应路段司机
List<RescueDictStaff> list = rescueDictStaffService.list(new LambdaQueryWrapper<RescueDictStaff>().in(RescueDictStaff::getDictId, rescueInfo.getRoadIds()));
if (CollectionUtil.isEmpty(list)) {
throw exception0(500, "该路段没有司机,请先配置");
}
// 司机的userId
Set<Long> driverIds = list.stream()
.map(RescueDictStaff::getDriverIds)
.flatMap(item -> Arrays.stream(item.split(",")))
.map(Long::parseLong)
.collect(Collectors.toSet());
// 司机的driver_id
List<DriverInfo> driverInfos = driverInfoService.list(new LambdaQueryWrapper<DriverInfo>().in(DriverInfo::getUserId, driverIds));
driverInfos.forEach(item -> {
// 发消息
SysAnnouncement sysAnnouncement = new SysAnnouncement();
sysAnnouncement.setType("救援信息");
sysAnnouncement.setToUserIds(Collections.singletonList(item.getUserId()));
sysAnnouncement.setTitle("有新的救援订单请立即处理");
sysAnnouncement.setContent("有新的救援订单请立即处理");
announcementService.insertSysAnnouncements(sysAnnouncement);
// 发订单
RescueDriverInfo rescueDriverInfo = new RescueDriverInfo();
rescueDriverInfo.setDriverId(item.getId());
rescueDriverInfo.setRescueId(rescueInfo.getId());
rescueDriverInfo.setDriverAccept("2");
rescueDriverInfoService.insertRescueDriverInfo(rescueDriverInfo);
});
// 新增延迟消息用于三分钟后没人接单通知
TaskDto taskDto = new TaskDto();
taskDto.setManageId(loginUser.getId());
taskDto.setRescueInfoId(rescueInfo.getId());
redissonDelayQueue.offerTask(JSON.toJSONString(taskDto), UserConstants.RESCUE_TIME);
// TODO 暂时注掉 后面在看要不要完善
// // 自动通知对应路段司机
// List<RescueDictStaff> list = rescueDictStaffService.list(new LambdaQueryWrapper<RescueDictStaff>().in(RescueDictStaff::getDictId, rescueInfo.getRoadIds()));
// if (CollectionUtil.isEmpty(list)) {
// throw exception0(500, "该路段没有司机,请先配置");
// }
// // 司机的userId
// Set<Long> driverIds = list.stream()
// .map(RescueDictStaff::getDriverIds)
// .flatMap(item -> Arrays.stream(item.split(",")))
// .map(Long::parseLong)
// .collect(Collectors.toSet());
// // 司机的driver_id
// List<DriverInfo> driverInfos = driverInfoService.list(new LambdaQueryWrapper<DriverInfo>().in(DriverInfo::getUserId, driverIds));
// driverInfos.forEach(item -> {
// // 发消息
// SysAnnouncement sysAnnouncement = new SysAnnouncement();
// sysAnnouncement.setType("救援信息");
// sysAnnouncement.setToUserIds(Collections.singletonList(item.getUserId()));
// sysAnnouncement.setTitle("有新的救援订单请立即处理");
// sysAnnouncement.setContent("有新的救援订单请立即处理");
// announcementService.insertSysAnnouncements(sysAnnouncement);
// // 发订单
// RescueDriverInfo rescueDriverInfo = new RescueDriverInfo();
// rescueDriverInfo.setDriverId(item.getId());
// rescueDriverInfo.setRescueId(rescueInfo.getId());
// rescueDriverInfo.setDriverAccept("2");
// rescueDriverInfoService.insertRescueDriverInfo(rescueDriverInfo);
// });
// // 新增延迟消息用于三分钟后没人接单通知
// TaskDto taskDto = new TaskDto();
// taskDto.setManageId(loginUser.getId());
// taskDto.setRescueInfoId(rescueInfo.getId());
// redissonDelayQueue.offerTask(JSON.toJSONString(taskDto), UserConstants.RESCUE_TIME);
}
}