64 lines
2.2 KiB
C#
64 lines
2.2 KiB
C#
using _0_Framework.Application;
|
||
using _0_Framework.Domain;
|
||
using CompanyManagment.App.Contracts.InstitutionPlan;
|
||
using CompanyManagment.App.Contracts.Leave;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace Company.Domain.LeaveAgg;
|
||
|
||
public interface ILeaveRepository : IRepository<long, Leave>
|
||
{
|
||
EditLeave GetDetails(long id);
|
||
List<LeaveViewModel> search(LeaveSearchModel searchModel);
|
||
Task<OperationResult> RemoveLeave(long id);
|
||
|
||
#region Pooya
|
||
List<LeaveViewModel> GetByWorkshopIdEmployeeIdInDates(long workshopId, long employeeId, DateTime start, DateTime end);
|
||
/// <summary>
|
||
/// چک می کند که آیا پرسنل مرخصی روزانه استحقاقی دارد یا خیر
|
||
/// </summary>
|
||
bool HasDailyLeave(long employeeId, long workshopId, DateTime date);
|
||
#endregion
|
||
|
||
bool CheckContractExist(DateTime myDate,long employeeId, long workshopId);
|
||
|
||
LeavErrorViewModel CheckErrors(DateTime startLeav, DateTime endLeav, long employeeId, long workshopId,bool isInvalid);
|
||
LeaveViewModel LeavOnChekout(DateTime starContract, DateTime endContract, long employeeId, long workshopId);
|
||
List<LeaveMainViewModel> searchClient(LeaveSearchModel searchModel);
|
||
LeavePrintViewModel PrintOne(long id);
|
||
List<LeavePrintViewModel> PrintAll(List<long> id);
|
||
|
||
Task<List<LeavePrintResponseViewModel>> PrintAllAsync(List<long> ids, long workshopId);
|
||
|
||
#region Vafa
|
||
|
||
List<LeaveViewModel> LastLeaveMain(LeaveSearchModel searchModel);
|
||
|
||
#endregion
|
||
bool CheckIfValidToEdit(long id);
|
||
|
||
/// <summary>
|
||
/// دریافت لیست مرخصی ها در کلاینت
|
||
/// Api
|
||
/// </summary>
|
||
/// <param name="searchModel"></param>
|
||
/// <returns></returns>
|
||
Task<PagedResult<leaveListDto>> GetList(
|
||
LeaveListSearchModel searchModel);
|
||
|
||
/// <summary>
|
||
/// دریافت لیست گروه بندی شده
|
||
/// </summary>
|
||
/// <param name="searchModel"></param>
|
||
/// <returns></returns>
|
||
Task<List<GroupLeaveListDto>> GetGroupList(LeaveListSearchModel searchModel);
|
||
|
||
/// <summary>
|
||
/// پرینت لیستی
|
||
/// </summary>
|
||
/// <param name="ids"></param>
|
||
/// <returns></returns>
|
||
Task<LeaveListPrintDto> ListPrint(List<long> ids);
|
||
} |