62 lines
2.5 KiB
C#
62 lines
2.5 KiB
C#
using CompanyManagment.App.Contracts.EmployeeDocuments;
|
|
using WorkFlow.Application.Contracts.AdminWorkFlow;
|
|
|
|
namespace WorkFlow.Infrastructure.ACL.EmployeeDocuments
|
|
{
|
|
public interface IWorkFlowEmployeeDocumentsACL
|
|
{
|
|
List<WorkshopWithDocumentsViewModelForWorkFlow> GetWorkshopDocumentsAwaitingReviewForChecker(List<long> workshops);
|
|
List<WorkshopWithDocumentsViewModelForWorkFlow> GetWorkshopsWithDocumentsAwaitingUploadForAdmin(List<long> workshops);
|
|
|
|
int GetAdminWorkFlowCountForSubmittedDocuments(List<long> workshopIds);
|
|
//int GetAdminWorkFlowCountForNewEmployees(List<long> workshopIds);
|
|
int GetCheckerWorkFlowCount();
|
|
}
|
|
|
|
public class WorkFlowEmployeeDocumentsACL : IWorkFlowEmployeeDocumentsACL
|
|
{
|
|
private readonly IEmployeeDocumentsApplication _employeeDocumentsApplication;
|
|
|
|
public WorkFlowEmployeeDocumentsACL(IEmployeeDocumentsApplication employeeDocumentsApplication)
|
|
{
|
|
_employeeDocumentsApplication = employeeDocumentsApplication;
|
|
}
|
|
|
|
|
|
public List<WorkshopWithDocumentsViewModelForWorkFlow> GetWorkshopsWithDocumentsAwaitingUploadForAdmin(List<long> workshops)
|
|
{
|
|
return _employeeDocumentsApplication.GetWorkshopDocumentsAwaitingUploadForAdminWorkFlow(workshops).Select(x => new WorkshopWithDocumentsViewModelForWorkFlow()
|
|
{
|
|
WorkshopId = x.WorkshopId,
|
|
UploadItemsCount = x.EmployeesWithoutDocumentCount,
|
|
WorkshopName = x.WorkshopFullName,
|
|
EmployerName = x.EmployerName,
|
|
}).ToList();
|
|
}
|
|
|
|
public int GetAdminWorkFlowCountForSubmittedDocuments(List<long> workshopIds)
|
|
{
|
|
return _employeeDocumentsApplication.GetAdminWorkFlowCountForSubmittedAndRejectedDocuments(workshopIds);
|
|
}
|
|
//public int GetAdminWorkFlowCountForNewEmployees(List<long> workshopIds)
|
|
//{
|
|
// return _employeeDocumentsApplication.GetAdminWorkFlowCountForNewEmployees(workshopIds);
|
|
//}
|
|
public int GetCheckerWorkFlowCount()
|
|
{
|
|
return _employeeDocumentsApplication.GetCheckerWorkFlowCount();
|
|
}
|
|
|
|
public List<WorkshopWithDocumentsViewModelForWorkFlow> GetWorkshopDocumentsAwaitingReviewForChecker(List<long> workshops)
|
|
{
|
|
return _employeeDocumentsApplication.GetWorkshopsWithDocumentsAwaitingReviewForCheckerWorkFlow().Select(x=> new WorkshopWithDocumentsViewModelForWorkFlow()
|
|
{
|
|
WorkshopId = x.WorkshopId,
|
|
UploadItemsCount = x.SubmittedItemsCount
|
|
}).ToList();
|
|
}
|
|
|
|
|
|
}
|
|
}
|