using ReAct_PME.Domain;


namespace ReAct_PME.Application
{
    public partial interface IDT_WORK_FORCE_ROLEService
    {
		#region CRUD de la table DT_WORK_FORCE_ROLE
		Task<bool> Create_Async(DT_WORK_FORCE_ROLE_DTO dt_work_force_role);
		Task<bool> Update_Async(Guid ID_WORK_FORCE_ROLE, DT_WORK_FORCE_ROLE_DTO dt_work_force_role);
		Task<bool> Delete_Async(Guid ID_WORK_FORCE_ROLE);
		Task<IEnumerable<DT_WORK_FORCE_ROLE_DTO>> GetAll_Async(bool IsActifOnly=false);
		Task<DT_WORK_FORCE_ROLE_DTO?> GetById_Async(Guid ID_WORK_FORCE_ROLE);
		#endregion

		#region By_ID_WORK_FORCE
		Task<IEnumerable<DT_WORK_FORCE_ROLE_DTO>> GetAll_By_ID_WORK_FORCE_Async(Guid ID_WORK_FORCE);
		Task<int> GetCount_By_ID_WORK_FORCE_Async(Guid ID_WORK_FORCE);
		Task<bool> Delete_By_ID_WORK_FORCE_Async(Guid ID_WORK_FORCE);
		#endregion

		#region By_ID_ROLE
		Task<IEnumerable<DT_WORK_FORCE_ROLE_DTO>> GetAll_By_ID_ROLE_Async(Guid ID_ROLE);
		Task<int> GetCount_By_ID_ROLE_Async(Guid ID_ROLE);
		Task<bool> Delete_By_ID_ROLE_Async(Guid ID_ROLE);
		#endregion



    }
}
