wlzboy
2026-01-24 2f09efc660bf2cc94cbc5291ad25ca06fc9bdadf
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysTaskService.java
@@ -20,6 +20,14 @@
public interface ISysTaskService {
    public Boolean dispatchSyncEvent(Long taskId);
    /**
     * 判断任务是否总部推送
     * @param taskCreatorId
     * @param taskDeptId
     * @return
     */
    public Boolean isTaskHeaderPush(Long taskCreatorId,Long taskDeptId);
    /**
     * 查询任务管理
     * 
@@ -51,19 +59,29 @@
     * @param createVO 任务创建对象
     * @return 结果
     */
    public int insertSysTask(TaskCreateVO createVO);
    /**
     * 新增任务
     *
     * @param createVO 任务创建信息
     * @return 任务ID
     */
    public Long insertSysTask(TaskCreateVO createVO);
    /**
     * 新增任务管理(允许从外部传入用户信息、部门信息和时间信息)
     * 
     * @param createVO 任务创建对象
     * @param serviceOrderId 服务单ID
     * @param dispatchOrderId 调度单ID
     * @param serviceOrdNo 服务单编号
     * @param userId 用户ID
     * @param userName 用户名称
     * @param deptId 部门ID
     * @param createTime 创建时间
     * @param updateTime 更新时间
     * @return 结果
     * @return 任务ID
     */
    public int insertTask(TaskCreateVO createVO,Long serviceOrderId,Long dispatchOrderId, String serviceOrdNo, Long userId,String userName, Long deptId, Date createTime, Date updateTime);
    public Long insertTask(TaskCreateVO createVO,Long serviceOrderId,Long dispatchOrderId, String serviceOrdNo, Long userId,String userName, Long deptId, Date createTime, Date updateTime);
    /**
     * 修改任务管理
@@ -117,6 +135,14 @@
    public int changeTaskStatus(Long taskId, TaskStatus newStatus, String remark);
    /**
     * 强制完成任务(指定实际开始时间和结束时间)
     *
     * @param task 任务信息(包含taskId、taskStatus、actualStartTime、actualEndTime、remark)
     * @return 结果
     */
    public int forceCompleteTask(SysTask task);
    /**
     * 变更任务状态(含GPS位置信息)
     * 
     * @param taskId 任务ID
@@ -127,6 +153,23 @@
     */
    public int changeTaskStatusWithLocation(Long taskId, TaskStatus newStatus, String remark, SysTaskLog locationLog);
    /**
     * 保存任务取消信息(仅限转运任务)
     *
     * @param taskId 任务ID
     * @param cancelReason 取消原因(数据字典task_cancel_reason的value)
     * @return 结果
     */
    public int saveCancelInfo(Long taskId, String cancelReason);
    /**
     * 保存任务取消信息(含取消人)
     * @param taskId
     * @param cancelReason
     * @param cancelBy
     * @return
     */
    public int saveCancel(Long taskId, String cancelReason,String cancelBy,Date cancelTime);
    /**
     * 上传任务附件
     * 
@@ -311,5 +354,14 @@
     * @return 结果
     */
    public com.ruoyi.common.core.domain.AjaxResult cancelAssigneeReady(Long taskId, Long userId);
    /**
     * 检查任务是否重复(根据联系人电话和创建日期)
     *
     * @param phone 联系人电话
     * @param createDate 任务创建日期(格式:YYYY-MM-DD)
     * @return true-存在重复,false-不重复
     */
    public boolean checkTaskDuplicate(String phone, String createDate);
}