| | |
| | | package com.ruoyi.system.service; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | import com.ruoyi.system.domain.SysTask; |
| | | import com.ruoyi.system.domain.SysTaskLog; |
| | | import com.ruoyi.system.domain.SysTaskVehicle; |
| | | import com.ruoyi.system.domain.SysTaskAttachment; |
| | | import com.ruoyi.system.domain.vo.TaskQueryVO; |
| | |
| | | public int insertSysTask(TaskCreateVO createVO); |
| | | |
| | | /** |
| | | * 新增任务管理(允许从外部传入用户信息、部门信息和时间信息) |
| | | * |
| | | * @param createVO 任务创建对象 |
| | | * @param userId 用户ID |
| | | * @param deptId 部门ID |
| | | * @param createTime 创建时间 |
| | | * @param updateTime 更新时间 |
| | | * @return 结果 |
| | | */ |
| | | public int insertTask(TaskCreateVO createVO,String serviceOrderId,String dispatchOrderId, Long userId,String userName, Long deptId, Date createTime, Date updateTime); |
| | | |
| | | /** |
| | | * 修改任务管理 |
| | | * |
| | | * @param updateVO 任务更新对象 |
| | |
| | | public int changeTaskStatus(Long taskId, TaskStatus newStatus, String remark); |
| | | |
| | | /** |
| | | * 变更任务状态(含GPS位置信息) |
| | | * |
| | | * @param taskId 任务ID |
| | | * @param newStatus 新状态 |
| | | * @param remark 备注 |
| | | * @param locationLog GPS位置信息日志对象 |
| | | * @return 结果 |
| | | */ |
| | | public int changeTaskStatusWithLocation(Long taskId, TaskStatus newStatus, String remark, SysTaskLog locationLog); |
| | | |
| | | /** |
| | | * 上传任务附件 |
| | | * |
| | | * @param taskId 任务ID |
| | | * @param file 文件 |
| | | * @param category 附件分类 |
| | | * @return 结果 |
| | | */ |
| | | public int uploadAttachment(Long taskId, MultipartFile file); |
| | | public Long uploadAttachment(Long taskId, MultipartFile file, String category); |
| | | |
| | | /** |
| | | * 从微信mediaId上传任务附件 |
| | | * |
| | | * @param taskId 任务ID |
| | | * @param accessToken 微信AccessToken |
| | | * @param mediaId 微信mediaId |
| | | * @param category 附件分类 |
| | | * @return |
| | | */ |
| | | public Long uploadAttachmentFromWechat(Long taskId, String accessToken, String mediaId, String category); |
| | | |
| | | /** |
| | | * 删除任务附件 |
| | |
| | | * @return 结果 |
| | | */ |
| | | public int deleteAttachment(Long attachmentId); |
| | | |
| | | /** |
| | | * 根据ID获取附件详情 |
| | | * |
| | | * @param attachmentId 附件ID |
| | | * @return 附件详情 |
| | | */ |
| | | public SysTaskAttachment getAttachmentById(Long attachmentId); |
| | | |
| | | |
| | | public List<SysTaskAttachment> getAttachmentsByTaskId(Long taskId); |
| | | /** |
| | | * 分配车辆给任务 |
| | | * |
| | |
| | | * @return 任务详情 |
| | | */ |
| | | public SysTask getTaskDetail(Long taskId); |
| | | |
| | | /** |
| | | * 检查车辆是否有正在进行中的任务 |
| | | * 正在进行中的任务是指状态不为:PENDING(待处理)、COMPLETED(已完成)、CANCELLED(已取消)的任务 |
| | | * |
| | | * @param vehicleId 车辆ID |
| | | * @return 正在进行中的任务列表 |
| | | */ |
| | | public List<SysTask> checkVehicleActiveTasks(Long vehicleId); |
| | | |
| | | /** |
| | | * 检查任务是否已关联旧系统服务单ID |
| | | * |
| | | * @param taskId 任务ID |
| | | * @return true-已关联,false-未关联 |
| | | */ |
| | | public boolean hasLegacyServiceOrdId(Long taskId); |
| | | |
| | | /** |
| | | * 检查任务是否已关联旧系统调度单ID |
| | | * |
| | | * @param taskId 任务ID |
| | | * @return true-已关联,false-未关联 |
| | | */ |
| | | public boolean hasLegacyDispatchOrdId(Long taskId); |
| | | |
| | | /** |
| | | * 根据旧系统服务单ID检查是否存在任务 |
| | | * |
| | | * @param legacyServiceOrdId 旧系统服务单ID |
| | | * @return true-存在,false-不存在 |
| | | */ |
| | | public boolean existsByLegacyServiceOrdId(Long legacyServiceOrdId); |
| | | |
| | | /** |
| | | * 根据旧系统调度单ID检查是否存在任务 |
| | | * |
| | | * @param legacyDispatchOrdId 旧系统调度单ID |
| | | * @return true-存在,false-不存在 |
| | | */ |
| | | public boolean existsByLegacyDispatchOrdId(Long legacyDispatchOrdId); |
| | | |
| | | } |