using System.Collections.Generic; using System.Threading.Tasks; using _0_Framework.Application; using AccountManagement.Application.Contracts.Assign; using AccountManagement.Application.Contracts.TaskMessage; using Microsoft.AspNetCore.Http; namespace AccountManagement.Application.Contracts.Task; public interface ITaskApplication { OperationResult DeActiveTask(long TaskId); OperationResult RemoveTask(long TaskId); OperationResult RemoveFile(long MediaId); OperationResult Edit(EditTask command); OperationResult CreateAssign(CreateAssign command); OperationResult CreateTask(CreateTask command); OperationResult CreateTaskByPosition(CreateTask command); EditTask GetDetails(long taskId); List GetSelfTasks(TaskSearchModel searchModel); List GetAllTasks(TaskSearchModel searchModel); //List GetAllNotSelfIncludedTasks(TaskSearchModel searchModel); List GetReceivedTasks(TaskSearchModel searchModel); List GetSentTasks(TaskSearchModel searchModel); List GetTasksHaveTicket(TaskSearchModel searchModel); /// /// لیست تسک های دوره ای ایجاد شده توسط کاربر /// /// /// List GetTaskScheduleList(TaskSearchModel searchModel); // گرفتن مهلت برای یک وظیفه OperationResult CreateRequestTime(CreateTaskTimeRequest command); List GetRequestTaskHasTicket(TaskSearchModel searchModel); //تایید مهلت وظیفه OperationResult AcceptRequestDatetime(long taskId, long assignedId,string message); OperationResult RejectTimeRequest(long taskId, long assignedId, string message); //درخواست انصراف وظیفه OperationResult CreateCancelRequest(CreateTaskCancel command); //تایید اانصراف وظیفه OperationResult AcceptCancelRequest(long taskId,long assignedId, string message); OperationResult RejectCancelRequest(long taskId, long assignedId, string message); OperationResult CreateCompleteTaskRequest(CompleteTaskViewModel command); OperationResult AcceptCompleteRequest(long taskId, long assignedId, string message); OperationResult RejectCompleteRequest(long taskId, long assignedId, string message); OperationResult CreateTaskByPosition(CreateTask command, List positionIds); List GetRequestedTasks(TaskSearchModel searchModel); List AllRequestedTasks(TaskSearchModel searchModel); Task GetRequestedTasksCount(); Task TasksHaveTicketCounts(long userId); Task TasksHaveTicketRequestsCount(long userId); List GetTaskMessages(long assignId); OperationResult ChangeRequestTimeAndAccept(string time,long taskId,long assignedId, string message); EditTask GetRequestDetails(long id); OperationResult UploadMedia(IFormFile mediaFile, long senderId); OperationResult RemoveMedia(long mediaId); void RemoveTempUploadedFiles(long userId); OperationResult SendTicketResponseInTask(long assignId,string message,long ticketId); List GetAssignsByTaskId(long taskId); Task RequestedAndOverdueTasksCount(long userId); /// /// تعداد تسک های شخصی و دریافتی برای امروز و یا عقب افتاده /// /// /// Task OverdueTasksCount(long userId); }