From 7742172e5295f94e0569672870f6101ac5ee0552 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期一, 20 四月 2026 16:31:29 +0800
Subject: [PATCH] 获取司机已预约或排班的城际出行
---
DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineShiftDriverServiceImpl.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineShiftDriverServiceImpl.java b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineShiftDriverServiceImpl.java
index a7ee5ec..2c568e5 100644
--- a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineShiftDriverServiceImpl.java
+++ b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineShiftDriverServiceImpl.java
@@ -123,6 +123,7 @@
lineShiftDriver.setLaveSeatNumber(seatNumber.substring(0, seatNumber.length() - 1));
lineShiftDriver.setTotalSeat(carModel.getSeat() - 1);
lineShiftDriver.setInserTime(new Date());
+ lineShiftDriver.setAssignType(1);
lineShiftDriverMapper.insert(lineShiftDriver);
}
if(type == 2){//取消预约
@@ -386,6 +387,55 @@
return result;
}
+ /**
+ * 【202604】查询司机本人已领取/被分配的排班列表(今天及之后)
+ */
+ @Override
+ public List<LineShiftItemWarpper> queryMyDriverShiftList(Integer driverId, String date, Integer pageNum, Integer size) throws Exception {
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm");
+
+ String today = sdf.format(new Date());
+ String startDate = ToolUtil.isEmpty(date) ? null : date;
+ int safePageNum = (pageNum == null || pageNum < 1) ? 1 : pageNum;
+ int safeSize = (size == null || size < 1) ? 10 : size;
+ int offset = (safePageNum - 1) * safeSize;
+
+ List<Map<String, Object>> rows = lineShiftDriverMapper.queryMyDriverShiftList(driverId, startDate, offset, safeSize);
+ List<LineShiftItemWarpper> result = new ArrayList<>();
+ String currentTime = timeFormat.format(new Date());
+
+ for (Map<String, Object> row : rows) {
+ LineShiftItemWarpper item = new LineShiftItemWarpper();
+ item.setLineShiftId(row.get("lineShiftId") == null ? null : Integer.valueOf(row.get("lineShiftId").toString()));
+ item.setLineShiftDriverId(row.get("lineShiftDriverId") == null ? null : Integer.valueOf(row.get("lineShiftDriverId").toString()));
+ item.setStartTime(row.get("startTime") == null ? "" : row.get("startTime").toString());
+ item.setEndTime(row.get("endTime") == null ? "" : row.get("endTime").toString());
+ item.setDay(row.get("day") == null ? "" : row.get("day").toString());
+ item.setLaveSeat(row.get("laveSeat") == null ? 0 : Integer.valueOf(row.get("laveSeat").toString()));
+ item.setTotalSeat(row.get("totalSeat") == null ? 0 : Integer.valueOf(row.get("totalSeat").toString()));
+ item.setLineName(row.get("lineName") == null ? "" : row.get("lineName").toString());
+ item.setAssignType(row.get("assignType") == null ? 1 : Integer.valueOf(row.get("assignType").toString()));
+ item.setOrderId(row.get("orderId") == null ? null : Integer.valueOf(row.get("orderId").toString()));
+ item.setOrderType(row.get("orderType") == null ? null : Integer.valueOf(row.get("orderType").toString()));
+
+ String dayStr = row.get("day") == null ? today : row.get("day").toString();
+ boolean isExpired = dayStr.equals(today) && currentTime.compareTo(item.getEndTime()) >= 0;
+ if (isExpired) {
+ item.setStatus(2);
+ item.setStatusText("已过期");
+ item.setCanOperate(false);
+ } else {
+ item.setStatus(1);
+ item.setStatusText("已预约");
+ item.setCanOperate(true);
+ }
+ result.add(item);
+ }
+
+ return result;
+ }
+
@Override
public ResultUtil<ScanOrderDetailWarpper> getDetail(Integer lineShiftDriverId) {
// 1. 查询基础数据
--
Gitblit v1.7.1