package com.ruoyi.system.service; import java.util.List; import com.ruoyi.system.domain.SysTaskVehicle; /** * 任务车辆关联Service接口 * * @author ruoyi * @date 2024-01-15 */ public interface ISysTaskVehicleService { /** * 查询任务车辆关联 * * @param id 任务车辆关联主键 * @return 任务车辆关联 */ public SysTaskVehicle selectSysTaskVehicleById(Long id); /** * 查询任务车辆关联列表 * * @param sysTaskVehicle 任务车辆关联 * @return 任务车辆关联集合 */ public List selectSysTaskVehicleList(SysTaskVehicle sysTaskVehicle); /** * 根据任务ID查询关联车辆列表 * * @param taskId 任务ID * @return 任务车辆关联集合 */ public List selectSysTaskVehicleByTaskId(Long taskId); /** * 新增任务车辆关联 * * @param sysTaskVehicle 任务车辆关联 * @return 结果 */ public int insertSysTaskVehicle(SysTaskVehicle sysTaskVehicle); /** * 修改任务车辆关联 * * @param sysTaskVehicle 任务车辆关联 * @return 结果 */ public int updateSysTaskVehicle(SysTaskVehicle sysTaskVehicle); /** * 批量删除任务车辆关联 * * @param ids 需要删除的任务车辆关联主键集合 * @return 结果 */ public int deleteSysTaskVehicleByIds(Long[] ids); /** * 删除任务车辆关联信息 * * @param id 任务车辆关联主键 * @return 结果 */ public int deleteSysTaskVehicleById(Long id); /** * 根据任务ID删除车辆关联 * * @param taskId 任务ID * @return 结果 */ public int deleteSysTaskVehicleByTaskId(Long taskId); /** * 根据任务ID和车辆ID删除关联 * * @param taskId 任务ID * @param vehicleId 车辆ID * @return 结果 */ public int deleteSysTaskVehicleByTaskIdAndVehicleId(Long taskId, Long vehicleId); /** * 检查任务车辆关联是否存在 * * @param taskId 任务ID * @param vehicleId 车辆ID * @return 结果 */ public int checkTaskVehicleExists(Long taskId, Long vehicleId); /** * 批量新增任务车辆关联 * * @param sysTaskVehicleList 任务车辆关联列表 * @return 结果 */ public int batchInsertSysTaskVehicle(List sysTaskVehicleList); /** * 分配车辆给任务 * * @param taskId 任务ID * @param vehicleId 车辆ID * @param remark 备注 * @return 结果 */ public int assignVehicleToTask(Long taskId, Long vehicleId, String remark); /** * 取消任务车辆分配 * * @param taskId 任务ID * @param vehicleId 车辆ID * @return 结果 */ public int unassignVehicleFromTask(Long taskId, Long vehicleId); /** * 批量分配车辆给任务 * * @param taskId 任务ID * @param vehicleIds 车辆ID列表 * @param remark 备注 * @return 结果 */ public int assignMultipleVehiclesToTask(Long taskId, List vehicleIds, String remark); /** * 查询可用车辆 * * @param deptId 部门ID * @param taskType 任务类型 * @return 可用车辆列表 */ public List getAvailableVehicles(Long deptId, String taskType); /** * 更新任务车辆关联状态 * * @param id 关联ID * @param status 新状态 * @return 结果 */ public int updateTaskVehicleStatus(Long id, String status); }