using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WorkFlow.Application.Contracts.AdminWorkFlow;
public interface IAdminWorkFlowApplication
{
///
/// نمایش کارگاه های دارای مدارک بررسی نشده
///
List GetWorkshopDocumentsAwaitingReviewForChecker(List workshops);
List GetWorkshopsWithDocumentsAwaitingUploadForAdmin(
List workshops);
#region شروع به کار پرسنل افزوده شده
///
/// لیست کارگاه هایی که از کلاینت، پرسنلی را شروع به کار زدند
///
///
///
// Task> GetWorkshopsForEmployeeStartWork(long accountId);
///
/// لیست پرسنل هایی که از سمت کلاینت شروع به کار خوردند
///
///
///
//Task> GetClientEmployeesStartWork(long workshopId);
#endregion
AdminWorkFlowNumbersViewModel GetWorkFlowCountsForAdmin(List workshopIds);
int GetWorkFlowCountForChecker();
#region ترک کار موقت
///
/// لیست کارگاه هایی که از کلاینت، پرسنلی را ترک کار زدند
///
///
///
//Task> GetWorkshopsForLeftWorkTemp(long accountId);
///
/// لیست پرسنل هایی که از سمت کلاینت ترک کار موقت خوردند
///
///
///
// Task> GetEmployeesForLeftWorkTemp(long workshopId);
#endregion
}
///
/// پرسنل هایی که دارای ترک کار موقت هستند در کارپوشه ادمین
///
public class ClientLeftWorkEmployeesWorkFlowViewModel
{
///
/// آیدی پرسنل
///
public long EmployeeId { get; set; }
///
/// آیدی کارگاه
///
public long WorkshopId { get; set; }
///
/// نام پرسنل
///
public string EmployeeName { get; set; } = string.Empty;
///
/// تاریخ ترک کار
///
public string LeftWorkDate { get; set; } = string.Empty;
}
///
/// کارگاه هایی که پرسنل دارای ترک کار موقت دارند در کارپوشه ادمین
///
public class WorkshopWithLeftWorkWorkFlowViewModel
{
///
/// آیدی کارگاه
///
public long WorkshopId { get; set; }
///
/// نام کارگاه
///
public string WorkshopName { get; set; } = string.Empty;
///
/// نام کارفرما
///
public string EmployerName { get; set; } = string.Empty;
///
/// تعداد پرسنل ترک کار کرده
///
public int LeftWorkEmployeesCount { get; set; }
}