using _0_Framework.Domain; using CompanyManagment.App.Contracts.RollCallEmployee; using CompanyManagment.App.Contracts.RollCallEmployeeStatus; using System; using System.Collections.Generic; namespace Company.Domain.RollCallEmployeeStatusAgg { public interface IRollCallEmployeeStatusRepository : IRepository { List GetAll(); /// /// تغییر بازه فعالیت هنگام ترک کار پرسنل /// /// /// void AdjustRollCallStatusEndDates(List command); /// /// دریافت وضعیت حضور غیاب پرسنل در تاریخ مشخص /// /// /// /// RollCallEmployeeStatus GetByRollCallEmployeeIdAndDate(long rollCallEmployeeId, DateTime date); List GetActiveByWorkshopIdInDate(long workshopId, DateTime startDateGr, DateTime endDateGr); List GetByWorkshopIdInDates(long workshopId, DateTime start, DateTime end); bool IsActiveInPeriod(long employeeId, long workshopId, DateTime startDate, DateTime endDate); void RemoveRange(IEnumerable rollCallEmployeeStatusList); } }