add shift duration on create leave
This commit is contained in:
@@ -13,12 +13,14 @@ using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.Mvc.RazorPages;
|
||||
using PersianTools.Core;
|
||||
using System.Security.Claims;
|
||||
using _0_Framework.Domain.CustomizeCheckoutShared.Enums;
|
||||
using _0_Framework.Infrastructure;
|
||||
using CompanyManagment.App.Contracts.Bank;
|
||||
using CompanyManagment.App.Contracts.CustomizeWorkshopSettings;
|
||||
using CompanyManagment.App.Contracts.Job;
|
||||
using CompanyManagment.App.Contracts.PersonnleCode;
|
||||
using CompanyManagment.App.Contracts.LeftWorkTemp;
|
||||
using CompanyManagment.App.Contracts.RollCallEmployeeStatus;
|
||||
|
||||
namespace ServiceHost.Areas.Client.Pages
|
||||
{
|
||||
@@ -41,6 +43,8 @@ namespace ServiceHost.Areas.Client.Pages
|
||||
private readonly IBankApplication _bankApplication;
|
||||
private readonly ILeftWorkTempApplication _leftWorkTempApplication;
|
||||
private readonly IJobApplication _jobApplication;
|
||||
private readonly ICustomizeWorkshopSettingsApplication _customizeWorkshopEmployee;
|
||||
private readonly IRollCallEmployeeStatusApplication _rollCallEmployeeStatusApplication;
|
||||
|
||||
public string profilePicture { get; set; }
|
||||
public string AccountFullName { get; set; }
|
||||
@@ -61,7 +65,7 @@ namespace ServiceHost.Areas.Client.Pages
|
||||
public bool HasApkToDownload { get; set; }
|
||||
|
||||
#endregion
|
||||
public IndexModel(IAuthHelper authHelper, IPasswordHasher passwordHasher, IWorkshopApplication workshopApplication, ILeaveApplication leaveApplication, IEmployeeApplication employeeApplication, IPaymentToEmployeeItemApplication paymentToEmployeeItemApplication, IPaymentToEmployeeApplication paymentToEmployeeApplication, IHolidayItemApplication holidayItemApplication, IInsuranceListApplication insuranceListApplication, IAndroidApkVersionApplication androidApkVersionApplication, IRollCallServiceApplication rollCallServiceApplication, IPersonnelCodeApplication personnelCodeApplication, ICustomizeWorkshopSettingsApplication customizeWorkshopSettingsApplication, IBankApplication bankApplication, ILeftWorkTempApplication leftWorkTempApplication, IJobApplication jobApplication)
|
||||
public IndexModel(IAuthHelper authHelper, IPasswordHasher passwordHasher, IWorkshopApplication workshopApplication, ILeaveApplication leaveApplication, IEmployeeApplication employeeApplication, IPaymentToEmployeeItemApplication paymentToEmployeeItemApplication, IPaymentToEmployeeApplication paymentToEmployeeApplication, IHolidayItemApplication holidayItemApplication, IInsuranceListApplication insuranceListApplication, IAndroidApkVersionApplication androidApkVersionApplication, IRollCallServiceApplication rollCallServiceApplication, IPersonnelCodeApplication personnelCodeApplication, ICustomizeWorkshopSettingsApplication customizeWorkshopSettingsApplication, IBankApplication bankApplication, ILeftWorkTempApplication leftWorkTempApplication, IJobApplication jobApplication, ICustomizeWorkshopSettingsApplication customizeWorkshopEmployee, IRollCallEmployeeStatusApplication rollCallEmployeeStatusApplication)
|
||||
{
|
||||
_workshopApplication = workshopApplication;
|
||||
_employeeApplication = employeeApplication;
|
||||
@@ -76,6 +80,8 @@ namespace ServiceHost.Areas.Client.Pages
|
||||
_bankApplication = bankApplication;
|
||||
_leftWorkTempApplication = leftWorkTempApplication;
|
||||
_jobApplication = jobApplication;
|
||||
_customizeWorkshopEmployee = customizeWorkshopEmployee;
|
||||
_rollCallEmployeeStatusApplication = rollCallEmployeeStatusApplication;
|
||||
_leaveApplication = leaveApplication;
|
||||
_authHelper = authHelper;
|
||||
_passwordHasher = passwordHasher;
|
||||
@@ -322,6 +328,7 @@ namespace ServiceHost.Areas.Client.Pages
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#region Compute Leave Hourly and Daily
|
||||
public IActionResult OnGetComputeLeaveHourly(string startHours, string endHours)
|
||||
{
|
||||
@@ -589,5 +596,44 @@ namespace ServiceHost.Areas.Client.Pages
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
#region RotatingShift
|
||||
|
||||
public IActionResult OnGetHasRotatingShift(long employeeId , string startDateTime)
|
||||
{
|
||||
if (startDateTime.TryToGeorgianDateTime(out var startDateTimeGr)==false)
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
HasRollCall = false,
|
||||
Message = "تاریخ وارد شده نامعتبر میباشد",
|
||||
Shifts = (List<object>)[]
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var workshopSlug = User.FindFirst("WorkshopSlug")?.Value;
|
||||
long workshopId = _passwordHasher.SlugDecrypt(workshopSlug);
|
||||
|
||||
var employeeSettings = _customizeWorkshopSettingsApplication.GetByEmployeeIdAndWorkshopIdIncludeGroupSettings(workshopId, employeeId);
|
||||
if (employeeSettings == null)
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
HasRollCall = false,
|
||||
Shifts = (List<object>)[],
|
||||
});
|
||||
}
|
||||
|
||||
var isActive =_rollCallEmployeeStatusApplication.IsActiveInPeriod(employeeId, workshopId, startDateTimeGr, startDateTimeGr);
|
||||
|
||||
return new JsonResult(new
|
||||
{
|
||||
HasRollCall = isActive && employeeSettings.WorkshopShiftStatus == WorkshopShiftStatus.Rotating,
|
||||
Shifts = employeeSettings.CustomizeRotatingShiftsViewModels
|
||||
});
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user