“mitao”
2026-01-13 4c954a5fef11f477d814e74978eac9cd23d982c4
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineShiftDriverServiceImpl.java
@@ -19,6 +19,7 @@
import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
import com.stylefeng.guns.modular.crossCity.warpper.DriverShiftListWarpper;
import com.stylefeng.guns.modular.crossCity.warpper.LineShiftItemWarpper;
import com.stylefeng.guns.modular.crossCity.warpper.ScanOrderDetailWarpper;
import com.stylefeng.guns.modular.system.dao.CarModelMapper;
import com.stylefeng.guns.modular.system.dao.CarServiceMapper;
import com.stylefeng.guns.modular.system.dao.ServerCarModelMapper;
@@ -347,4 +348,61 @@
        result.setLineList(lineList);
        return result;
    }
    @Override
    public ResultUtil<ScanOrderDetailWarpper> getDetail(Integer lineShiftDriverId) {
        // 1. 查询基础数据
        Map<String, Object> data = lineShiftDriverMapper.getDetail(lineShiftDriverId);
        if (data == null || data.isEmpty()) {
            return ResultUtil.error("班次信息不存在");
        }
        // 2. 构建返回对象
        ScanOrderDetailWarpper result = new ScanOrderDetailWarpper();
        // 司机信息
        result.setHeadImgUrl(data.get("headImgUrl") != null ? data.get("headImgUrl").toString() : null);
        result.setDriverName(data.get("driverName") != null ? data.get("driverName").toString() : null);
        result.setCarLicensePlate(data.get("carLicensePlate") != null ? data.get("carLicensePlate").toString() : null);
        result.setCarBrand(data.get("carBrand") != null ? data.get("carBrand").toString() : null);
        result.setCarColor(data.get("carColor") != null ? data.get("carColor").toString() : null);
        result.setScore(data.get("score") != null ? Double.parseDouble(data.get("score").toString()) : 0.0);
        result.setOrderCount(data.get("orderCount") != null ? Integer.parseInt(data.get("orderCount").toString()) : 0);
        // 线路信息
        result.setLineId(data.get("lineId") != null ? Integer.parseInt(data.get("lineId").toString()) : null);
        result.setLineName(data.get("lineName") != null ? data.get("lineName").toString() : null);
        result.setDay(data.get("day") != null ? data.get("day").toString() : null);
        result.setStartTime(data.get("startTime") != null ? data.get("startTime").toString() : null);
        result.setEndTime(data.get("endTime") != null ? data.get("endTime").toString() : null);
        result.setTotalSeat(data.get("totalSeat") != null ? Integer.parseInt(data.get("totalSeat").toString()) : null);
        result.setLaveSeat(data.get("laveSeat") != null ? Integer.parseInt(data.get("laveSeat").toString()) : null);
        result.setLaveSeatNumber(data.get("laveSeatNumber") != null ? data.get("laveSeatNumber").toString() : null);
        // 3. 解析价格JSON获取单人价格
        String priceContent = data.get("priceContent") != null ? data.get("priceContent").toString() : null;
        if (priceContent != null && !priceContent.isEmpty()) {
            JSONObject json = JSON.parseObject(priceContent);
            String num1 = json.getString("num1");
            if (num1 != null && !num1.isEmpty()) {
                result.setUnitPrice(Double.parseDouble(num1));
            }
        }
        // 站点信息
        result.setStartSiteId(data.get("startSiteId") != null ? Integer.parseInt(data.get("startSiteId").toString()) : null);
        result.setStartSiteName(data.get("startSiteName") != null ? data.get("startSiteName").toString() : null);
        result.setEndSiteId(data.get("endSiteId") != null ? Integer.parseInt(data.get("endSiteId").toString()) : null);
        result.setEndSiteName(data.get("endSiteName") != null ? data.get("endSiteName").toString() : null);
        // 默认点信息
        result.setDefaultPointAddress(data.get("defaultPointAddress") != null ? data.get("defaultPointAddress").toString() : null);
        result.setDefaultPointLon(data.get("defaultPointLon") != null ? Double.parseDouble(data.get("defaultPointLon").toString()) : null);
        result.setDefaultPointLat(data.get("defaultPointLat") != null ? Double.parseDouble(data.get("defaultPointLat").toString()) : null);
        // 其他信息
        result.setServerCarModelId(data.get("serverCarModelId") != null ? Integer.parseInt(data.get("serverCarModelId").toString()) : null);
        result.setDriverId(data.get("driverId") != null ? Integer.parseInt(data.get("driverId").toString()) : null);
        result.setLineShiftDriverId(lineShiftDriverId);
        return ResultUtil.success(result);
    }
}