public bool ValidateRecord(string record)
        {
            bool result = true;

            string[] recordFields = record.Split(',');

            result = isDepartmentNameValid(recordFields[0]);
            if (result)
            {
                result = isCrewCodeValid(recordFields[1]);
            }
            if (result)
            {
                result = isEmployeeNameValid(recordFields[2]);
            }
            if (result)
            {
                result = isStatusValid(recordFields[3]);
            }
            if (result)
            {
                result = isEmployeeNumberValid(recordFields[4]);
            }
            if (result)
            {
                result = isRoleTypeValid(recordFields[5]);
            }
            if (result)
            {
                result = isSeniorityDateValid(recordFields[6]);
            }
            if (result)
            {
                result = isSupervisorNameValid(recordFields[7], recordFields[5]);
            }
            if (result)
            {
                result = isSupervisorNumberValid(recordFields[4], recordFields[8], recordFields[5]);
            }

            if (result)
            {
                DataFileRecordModel dataFileModel = CreateDataFileRecordModel(record);

                if (isDuplicatedRecord(recordFields[4]))
                {
                    DuplicatedRecords.Add(dataFileModel);
                }
                else
                {
                    ValidRecords.Add(dataFileModel);
                }
            }
            else
            {
                InvalidRecords.Add(record);
            }

            return(result);
        }
 public List <DataFileRecordModel> GetDuplicatedWorkerRecords()
 {
     return(DuplicatedRecords.Where(vr => vr.Role == "Worker").ToList());
 }
 public List <DataFileRecordModel> GetDuplicatedSupervisorRecords()
 {
     return(DuplicatedRecords.Where(vr => vr.Role == "Supervisor").ToList());
 }