using Ease.Core.Model; using System; using System.Collections.Generic; using System.Data; namespace HRM.BO { public class RecruitementProcess : BasicBaseObject { #region Constructor public RecruitementProcess() { _code = ""; _description = String.Empty; _startDate = DateTime.MinValue; _endDate = DateTime.MinValue; _processStatus = EnumRecruitementProcess.None; _allCandidates = new List< Candidate >(); _allRecruitementSteps = new List(); _allRecruitementSteps = null; } #endregion #region Properties private string _code; private string _description; private DateTime _startDate; private DateTime _endDate; private EnumRecruitementProcess _processStatus; public int requisitionID { get; set;} private List < Candidate > _allCandidates; private List< RecruitementStep > _allRecruitementSteps; public string Code { get { return _code; } set { _code = value; } } public string Description { get { return _description; } set { _description = value; } } public DateTime StartDate { get { return _startDate; } set { _startDate = value; } } public DateTime EndDate { get { return _endDate; } set { _endDate = value; } } public EnumRecruitementProcess ProcessStatus { get { return _processStatus; } set { _processStatus = value; } } public List AllCandidates { get; set; } public List Steps { get; set; } #endregion } #region IRecruitementProcessService public interface IRecruitementProcessService { List GetRecruitementSteps(int recruitementID); List GetRecruitementStepsWithSession(int recruitementID); RecruitementProcess GetByRequisitionID(int procID); List GetInterveiwSessions(int requisitionID); List getSessionActiveCandidatesByStepID(int StepID); InterviewSession GetInterveiwSession(int interviewSessionID); List GetmemberWiseMarkBySetpID(int stepID); List GetmemberWiseMarkBySessionID(int interviewSessionID); RecruitementStep GetRStep(int stepID); RecruitementStep GetRStep(int recruitementid, int stepSerial); InterviewSession SaveInterviewSession(InterviewSession intrSession); void CompleteInterviewSession(InterviewSession item); void CompleteRecruitementStep(RecruitementStep item); void SaveMembersMarkByMember(InterviewSession session); void CompleteMembersMarkByMember(InterviewSession session); DataTable GetInterveiwSessionsByBoardMember(int employeeid, EnumBaordMemberMarkEntryStatus MarkEntrystatus); void SendMailInThread(InterviewSession session); void RescheduleInterViewSession(InterviewSession item); void CancelInterViewSession(InterviewSession item); void DeleteStep(int stepID); void Save(RecruitementProcess obRecruProc); void SaveCandidatesToProcess(int processID, List allCans); List< RecruitementProcess >Get(); RecruitementProcess GetByProcessId(int procID); RecruitementProcess GetProcessID(int status, int empID, int stepID); RecruitementProcess GetProcess(int processID, int stepID, int empID); RecruitementProcess GetProcess(int status, int empID); List< RecruitementStep > Get(int processID); List< BoardMember > GetBoardMembers(int processID,int stepID); List< Candidate > GetCanditates(int processID); List GetCanditates(int processID,int assessmentStatus,int logInID); Candidate GetByCandediateID(int candidateID); //void Delete(RecruitementProcess obRecruProc); //List< MemberWiseMark > Get(int stepID, int processID); void SaveMemberWiseMark(InterviewSession session); // void Save(RecruitementProcess obRecruProc, List< RecruitementStep > stepItemsToDelete); List GetSelectedCandidates(int processID, int stepID, bool flag); List GetSelectedCandidates(int processID, int stepID); List GetRecruitmentType(); DataSet GetShortListedCandidates(int processID); RecruitementStep GetRecruitmentStep(int processID,int serial); void UpdateStep(RecruitementStep obStep); void UpdateProcess(RecruitementProcess obProcess); RecruitementProcess CheckCode(string code); List GetProcesses(string query); List GetByAssesmentStatus(int assessmentStatus,int nEmpID); RecruitementProcess GetProcess(int status); RecruitementStep GetRecruitmentStep(int processID, int StepStatus,int assessmentStatus); RecruitmentType GetType(int id); RecruitementStep GetRecruitmentStepWithStepID(int processID, int stepID); List GetCandidateMarksDetails(int candidateId); List GetCandidateAverageMarks(string candidateIds); void UpdateInterviewStartDate(InterviewSession session); DataTable GetInterViewInforBycandidateId(int jobId, int candidateId); void UpdateInterviewAssesmentMark(RecruitmentMarkExtend obProcess); } #endregion }