From f67945d53b20f6a45ae50b27d74c966eb1355bb4 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期日, 16 十一月 2025 22:53:54 +0800
Subject: [PATCH] feat: 增加分段GPS计算行程距离

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/IVehicleInfoService.java |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IVehicleInfoService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IVehicleInfoService.java
index d2f5927..32be3be 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/IVehicleInfoService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IVehicleInfoService.java
@@ -9,31 +9,100 @@
 public interface IVehicleInfoService {
     /**
      * 鏌ヨ杞﹁締淇℃伅
+     * 
+     * @param vehicleId 杞﹁締淇℃伅涓婚敭
+     * @return 杞﹁締淇℃伅
      */
     public VehicleInfo selectVehicleInfoById(Long vehicleId);
 
     /**
+     * 閫氳繃杞︾墝鍙锋煡璇㈣溅杈嗕俊鎭�
+     * 
+     * @param plateNumber 杞︾墝鍙�
+     * @return 杞﹁締淇℃伅
+     */
+    public VehicleInfo selectVehicleInfoByPlateNumber(String plateNumber);
+
+    /**
      * 鏌ヨ杞﹁締淇℃伅鍒楄〃
+     * 
+     * @param vehicleInfo 杞﹁締淇℃伅
+     * @return 杞﹁締淇℃伅闆嗗悎
      */
     public List<VehicleInfo> selectVehicleInfoList(VehicleInfo vehicleInfo);
 
     /**
+     * 鏌ヨ杞﹁締淇℃伅锛堝寘鍚鍒嗗叕鍙稿叧鑱旓級
+     * 
+     * @param vehicleId 杞﹁締淇℃伅涓婚敭
+     * @return 杞﹁締淇℃伅锛堝寘鍚玠eptIds鍜宒eptNames锛�
+     */
+    public VehicleInfo selectVehicleInfoWithDeptsById(Long vehicleId);
+
+    /**
      * 鏂板杞﹁締淇℃伅
+     * 
+     * @param vehicleInfo 杞﹁締淇℃伅
+     * @return 缁撴灉
      */
     public int insertVehicleInfo(VehicleInfo vehicleInfo);
 
     /**
      * 淇敼杞﹁締淇℃伅
+     * 
+     * @param vehicleInfo 杞﹁締淇℃伅
+     * @return 缁撴灉
      */
     public int updateVehicleInfo(VehicleInfo vehicleInfo);
 
     /**
      * 鎵归噺鍒犻櫎杞﹁締淇℃伅
+     * 
+     * @param vehicleIds 闇�瑕佸垹闄ょ殑杞﹁締淇℃伅涓婚敭闆嗗悎
+     * @return 缁撴灉
      */
     public int deleteVehicleInfoByIds(Long[] vehicleIds);
 
     /**
      * 鍒犻櫎杞﹁締淇℃伅淇℃伅
+     * 
+     * @param vehicleId 杞﹁締淇℃伅涓婚敭
+     * @return 缁撴灉
      */
     public int deleteVehicleInfoById(Long vehicleId);
+    
+    /**
+     * 缁戝畾杞﹁締鍒扮敤鎴�
+     * 
+     * @param userId 鐢ㄦ埛ID
+     * @param vehicleId 杞﹁締ID
+     * @return 缁撴灉
+     */
+    public int bindVehicleToUser(Long userId, Long vehicleId);
+    
+    /**
+     * 瑙g粦鐢ㄦ埛杞﹁締
+     * 
+     * @param userId 鐢ㄦ埛ID
+     * @param vehicleId 杞﹁締ID
+     * @return 缁撴灉
+     */
+    public int unbindVehicleFromUser(Long userId, Long vehicleId);
+    
+    /**
+     * 鑾峰彇鐢ㄦ埛褰撳墠缁戝畾鐨勮溅杈�
+     * 
+     * @param userId 鐢ㄦ埛ID
+     * @return 杞﹁締淇℃伅
+     */
+    public VehicleInfo getUserBoundVehicle(Long userId);
+    
+    /**
+     * 鏍规嵁鐢ㄦ埛鏈夋潈闄愮鐞嗙殑鍒嗗叕鍙革紝鏌ヨ鎵�鏈夊彲鐢ㄨ溅杈�
+     * 閫氳繃杞﹁締-鍒嗗叕鍙稿叧鑱旇〃鏌ヨ
+     * 
+     * @param userId 鐢ㄦ埛ID
+     * @return 杞﹁締鍒楄〃
+     */
+    public List<VehicleInfo> selectAvailableVehiclesByUser(Long userId);
 } 
\ No newline at end of file

--
Gitblit v1.9.1