wlzboy
2025-11-22 fd047fa7234dc11643dab8ecbf38e8d7a8ba0854
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysTaskService.java
@@ -1,5 +1,6 @@
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;
@@ -43,6 +44,18 @@
     * @return 结果
     */
    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);
    /**
     * 修改任务管理
@@ -96,9 +109,21 @@
     * 
     * @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);
    /**
     * 删除任务附件
@@ -107,7 +132,17 @@
     * @return 结果
     */
    public int deleteAttachment(Long attachmentId);
    /**
     * 根据ID获取附件详情
     *
     * @param attachmentId 附件ID
     * @return 附件详情
     */
    public SysTaskAttachment getAttachmentById(Long attachmentId);
    public List<SysTaskAttachment> getAttachmentsByTaskId(Long taskId);
    /**
     * 分配车辆给任务
     * 
@@ -183,4 +218,46 @@
     * @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);
}