Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnExport_Click(object sender, EventArgs e)
        {
            string     filename = string.Empty;
            FileDialog saver    = new SaveFileDialog();

            saver.Filter = "(*.xls)|*.xls";
            if (saver.ShowDialog() == DialogResult.OK)
            {
                filename = saver.FileName;
                Utility.getResource(filename, "Template.xls");
            }
            else
            {
                return;
            }
            List <HiringTracking> export = GetTarget();
            dynamic excelObj             = Interaction.CreateObject("Excel.Application");

            excelObj.Visible = true;
            dynamic workbook;

            workbook = excelObj.Workbooks.Open(filename);
            HiringTracking.ExportData(workbook, export);
            workbook.Close();
            excelObj.Quit();
            excelObj = null;
            MessageBox.Show("Export Complete!");
        }
 /// <summary>
 /// 根据职位获得Hiring
 /// </summary>
 /// <param name="Position"></param>
 /// <returns></returns>
 public static List<HiringTracking> GetHiringTrackByFinalStatus(HiringTracking.FinalStatusEnum status)
 {
     var pos = from p in HiringTrackingDataSet
               where p.FinalStatus == status && !p.IsDel
               select p;
     return pos.ToList();
 }
Example #3
0
        /// <summary>
        /// Get Statistic Info
        /// </summary>
        /// <param name="candideate"></param>
        /// <param name="t"></param>
        private static void Statistic(List <HiringTracking> candideate, PositionStatistic t)
        {
            t.Pipeline = candideate.Count();
            var firstInterview = from p in candideate
                                 where p.FirstInterviewDate != DateTime.MinValue && !p.IsDel
                                 select p;
            var secondInterview = from p in candideate
                                  where p.SecondInterviewDate != DateTime.MinValue && !p.IsDel
                                  select p;
            var thirdInterview = from p in candideate
                                 where p.ThirdInterviewDate != DateTime.MinValue && !p.IsDel
                                 select p;

            var firstInterviewPass = from p in candideate
                                     where HiringTracking.InterviewPassCheck(p.FirstInterviewResult) && !p.IsDel
                                     select p;
            var secondInterviewPass = from p in candideate
                                      where HiringTracking.InterviewPassCheck(p.SecondInterviewResult) && !p.IsDel
                                      select p;
            var thirdInterviewPass = from p in candideate
                                     where HiringTracking.InterviewPassCheck(p.ThirdInterviewResult) && !p.IsDel
                                     select p;


            if (t.Pipeline != 0)
            {
                t.CVpass = t.Pipeline / firstInterview.Count();
            }
            t.FirstInterviewCount  = firstInterview.Count();
            t.SecondInterviewCount = secondInterview.Count();
            t.ThirdInterviewCount  = thirdInterview.Count();
            t.FirstPass            = firstInterviewPass.Count();
            t.SecondPass           = secondInterviewPass.Count();
            t.ThirdPass            = thirdInterviewPass.Count();

            var Onboard = from p in candideate
                          where p.FinalStatus == HiringTracking.FinalStatusEnum.Onboard && !p.IsDel
                          select p;

            t.Onboard = Onboard.Count();

            var RejectOffer = from p in candideate
                              where p.FinalStatus == HiringTracking.FinalStatusEnum.RejectOffer && !p.IsDel
                              select p;

            t.RejectOffer = RejectOffer.Count();

            var OpenOffer = from p in candideate
                            where p.FinalStatus == HiringTracking.FinalStatusEnum.OpenOffer && !p.IsDel
                            select p;

            t.OpenOffer = OpenOffer.Count();

            var ANOB = from p in candideate
                       where p.FinalStatus == HiringTracking.FinalStatusEnum.ANOB && !p.IsDel
                       select p;

            t.ANOB = ANOB.Count();
        }
Example #4
0
        /// <summary>
        /// Import Data From GOM
        /// </summary>
        /// <param name="workbook"></param>
        private void ImportData(dynamic workbook)
        {
            List<HiringTracking> rawData = new List<HiringTracking>();
            dynamic ActiveSheet = workbook.Sheets(1);
            int rowCount = 4;
            while (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.No).Text))
            {
                HiringTracking Rec = new HiringTracking();
                Rec.No = ActiveSheet.Cells(rowCount, ColPos.No).Text;
                Rec.Name = ActiveSheet.Cells(rowCount, ColPos.Name).Text;
                Rec.Position = ActiveSheet.Cells(rowCount, ColPos.Position).Text;
                Rec.Position = Rec.Position.Trim();

                Rec.Channel = Utility.GetEnum<HiringTracking.ChannelEnum>(ActiveSheet.Cells(rowCount, ColPos.Channel).Text, HiringTracking.ChannelEnum.Agency);
                Rec.Contact = ActiveSheet.Cells(rowCount, ColPos.PhoneNumber).Text;
                Rec.University = ActiveSheet.Cells(rowCount, ColPos.University).Text;

                if (!String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.Language_EN).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.EN;
                if (!String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.Language_CN).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.CN;
                if (!String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.Language_JP).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.JP;
                if (!String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.Language_KR).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.KR;
                if (!String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.Language_Other).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.Other;
                Rec.ITBackground = !String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.ITBakcground).Text);
                Rec.MarketBackground = !String.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ColPos.MarketBackground).Text);

                Rec.ScreenDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ColPos.ScreenData));

                Rec.FirstInterviewDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ColPos.firstInterviewDate));
                Rec.FirstInterviewer = ActiveSheet.Cells(rowCount, ColPos.firstInterviewer).Text;
                Rec.FirstInterviewResult = Utility.GetEnum<HiringTracking.InterviewResultEnum>(ActiveSheet.Cells(rowCount, ColPos.firstInterviewresult).Text, HiringTracking.InterviewResultEnum.NotAvaliable);

                Rec.SecondInterviewDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ColPos.secondInterviewDate));
                Rec.SecondInterviewer = ActiveSheet.Cells(rowCount, ColPos.secondInterviewer).Text;
                Rec.SecondInterviewResult = Utility.GetEnum<HiringTracking.InterviewResultEnum>(ActiveSheet.Cells(rowCount,ColPos.secondnterviewresult).Text, HiringTracking.InterviewResultEnum.NotAvaliable);

                Rec.ThirdInterviewDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ColPos.thirdInterviewDate));
                Rec.ThirdInterviewer = ActiveSheet.Cells(rowCount, ColPos.thirdInterviewer).Text;
                Rec.ThirdInterviewResult = Utility.GetEnum<HiringTracking.InterviewResultEnum>(ActiveSheet.Cells(rowCount, ColPos.thirdnterviewresult).Text, HiringTracking.InterviewResultEnum.NotAvaliable);

                Rec.OfferOfferDate = Utility.GetDate(ActiveSheet.Cells(rowCount,ColPos.offerofferdate));
                Rec.OnboardDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ColPos.onboarddate));
                Rec.RejectOfferReason = ActiveSheet.Cells(rowCount, ColPos.rejectofferreason).Text;

                Rec.FinalStatus = Utility.GetEnum<HiringTracking.FinalStatusEnum>(ActiveSheet.Cells(rowCount, ColPos.finalstatus).Text, HiringTracking.FinalStatusEnum.UnderScreen);
                rawData.Add(Rec);
                rowCount++;
            }
            XmlSerializer xml = new XmlSerializer(typeof(List<HiringTracking>));
            xml.Serialize(new StreamWriter(SystemManager.HiringTrackingXmlFilename), rawData);
            DataCenter.HiringTrackingDataSet = rawData;
            DataCenter.ReCompute();
        }
        /// <summary>
        /// Import Data From GOM
        /// </summary>
        /// <param name="workbook"></param>
        private void ImportData(dynamic workbook)
        {
            List<HiringTracking> rawData = new List<HiringTracking>();
            dynamic ActiveSheet = workbook.Sheets(1);
            int rowCount = 4;
            while (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.No).Text))
            {
                HiringTracking Rec = new HiringTracking();
                Rec.No = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.No).Text;
                Rec.Name = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Name).Text;
                Rec.Position = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Position).Text;
                Rec.Position = Rec.Position.Trim();

                Rec.Channel = Utility.GetEnum<HiringTracking.ChannelEnum>(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Channel).Text, HiringTracking.ChannelEnum.Agency);
                Rec.Contact = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.PhoneNumber).Text;
                Rec.University = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.University).Text;

                if (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Language_EN).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.EN;
                if (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Language_CN).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.CN;
                if (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Language_JP).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.JP;
                if (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Language_KR).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.KR;
                if (!string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.Language_Other).Text)) Rec.Language = Rec.Language | HiringTracking.LanguageEnum.Other;
                Rec.ITBackground = !string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.ITBakcground).Text);
                Rec.MarketBackground = !string.IsNullOrEmpty(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.MarketBackground).Text);

                Rec.ScreenDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.ScreenData));

                Rec.FirstInterviewDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.firstInterviewDate));
                Rec.FirstInterviewer = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.firstInterviewer).Text;
                Rec.FirstInterviewResult = Utility.GetEnum<HiringTracking.InterviewResultEnum>(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.firstInterviewresult).Text, HiringTracking.InterviewResultEnum.NotAvaliable);

                Rec.SecondInterviewDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.secondInterviewDate));
                Rec.SecondInterviewer = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.secondInterviewer).Text;
                Rec.SecondInterviewResult = Utility.GetEnum<HiringTracking.InterviewResultEnum>(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.secondInterviewresult).Text, HiringTracking.InterviewResultEnum.NotAvaliable);

                Rec.ThirdInterviewDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.thirdInterviewDate));
                Rec.ThirdInterviewer = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.thirdInterviewer).Text;
                Rec.ThirdInterviewResult = Utility.GetEnum<HiringTracking.InterviewResultEnum>(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.thirdInterviewresult).Text, HiringTracking.InterviewResultEnum.NotAvaliable);

                Rec.OfferOfferDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.offerofferdate));
                Rec.OnboardDate = Utility.GetDate(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.onboarddate));
                Rec.RejectOfferReason = ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.rejectofferreason).Text;

                Rec.FinalStatus = Utility.GetEnum<HiringTracking.FinalStatusEnum>(ActiveSheet.Cells(rowCount, ViewStyleSheet.ColPos.finalstatus).Text, HiringTracking.FinalStatusEnum.UnderScreen);
                rawData.Add(Rec);
                rowCount++;
            }
            XmlSerializer xml = new XmlSerializer(typeof(List<HiringTracking>));
            xml.Serialize(new StreamWriter(SystemManager.HiringTrackingXmlFilename), rawData);
            DataCenter.HiringTrackingDataSet = rawData;
            DataCenter.ReCalulatePositionStatisti((x)=> { return true; });
        }
 public frmCandidateEditor(string No)
 {
     InitializeComponent();
     if (!string.IsNullOrEmpty(No))
     {
         IsCreate = false;
         hiring   = DataCenter.HiringTrackingDataSet.Find((x) => { return(x.No == No); });
     }
     else
     {
         IsCreate = true;
     }
 }
 public frmCandidateEditor(string No)
 {
     InitializeComponent();
     if (!string.IsNullOrEmpty(No))
     {
         IsCreate = false;
         hiring = DataCenter.HiringTrackingDataSet.Find((x) => { return x.No == No; });
     }
     else
     {
         IsCreate = true;
     }
 }
 /// <summary>
 /// 根据职位获得Hiring
 /// </summary>
 /// <param name="Position"></param>
 /// <returns></returns>
 public static List<HiringTracking> GetHiringTrackByPosition(string Position, HiringTracking.FinalStatusEnum FinalStatus)
 {
     var pos = from p in HiringTrackingDataSet
               where p.Position == Position && p.FinalStatus == FinalStatus && !p.IsDel
               select p;
     return pos.ToList();
 }
 /// <summary>
 /// 数据绑定
 /// </summary>
 /// <param name="item"></param>
 /// <param name="record"></param>
 private static void BindHiringTrackingListViewItem(ListViewItem item, HiringTracking record)
 {
     if (CurrentHiringTrackingFields.ToList().Contains("No"))
     {
         item.Text = record.No;
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Position"))
     {
         item.SubItems.Add(record.Position);
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Name"))
     {
         item.SubItems.Add(record.Name);
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Contact"))
     {
         item.SubItems.Add(record.Contact);
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Language"))
     {
         item.SubItems.Add(record.Language.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("University"))
     {
         item.SubItems.Add(record.University.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Major"))
     {
         item.SubItems.Add(record.Major.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Market Background"))
     {
         item.SubItems.Add(record.MarketBackground.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("IT Background"))
     {
         item.SubItems.Add(record.ITBackground.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Comments"))
     {
         item.SubItems.Add(record.Comments.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Screen Date"))
     {
         item.SubItems.Add(record.ScreenDate.ToString(SystemManager.DataTimeFormat));
     }
     if (CurrentHiringTrackingFields.ToList().Contains("1st Interview Date"))
     {
         item.SubItems.Add(record.FirstInterviewDate.ToString(SystemManager.DataTimeFormat));
     }
     if (CurrentHiringTrackingFields.ToList().Contains("1st Interviewer"))
     {
         item.SubItems.Add(record.FirstInterviewer);
     }
     if (CurrentHiringTrackingFields.ToList().Contains("1st interview Result"))
     {
         item.SubItems.Add(record.FirstInterviewResult.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("2nd Interview Date"))
     {
         item.SubItems.Add(record.SecondInterviewDate.ToString(SystemManager.DataTimeFormat));
     }
     if (CurrentHiringTrackingFields.ToList().Contains("2nd Interviewer"))
     {
         item.SubItems.Add(record.SecondInterviewer.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("2nd interview result"))
     {
         item.SubItems.Add(record.SecondInterviewResult.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("3rd Interview Date"))
     {
         item.SubItems.Add(record.ThirdInterviewDate.ToString(SystemManager.DataTimeFormat));
     }
     if (CurrentHiringTrackingFields.ToList().Contains("3rd Interviewer"))
     {
         item.SubItems.Add(record.ThirdInterviewer.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("3rd Interview result"))
     {
         item.SubItems.Add(record.ThirdInterviewResult.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Final Status"))
     {
         item.SubItems.Add(record.FinalStatus.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Channel"))
     {
         item.SubItems.Add(record.Channel.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Resume"))
     {
         item.SubItems.Add(record.Resume.ToString());
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Offer offer date"))
     {
         item.SubItems.Add(record.OfferOfferDate.ToString(SystemManager.DataTimeFormat));
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Onboard date"))
     {
         item.SubItems.Add(record.OnboardDate.ToString(SystemManager.DataTimeFormat));
     }
     if (CurrentHiringTrackingFields.ToList().Contains("Reject offer reason"))
     {
         item.SubItems.Add(record.RejectOfferReason.ToString());
     }
 }
        /// <summary>
        /// Phase图
        /// </summary>
        private void InitPhaseChart()
        {
            if (DataCenter.HiringTrackingDataSet.Count == 0)
            {
                return;
            }
            var QuerySeries = new Series("Pileline")
            {
                ChartType  = SeriesChartType.Line,
                XValueType = ChartValueType.String,
                YValueType = ChartValueType.Int32
            };

            PhaseChart.Series.Clear();
            PhaseChart.Series.Add(QuerySeries);

            List <HiringTracking> Target;

            if (Position == SystemManager.strTotal)
            {
                Target = DataCenter.GetHiringTrackingDataSet();
            }
            else
            {
                Target = DataCenter.GetHiringTrackByPosition(Position);
            }

            var queryPoint = new DataPoint();

            queryPoint.SetValueXY("Pipeline", Target.Count());
            PhaseChart.Series[0].Points.Add(queryPoint);


            queryPoint = new DataPoint();
            queryPoint.SetValueXY("ScreenPass", Target.Count((x) =>
            {
                return(!string.IsNullOrEmpty(x.FirstInterviewer));
            }));
            PhaseChart.Series[0].Points.Add(queryPoint);

            queryPoint = new DataPoint();
            queryPoint.SetValueXY("1stPass", Target.Count((x) =>
            {
                return(HiringTracking.InterviewPassCheck(x.FirstInterviewResult));
            }));
            PhaseChart.Series[0].Points.Add(queryPoint);


            queryPoint = new DataPoint();
            queryPoint.SetValueXY("2ndPass", Target.Count((x) =>
            {
                return(HiringTracking.InterviewPassCheck(x.SecondInterviewResult));
            }));
            PhaseChart.Series[0].Points.Add(queryPoint);


            queryPoint = new DataPoint();
            queryPoint.SetValueXY("3rdPass", Target.Count((x) =>
            {
                return(HiringTracking.InterviewPassCheck(x.ThirdInterviewResult));
            }));
            PhaseChart.Series[0].Points.Add(queryPoint);

            queryPoint = new DataPoint();
            queryPoint.SetValueXY("OB", Target.Count((x) =>
            {
                return(x.FinalStatus == HiringTracking.FinalStatusEnum.Onboard);
            }));
            PhaseChart.Series[0].Points.Add(queryPoint);
        }
 /// <summary>
 /// 数据绑定
 /// </summary>
 /// <param name="item"></param>
 /// <param name="record"></param>
 private static void BindHiringTrackingListViewItem(ListViewItem item, HiringTracking record)
 {
     if (CurrentHiringTrackingFields.ToList().Contains("No")) item.Text = record.No;
     if (CurrentHiringTrackingFields.ToList().Contains("Position")) item.SubItems.Add(record.Position);
     if (CurrentHiringTrackingFields.ToList().Contains("Name")) item.SubItems.Add(record.Name);
     if (CurrentHiringTrackingFields.ToList().Contains("Contact")) item.SubItems.Add(record.Contact);
     if (CurrentHiringTrackingFields.ToList().Contains("Language")) item.SubItems.Add(record.Language.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("University")) item.SubItems.Add(record.University.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Major")) item.SubItems.Add(record.Major.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Market Background")) item.SubItems.Add(record.MarketBackground.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("IT Background")) item.SubItems.Add(record.ITBackground.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Comments")) item.SubItems.Add(record.Comments.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Screen Date")) item.SubItems.Add(record.ScreenDate.ToString(SystemManager.DataTimeFormat));
     if (CurrentHiringTrackingFields.ToList().Contains("1st Interview Date")) item.SubItems.Add(record.FirstInterviewDate.ToString(SystemManager.DataTimeFormat));
     if (CurrentHiringTrackingFields.ToList().Contains("1st Interviewer")) item.SubItems.Add(record.FirstInterviewer);
     if (CurrentHiringTrackingFields.ToList().Contains("1st interview Result")) item.SubItems.Add(record.FirstInterviewResult.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("2nd Interview Date")) item.SubItems.Add(record.SecondInterviewDate.ToString(SystemManager.DataTimeFormat));
     if (CurrentHiringTrackingFields.ToList().Contains("2nd Interviewer")) item.SubItems.Add(record.SecondInterviewer.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("2nd interview result")) item.SubItems.Add(record.SecondInterviewResult.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("3rd Interview Date")) item.SubItems.Add(record.ThirdInterviewDate.ToString(SystemManager.DataTimeFormat));
     if (CurrentHiringTrackingFields.ToList().Contains("3rd Interviewer")) item.SubItems.Add(record.ThirdInterviewer.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("3rd Interview result")) item.SubItems.Add(record.ThirdInterviewResult.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Final Status")) item.SubItems.Add(record.FinalStatus.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Channel")) item.SubItems.Add(record.Channel.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Resume")) item.SubItems.Add(record.Resume.ToString());
     if (CurrentHiringTrackingFields.ToList().Contains("Offer offer date")) item.SubItems.Add(record.OfferOfferDate.ToString(SystemManager.DataTimeFormat));
     if (CurrentHiringTrackingFields.ToList().Contains("Onboard date")) item.SubItems.Add(record.OnboardDate.ToString(SystemManager.DataTimeFormat));
     if (CurrentHiringTrackingFields.ToList().Contains("Reject offer reason")) item.SubItems.Add(record.RejectOfferReason.ToString());
 }