Files
Backend-Api/ServiceHost/Areas/AdminNew/Pages/Company/WorkFlow/Index.cshtml.cs
2025-03-09 21:52:06 +03:30

51 lines
2.0 KiB
C#

using _0_Framework.Application;
using Company.Domain.WorkshopAccountAgg;
using CompanyManagment.App.Contracts.RollCallService;
using CompanyManagment.App.Contracts.Workshop;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Configuration.UserSecrets;
using Microsoft.Identity.Client;
using Query.AdminReports.Handlers;
using WorkFlow.Application.Contracts.AdminWorkFlow;
using WorkFlow.Application.Contracts.WorkFlow;
namespace ServiceHost.Areas.AdminNew.Pages.Company.WorkFlow
{
public class IndexModel : PageModel
{
private readonly IAdminWorkFlowApplication _adminWorkFlowApplication;
private readonly IAuthHelper _authHelper;
private readonly IWorkshopAccountRepository _workshopAccountRepository;
public int EmployeeDocumentsAwaitingSubmitCount;
public IndexModel(IAdminWorkFlowApplication adminWorkFlowApplication, IAuthHelper authHelper, IWorkshopAccountRepository workshopAccountRepository)
{
_adminWorkFlowApplication = adminWorkFlowApplication;
_authHelper = authHelper;
_workshopAccountRepository = workshopAccountRepository;
}
public async System.Threading.Tasks.Task OnGet()
{
var accountId = _authHelper.CurrentAccountId();
var accountWorkshops = _workshopAccountRepository.GetList(accountId).Select(x => x.WorkshopId).ToList();
EmployeeDocumentsAwaitingSubmitCount = await _adminWorkFlowApplication.GetEmployeeDocumentWorkFlowCountsForAdmin(accountWorkshops);
}
public async Task<IActionResult> OnGetStartAndLeftWorkCount()
{
var accountId = _authHelper.CurrentAccountId();
var resultStartWorkCount = await _adminWorkFlowApplication.GetWorkshopsForEmployeeStartWorkCount(accountId);
var resultLeftWorkCount = await _adminWorkFlowApplication.GetWorkshopsForLeftWorkTempCount(accountId);
return new JsonResult(new
{
success = true,
dataStartWorkCount = resultStartWorkCount,
dataLeftWorkCount = resultLeftWorkCount,
});
}
}
}