public void writeDataToCsv(TableVersion.Value tableVersion, IList <IVersionAgnostic> csvDataList, string fileName, IList <string> columnNames)
        {
            var streamWriter = new StreamWriter(fileName);

            streamWriter.Write(getCsv(tableVersion, csvDataList, columnNames));
            streamWriter.Close();
        }
Example #2
0
        public IList <IVersionAgnostic> getCsvData(TableVersion.Value tableVersion, string searchName, Tail tail, Ear ear, Nose nose,
                                                   DateAndTime dateAndTime, GeoLocationData latitudeData, GeoLocationData longitudeData)
        {
            var dbContext = new Model1();
            var builder   = new Builder();

            IQueryable <IVersionAgnostic> csvData = null;

            if (tableVersion == TableVersion.Value.Version1)
            {
                csvData = dbContext.csvWithDataVersion1.AsQueryable();
            }
            else
            {
                csvData = dbContext.csvWithDataVersion2.AsQueryable();
            }

            csvData = builder.addNameFilter(csvData, searchName);
            csvData = builder.tailHighFilter(csvData, tail.highData);
            csvData = builder.tailLowFilter(csvData, tail.lowData);
            csvData = builder.earHighFilter(csvData, ear.highData);
            csvData = builder.earLowFilter(csvData, ear.lowData);
            csvData = builder.noseHighFilter(csvData, nose.highData);
            csvData = builder.noseLowFilter(csvData, nose.lowData);
            csvData = builder.DateFilter(csvData, dateAndTime);
            csvData = builder.LatitudeFilter(csvData, latitudeData);
            csvData = builder.LongitudeFilter(csvData, longitudeData);
            return(csvData.ToList());
        }
 public DataTable getDataTable(TableVersion.Value tableVersion, string searchName, Tail tail, Ear ear, Nose nose,
                               DateAndTime dateAndTime, GeoLocationData latitudeData, GeoLocationData longitudeData)
 {
     return(dataTableFactory.getDataTable(
                tableVersion,
                getCsvData(tableVersion, searchName, tail, ear, nose, dateAndTime, latitudeData, longitudeData),
                csvDataProvider.getCsvColumnNames(tableVersion)));
 }
 public void generateCsv(TableVersion.Value tableVersion, string fileName, string searchName, Tail tail, Ear ear, Nose nose,
                         DateAndTime dateAndTime, GeoLocationData latitudeData, GeoLocationData longitudeData)
 {
     csvDataToCsvTransformer.writeDataToCsv(
         tableVersion,
         getCsvData(tableVersion, searchName, tail, ear, nose, dateAndTime, latitudeData, longitudeData),
         fileName,
         csvDataProvider.getCsvColumnNames(tableVersion));
 }
        private DataRow getRow(TableVersion.Value tableVersion, IVersionAgnostic csvData, IList <string> csvColumnNames, DataTable dataTable)
        {
            var dataRow = dataTable.NewRow();

            if (tableVersion == TableVersion.Value.Version1)
            {
                return(getVersion1Row(csvData, csvColumnNames, dataRow));
            }

            return(getVersion2Row(csvData, csvColumnNames, dataRow));
        }
        public DataTable getDataTable(TableVersion.Value tableVersion, IList <IVersionAgnostic> csvDataList, IList <string> csvColumnNames)
        {
            var dataTable = new DataTable();

            dataTable.Columns.AddRange(getDataColumns(csvColumnNames));

            for (int rowCount = 0; rowCount < csvDataList.Count; rowCount++)
            {
                dataTable.Rows.Add(getRow(tableVersion, csvDataList[rowCount], csvColumnNames, dataTable));
            }

            return(getDataTableWithCorrectDataTypesForColumns(dataTable));
        }
        public string getCsv(TableVersion.Value tableVersion, IList <IVersionAgnostic> csvDataList, IList <string> columnNames)
        {
            var stringBuilder = new StringBuilder();

            stringBuilder.AppendLine(String.Join(",", columnNames));

            foreach (var item in csvDataList)
            {
                stringBuilder.AppendLine(getCsvRow(tableVersion, item, columnNames));
            }

            return(stringBuilder.ToString().TrimEnd(Environment.NewLine.ToCharArray()));
        }
Example #8
0
        public IList <string> getCsvColumnNames(TableVersion.Value tableVersion)
        {
            Type type;

            if (tableVersion == TableVersion.Value.Version1)
            {
                type = typeof(csvWithDataVersion1);
            }
            else
            {
                type = typeof(csvWithDataVersion2);
            }

            return(type.
                   GetProperties().
                   Select(x => x.Name).
                   ToList());
        }
 private string getCsvRow(TableVersion.Value tableVersion, IVersionAgnostic csvData, IList <string> csvColumnNames)
 {
     if (tableVersion == TableVersion.Value.Version1)
     {
         var csvDataList = new List <string>();
         for (int columnCount = 0; columnCount < csvColumnNames.Count; columnCount++)
         {
             csvDataList.Add(csvWithDataVersionPropertyValueService.version1(csvData, csvColumnNames[columnCount]).ToString());
         }
         return(String.Join(",", csvDataList));
     }
     else
     {
         var csvDataList = new List <string>();
         for (int columnCount = 0; columnCount < csvColumnNames.Count; columnCount++)
         {
             csvDataList.Add(csvWithDataVersionPropertyValueService.version2(csvData, csvColumnNames[columnCount]).ToString());
         }
         return(String.Join(",", csvDataList));
     }
 }
 private IList <IVersionAgnostic> getCsvData(TableVersion.Value tableVersion, string searchName, Tail tail, Ear ear, Nose nose,
                                             DateAndTime dateAndTime, GeoLocationData latitudeData, GeoLocationData longitudeData)
 {
     return(csvDataProvider.getCsvData(tableVersion, searchName, tail, ear, nose,
                                       dateAndTime, latitudeData, longitudeData));
 }