151 lines
5.1 KiB
C#
151 lines
5.1 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Security.Cryptography;
|
||
using System.Text;
|
||
using System.Threading.Tasks;
|
||
using _0_Framework.Application;
|
||
using CompanyManagment.App.Contracts.Employee;
|
||
|
||
namespace WorkFlow.Application.Contracts.AdminWorkFlow;
|
||
|
||
public interface IAdminWorkFlowApplication
|
||
{
|
||
|
||
/// <summary>
|
||
/// نمایش کارگاه های دارای مدارک بررسی نشده
|
||
/// </summary>
|
||
List<WorkshopWithDocumentsViewModelForWorkFlow> GetWorkshopDocumentsAwaitingReviewForChecker(List<long> workshops);
|
||
|
||
List<WorkshopWithDocumentsViewModelForWorkFlow> GetWorkshopsWithDocumentsAwaitingUploadForAdmin(
|
||
List<long> workshops);
|
||
|
||
|
||
|
||
#region شروع به کار پرسنل افزوده شده
|
||
|
||
/// <summary>
|
||
/// لیست کارگاه هایی که از کلاینت، پرسنلی را شروع به کار زدند
|
||
/// </summary>
|
||
/// <param name="accountId"></param>
|
||
/// <returns></returns>
|
||
Task<ICollection<WorkshopWithStartedWorkWorkFlowViewModel>> GetWorkshopsForEmployeeStartWork(long accountId);
|
||
|
||
/// <summary>
|
||
/// تعداد کارگاه هایی که از کلاینت پرسنلی را شروع به کار زدند
|
||
/// </summary>
|
||
/// <param name="accountId"></param>
|
||
/// <returns></returns>
|
||
Task<int> GetWorkshopsForEmployeeStartWorkCount(long accountId);
|
||
|
||
|
||
/// <summary>
|
||
/// لیست پرسنل هایی که از سمت کلاینت شروع به کار خوردند
|
||
/// </summary>
|
||
/// <param name="workshopId"></param>
|
||
/// <returns></returns>
|
||
Task<ICollection<ClientStartedWorkEmployeesWorkFlowViewModel>> GetClientEmployeesStartWork(long workshopId);
|
||
|
||
/// <summary>
|
||
/// اطلاعات پرسنل برای ویرایش در مودال ادمین آپلود مدارک در هنگام رد شدن مدرک توسط ناظر
|
||
/// </summary>
|
||
/// <param name="employeeId"></param>
|
||
/// <param name="workshopId"></param>
|
||
/// <returns></returns>
|
||
Task<GetEditEmployeeInEmployeeDocumentViewModel> GetEmployeeEditInEmployeeDocumentWorkFlow(long employeeId,
|
||
long workshopId);
|
||
|
||
Task<OperationResult> EditEmployeeInEmployeeDocumentWorkFlow(EditEmployeeInEmployeeDocument command);
|
||
|
||
/// <summary>
|
||
/// لیست کارگاه هایی که از کلاینت، پرسنلی را شروع به کار زدند و مدارک آنها کامل آپلود نشده است
|
||
/// </summary>
|
||
/// <param name="workshops"></param>
|
||
/// <param name="roleId"></param>
|
||
/// <returns></returns>
|
||
Task<ICollection<WorkshopWithDocumentsViewModelForWorkFlow>> GetWorkshopDocumentCreatedEmployeeForAdmin(List<long> workshops, long roleId);
|
||
#endregion
|
||
|
||
Task<int> GetEmployeeDocumentWorkFlowCountsForAdmin(List<long> workshopIds, long roleId);
|
||
Task<int> GetWorkFlowCountsForAdmin(List<long> workshopIds, long accountId, long roleId, List<int> permissions);
|
||
Task<int> GetWorkFlowCountForChecker();
|
||
|
||
|
||
#region ترک کار موقت
|
||
|
||
/// <summary>
|
||
/// لیست کارگاه هایی که از کلاینت، پرسنلی را ترک کار زدند
|
||
/// </summary>
|
||
/// <param name="accountId"></param>
|
||
/// <returns></returns>
|
||
Task<ICollection<WorkshopWithLeftWorkWorkFlowViewModel>> GetWorkshopsForLeftWorkTemp(long accountId);
|
||
|
||
|
||
|
||
/// <summary>
|
||
/// لیست پرسنل هایی که از سمت کلاینت ترک کار موقت خوردند
|
||
/// </summary>
|
||
/// <param name="workshopId"></param>
|
||
/// <returns></returns>
|
||
Task<ICollection<ClientLeftWorkEmployeesWorkFlowViewModel>> GetEmployeesForLeftWorkTemp(long workshopId);
|
||
|
||
Task<int> GetWorkshopsForLeftWorkTempCount(long accountId);
|
||
|
||
#endregion
|
||
|
||
Task<int> GetInstitutionContractWorkflowCount();
|
||
}
|
||
|
||
/// <summary>
|
||
/// پرسنل هایی که دارای ترک کار موقت هستند در کارپوشه ادمین
|
||
/// </summary>
|
||
public class ClientLeftWorkEmployeesWorkFlowViewModel
|
||
{
|
||
/// <summary>
|
||
/// آیدی پرسنل
|
||
/// </summary>
|
||
public long EmployeeId { get; set; }
|
||
|
||
/// <summary>
|
||
/// آیدی کارگاه
|
||
/// </summary>
|
||
public long WorkshopId { get; set; }
|
||
|
||
/// <summary>
|
||
/// نام پرسنل
|
||
/// </summary>
|
||
public string EmployeeName { get; set; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// تاریخ ترک کار
|
||
/// </summary>
|
||
public string LeftWorkDate { get; set; } = string.Empty;
|
||
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// کارگاه هایی که پرسنل دارای ترک کار موقت دارند در کارپوشه ادمین
|
||
/// </summary>
|
||
public class WorkshopWithLeftWorkWorkFlowViewModel
|
||
{
|
||
/// <summary>
|
||
/// آیدی کارگاه
|
||
/// </summary>
|
||
public long WorkshopId { get; set; }
|
||
|
||
/// <summary>
|
||
/// نام کارگاه
|
||
/// </summary>
|
||
public string WorkshopName { get; set; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// نام کارفرما
|
||
/// </summary>
|
||
public string EmployerName { get; set; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// تعداد پرسنل ترک کار کرده
|
||
/// </summary>
|
||
public int LeftWorkEmployeesCount { get; set; }
|
||
} |