package com.jsowell.system.service; import com.jsowell.system.domain.SysTodoTask; import com.jsowell.system.domain.dto.TodoTaskCreateCommand; import com.jsowell.system.domain.dto.TodoTaskQuery; import java.util.List; /** * 统一待办任务服务。 * * @author jsowell */ public interface TodoTaskService { SysTodoTask createTask(TodoTaskCreateCommand command); SysTodoTask getForAssignee(Long todoId, Long assigneeUserId); List listForAssignee(TodoTaskQuery query, Long assigneeUserId); List homeList(Long assigneeUserId, Integer limit); int countActive(Long assigneeUserId); int countUnread(Long assigneeUserId); boolean markRead(Long todoId, Long assigneeUserId, String operatorName); int markAllRead(Long assigneeUserId, String operatorName); boolean complete(Long todoId, Long assigneeUserId, String operatorName); int completeByBusiness(String businessType, String businessId, Long assigneeUserId, Long operatorId, String operatorName); boolean cancelForAssignee(Long todoId, Long assigneeUserId, String operatorName, String reason); boolean cancel(Long todoId, Long operatorId, String operatorName, String reason); int cancelByBusiness(String businessType, String businessId, Long assigneeUserId, String operatorName, String reason); }