package com.ruoyi.system.service;
|
|
import com.ruoyi.system.domain.SysTaskVehicle;
|
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* 任务车辆服务接口
|
*
|
* @author ruoyi
|
*/
|
public interface ISysTaskVehicleService {
|
|
/**
|
* 查询任务车辆关联列表
|
*
|
* @param sysTaskVehicle 任务车辆关联
|
* @return 任务车辆关联集合
|
*/
|
List<SysTaskVehicle> selectSysTaskVehicleList(SysTaskVehicle sysTaskVehicle);
|
|
/**
|
* 查询任务车辆关联信息
|
*
|
* @param id 任务车辆关联主键
|
* @return 任务车辆关联信息
|
*/
|
SysTaskVehicle selectSysTaskVehicleById(Long id);
|
|
/**
|
* 根据任务ID查询关联车辆列表
|
*
|
* @param taskId 任务ID
|
* @return 任务车辆关联集合
|
*/
|
List<SysTaskVehicle> selectSysTaskVehicleByTaskId(Long taskId);
|
|
/**
|
* 新增任务车辆关联
|
*
|
* @param sysTaskVehicle 任务车辆关联
|
* @return 结果
|
*/
|
int insertSysTaskVehicle(SysTaskVehicle sysTaskVehicle);
|
|
/**
|
* 修改任务车辆关联
|
*
|
* @param sysTaskVehicle 任务车辆关联
|
* @return 结果
|
*/
|
int updateSysTaskVehicle(SysTaskVehicle sysTaskVehicle);
|
|
/**
|
* 删除任务车辆关联信息
|
*
|
* @param id 任务车辆关联主键
|
* @return 结果
|
*/
|
int deleteSysTaskVehicleById(Long id);
|
|
/**
|
* 批量删除任务车辆关联信息
|
*
|
* @param ids 需要删除的主键集合
|
* @return 结果
|
*/
|
int deleteSysTaskVehicleByIds(Long[] ids);
|
|
/**
|
* 更新任务车辆关联状态
|
*
|
* @param id 任务车辆关联主键
|
* @param status 状态
|
* @return 结果
|
*/
|
int updateSysTaskVehicleStatus(Long id, String status);
|
|
/**
|
* 批量获取车辆当前任务状态
|
*
|
* @param vehicleIds 车辆ID列表
|
* @return 车辆任务状态映射
|
*/
|
Map<Long, Map<String, Object>> batchGetVehicleCurrentTaskStatus(List<Long> vehicleIds);
|
|
/**
|
* 保存任务车辆关联
|
*
|
* @param taskId 任务ID
|
* @param vehicleIds 车辆ID列表
|
* @param userName 操作人用户名
|
*/
|
void saveTaskVehicles(Long taskId, List<Long> vehicleIds, String userName);
|
|
/**
|
* 保存任务车辆关联(指定时间)
|
*
|
* @param taskId 任务ID
|
* @param vehicleIds 车辆ID列表
|
* @param userName 操作人用户名
|
* @param assignTime 分配时间
|
* @param createTime 创建时间
|
* @param updateTime 更新时间
|
*/
|
void saveTaskVehicles(Long taskId, List<Long> vehicleIds, String userName,
|
Date assignTime, Date createTime, Date updateTime);
|
|
/**
|
* 更新任务车辆关联
|
*
|
* @param taskId 任务ID
|
* @param newVehicleIds 新的车辆ID列表
|
* @param userName 操作人用户名
|
* @return 是否有变更
|
*/
|
boolean updateTaskVehicles(Long taskId, List<Long> newVehicleIds, String userName);
|
/*
|
* @param taskId 任务ID
|
* @param vehicleId 车辆ID
|
* @param remark 备注
|
* @param userId 操作人ID
|
* @param userName 操作人用户名
|
* @return 结果
|
*/
|
int assignVehicleToTask(Long taskId, Long vehicleId, String remark, Long userId, String userName);
|
|
/**
|
* 取消任务车辆分配
|
*
|
* @param taskId 任务ID
|
* @param vehicleId 车辆ID
|
* @return 结果
|
*/
|
int unassignVehicleFromTask(Long taskId, Long vehicleId);
|
|
/**
|
* 批量分配车辆给任务
|
*
|
* @param taskId 任务ID
|
* @param vehicleIds 车辆ID列表
|
* @param remark 备注
|
* @param userId 操作人ID
|
* @param userName 操作人用户名
|
* @return 结果
|
*/
|
int assignMultipleVehiclesToTask(Long taskId, List<Long> vehicleIds, String remark, Long userId, String userName);
|
|
/**
|
* 查询任务关联的车辆
|
*
|
* @param taskId 任务ID
|
* @return 任务车辆关联列表
|
*/
|
List<SysTaskVehicle> getTaskVehicles(Long taskId);
|
|
/**
|
* 查询可用车辆
|
*
|
* @param deptId 部门ID
|
* @param taskType 任务类型
|
* @return 可用车辆列表
|
*/
|
List<SysTaskVehicle> getAvailableVehicles(Long deptId, String taskType);
|
|
/**
|
* 删除任务的所有车辆关联
|
*
|
* @param taskId 任务ID
|
* @return 结果
|
*/
|
int deleteTaskVehiclesByTaskId(Long taskId);
|
|
/**
|
* 检查车辆是否已分配给任务
|
*
|
* @param taskId 任务ID
|
* @param vehicleId 车辆ID
|
* @return true-已分配,false-未分配
|
*/
|
boolean checkVehicleAssigned(Long taskId, Long vehicleId);
|
}
|