using System; using System.Collections.Generic; using System.Threading.Tasks; using _0_Framework.Application; using _0_Framework.Domain; using AccountManagement.Application.Contracts.Task; using AccountManagement.Application.Contracts.TaskMessage; using Microsoft.VisualBasic.CompilerServices; namespace AccountManagement.Domain.TaskAgg; public interface ITaskRepository:IRepository { /// /// گرقتن اطلاعات تسک /// /// /// EditTask GetDetails(long TaskId); /// /// گرفتن تسک با ارجاع ها /// /// /// Tasks GetIncludeAssign(long taskId); /// /// حذف تسک /// /// void Remove(long id); /// /// گرفتن تمامی وظایف /// /// /// List GetAllTasks(TaskSearchModel searchModel); /// /// گرفتن لیست تسک های درخواست داده شده. بدون تیکت /// /// /// List GetRequestedTasks(TaskSearchModel searchModel); /// /// لیست درخواست های تسک دارای تیکت /// /// /// List GetRequestTaskHasTicket(TaskSearchModel searchModel); /// /// گرفتن وظایف شخصی /// /// /// List GetSelfTasks(TaskSearchModel searchModel); //List GetAllNotSelfIncludedTasks(TaskSearchModel searchModel); /// /// لیست وظایف ارسالی /// /// /// List GetReceivedTasks(TaskSearchModel searchModel); /// /// لیست وظایف ارسالی /// /// /// List GetSentTasks(TaskSearchModel searchModel); /// /// همه لیست درخواست ها /// /// /// List AllRequestedTasks(TaskSearchModel searchModel); /// /// لیست تسک های دارا تیکت /// /// /// List GetTasksHaveTicket(TaskSearchModel searchModel); /// /// لیست تسک های دوره ای ایجاد شده توسط کاربر /// /// /// List GetTaskScheduleList(TaskSearchModel searchModel); /// /// تعداد تسک های درخواستی. بدون تیکت /// /// Task GetRequestedTasksCount(); /// /// گرفتن جزئیات درخواست وظیفه /// /// /// EditTask GetRequestDetails(long id); /// /// گرفتن مسیر environment /// /// string GetWebEnvironmentPath(); /// /// آیا تسک عقب افتاده ای دارد یا خیر /// /// /// bool HasOverdueTasks(long userId); /// /// مجوع تعداد تسک های عقب افتاده و درخواستی /// /// /// Task RequestedAndOverdueTasksCount(long userId); /// /// تعداد تسک های دارای تیکت /// /// /// Task TasksHaveTicketCounts(long userId); /// /// تعداد درخواست های تسک های دارا تیکت /// /// /// Task TasksHaveTicketRequestsCount(long userId); /// /// تعداد تسک های شخصی و دریافتی برای امروز و یا عقب افتاده /// /// /// Task OverdueTasksCount(long userId); // گرفتن پیام های مربوط به هر تسک List GetTasksByTaskScheduleId(long taskScheduleId); void RemoveRange(IEnumerable tasks); }