Exemple #1
1
        private void WriteComponentToTheFile(CsvWriter writer, DataTemplateComposite outputDataTemplateComposite)
        {
            foreach (var component in outputDataTemplateComposite.Cast<DataTemplateComponent>())
            {
                if (component.GetType() == typeof(DataTemplateComposite))
                {
                    writer.WriteField(""); writer.WriteField("");
                    writer.WriteField("Name"); writer.WriteField(component.Name);
                    writer.WriteField(""); writer.WriteField("");
                    writer.WriteField(""); writer.WriteField("");
                    writer.NextRecord();
                    WriteComponentToTheFile(writer, component as DataTemplateComposite);
                }
                else
                {
                    if (component.Component == null)
                    {
                        writer.WriteField("Position"); writer.WriteField("n/a");
                        writer.WriteField("Name"); writer.WriteField(component.Name);
                        writer.WriteField("Type"); writer.WriteField("n/a");
                        writer.WriteField("Value"); writer.WriteField("n/a");
                        writer.NextRecord();
                        break;
                    }

                    writer.WriteField("Position"); writer.WriteField(component.Component.Pos);
                    writer.WriteField("Name"); writer.WriteField(component.Component.Name);
                    writer.WriteField("Type"); writer.WriteField(component.Component.TypeOfVariable.ToString());
                    writer.WriteField("Value"); writer.WriteField(component.Component.StringValue().Trim());
                    writer.NextRecord();
                }
            }
        }
        public void ExportProductsTest()
        {
            var searchService = GetSearchService();
            var categoryService = GetCategoryService();
            var itemService = GetItemService();
            var result = searchService.Search(new SearchCriteria { CatalogId = "Sony", CategoryId = "66b58f4c-fd62-4c17-ab3b-2fb22e82704a", Skip = 0, Take = 10, ResponseGroup = coreModel.SearchResponseGroup.WithProducts });
            var importConfiguration = GetMapConfiguration();

            using (var csvWriter = new CsvWriter(new StreamWriter(@"c:\Projects\VCF\vc-community\PLATFORM\Modules\Catalog\VirtoCommerce.CatalogModule.Test\products.csv")))
            {
                var csvProducts = new List<CsvProduct>();
                foreach (var product in result.Products)
                {
                    var fullLoadedProduct = itemService.GetById(product.Id, ItemResponseGroup.ItemLarge);
                    csvProducts.Add(new CsvProduct(fullLoadedProduct, null, null, null));
                }

                importConfiguration.PropertyCsvColumns = csvProducts.SelectMany(x => x.PropertyValues).Select(x => x.PropertyName).Distinct().ToArray();
                csvWriter.Configuration.Delimiter = ";";
                csvWriter.Configuration.RegisterClassMap(new CsvProductMap(importConfiguration));

                csvWriter.WriteHeader<CsvProduct>();
                foreach (var product in csvProducts)
                {
                    csvWriter.WriteRecord(product);
                }

            }
        }
        public FileStreamResult TranslationsCsv(bool admin = false)
        {
            var ms = new MemoryStream();
            var sw = new StreamWriter(ms);
            var csv = new CsvWriter(sw);

            var translations = (from t in db.Translations
                where t.Area == (admin ? TranslationArea.Backend : TranslationArea.Frontend)
                select new
                       {
                           t.LanguageCode,
                           t.Key,
                           t.Value
                       }).ToList();

            csv.WriteHeader(translations.First().GetType());
            foreach (var trans in translations)
            {
                csv.WriteRecord(trans);
            }

            sw.Flush();
            ms.Seek(0, SeekOrigin.Begin);
            var result = new FileStreamResult(ms, "application/octet-stream");
            result.FileDownloadName = "Translations_" + DateTime.Now.ToString("yyyyMMddTHHmmss") + ".csv";
            return result;
        }
Exemple #4
0
        private static void Main()
        {
            using (var csv = new CsvWriter(new StreamWriter("results.csv", false, Encoding.UTF8)))
            {
                WriteHeader(csv);

                var languagesToTest = new[] {Languages.EnglishUK, Languages.GermanGermany};
                foreach (var language in languagesToTest)
                {
                    var results = new AutoCorrectTester(language).Run();

                    foreach (var result in results)
                    {
                        foreach (var testResult in result.Results)
                        {
                            csv.WriteField(language);
                            csv.WriteField(result.AutoCompleteMethod);
                            csv.WriteField(result.MemorySize);
                            csv.WriteField(testResult.Misspelling);
                            csv.WriteField(testResult.TargetWord);
                            csv.WriteField(testResult.CharactersTyped);
                            csv.WriteField(testResult.TargetWord.Length);
                            csv.WriteField(testResult.TimeTaken.Milliseconds);
                            csv.WriteField(testResult.CharactersTyped != -1
                                ? (double) testResult.CharactersTyped/testResult.TargetWord.Length
                                : 2d);
                            csv.NextRecord();
                        }
                    }
                }
            }
        }
 public void encoding_gets_encoding()
 {
     using (var writer = new CsvWriter(new MemoryStream(), Encoding.ASCII))
     {
         Assert.Same(Encoding.ASCII, writer.Encoding);
     }
 }
 public void record_number_is_zero_by_default()
 {
     using (var writer = new CsvWriter(new MemoryStream()))
     {
         Assert.Equal(0, writer.RecordNumber);
     }
 }
        public void CompareChangingValues()
        {
            UserAssist assist = new UserAssist();
            using(CsvWriter writer = new CsvWriter(new StreamWriter(File.Open("ChangingValues.csv", FileMode.Create))))
            {
                writer.WriteHeader<ValueLetter>();
                var snap1Values =
                    assist.Snapshot("snap1.csv")
                    .FindProgram("cmd.exe")
                    .GetValue();

                WaitOpenThenKill("cmd.exe");

                var snap2Values = assist.Snapshot("snap2.csv")
                                        .FindProgram("cmd.exe")
                                        .GetValue();
                for(int i = 0 ; i < snap1Values.Length ; i++)
                {
                    writer.WriteRecord(new ValueLetter()
                    {
                        Position = i,
                        Value1 = snap1Values[i].ToString("X2"),
                        Value2 = snap2Values[i].ToString("X2"),
                        IsDiff = (snap1Values[i] != snap2Values[i]) ? "x" : ""
                    });
                }
            }
            Process.Start("ChangingValues.csv");
        }
        static void GeneratePerformaceReport()
        {
            var iterations = 50;


            using (var stream = new MemoryStream())
            using (var reader = new StreamReader(stream))
            using (var writer = new StreamWriter(stream))
            using (var csv = new CsvWriter(writer))
            {
                csv.WriteHeader(typeof(PerformaceTestResult));

              /*  csv.WriteRecords(DoTestsForSettings(iterations, false, false, false));
                csv.WriteRecords(DoTestsForSettings(iterations, false, false, true));
                csv.WriteRecords(DoTestsForSettings(iterations, false, true, false));
                csv.WriteRecords(DoTestsForSettings(iterations, false, true, true));


                csv.WriteRecords(DoTestsForSettings(iterations, true, false, false));
                csv.WriteRecords(DoTestsForSettings(iterations, true, false, true));

                csv.WriteRecords(DoTestsForSettings(iterations, true, true, false));
                */
                csv.WriteRecords(DoTestsForSettings(iterations, true, true, true));
                writer.Flush();
                stream.Position = 0;
                var text = reader.ReadToEnd();
                File.WriteAllText("Report.csv", text);
            }
        }
        /// <summary>
        /// Downloads the CSV template for assignments.
        /// </summary>
        /// <author> Cristian Araya Fuentes </author>
        /// <returns> Csv file </returns>
        public FileResult DownloadCSVTemplate()
        {
            String vTemplateFileName = "plantillaAsignacion.csv";
            byte[] vFileSize;
            int vIDEntity = getEntityID(Request.Cookies["Entidad"].Value);
            int vIDPeriod = Int32.Parse(Request.Cookies["Periodo"].Value);

            IEnumerable<DataCSV> vGroups = getGroupesPeriod(vIDPeriod, vIDEntity);

            using (Stream memoryStream = new MemoryStream())
            {
                StreamWriter streamWriter = new StreamWriter(memoryStream, Encoding.UTF8);

                var vWriter = new CsvWriter(streamWriter);
                vWriter.Configuration.Encoding = Encoding.UTF8;
                //Write the CSV's file header
                vWriter.WriteHeader(typeof(DataCSV));

                //Write each group
                foreach (DataCSV group in vGroups)
                {
                    vWriter.WriteRecord(group);
                }

                vWriter.NextRecord();
                streamWriter.Flush();
                memoryStream.Flush();
                memoryStream.Position = 0;
                vFileSize = new byte[memoryStream.Length];
                memoryStream.Read(vFileSize, 0, vFileSize.Length);
                streamWriter.Close();
                streamWriter.Dispose();
            }
            return File(vFileSize, System.Net.Mime.MediaTypeNames.Application.Octet, vTemplateFileName);
        }
Exemple #10
0
        /// <summary>
        /// CSV出力ボタンクリック処理
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnOutputCsv_Click(object sender, EventArgs e)
        {
            // フォルダチェック
            if (!ExistsPath(txtFolderPath.Text)) return;

            // ファイル保存先の指定
            dlgFileSave.FileName = "tree.csv";
            dlgFileSave.Filter = "CSVファイル(*.csv)|*.csv";
            dlgFileSave.Title = "保存先のファイルを指定してください";
            dlgFileSave.RestoreDirectory = true;
            if (dlgFileSave.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            // ファイル取得
            var records = ToCsvRecord(txtFolderPath.Text);

            // CSV出力
            using (var sr = new StreamWriter(dlgFileSave.FileName, false, Encoding.GetEncoding(932)))
            using (var csv = new CsvWriter(sr))
            {
                csv.Configuration.Encoding = Encoding.GetEncoding(932);
                csv.Configuration.AllowComments = false;
                csv.Configuration.HasHeaderRecord = true;
                csv.Configuration.RegisterClassMap<CsvRecordMap>();
                csv.Configuration.QuoteAllFields = true;
                csv.WriteRecords(records);
            }

            MessageBox.Show("終わったよ!");
        }
        private static byte[] GetFile()
        {
            var items = new List<Order>()
                {
                    new Order()
                        {
                            Id = 1,
                            ShippingMethodName= "Test",
                        }
                };

            using (var ms = new MemoryStream())
            using (var sw = new StreamWriter(ms))
            using (var w = new CsvWriter(sw))
            {
                w.WriteField("Order Id");
                w.WriteField("Shipping Method");
                w.WriteField("Tracking Number");
                w.NextRecord();

                foreach (var item in items)
                {
                    w.WriteField(item.Id);
                    w.WriteField(item.ShippingMethodName);
                    w.WriteField("Courier");
                    w.NextRecord();
                }

                sw.Flush();
                var file = ms.ToArray();
                sw.Close();

                return file;
            }
        }
Exemple #12
0
        public void SaveTileMatrix(TileType[,] map, string path)
        {
            IList<TileRecord> records = new List<TileRecord>();

            int cols = map.GetLength(0);
            int rows = map.GetLength(1);

            for (int x = 0; x < cols; x++)
            {
                for (int y = 0; y < rows; y++)
                {
                    TileType type = map[x, y];
                    TileRecord record = Mapper.Map<TileType, TileRecord>(type);

                    record.X = x;
                    record.Y = y;
                    records.Add(record);
                }
            }

            if (File.Exists(path))
            {
                File.Delete(path);
            }

            using (Stream stream = File.OpenWrite(path))
            using (TextWriter textWriter = new StreamWriter(stream))
            using (CsvWriter csvWriter = new CsvWriter(textWriter))
            {
                foreach (TileRecord record in records)
                {
                    csvWriter.WriteRecord(record);
                }
            }
        }
        public void WriteMultipleNamesTest()
        {
            var records = new List<MultipleNamesAttributeClass>
            {
                new MultipleNamesAttributeClass { IntColumn = 1, StringColumn = "one" },
                new MultipleNamesAttributeClass { IntColumn = 2, StringColumn = "two" }
            };

            string csv;
            using( var stream = new MemoryStream() )
            using( var reader = new StreamReader( stream ) )
            using( var writer = new StreamWriter( stream ) )
            using( var csvWriter = new CsvWriter( writer ) )
            {
                csvWriter.Configuration.AttributeMapping<MultipleNamesAttributeClass>();
                csvWriter.WriteRecords( records );

                writer.Flush();
                stream.Position = 0;

                csv = reader.ReadToEnd();
            }

            var expected = string.Empty;
            expected += "int1,string1\r\n";
            expected += "1,one\r\n";
            expected += "2,two\r\n";

            Assert.NotNull( csv );
            Assert.Equal( expected, csv );
        }
        private void writeEmailListToCSV(String[] emails, String CSVFileName)
        {
            try
            {
                using (var sr = new StreamWriter(@CSVFileName))
                {
                    var writer = new CsvWriter(sr);
                    /*-------------------------
                     * HEADER
                     * -----------------------*/
                    writer.WriteField("Email Address");
                    writer.NextRecord();
                    /*-------------------------
                     * Email List
                     * -----------------------*/
                    for(int i=0; i< emails.Length;i++)
                    {
                        writer.WriteField(emails[i]);
                        writer.NextRecord();
                    }

                }
            }
            catch(Exception e)
            {Console.WriteLine("CSV write failed");}
        }
        public void WriteAllRecordsWithMapping()
        {
            var records = new List<CustomObject>
            {
                new CustomObject
                {
                    GuidColumn = new Guid("f96a1c66-4777-4642-86fa-703098065f5f"),
                    IntColumn = 1,
                    StringColumn = "one",
                    CustomTypeColumn = new CustomType
                    {
                        First = 1,
                        Second = 2,
                        Third = 3,
                    },
                },
                new CustomObject
                {
                    GuidColumn = new Guid("06776ed9-d33f-470f-bd3f-8db842356330"),
                    IntColumn = 2,
                    StringColumn = "two",
                    CustomTypeColumn = new CustomType
                    {
                        First = 4,
                        Second = 5,
                        Third = 6,
                    },
                },
            };

            Benchmark.This("CsvWriter.WriteRecords", () =>
            {
                using (var memoryStream = new MemoryStream())
                using (var streamWriter = new StreamWriter(memoryStream))
                using (var writer = new CsvWriter(streamWriter))
                {
                    writer.Configuration.RegisterClassMap<CsvHelperMappingForCustomObject>();

                    writer.WriteRecords(records);

                    streamWriter.Flush();
                }
            })
                .Against.This("FlatFileEngine.Write", () =>
                {
                    var layout = new FlatFileMappingForCustomObject();
                    using (var stream = new MemoryStream())
                    {
                        var factory = new DelimitedFileEngineFactory();

                        var flatFile = factory.GetEngine(layout);

                        flatFile.Write(stream, records);
                    }
                })
                .WithWarmup(1000)
                .For(10000)
                .Iterations()
                .PrintComparison();
        }
        public void GenerateCsvStub(string targetPath)
        {
            Program.Write("Generating CSV stub ...");
            using (var stream = new StreamWriter(targetPath, false, Encoding.UTF8))
            {
                var writer = new CsvWriter(stream, CsvService.GetDefaultCsvConfiguration());

                var dummyLine = new Dictionary<string, string>();
                foreach (var column in _configuration.Columns)
                {
                    dummyLine[column.Header] = "";
                }

                foreach (var field in dummyLine.Keys)
                {
                    writer.WriteField(field);
                }
                writer.NextRecord();
                foreach (var field in dummyLine.Keys)
                {
                    writer.WriteField(dummyLine[field]);
                }
            }

            Program.Write("CSV stub saved at '" + targetPath + "'.");
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string methodName = Request["MethodName"];
            string afterDate = Request["AfterDate"];

            Response.ContentType = "text/plain";
            using (SqlConnection conn = new SqlConnection(profilesdb))
            {
                conn.Open();
                SqlCommand dbcommand = new SqlCommand("[UCSF.].[ReadActivityLog]", conn);
                dbcommand.CommandType = CommandType.StoredProcedure;
                dbcommand.Parameters.Add(methodName != null ? new SqlParameter("@methodName", methodName) : new SqlParameter("@methodName", DBNull.Value));
                dbcommand.Parameters.Add(afterDate != null ? new SqlParameter("@afterDT", afterDate) : new SqlParameter("@afterDT", DBNull.Value));
                using (SqlDataReader dbreader = dbcommand.ExecuteReader(CommandBehavior.CloseConnection))
                {
                    CsvWriter writer = new CsvWriter(Response.Output);
                    while (dbreader.Read())
                    {
                        writer.WriteField(dbreader.GetInt32(0));
                        writer.WriteField(dbreader[1].ToString());
                        writer.WriteField(dbreader[2].ToString());
                        writer.WriteField(dbreader[3].ToString());
                        writer.WriteField(dbreader.GetDateTime(4));
                        writer.WriteField(dbreader[5].ToString());
                        writer.WriteField(dbreader[6].ToString());
                        writer.WriteField(dbreader[7].ToString());
                        writer.NextRecord();
                    }
                    Response.Output.Flush();
                }
            }
        }
        private static void Main()
        {
            using (
                var client = new HttpClient {BaseAddress = new Uri(ConfigurationManager.AppSettings["VSOnlineBaseUrl"])}
                )
            {
                var history = new Historian(
                    new WorkItemRepository(new TfsConnection(ConfigurationManager.AppSettings["username"],
                        ConfigurationManager.AppSettings["password"], client)));

                var burnup = history.GetBurnUpDataSince(new DateTime(2014, 7, 7, 23, 59, 59), @"BPS.Scrum\Dev -SEP Project");
                using (var writer = new StreamWriter(@".\completed" + DateTime.Now.ToString("yyyymmmmdd") + ".xls"))
                {
                    var csvWriter = new CsvWriter(writer, new CsvConfiguration { Delimiter = "\t" });

                    csvWriter.WriteRecords(burnup.First(s => s.Title == "Completed").Data);
                }

                using (var writer = new StreamWriter(@".\requested" + DateTime.Now.ToString("yyyymmmmdd") + ".xls"))
                {
                    var csvWriter = new CsvWriter(writer, new CsvConfiguration { Delimiter = "\t" });

                    csvWriter.WriteRecords(burnup.First(s => s.Title == "Requested").Data);
                }
            }
        }
        public void WriteFieldTest()
        {
            var stream = new MemoryStream();
            var writer = new StreamWriter( stream );

            var csv = new CsvWriter( writer );

            var date = DateTime.Now.ToString();
            var guid = Guid.NewGuid().ToString();
            csv.WriteField( "one" );
            csv.WriteField( "one, two" );
            csv.WriteField( "one \"two\" three" );
            csv.WriteField( " one " );
            csv.WriteField( date );
            csv.WriteField( (short)1 );
            csv.WriteField( 1 );
            csv.WriteField( (long)1 );
            csv.WriteField( (float)1 );
            csv.WriteField( (double)1 );
            csv.WriteField( guid );
            csv.NextRecord();

            var reader = new StreamReader( stream );
            stream.Position = 0;
            var data = reader.ReadToEnd();

            Assert.AreEqual( "one,\"one, two\",\"one \"\"two\"\" three\",\" one \"," + date + ",1,1,1,1,1," + guid + "\r\n", data );
        }
Exemple #20
0
        public void WriteField_EscapedWhiteSpace()
        {
            using (var stream = new MemoryStream())
            using (var writer = new CsvWriter(stream))
            {
                string actual = null;

                writer.WriteField("  Field1");
                writer.WriteField("Field2  ");
                writer.WriteField("Field3\n");
                writer.WriteField("\nField4");
                writer.Flush();

                actual = writer.Encoding.GetString(stream.ToArray());
                Assert.AreEqual("\"  Field1\",\"Field2  \",\"Field3\n\",\"\nField4\"", actual);

                writer.WriteField("Field5\t");
                writer.WriteField("\tField6");
                writer.WriteField("Field7"); // non-escaped
                writer.Flush();

                actual = writer.Encoding.GetString(stream.ToArray());
                Assert.AreEqual("\"  Field1\",\"Field2  \",\"Field3\n\",\"\nField4\",\"Field5\t\",\"\tField6\",Field7", actual);
            }
        }
        public void Run(IEnumerable<Company> organisations, string filePath)
        {
            var conf = new CsvHelper.Configuration.CsvConfiguration();
            conf.UseInvariantCulture = true;

            var sb = new StringBuilder();
            using (var streamWriter = new StringWriter(sb))
            using (var writer = new CsvWriter(streamWriter, conf))
            {
                writer.WriteField("Name");
                writer.WriteField("Email");
                writer.WriteField("Location");
                writer.WriteField("Size");
                writer.WriteField("Industry");
                writer.WriteField("Url");
                writer.WriteField("Bilanz2011");
                writer.WriteField("Bilanz2012");
                writer.NextRecord();

                foreach (var orga in organisations)
                {
                    writer.WriteField(orga.Name);
                    writer.WriteField(orga.Email);
                    writer.WriteField(orga.Location);
                    writer.WriteField(orga.Size);
                    writer.WriteField(orga.Industry);
                    writer.WriteField(orga.Url);
                    writer.WriteField(orga.WelfareBalanceFor2011);
                    writer.WriteField(orga.WelfareBalanceFor2012);
                    writer.NextRecord();
                }
                File.WriteAllText(filePath, sb.ToString(), Encoding.Default);
            }
        }
Exemple #22
0
        public void Output(TableInfo table, DataTable data)
        {
            var outputFilename = string.Format("{0}.csv", data.TableName);

            _logger.Info("Writing data to {0}...", outputFilename);

            using (var stringWriter = new StringWriter())
            using (var csv = new CsvWriter(stringWriter))
            {
                foreach (DataColumn column in data.Columns)
                {
                    csv.WriteField(column.ColumnName);
                }
                csv.NextRecord();
                foreach (var row in data.AsEnumerable())
                {
                    foreach (var item in row.ItemArray)
                    {
                        csv.WriteField(item.ToString());
                    }
                    csv.NextRecord();
                }

                File.WriteAllText(outputFilename, stringWriter.ToString());
            }

            _logger.Info("Done writing data to {0}.", outputFilename);
        }
Exemple #23
0
        public void InitCsvFile()
        {
            const string subPath = "Analyzer";
            var isExists = Directory.Exists(subPath);
            if (!isExists) Directory.CreateDirectory(subPath);

            File.Create(_filePath).Close();
            using (var streamWriter = File.AppendText(_filePath))
            {
                var writer = new CsvWriter(streamWriter);
                writer.Configuration.Delimiter = ";";

                writer.WriteField("GENERAL:AXIS:X");
                for (var i = 1; i <= Analyzer.AnalyzerChannels.HighestId; i++)
                {
                    var fieldString = "";
                    var id = i;
                    foreach (var analyzerChannel in Analyzer.AnalyzerChannels.Children.Where(analyzerChannel => analyzerChannel.AnalyzerObservableVariable != null && analyzerChannel.Id == id))
                    {
                        fieldString = "VARIABLE:" + analyzerChannel.AnalyzerObservableVariable.Name + ":[" +
                                          analyzerChannel.AnalyzerObservableVariable.Unit + "]:AXIS:Y";
                    }

                    writer.WriteField(fieldString != "" ? fieldString : "VARIABLE:EMPTY:AXIS:Y");
                }

                writer.NextRecord();
                streamWriter.Close();
            }
        }
        public void FiltersForLineItemType()
        {
            // Arrange
            var sw = new StringWriter();
            using (var csv = new CsvWriter(sw))
            {
                var lineItems = new[]
                {
                    new LineItem {RecordType = "Dummy"},
                    new LineItem {RecordType = "LineItem", RecordId = "Hoojey"}
                };
                csv.WriteHeader<LineItem>();
                csv.WriteRecords(lineItems);
            }

            // Act
            List<LineItem> parsedItems;
            using (var reader = new StringReader(sw.ToString()))
            {
                using (var parser = new LineItemCsvParser(reader))
                {
                    parsedItems = parser.GetLineItems().ToList();
                }
            }

            // Assert
            parsedItems.Count.Should().Be(1);
            parsedItems[0].RecordId.Should().Be("Hoojey");
        }
        public void ExportCategories(string path, bool zipIt = true)
        {
            var fileName = "Categories_" + DateTime.Now.ToString("yyyyMMddTHHmmss");
            using (var file = File.CreateText(Path.Combine(path, fileName + ".csv")))
            {
                var csv = new CsvWriter(file);
                csv.Configuration.RegisterClassMap<CategoryCsvMap>();
                csv.WriteHeader<Category>();

                foreach (var category in categoryService.FindAll().OrderBy(c => c.Id).InChunksOf(100))
                {
                    csv.WriteRecord(category);
                }
            }

            if (zipIt)
            {
                using (var zip = new ZipFile(Path.Combine(path, fileName + ".zip")))
                {
                    zip.AddFile(Path.Combine(path, fileName + ".csv"), "").FileName = "Categories.csv";
                    zip.Save();
                }

                File.Delete(Path.Combine(path, fileName + ".csv"));
            }
        }
        public ActionResult Migration(string start, string end)
        {
            DateTime StartDate = Convert.ToDateTime(start);
            DateTime EndDate = Convert.ToDateTime(end);

            var context = new IPTV2Entities();
            foreach (DateTime day in MyUtility.EachDay(StartDate, EndDate))
            {
                DateTime startDt = Convert.ToDateTime(String.Format("{0} {1}", day.ToString("yyyy/MM/dd"), "00:00:00"));
                DateTime endDt = Convert.ToDateTime(String.Format("{0} {1}", day.ToString("yyyy/MM/dd"), "23:59:59"));
                var report = context.Users
                .Join(context.Countries, userdetails => userdetails.CountryCode, country => country.Code, (userdetails, country) => new { userdetails, country })
                .Join(context.GomsSubsidiaries, user => user.country.GomsSubsidiaryId, subsidiary => subsidiary.GomsSubsidiaryId, (user, subsidiary) => new { user, subsidiary })
                .Where(result => result.user.userdetails.RegistrationDate >= @startDt && result.user.userdetails.RegistrationDate <= @endDt && result.user.userdetails.TfcNowUserName != null)
                .GroupBy(result => result.subsidiary.Description)
                .Select(result => new { description = result.Key, count = result.Count() })
                .OrderByDescending(result => result.count).ToList();

                string filePath = @"C:\bin\global dropbox\Audie\Migration\";
                string fileName = startDt.ToString("yyyyMMdd") + ".csv";
                using (StreamWriter writer = new StreamWriter(filePath + fileName))
                {
                    var csv = new CsvWriter(writer);
                    csv.WriteRecords(report);
                }
            }

            return null;
        }
Exemple #27
0
        public void WriteDynamicExpandoObjectTest()
        {
            using( var stream = new MemoryStream() )
            using( var reader = new StreamReader( stream ) )
            using( var writer = new StreamWriter( stream ) )
            using( var csv = new CsvWriter( writer ) )
            {
                dynamic obj = new ExpandoObject();
                obj.Id = 1;
                obj.Name = "one";

                csv.WriteRecord( obj );
                csv.NextRecord();

                obj = new ExpandoObject();
                obj.Id = 2;
                obj.Name = "two";

                csv.WriteRecord( obj );
                csv.NextRecord();

                writer.Flush();
                stream.Position = 0;

                var expected = "Id,Name\r\n";
                expected += "1,one\r\n";
                expected += "2,two\r\n";

                Assert.AreEqual( expected, reader.ReadToEnd() );
            }
        }
Exemple #28
0
        static void Main(string[] args)
        {
            if (args.Length < 1)
            {
                System.Console.WriteLine("Syntax: ExportWMPMetadataToCSV.exe <outfile> [<top>]");
                return;
            }

            int? top = null;

            if (args.Length >= 2)
            {
                top = int.Parse(args[1]);
            }

            string output_filename = args[0];
            var normalized_names = new Dictionary<string, string>();
            foreach (var attr in all_attributes)
            {
                string name = attr.Replace("/", "_");
                normalized_names[attr] = name;
            }

            var wmp = new WMPLib.WindowsMediaPlayerClass();
            var item_collection = wmp.getAll();

            using (var writer = File.CreateText(output_filename))
            using (var csv = new CsvWriter(writer))
            {
                // Write CSV Header
                for (int i = 0; i < all_attributes.Length; i++)
                {
                    string h = normalized_names[all_attributes[i]];
                    csv.WriteField(h);
                }
                csv.NextRecord();

                for (int i = 0; i < item_collection.count; i++)
                {
                    if (top.HasValue && i>= top.Value)
                    {
                        break;
                    }

                    System.Console.WriteLine("WMP Item #: {0}", i + 1);
                    // write a csv line for each item in the collection
                    var item = item_collection.get_Item(i);

                    for (int j = 0; j < all_attributes.Length; j++)
                    {
                        var attr_value = item.getItemInfo(all_attributes[j]) ?? "";
                        csv.WriteField(attr_value);
                    }
                    csv.NextRecord();
                }
            }

            System.Console.WriteLine("DONE");

        }
        private static string GenerateCsv(IEnumerable<CheckMessages> checks)
        {
            var csvHeader = new[] { "ID", "MessageName", "Message" };
            var sw = new StringWriter();
            using (var csv = new CsvWriter(sw))
            {

                // write header record
                foreach (var h in csvHeader)
                {
                    csv.WriteField(h);
                }
                csv.NextRecord();

                foreach (var check in checks)
                {
                    foreach (var message in check.Messages)
                    {
                        csv.WriteField(check.Id);
                        csv.WriteField(message.Key);
                        csv.WriteField(message.Value);
                        csv.NextRecord();
                    }
                }

                return sw.ToString();
            }
        }
Exemple #30
0
        public IActionResult Post()
        {
            try
            {
                if (Request.Form.Files.Count > 0)
                {
                    var           UploadedFile = Request.Form.Files[0];
                    StreamReader  Reader       = new StreamReader(UploadedFile.OpenReadStream());
                    List <string> FileHeader   = new List <string>(Reader.ReadLine().Split(","));
                    var           ValidHeader  = _service.CsvHeader.SequenceEqual(FileHeader, StringComparer.OrdinalIgnoreCase);

                    if (ValidHeader)
                    {
                        Reader.DiscardBufferedData();
                        Reader.BaseStream.Seek(0, SeekOrigin.Begin);
                        Reader.BaseStream.Position = 0;

                        CsvReader Csv = new CsvReader(Reader);
                        Csv.Configuration.IgnoreQuotes = false;
                        Csv.Configuration.Delimiter    = ",";
                        Csv.Configuration.RegisterClassMap <TModelMap>();
                        Csv.Configuration.HeaderValidated = null;

                        List <TViewModel> Data = Csv.GetRecords <TViewModel>().ToList();

                        Tuple <bool, List <object> > Validated = _service.UploadValidate(Data, Request.Form.ToList());

                        Reader.Close();

                        if (Validated.Item1) /* If Data Valid */
                        {
                            using (var Transaction = _service.DbContext.Database.BeginTransaction())
                            {
                                foreach (TViewModel modelVM in Data)
                                {
                                    TModel model = _service.MapToModel(modelVM);
                                    _service.DbSet.Add(model);
                                    _service.OnCreating(model);
                                }

                                _service.DbContext.SaveChanges();

                                Transaction.Commit();

                                Dictionary <string, object> Result =
                                    new ResultFormatter(ApiVersion, General.CREATED_STATUS_CODE, General.OK_MESSAGE)
                                    .Ok();
                                return(Created(HttpContext.Request.Path, Result));
                            }
                        }
                        else
                        {
                            using (MemoryStream memoryStream = new MemoryStream())
                            {
                                using (StreamWriter streamWriter = new StreamWriter(memoryStream))
                                    using (CsvWriter csvWriter = new CsvWriter(streamWriter))
                                    {
                                        csvWriter.WriteRecords(Validated.Item2);
                                    }

                                return(File(memoryStream.ToArray(), ContentType, FileName));
                            }
                        }
                    }
                    else
                    {
                        Dictionary <string, object> Result =
                            new ResultFormatter(ApiVersion, General.INTERNAL_ERROR_STATUS_CODE, General.CSV_ERROR_MESSAGE)
                            .Fail();

                        return(NotFound(Result));
                    }
                }
                else
                {
                    Dictionary <string, object> Result =
                        new ResultFormatter(ApiVersion, General.BAD_REQUEST_STATUS_CODE, General.NO_FILE_ERROR_MESSAGE)
                        .Fail();
                    return(BadRequest(Result));
                }
            }
            catch (Exception e)
            {
                Dictionary <string, object> Result =
                    new ResultFormatter(ApiVersion, General.INTERNAL_ERROR_STATUS_CODE, e.Message)
                    .Fail();

                return(StatusCode(General.INTERNAL_ERROR_STATUS_CODE, Result));
            }
        }
        static void Main(string[] args)
        {
            var enterAnotherTransaction = true;

            while (enterAnotherTransaction)
            {
                Console.WriteLine("Enter in what you spent today!");
                var transactionAmount = decimal.Parse(Console.ReadLine());

                // Borrowing the Transaction definition from our other project
                var transaction = new Transaction {
                    Amount = transactionAmount, ExecutionTime = DateTime.Now
                };

                //Post to our Serverless backend
                BackupTransaction(transaction);

                // Check if the csv exists, and if not prepopulate it with headers.
                if (!File.Exists(@"transactions.csv"))
                {
                    using (StreamWriter writer = new StreamWriter(@"transactions.csv"))
                    {
                        var csvWriter = new CsvWriter(writer);
                        csvWriter.WriteHeader <Transaction>();
                        csvWriter.NextRecord();
                        csvWriter.Flush();
                    }
                }


                // Add the transaction to the list and write it back into the csv
                using (StreamWriter writer = File.AppendText(@"transactions.csv"))
                {
                    var csvWriter = new CsvWriter(writer);
                    csvWriter.WriteRecord <Transaction>(transaction);
                    csvWriter.NextRecord();
                    csvWriter.Flush();
                    Console.WriteLine("Transaction successfully added");
                }

                // Read out what transactions are in the file
                List <Transaction> transactions;
                using (StreamReader reader = new StreamReader(@"transactions.csv"))
                {
                    var csvReader = new CsvReader(reader);
                    transactions = csvReader.GetRecords <Transaction>().ToList();
                }

                // Calculate some interesting facts about the users transaction history
                var totalTransactions        = transactions.Sum(t => t.Amount);
                var meanTransactionSize      = transactions.Average(t => t.Amount);
                var largestTransactionAmount = transactions.Max(t => t.Amount);

                Console.WriteLine($"In total you've logged transactions worth {totalTransactions} with me.\n" +
                                  $"Your average transaction was {meanTransactionSize}.\n" +
                                  $"Your largest transaction ever was {largestTransactionAmount}");

                Console.WriteLine("Do you want to add another transaction?");
                enterAnotherTransaction = bool.Parse(Console.ReadLine());
            }
        }
Exemple #32
0
        /**************************************************************************/

        private void BuildWorksheetPageDuplicatePages(
            MacroscopeJobMaster JobMaster,
            CsvWriter ws
            )
        {
            decimal DocCount     = 0;
            decimal DocListCount = 0;
            decimal CountOuter   = 0;
            decimal CountInner   = 0;

            MacroscopeDocumentCollection DocCollection = JobMaster.GetDocCollection();
            MacroscopeAllowedHosts       AllowedHosts  = JobMaster.GetAllowedHosts();
            Dictionary <string, bool>    CrossCheckList;

            CrossCheckList = MacroscopeLevenshteinAnalysis.GetCrossCheckList(
                Capacity: DocCollection.CountDocuments()
                );

            DocCount = ( decimal )DocCollection.CountDocuments();

            {
                ws.WriteField("Status Code");
                ws.WriteField("Status");
                ws.WriteField("Origin URL");
                ws.WriteField("Distance");
                ws.WriteField("Similar URL");

                ws.NextRecord();
            }

            foreach (string UrlLeft in DocCollection.DocumentUrls())
            {
                MacroscopeDocument            msDocLeft           = DocCollection.GetDocumentByUrl(Url: UrlLeft);
                MacroscopeLevenshteinAnalysis LevenshteinAnalysis = null;

                CountOuter++;
                CountInner = 0;

                if (DocCount > 0)
                {
                    this.ProgressForm.UpdatePercentages(
                        Title: null,
                        Message: null,
                        MajorPercentage: -1,
                        ProgressLabelMajor: string.Format("Documents Processed: {0}", CountOuter),
                        MinorPercentage: (( decimal )100 / DocCount) * CountOuter,
                        ProgressLabelMinor: UrlLeft,
                        SubMinorPercentage: 0,
                        ProgressLabelSubMinor: ""
                        );
                }

                if (msDocLeft.GetIsExternal())
                {
                    continue;
                }

                if (!msDocLeft.IsDocumentType(Type: MacroscopeConstants.DocumentType.HTML))
                {
                    continue;
                }

                LevenshteinAnalysis = new MacroscopeLevenshteinAnalysis(
                    msDoc: msDocLeft,
                    SizeDifference: MacroscopePreferencesManager.GetMaxLevenshteinSizeDifference(),
                    Threshold: MacroscopePreferencesManager.GetMaxLevenshteinDistance(),
                    CrossCheckList: CrossCheckList,
                    IPercentageDone: this
                    );

                Dictionary <MacroscopeDocument, int> DocList;

                DocList = LevenshteinAnalysis.AnalyzeDocCollection(
                    DocCollection: DocCollection
                    );

                DocListCount = ( decimal )DocList.Count;

                foreach (MacroscopeDocument msDocDuplicate in DocList.Keys)
                {
                    int            StatusCode   = ( int )msDocLeft.GetStatusCode();
                    HttpStatusCode Status       = msDocLeft.GetStatusCode();
                    string         UrlDuplicate = msDocDuplicate.GetUrl();
                    int            Distance     = DocList[msDocDuplicate];

                    CountInner++;

                    if (DocCount > 0)
                    {
                        this.ProgressForm.UpdatePercentages(
                            Title: null,
                            Message: null,
                            MajorPercentage: -1,
                            ProgressLabelMajor: string.Format("Documents Processed: {0}", CountOuter),
                            MinorPercentage: (( decimal )100 / DocCount) * CountOuter,
                            ProgressLabelMinor: UrlLeft,
                            SubMinorPercentage: (( decimal )100 / DocListCount) * CountInner,
                            ProgressLabelSubMinor: UrlDuplicate
                            );
                    }

                    this.InsertAndFormatStatusCodeCell(ws, StatusCode);

                    this.InsertAndFormatStatusCodeCell(ws, Status);

                    this.InsertAndFormatUrlCell(ws, UrlLeft);

                    this.InsertAndFormatContentCell(ws, Distance.ToString());

                    this.InsertAndFormatUrlCell(ws, UrlDuplicate);

                    ws.NextRecord();

                    if (this.ProgressForm.Cancelled())
                    {
                        break;
                    }
                }

                if (this.ProgressForm.Cancelled())
                {
                    break;
                }

                //Thread.Yield();
            }
        }
Exemple #33
0
        private void persistOrderItems(List <PurchaseOrderItem> orders)
        {
            // write order items to the file and insert it into the database
            if (!orders.Any())
            {
                Logger.LogInfo(LogEntryType.GeneratePoTaskService, "No purchase orders to be generatated for task name: " + _task.Name);
                return;
            }

            // get the purchase order details
            _purchaseOrder                 = initPoVendorInfo(_task.VendorId);
            _purchaseOrder.Items           = orders;
            _purchaseOrder.PurchaseOrderId = string.Format("{0:MM}{0:dd}{0:yy}-{0:hh}{0:mm}{0:ss}", DateTime.UtcNow);

            using (var streamWriter = new StreamWriter(_generatedFile))
            {
                using (var context = new EisInventoryContext())
                {
                    var csvWriter = new CsvWriter(streamWriter);

                    // write first the headers for the CSV file
                    csvWriter.WriteField("PurchaseOrderId");
                    csvWriter.WriteField("EisOrderId");
                    csvWriter.WriteField("SKU");
                    csvWriter.WriteField("Item");
                    csvWriter.WriteField("Quantity");
                    csvWriter.WriteField("Subtotal");
                    csvWriter.WriteField("VendorFees");
                    csvWriter.WriteField("PurchaseDate");
                    csvWriter.NextRecord();

                    // add first the purchase order data
                    context.purchaseorders.Add(new purchaseorder
                    {
                        Id            = _purchaseOrder.PurchaseOrderId,
                        VendorId      = _purchaseOrder.VendorId,
                        IsManual      = false,
                        PaymentStatus = PaymentStatus.NotPaid,
                        Created       = DateTime.UtcNow
                    });

                    // and save it
                    context.SaveChanges();

                    // iterate to its orders and save it to the database
                    foreach (var order in orders)
                    {
                        // write first to the file
                        csvWriter.WriteField(_purchaseOrder.PurchaseOrderId);
                        csvWriter.WriteField(order.EisOrderId);
                        csvWriter.WriteField(order.SupplierSKU);
                        csvWriter.WriteField(order.ItemName);
                        csvWriter.WriteField(order.SupplierQtyOrdered);
                        csvWriter.WriteField(order.Total);
                        csvWriter.WriteField(order.VendorFees);
                        csvWriter.WriteField(order.PurchaseDate);
                        csvWriter.NextRecord();

                        // then, add it to the database
                        context.purchaseorderitems.Add(new purchaseorderitem
                        {
                            PurchaseOrderId = _purchaseOrder.PurchaseOrderId,
                            EisOrderId      = order.EisOrderId,
                            ItemName        = order.ItemName,
                            SKU             = order.SupplierSKU,
                            Qty             = order.SupplierQtyOrdered,
                            UnitPrice       = order.UnitPrice,
                            ShippingPrices  = order.ShippingPrices,
                            Taxes           = order.Taxes,
                            Discounts       = order.Discounts,
                            IsPaid          = order.IsPaid,
                            Profit          = order.Profit
                        });
                    }

                    // save it to the database
                    context.SaveChanges();
                }
            }

            Console.WriteLine("Done creating PO file -> " + _generatedFile);
        }
        protected override Task ExecuteAsync(CancellationToken stoppingToken)
        {
            _logger.LogInformation("Starting IG Account Creator...");
            if (File.Exists("input.csv"))
            {
                _logger.LogInformation("Load accounts from input.csv");
                using var reader            = new StreamReader("input.csv");
                using var csv               = new CsvReader(reader, CultureInfo.InvariantCulture);
                csv.Configuration.Delimiter = ";";
                _records = csv.GetRecords <InstagramAccountInformation>().ToList();

                _logger.LogInformation($"There are {_records.Count} accounts to create.");

                var outputWriter = new StreamWriter("output.csv");
                var outputCsv    = new CsvWriter(outputWriter, CultureInfo.InvariantCulture);
                outputCsv.Configuration.Delimiter = ";";

                outputCsv.WriteHeader <AutomatorStatus>();
                outputCsv.NextRecord();

                // for (var i = 0; i < 5; i++)
                // {
                //     outputCsv.WriteRecord(new AutomatorStatus()
                //     {
                //         Username = i.ToString()
                //     });
                //     outputCsv.NextRecord();
                //     Console.ReadLine();
                // }
                // outputCsv.Flush();

                foreach (var record in _records)
                {
                    _logger.LogInformation($"Creating account:\n{record.ToJsonF()}");

                    var sw = new Stopwatch();
                    sw.Start();

                    var registerAccount      = RegisterAccount(record);
                    var changeProfilePicture = ChangeProfilePicture(record.ProfilePicture);
                    var changeBiography      = ChangeBiography(record.Bio);
                    var renewIp = RenewIp();
                    _driver.ResetApp();

                    outputCsv.WriteRecord(new AutomatorStatus
                    {
                        Email                    = record.Email,
                        Username                 = record.Username,
                        HasRegistredAccount      = registerAccount.IsSuccess,
                        HasUpdatedProfilePicture = changeProfilePicture.IsSuccess,
                        HasUpdatedBio            = changeBiography.IsSuccess,
                        HasRenewedIp             = renewIp.IsSuccess,
                        Details                  = $"pp={changeProfilePicture.ErrorMessage ?? "N/a"}, bio={changeBiography.ErrorMessage ?? "N/a"}",
                        UsedIp                   = GetCurrentIp(),
                        Countdown                = sw.Elapsed.TotalSeconds
                    });
                    outputCsv.NextRecordAsync();
                    sw.Stop();
                }

                // outputCsv.Flush();
            }
            else
            {
                _logger.LogError("The input file (input.csv) does not exists.");
            }
            return(Task.CompletedTask);
        }
Exemple #35
0
        protected override void Write(EyeVelocity data, CsvWriter writer, CsvSerializerContext serializer)
        {
            writer.WriteField(data.Velocity);

            serializer.Serialize <SingleEyeGazeData>(writer, data.Eye);
        }
Exemple #36
0
        static void Main(string[] args)
        {
            var result1 = new List <Csv1>();

            using (var reader = new StreamReader(@"..\..\CsvFiles\Input1.csv"))
                using (var csv = new CsvReader(reader, CultureInfo.CurrentCulture))
                {
                    csv.Configuration.Delimiter = ";";

                    var data = new List <List <Csv1> >();

                    while (csv.Read())
                    {
                        if (csv.Context.RawRecord.Trim() == string.Empty)
                        {
                            data.Add(result1);
                            result1 = new List <Csv1>();
                            continue;
                        }
                        var record = csv.GetRecord <Csv1>();
                        result1.Add(record);
                    }
                    if (result1.Count > 0)
                    {
                        data.Add(result1);
                    }
                }

            var result2 = new List <Csv2>();

            using (var reader = new StreamReader(@"..\..\CsvFiles\Input2.csv"))
                using (var csv = new CsvReader(reader, CultureInfo.CurrentCulture))
                {
                    csv.Configuration.Delimiter = ";";

                    var data = new List <List <Csv2> >();

                    while (csv.Read())
                    {
                        if (csv.Context.RawRecord.Trim() == string.Empty)
                        {
                            data.Add(result2);
                            result2 = new List <Csv2>();
                            continue;
                        }
                        var record = csv.GetRecord <Csv2>();
                        result2.Add(record);
                    }
                    if (result2.Count > 0)
                    {
                        data.Add(result2);
                    }
                }

            int numInput;

            Console.WriteLine("Visa data för månad (1-12): ");
            var val = Console.ReadLine();

            numInput = Convert.ToInt32(val);

            var query = (from a in result1
                         group new
            {
                a.CustomerId,
                a.Year,
                a.Month,
                a.Sales,
                a.Quantity
            } by a.CustomerId into y
                         join b in result2 on y.First().CustomerId equals b.CustomerId into g
                         select new
            {
                y.Key,
                SalesThisYear = y.Sum(x => { if (x.Year.ToString() == "2019")
                                             {
                                                 return(x.Sales);
                                             }
                                             else
                                             {
                                                 return(0);
                                             } }),
                SalesLastYear = y.Sum(x => { if (x.Year.ToString() == "2018")
                                             {
                                                 return(x.Sales);
                                             }
                                             else
                                             {
                                                 return(0);
                                             } }),
                SalesPeriodThisYear = y.Sum(x => { if (x.Year.ToString() == "2019" && x.Month.Equals(numInput))
                                                   {
                                                       return(x.Sales);
                                                   }
                                                   else
                                                   {
                                                       return(0);
                                                   } }),
                SalesPeriodLastYear = y.Sum(x => { if (x.Year.ToString() == "2018" && x.Month.Equals(numInput))
                                                   {
                                                       return(x.Sales);
                                                   }
                                                   else
                                                   {
                                                       return(0);
                                                   } }),
                QuantityThisYear = y.Sum(x => { if (x.Year.ToString() == "2019")
                                                {
                                                    return(x.Quantity);
                                                }
                                                else
                                                {
                                                    return(0);
                                                } }),
                QuantityLastYear = y.Sum(x => { if (x.Year.ToString() == "2018")
                                                {
                                                    return(x.Quantity);
                                                }
                                                else
                                                {
                                                    return(0);
                                                } }),
                QuantityPeriodThisYear = y.Sum(x => { if (x.Year.ToString() == "2019" && x.Month.Equals(numInput))
                                                      {
                                                          return(x.Quantity);
                                                      }
                                                      else
                                                      {
                                                          return(0);
                                                      } }),
                QuantityPeriodLastYear = y.Sum(x => { if (x.Year.ToString() == "2018" && x.Month.Equals(numInput))
                                                      {
                                                          return(x.Quantity);
                                                      }
                                                      else
                                                      {
                                                          return(0);
                                                      } }),
                g.First().LastChanged,
            }).OrderByDescending(x => x.SalesThisYear).ToList();

            void WriteCsv()
            {
                using (var writer = new StreamWriter(@"..\..\CsvFiles\newfile.csv"))
                    using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
                    {
                        csv.Configuration.Delimiter       = "\t";
                        csv.Configuration.HasHeaderRecord = false;
                        csv.WriteField("CustomerId;SalesThisYear;SalesLastYear;SalesPeriodThisYear;SalesPeriodLastYear;QuantityThisYear;QuantityLastYear;QuantityPeriodThisYear;QuantityPeriodLastYear;LastChanged");
                        csv.NextRecord();

                        foreach (var x in query)
                        {
                            csv.WriteField(x.Key + ";" + x.SalesThisYear + ";" + x.SalesLastYear + ";" + x.SalesPeriodThisYear + ";" + x.SalesPeriodLastYear + ";"
                                           + x.QuantityThisYear + ";" + x.QuantityLastYear + ";" + x.QuantityPeriodThisYear + ";" + x.QuantityPeriodLastYear + ";" + x.LastChanged);
                            csv.NextRecord();
                        }
                    }
            }

            if (numInput.ToString().Any())
            {
                WriteCsv();
                Console.WriteLine("Fil skapad! Tryck valfri knapp för att avsluta.");
                Console.ReadKey();
            }
        }
Exemple #37
0
        public void EWTransaction(string transaction_list)

        {
            string  account_id, channel, id, transaction_type, type_is_reversal, was_reversed, file_name, reversal_key;
            decimal amount, interest_amount, principal_amount;
            int     transaction_count;

            DateTime?creation_date = null, entry_date = null;
            object   checkJsNode;
            List <transactionfile> transactionrecords = new List <transactionfile>();

            LogFile lgf = new LogFile();

            file_name = "C:\\mambu\\" + "Transaction " + System.DateTime.Today.ToString("MM-dd-yyyy") + ".csv";

            JArray transaction_details = JArray.Parse(transaction_list);

            transaction_count = transaction_details.Count;

            List <transactionfile> loanRecords = new List <transactionfile>();

            mambu m = new mambu();

            try
            {
                for (int i = 0; i < transaction_count; i++)

                {
                    account_id = m.getLoanId(transaction_details[i]["parentAccountKey"].ToString());
                    amount     = System.Convert.ToDecimal(transaction_details[i]["amount"].ToString());

                    checkJsNode = transaction_details[i]["details"]["transactionChannel"];

                    if (checkJsNode != null)

                    {
                        channel = transaction_details[i]["details"]["transactionChannel"]["name"].ToString();
                    }

                    else

                    {
                        channel = "";
                    }
                    creation_date    = TimeZoneInfo.ConvertTimeToUtc(System.Convert.ToDateTime(transaction_details[i]["creationDate"].ToString())).Date;
                    entry_date       = TimeZoneInfo.ConvertTimeToUtc(System.Convert.ToDateTime(transaction_details[i]["entryDate"].ToString())).Date;
                    id               = transaction_details[i]["transactionId"].ToString();
                    interest_amount  = System.Convert.ToDecimal(transaction_details[i]["interestPaid"].ToString());
                    principal_amount = System.Convert.ToDecimal(transaction_details[i]["principalPaid"].ToString());
                    transaction_type = transaction_details[i]["type"].ToString();

                    checkJsNode = transaction_details[i]["reversalTransactionKey"];

                    if (checkJsNode != null)

                    {
                        reversal_key     = transaction_details[i]["reversalTransactionKey"].ToString();
                        type_is_reversal = "";
                        was_reversed     = "YES";
                    }

                    else

                    {
                        type_is_reversal = "";
                        was_reversed     = "";
                    }
                    transactionfile tf = new transactionfile();
                    tf._account_id       = account_id;
                    tf._amount           = amount;
                    tf._channel          = channel;
                    tf._creation_date    = creation_date;
                    tf._entry_date       = entry_date;
                    tf._transaction_id   = id;
                    tf._interest_amount  = interest_amount;
                    tf._principal_amount = principal_amount;
                    tf._transaction_type = transaction_type;
                    tf._type_is_reversal = type_is_reversal;
                    tf._was_reversed     = was_reversed;
                    transactionrecords.Add(tf);
                }

                using (var writer = new StreamWriter(file_name))
                    using (var csv = new CsvWriter(writer))
                    {
                        csv.WriteRecords(transactionrecords);
                        writer.Close();
                    }
            }
            catch (System.Exception ex)

            {
                lgf.writeLog("utility.EWTransaction. Operation Date: " + System.DateTime.Today.Date.ToString("MM-dd-yyyy") + ". ", ex.Message.ToString());
            }
        }
Exemple #38
0
        public void EWLoanFile(string account_list)

        {
            string  member_id, account_id, account_state, account_sub_state, monic, cat, purp, product, file_name;
            int     arrear_position, days_in_arrears, account_count;
            decimal interest_rate, principal_balance, total_balance, interest_due, interest_paid, last_payment_amount, loan_amount, interest_balance;
            decimal principal_due, principal_paid, total_due, total_paid, disburse_amount;
            object  checkJsNode;

            LogFile lgf = new LogFile();

            try
            {
                DateTime?locked_date = null, closed_date = null, last_set_to_arrears_date = null;
                DateTime activation_date, approval_date, expected_maturity_date, first_repayment_date;

                file_name = "C:\\mambu\\" + "Loans " + System.DateTime.Today.ToString("MM-dd-yyyy") + ".csv";


                JArray account_details = JArray.Parse(account_list);
                account_count = account_details.Count;

                List <loanfile> loanRecords = new List <loanfile>();

                mambu m = new mambu();


                for (int i = 0; i < account_count; i++)

                {
                    member_id     = account_details[i]["accountHolderKey"].ToString();
                    account_id    = account_details[i]["id"].ToString();
                    account_state = account_details[i]["accountState"].ToString();
                    product       = account_details[i]["loanName"].ToString();

                    checkJsNode = account_details[i]["accountsubState"];

                    if (checkJsNode != null)

                    {
                        account_sub_state = account_details[i]["accountsubState"].ToString();
                    }

                    else

                    {
                        account_sub_state = null;
                    }


                    checkJsNode = account_details[i]["lastSetToArrearsDate"];

                    if (checkJsNode != null)

                    {
                        last_set_to_arrears_date = TimeZoneInfo.ConvertTimeToUtc(System.Convert.ToDateTime(account_details[i]["lastSetToArrearsDate"].ToString())).Date;
                        arrear_position          = (System.DateTime.Today - Convert.ToDateTime(account_details[i]["lastSetToArrearsDate"].ToString())).Days + 1;
                    }

                    else

                    {
                        last_set_to_arrears_date = null;
                        arrear_position          = 0;
                    }


                    days_in_arrears   = arrear_position;
                    interest_rate     = System.Convert.ToDecimal(account_details[i]["interestRate"].ToString());
                    principal_balance = System.Convert.ToDecimal(account_details[i]["principalBalance"].ToString());
                    interest_balance  = System.Convert.ToDecimal(account_details[i]["interestBalance"].ToString());

                    total_balance = principal_balance + interest_balance;

                    interest_due        = System.Convert.ToDecimal(account_details[i]["interestDue"].ToString());
                    interest_paid       = System.Convert.ToDecimal(account_details[i]["interestPaid"].ToString());
                    last_payment_amount = System.Convert.ToDecimal(account_details[i]["interestPaid"].ToString());// TBD
                    loan_amount         = System.Convert.ToDecimal(account_details[i]["loanAmount"].ToString());
                    principal_due       = System.Convert.ToDecimal(account_details[i]["principalDue"].ToString());
                    principal_paid      = System.Convert.ToDecimal(account_details[i]["principalPaid"].ToString());
                    total_due           = principal_due + interest_due;
                    total_paid          = principal_paid + interest_paid;
                    disburse_amount     = System.Convert.ToDecimal(account_details[i]["loanAmount"].ToString());


                    activation_date = System.Convert.ToDateTime(account_details[i]["creationDate"].ToString()).Date;
                    approval_date   = System.Convert.ToDateTime(account_details[i]["approvedDate"].ToString()).Date;


                    checkJsNode = account_details[i]["closeDate"];

                    if (checkJsNode != null)

                    {
                        closed_date = System.Convert.ToDateTime(account_details[i]["closeDate"].ToString()).Date;
                    }
                    else
                    {
                        closed_date = null;
                    }

                    //var timeUtc = DateTime.UtcNow;

                    var easternZone = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");

                    expected_maturity_date = System.Convert.ToDateTime(account_details[i]["approvedDate"].ToString()).Date;                                                             //TBD
                    first_repayment_date   = TimeZoneInfo.ConvertTimeToUtc(System.Convert.ToDateTime(account_details[i]["disbursementDetails"]["firstRepaymentDate"].ToString())).Date; //TBD

                    checkJsNode = account_details[i]["lastLockedDate"];

                    if (checkJsNode != null)
                    {
                        locked_date = System.Convert.ToDateTime(account_details[i]["lastLockedDate"].ToString()).Date;
                    }
                    else
                    {
                        locked_date = null;
                    }

                    cat   = m.getLoanCategory(account_id);
                    purp  = m.getLoanPurpose(account_id);
                    monic = m.getLoanMonthlyIncome(account_id);

                    loanfile lf = new loanfile();

                    lf._member_id                = member_id;
                    lf._account_id               = account_id;
                    lf._arrear_position          = arrear_position;
                    lf._interest_rate            = interest_rate;
                    lf._principal_balance        = principal_balance;
                    lf._total_balance            = total_balance;
                    lf._account_state            = account_state;
                    lf._account_sub_state        = account_sub_state;
                    lf._activation_date          = activation_date;
                    lf._approval_date            = approval_date;
                    lf._closed_date              = closed_date;
                    lf._days_in_arrears          = days_in_arrears;
                    lf._disbursed_amount         = disburse_amount;
                    lf._expected_maturity_date   = expected_maturity_date;
                    lf._first_repayment_date     = first_repayment_date;
                    lf._interest_due             = interest_due;
                    lf._interest_paid            = interest_paid;
                    lf._last_payment_date        = System.DateTime.Now;
                    lf._last_set_to_arrears_date = last_set_to_arrears_date;
                    lf._loan_amount              = loan_amount;
                    lf._locked_date              = locked_date;
                    lf._principal_due            = principal_due;
                    lf._principal_paid           = principal_paid;
                    lf._total_due                = total_due;
                    lf._total_paid               = total_paid;
                    lf._product = product;
                    lf._monic   = monic;
                    lf._cat     = cat;
                    lf._purp    = purp;

                    loanRecords.Add(lf);
                }



                using (var writer = new StreamWriter(file_name))
                    using (var csv = new CsvWriter(writer))

                    {
                        csv.WriteRecords(loanRecords);
                        writer.Close();
                    }
            }

            catch (System.Exception ex)

            {
                lgf.writeLog("utility.EWLoanFile. Operation Date: " + System.DateTime.Today.Date.ToString("MM-dd-yyyy") + ". ", ex.Message.ToString());
            }
        }
        public async Task <IActionResult> GenerateFile()
        {
            var data = await _context.Profiles.Select(p => new
            {
                p.FirstName,
                p.LastName,
                p.Latitude,
                p.Longitude,
                p.CompanyName,
                p.IsDropOffPoint,
                p.Phone,
                p.IsRequestor,
                p.IsSupplier,
            }).ToListAsync();

            var geomFactory = NtsGeometryServices.Instance.CreateGeometryFactory();
            var features    = new List <Feature>();

            var faker = new Bogus.Faker("en");

            foreach (var d in data)
            {
                //note that attribute names can be at most 11 characters
                var t1 = new AttributesTable
                {
                    { "firstName", d.FirstName ?? "" },
                    { "lastName", d.LastName ?? "" },
                    { "companyName", d.CompanyName ?? "" },
                    { "dropOff", d.IsDropOffPoint.GetValueOrDefault().ToString() },
                    { "type", DetermineType(d.IsRequestor, d.IsSupplier) },
                    { "phoneNumber", d.Phone ?? "" },
                    { "amount1", faker.Random.Number(100, 10000) },
                    { "product1", faker.Commerce.ProductName() }
                };

                Geometry g1 = geomFactory.CreatePoint(new Coordinate(d.Longitude, d.Latitude));

                var feat1 = new Feature(g1, t1);
                features.Add(feat1);
            }

            var shapeFileFolder = GetShapeFilePath();
            var zipPath         = GetZipFilePath();
            var shapefileName   = Path.Combine(shapeFileFolder, "maker");

            var writer = new ShapefileDataWriter(shapefileName)
            {
                Header = ShapefileDataWriter.GetHeader(features[0], features.Count)
            };

            writer.Write(features);

            if (System.IO.File.Exists(zipPath))
            {
                System.IO.File.Delete(zipPath);
            }

            ZipFile.CreateFromDirectory(shapeFileFolder, zipPath, CompressionLevel.Fastest, false);

            await using (var csvWriter = new StreamWriter(GetCSVFilePath()))
                await using (var csv = new CsvWriter(csvWriter, CultureInfo.InvariantCulture))
                {
                    csv.WriteRecords(data);
                }


            return(Ok($"Files created and zipped to {zipPath}"));
        }
Exemple #40
0
        public override void Run()
        {
            L.Trace($"TransactionRoles started @ {DateTime.Now}");

            Stopwatch sw = new Stopwatch();

            sw.Start();

            validator.ValidateServiceBucketIsConsistent(typeof(IAmlRepository));

            var buckets = factory.GetClientBuckets <IAmlRepository>().Count();

            List <AmlClientTask <IEnumerable <YesNo> > > tasks = new List <AmlClientTask <IEnumerable <YesNo> > >();

            Multiplexer.FromCsv <TransactionRole>(GetDataFile(), buckets, (x) => x.SortCode + x.Account,
                                                  x =>
            {
                tasks.Add(
                    new AmlClientTask <IEnumerable <YesNo> >("AccountsExist", x.Item1, () =>
                {
                    L.Trace(
                        $"Hit this bucket start - {x.Item1} - Thread - {Thread.CurrentThread.ManagedThreadId}");
                    return(factory.GetClient <IAmlRepository>(x.Item1)
                           .AccountsExist(x.Item2.Select(y => new Identifier {
                        Id = y.SortCode + y.Account
                    })));
                }, x.Item2));
            });

            tasks.Do(x => x.Start());

            Task.WaitAll(tasks.ToArray());

            using (CsvWriter foundDirectWriter = new CsvWriter(new StreamWriter(GetFoundDirectResults())))
            {
                foundDirectWriter.WriteHeader <TransactionRole>();
                foundDirectWriter.NextRecord();

                using (CsvWriter notFoundDirectWriter = new CsvWriter(new StreamWriter(GetNotFoundDirectResults())))
                {
                    notFoundDirectWriter.WriteHeader <TransactionRole>();
                    notFoundDirectWriter.NextRecord();

                    foreach (var c in tasks)
                    {
                        var z = c.State as IEnumerable <TransactionRole>;
                        var h = c.Result;
                        if (z.Count() != h.Count())
                        {
                            throw new Exception($"Counts did not match .... ");
                        }

                        int foundDirect    = 0;
                        int notFoundDirect = 0;
                        foreach (var q in z.Zip(h, (x, y) => (x, y)))
                        {
                            q.x.IsFoundDirect = !q.y.Val;
                            if (q.x.IsFoundDirect)
                            {
                                q.x.DiscoveredAccountId = q.x.SortCode + q.x.Account;
                                foundDirect++;
                                foundDirectWriter.WriteRecord(q.x);
                                foundDirectWriter.NextRecord();
                            }
                            else
                            {
                                notFoundDirect++;
                                notFoundDirectWriter.WriteRecord(q.x);
                                notFoundDirectWriter.NextRecord();
                            }
                        }

                        L.Trace($"found-cnt: {foundDirect}");
                        L.Trace($"not-found-cnt: {notFoundDirect}");
                        L.Trace($"total - {foundDirect + notFoundDirect}");
                    }
                }
                sw.Stop();
                L.Trace($"Elapsed time for operation - {sw.ElapsedMilliseconds}");
            }
        }
        public async Task <ActionResult> DumpSuiteJobs(
            [FromRoute] FlowSnake suiteId,
            [FromServices] RurikawaDb db)
        {
            var suite = await dbService.GetTestSuite(suiteId);

            if (suite == null)
            {
                return(NotFound());
            }

            var columns = suite.TestGroups
                          .SelectMany(group => group.Value.Select(value => value.Name))
                          .ToList();

            var ptr = db.Jobs.FromSqlInterpolated($@"
            select
                distinct on (account)
                *
            from jobs
            where test_suite = {suiteId.Num}
            order by account, id desc
            ").AsAsyncEnumerable();

            Response.StatusCode  = 200;
            Response.ContentType = "application/csv";

            const int flushInterval = 100;

            // write to body of response
            var sw        = new StreamWriter(Response.Body);
            var csvWriter = new CsvWriter(sw);

            csvWriter.QuoteAllFields = true;

            csvWriter.WriteField("id");
            csvWriter.WriteField("account");
            csvWriter.WriteField("repo");
            csvWriter.WriteField("revision");
            csvWriter.WriteField("stage");
            csvWriter.WriteField("result_kind");
            foreach (var col in columns)
            {
                csvWriter.WriteField(col);
            }
            csvWriter.NextRecord();

            int counter = 0;

            await foreach (var val in ptr)
            {
                if (counter % flushInterval == 0)
                {
                    await sw.FlushAsync();
                }
                WriteJobInfo(csvWriter, val, columns);
                counter++;
            }
            await sw.FlushAsync();

            return(new EmptyResult());
        }
        static void GetUserandADGroupsInfo(TableauServerConnection tsConn)
        {
            if (tsConn.SignIn())
            {
                //Get Site ID
                var siteID = GetSiteID(tsConn, tsConn.siteName);

                //Get_Group IDs
                var groups_response = callAPI(tsConn, "/sites/" + siteID + "/groups/");
                var groups          = GenericXMLParser <Group> .ParseResponse(groups_response, "group");

                var filteredGroups = groups.Where(g => g.Name != "All Users").ToList();

                var userInfo_Plus = new List <UserInfo_Plus>();
                foreach (var group in filteredGroups)
                {
                    //Get Users --Use page-size param, default 100,  max 1000 users - if any group has > 1000 then rewrite code
                    var users_response = callAPI(tsConn, "/sites/" + siteID + "/groups/" + group.Id + "/users?pageSize=1000&pageNumber=1");
                    var users          = GenericXMLParser <UserInfo_ViaGroupCall> .ParseResponse(users_response, "user");

                    var query = from user in users
                                select new UserInfo_Plus
                    {
                        Id       = user.Id,
                        Name     = user.Name,
                        SiteRole = user.SiteRole,
                        ADGroup  = @group.Name
                    };
                    var result = query.ToList();
                    userInfo_Plus.AddRange(result);
                }

                //Get UserInfo_Full for entire site
                if (GetPageCount(tsConn, "/sites/" + siteID + "/users?pageSize=1000") > 1)
                {
                    throw new NotImplementedException("Logic not implemented for Sites with >1000 users");
                }
                else
                {
                    var userinfo_Full_response = callAPI(tsConn, "/sites/" + siteID + "/users?pageSize=1000&pageNumber=1");
                    var fullUsers = GenericXMLParser <UserInfo_Full> .ParseResponse(userinfo_Full_response, "user");

                    //Merge CWIDS into MyUser class
                    var query = from uip in userInfo_Plus
                                join fu in fullUsers
                                on uip.Id equals fu.Id
                                select new UserInfo_Plus
                    {
                        Id        = uip.Id,
                        ADGroup   = uip.ADGroup,
                        Name      = uip.Name,
                        SiteRole  = uip.SiteRole,
                        CWID      = uip.Name,
                        LastLogin = fu.LastLogin
                    };

                    var userlist = query.ToList();

                    using (var writer = new StreamWriter("output.csv"))
                        using (var csv = new CsvWriter(writer))
                        {
                            csv.WriteRecords(userlist);
                        }
                }
            }
        }
Exemple #43
0
        static void Main(string[] args)
        {
            List <Player> players = new List <Player>();

            using (var client = new HttpClient())
            {
                var calendar = GetCalendar(client);

                var savedGame = ReadFile();
                players = savedGame.players.ToList();
                //GetGamesAndUpdatePlayers(calendar.matches, client, players);

                //long numberOfGameWeek = calendar.day - 1;

                if (savedGame.day != calendar.day)
                {
                    for (long i = savedGame.day - 1; i < calendar.day; i++)
                    {
                        var calendarOfTheWeek = GetCalendar(client, i);
                        GetGamesAndUpdatePlayers(calendarOfTheWeek.matches, client, players);

                        string json = JsonConvert.SerializeObject(new Game {
                            day = calendar.day, players = players.ToArray()
                        });
                        File.WriteAllText(@"../../game.json", json);
                    }
                }
            }

            var    plays       = players.OrderBy(p => p.AverageNote);
            var    myTeamRates = players.Where(p => myTeam.Any(m => m == p.idplayer));
            string myTeamJson  = JsonConvert.SerializeObject(myTeamRates.ToArray());

            File.WriteAllText(@"../../myTeam.json", myTeamJson);

            var teamYannRates = players.Where(p => teamYann.Any(m => m == p.idplayer));

            var minNote  = 5;
            var position = "Defender";

            var att = plays//.Where(p => p.AverageNote > minNote && p.position == position)
                      .Where(a => !teamYann.Contains(a.idplayer))
                      .Where(a => !teamPaul.Contains(a.idplayer))
                      .Where(a => !teamMido.Contains(a.idplayer))
                      .Where(a => !teamJean.Contains(a.idplayer))
                      .Where(a => !teamGabi.Contains(a.idplayer))
                      .Where(a => !myTeam.Contains(a.idplayer))
                      .Where(a => !teamEric.Contains(a.idplayer))
                      .Where(a => !teamYass.Contains(a.idplayer));

            using (var csv = new CsvWriter(new StreamWriter("allPlayer.csv")))
            {
                csv.WriteHeader <Player>();

                csv.Configuration.HasHeaderRecord = false;
                csv.Configuration.Delimiter       = ",";

                foreach (var player in plays)
                {
                    csv.WriteRecord(player);
                }
            }

            using (var csv = new CsvWriter(new StreamWriter("myTeam.csv")))
            {
                csv.WriteHeader <Player>();

                csv.Configuration.HasHeaderRecord = false;
                csv.Configuration.Delimiter       = ",";

                foreach (var player in myTeamRates)
                {
                    csv.WriteRecord(player);
                }
            }

            using (var csv = new CsvWriter(new StreamWriter("allAvailablePlayer.csv")))
            {
                csv.WriteHeader <Player>();

                csv.Configuration.HasHeaderRecord = false;
                csv.Configuration.Delimiter       = ",";

                foreach (var player in att)
                {
                    csv.WriteRecord(player);
                }
            }
        }
        private FileContentResult BuildFormResultsCSV(List <string> leadingHeaders)
        {
            //debug
            Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " started");

            string includeParts = Request["includeParts"] as string;
            Dictionary <string, int> formPartMap = (Dictionary <string, int>)Session["formPartMap"];
            string formId = Request["formId"] as string;

            ExportModel exportModel = (ExportModel)Session["ExportModel"];
            int         iFormId     = Convert.ToInt32(formId);

            List <def_Forms> forms = new List <def_Forms>();

            if (iFormId == 0)
            {
                foreach (int?id in exportModel.formIds)
                {
                    forms.Add(formsRepo.GetFormById(Convert.ToInt32(id)));
                }
            }
            else
            {
                forms.Add(formsRepo.GetFormById(iFormId));
            }


            string    outpath = ControllerContext.HttpContext.Server.MapPath("../Content/formResults_" + System.DateTime.Now.Ticks + ".csv");
            Stream    stream  = new FileStream(outpath, FileMode.Create);
            CsvWriter writer  = new CsvWriter(stream);

            // Build a map of with all relevent itemVariable identifiers
            Dictionary <int, string> ivIdentifiersById = new Dictionary <int, string>();

            foreach (string leadingIdent in leadingHeaders)
            {
                int id = leadingIdent.StartsWith("FORMRESULT_") ? -1 - ivIdentifiersById.Count :
                         formsRepo.GetItemVariableByIdentifier(leadingIdent).itemVariableId;
                ivIdentifiersById.Add(id, leadingIdent);
            }
            int i = 0;
            Dictionary <int, List <string> > formIdentMap = new Dictionary <int, List <string> >();

            foreach (def_Forms form in forms)
            {
                List <string> map = new List <string>();
                // Use the formPartMap when its not empty.
                i = (formPartMap.Count() > 0) ? formPartMap[form.formId + " start"] : 0;
                foreach (def_Parts prt in formsRepo.GetFormParts(form))
                {
                    if (prt.identifier.Contains("Scores"))
                    {
                        continue;
                    }
                    if (includeParts[i++] == '1')
                    {
                        //formPartMap.Add(form.formId + " " + prt.partId + " ident start", ivIdentifiersById.Count());
                        foreach (def_Sections sctn in formsRepo.GetSectionsInPart(prt))
                        {
                            formsRepo.CollectItemVariableIdentifiersById(sctn, ivIdentifiersById);
                            foreach (def_Items item in formsRepo.GetAllItemsForSection(sctn))
                            {
                                map.AddRange(formsRepo.GetItemVariablesByItemId(item.itemId).Select(iv => iv.identifier).ToList());
                            }
                        }

                        Debug.WriteLine("Added more sections to ivIdentifiersById, form: " + form.formId + " part: " + prt.partId + " new Count: " + ivIdentifiersById.Count());
                        //formPartMap.Add(form.formId + " " + prt.partId + " ident end", ivIdentifiersById.Count());
                    }
                }
                formIdentMap.Add(form.formId, map);
            }

            //add additional columns for any unhandled data the comes back from CommonExport.GetFormResultValues
            foreach (FormResultExportTagName tagName in Enum.GetValues(typeof(FormResultExportTagName)))
            {
                string header = "FORMRESULT_" + tagName.ToString();
                if (!ivIdentifiersById.Values.Contains(header))
                {
                    int id = -1 - ivIdentifiersById.Count; //not used, but must be unique to act as dictionary key
                    ivIdentifiersById.Add(id, header);
                }
            }

            //debug
            Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " finished Build a map of with all column identifiers");

            // Build a list of formresults to export
            List <int?>            formResultIds = exportModel.formResultIds;
            List <def_FormResults> formResultsToExport;

            if (iFormId == 0)
            {
                formResultsToExport = new List <def_FormResults>();
                foreach (def_Forms form in forms)
                {
                    formResultsToExport.AddRange(formsRepo.GetFormResultsByFormId(form.formId).Where(r => formResultIds.Contains(r.formResultId)).ToList());
                }
            }
            else
            {
                if (formResultIds == null)
                {
                    formResultsToExport = formsRepo.GetFormResultsByFormId(iFormId).ToList();
                }
                else
                {
                    formResultsToExport = formsRepo.GetFormResultsByFormId(iFormId).Where(r => formResultIds.Contains(r.formResultId)).ToList();
                }
            }
            Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " finished building a list of formresults to export");

            //build a header record with identifiers
            int           n           = ivIdentifiersById.Count;
            List <int>    ivIds       = new List <int>();
            List <string> identifiers = new List <string>();
            List <string> headerText  = new List <string>();
            int           j           = 0;

            foreach (KeyValuePair <int, string> de in ivIdentifiersById)
            {
                ivIds.Add(de.Key);
                identifiers.Add(de.Value);
                headerText.Add(de.Value.Replace("FORMRESULT_", ""));
                j++;
            }
            HeaderRecord hr = new HeaderRecord(true, headerText);

            writer.WriteRecord(hr);
            Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " finished build a header record with identifiers");

            //Build a DataRecord with item labels (second row in the output file)
            string[] values = new string[n]; //used to temporarily store the values for each row in the export
            for (int k = 0; k < n; k++)
            {
                if (identifiers[k].StartsWith("FORMRESULT_"))
                {
                    FormResultExportTagName tag = (FormResultExportTagName)Enum.Parse(typeof(FormResultExportTagName), headerText[k]);
                    values[k] = getCSVSecondRowLabelForFormResultTagName(tag);
                }
                else
                {
                    values[k] = formsRepo.GetItemVariableById(ivIds[k]).def_Items.label;
                }
            }
            writer.WriteRecord(new DataRecord(hr, values));
            Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " finished Build a DataRecord with item labels");

            //insert access logs (one for each assessment being exported)
            int[] arrFrIds = formResultIds.Where(id => id.HasValue).Select(id => id.Value).ToArray();
            AccessLogging.InsertMultipleAccessLogRecords(formsRepo, arrFrIds, (int)AccessLogging.accessLogFunctions.EXPORT, "Export CSV of assessment");

            // Build a DataRecord for each form result
            int count = 0, total = formResultsToExport.Count();

            foreach (def_FormResults fr in formResultsToExport)
            {
                //pull all necessary data for this formResult
                List <ValuePair> rspValues = CommonExport.GetDataByFormResultId(fr.formResultId);
                List <ValuePair> frValues  = CommonExport.GetFormResultValues(fr, forms.Where(f => f.formId == fr.formId).FirstOrDefault());

                //fill in values from formResult
                for (int k = 0; k < n; k++)
                {
                    if (identifiers[k].StartsWith("FORMRESULT_"))
                    {
                        //values[k] = GetFormResultValue(fr, headerText[k]);
                        ValuePair vp = frValues.Where(vpt => vpt.identifier == headerText[k]).FirstOrDefault();
                        if (vp != null)
                        {
                            values[k] = vp.rspValue;
                        }
                        else
                        {
                            values[k] = "";
                        }
                    }
                }

                //replace reponse values (numbers) with meaningful text for certain cells
                //FormResults_formStatus status;
                //Enum.TryParse(values[colIndex_status], out status);
                //values[colIndex_status] = status.ToString();
                //values[colIndex_sis_why] = GetDropdownText("assmtReason", values[colIndex_sis_why]);

                //fill in values from responseVariables
                for (i = 0; i < n; i++)
                {
                    if (identifiers[i].StartsWith("FORMRESULT_"))
                    {
                        continue;
                    }
                    ValuePair vp = null;
                    if (identifiers[i].StartsWith("FORMRESULT_") || formIdentMap[fr.formId].Contains(identifiers[i]))
                    {
                        vp = rspValues.Where(vpt => vpt.identifier == identifiers[i]).FirstOrDefault();
                    }
                    values[i] = vp == null ? "" : vp.rspValue;
                }
                writer.WriteRecord(new DataRecord(hr, values));

                //debug
                Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " finished " + (++count) + "/" + total + " records");
            }
            writer.Close(); //<- calls stream.Close()


            //debug
            Debug.WriteLine(" * * * BuildFormResultsCSV - " + DateTime.Now.Ticks + " finished everything");

            return(File(System.IO.File.ReadAllBytes(outpath), "text/csv", "results.csv"));
        }
Exemple #45
0
 /// <summary>
 /// Initializes a new instance using the given writer.
 /// </summary>
 /// <param name="writer">The writer.</param>
 public ExpressionManager(CsvWriter writer)
 {
     this.writer = writer;
 }
        private static async Task Main(string[] args)
        {
            Console.WriteLine("Please enter the following details to list all of the team members in all of the projects in the collection/instance");
            Console.WriteLine();
            Console.Write("Azure DevOps Instance/Collection URL: ");
            var url = Console.ReadLine();

            Console.Write("Personal Access Token (PAT): ");
            var pat = Console.ReadLine();

            VssBasicCredential vssBasicCredential = new VssBasicCredential(pat, pat);

            using (TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(new Uri(url), vssBasicCredential))
            {
                tpc.Authenticate();

                Console.WriteLine();
                Console.Write("Instance/Collection Display Name: ");
                Console.WriteLine(tpc.DisplayName);

                Console.Write("Instance/Collection ID: ");
                Console.WriteLine(tpc.InstanceId);
                Console.WriteLine();

                var data = new List <ProjectTeamMember>();

                var log           = new StringBuilder();
                var workItemStore = tpc.GetService <WorkItemStore>();
                var teamService   = tpc.GetService <TfsTeamService>();

                // Get security namespace for the project collection.
                ISecurityService  securityService   = tpc.GetService <ISecurityService>();
                SecurityNamespace securityNamespace = securityService.GetSecurityNamespace(FrameworkSecurity.IdentitiesNamespaceId);
                var projects = workItemStore.Projects;
                foreach (Project project in projects)
                {
                    log.AppendLine($"PROJECT: {project.Name}");
                    Console.WriteLine($"PROJECT: {project.Name}");

                    var teams = teamService.QueryTeams(project.Uri.ToString());

                    foreach (var team in teams)
                    {
                        log.AppendLine($"\tTEAM: {team.Name}");
                        Console.WriteLine($"\tTEAM: {team.Name}");

                        var    members = team.GetMembers(tpc, MembershipQuery.Expanded);
                        string token   = IdentityHelper.CreateSecurityToken(team.Identity);
                        // Retrieve an ACL object for all the team members.
                        AccessControlList acl = securityNamespace.QueryAccessControlList(token, members.Select(m => m.Descriptor), true);
                        // Retrieve the team administrator SIDs by querying the ACL entries.
                        var entries = acl.AccessControlEntries;
                        var admins  = entries.Where(e => (e.Allow & 15) == 15).Select(e => e.Descriptor.Identifier);

                        // Finally, retrieve the actual TeamFoundationIdentity objects from the SIDs.
                        var adminIdentities = members.Where(m => admins.Contains(m.Descriptor.Identifier));

                        foreach (var member in members)
                        {
                            var isAdmin     = adminIdentities.Any(i => i == member);
                            var isAdminText = isAdmin ? " [ADMIN]" : string.Empty;

                            log.AppendLine($"\t\tACCOUNT: {member.DisplayName} {isAdminText}");
                            Console.WriteLine($"\t\tACCOUNT: {member.DisplayName} {isAdminText}");

                            var projectTeamMember = new ProjectTeamMember
                            {
                                ProjectId   = project.Id,
                                ProjectName = project.Name,
                                TeamId      = team.Identity.TeamFoundationId,
                                TeamName    = team.Name,
                                MemberId    = member.TeamFoundationId,
                                MemberName  = member.DisplayName,
                                IsTeamAdmin = isAdmin
                            };

                            data.Add(projectTeamMember);
                        }
                    }

                    Console.WriteLine();
                }

                File.AppendAllText($"{tpc.InstanceId}.{DateTime.Now.ToString("yyyyMMddhhmmss")}.txt", log.ToString());

                using (var writer = new StreamWriter($"{tpc.InstanceId}.{DateTime.Now.ToString("yyyyMMddhhmmss")}.csv"))
                    using (var csv = new CsvWriter(writer))
                    {
                        csv.WriteRecords(data);
                    }
            }

            Console.ReadLine();
        }
Exemple #47
0
        public override byte[] PreProcess(byte[] rgb)
        {
            if (rgb == null)
            {
                throw new ArgumentNullException(nameof(rgb));
            }
            base.PreProcess(rgb);
            MemoryStream ms = new MemoryStream(rgb);

            try
            {
                dictAircraft.Clear();
                using (CSVReader reader = new CSVReader(ms))
                {
                    ms = null;  // for CA2202

                    ReadAircraftTable(reader);

                    string[] rgRow = null;

                    string[] rgHeaders;
                    // Now find the start of the flight table and stop - the regular CSVAnalyzer can pick up from here, and our aircraft table is now set up.
                    while ((rgHeaders = reader.GetCSVLine()) != null)
                    {
                        if (rgHeaders != null && rgHeaders.Length > 0 && rgHeaders[0].CompareCurrentCultureIgnoreCase("Flights Table") == 0)
                        {
                            break;
                        }
                    }


                    // Now find the next line that isn't generic data types
                    // Look for "Text", "hhmm", "Decimal", "Boolean" - if any of these, skip ahead.
                    while ((rgHeaders = reader.GetCSVLine()) != null)
                    {
                        if (Array.Find(rgHeaders, sz => rDataTypes.IsMatch(sz)) == null)
                        {
                            break;
                        }
                    }

                    if (rgHeaders != null)
                    {
                        // Build a *new* byte array from here
                        using (DataTable dt = new DataTable())
                        {
                            dt.Locale = CultureInfo.CurrentCulture;
                            foreach (string header in rgHeaders)
                            {
                                try
                                {
                                    dt.Columns.Add(new DataColumn(header.Trim(), typeof(string)));
                                }
                                catch (DuplicateNameException)
                                {
                                    throw new MyFlightbookException(String.Format(CultureInfo.CurrentCulture, Resources.LogbookEntry.errImportDuplicateColumn, header));
                                }
                            }

                            while ((rgRow = reader.GetCSVLine()) != null)
                            {
                                bool fHasData = false;
                                Array.ForEach <string>(rgRow, (sz) => { fHasData = fHasData || !String.IsNullOrWhiteSpace(sz); });
                                if (!fHasData)
                                {
                                    continue;
                                }

                                DataRow dr = dt.NewRow();
                                for (int i = 0; i < rgRow.Length && i < rgHeaders.Length; i++)
                                {
                                    dr[i] = rgRow[i];
                                }
                                dt.Rows.Add(dr);
                            }

                            return(Encoding.UTF8.GetBytes(CsvWriter.WriteToString(dt, true, true)));
                        }
                    }
                }
            }
            finally
            {
                if (ms != null)
                {
                    ms.Dispose();
                }
            }
            return(rgb);
        }
 protected override void WriteCsvHeader(CsvWriter writer)
 {
     writer.WriteField("Name");
     writer.WriteField("Number Sold");
     writer.WriteField("Revenue");
 }
 internal static void Write(ParentOneChild_ParentNullable parentOneChild_ParentNullable, CsvWriter csvWriter)
 {
     parentOneChild_ParentNullable.onCsvWrite();
     csvWriter.Write(parentOneChild_ParentNullable.Text);
 }
        public static void SaveAsCsV(ClaimAdvice claimAdvice, string backupLocation, List <string> filePaths, bool isDbError = false)
        {
            string path = backupLocation + "//" + " " + ((isDbError) ? claimAdvice.ContactEmail + "  " + claimAdvice.CreationDate.ToString("dd_MM_yyyy_hh_mm_ss") : claimAdvice.ReferenceNumber);

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }
            foreach (string filePath in filePaths)
            {
                string FileName = Path.GetFileName(filePath);
                System.IO.File.Copy(filePath, path + "//" + FileName, true);
            }
            TextWriter textWriter = new StreamWriter(path + "//" + "Data.csv");
            var        csv        = new CsvWriter(textWriter);

            csv.WriteField("ReferenceNumber");
            csv.WriteField(claimAdvice.ReferenceNumber);
            csv.NextRecord();
            csv.WriteField("Insured Business Name");
            csv.WriteField(claimAdvice.InsuredBusinessName);
            csv.NextRecord();
            csv.WriteField("Insured ABN");
            csv.WriteField(claimAdvice.InsuredABN);
            csv.NextRecord();
            csv.WriteField("Insured Business Address");
            csv.WriteField(claimAdvice.InsuredBusinessAddress);
            csv.NextRecord();
            csv.WriteField("Contact Name");
            csv.WriteField(claimAdvice.ContactName);
            csv.NextRecord();
            csv.WriteField("Contact Email");
            csv.WriteField(claimAdvice.ContactEmail);
            csv.NextRecord();
            csv.WriteField("Date of Event");
            csv.WriteField(claimAdvice.DateofEvent);
            csv.NextRecord();
            csv.WriteField("Time of Day");
            csv.WriteField(claimAdvice.TimeofDay);
            csv.NextRecord();
            csv.WriteField("Where did the event occur?");
            csv.WriteField(claimAdvice.EventAddress);
            csv.NextRecord();
            csv.WriteField("How did the loss or damage occur? Please describe the damage.");
            csv.WriteField(claimAdvice.HowLossDescription);
            csv.NextRecord();
            csv.NextRecord();
            csv.WriteField("Is any Third Party to blame for the loss or damage?");
            csv.WriteField(claimAdvice.ThirdPartyBlame);
            csv.NextRecord();
            foreach (var item in claimAdvice.ThirdPartyBlames)
            {
                csv.NextRecord();
                csv.WriteField("Third Party Details (" + (claimAdvice.ThirdPartyBlames.IndexOf(item) + 1).ToString() + ")");
                csv.NextRecord();
                csv.WriteField("Name");
                csv.WriteField(item.Name);
                csv.NextRecord();
                csv.WriteField("Registration");
                csv.WriteField(item.Registration);
                csv.NextRecord();
                csv.WriteField("Address");
                csv.WriteField(item.Address);
                csv.NextRecord();
                csv.WriteField("Phone");
                csv.WriteField(item.Phone);
                csv.NextRecord();
            }
            csv.NextRecord();
            csv.WriteField("Have you received, or do you anticipate receiving, notice of any claim from or on behalf of third parties?");
            csv.WriteField(claimAdvice.ReceiveNoticeThirdParty);
            csv.NextRecord();
            if (claimAdvice.ReceiveNoticeThirdParty == "Yes")
            {
                csv.WriteField("Please provide details");
                csv.WriteField(claimAdvice.ReceiveNoticeThirdPartyDetails);
                csv.NextRecord();
            }
            foreach (var item in claimAdvice.SceneWitnesses)
            {
                csv.NextRecord();
                csv.WriteField("Witnesses at Scene(" + (claimAdvice.SceneWitnesses.IndexOf(item) + 1).ToString() + ")");
                csv.NextRecord();
                csv.WriteField("Name");
                csv.WriteField(item.Name);
                csv.NextRecord();
                csv.WriteField("Registration");
                csv.WriteField(item.Registration);
                csv.NextRecord();
                csv.WriteField("Address");
                csv.WriteField(item.Address);
                csv.NextRecord();
                csv.WriteField("Phone");
                csv.WriteField(item.Phone);
                csv.NextRecord();
            }
            csv.NextRecord();
            csv.WriteField("Is the claim for a burglary or theft?");
            csv.WriteField(claimAdvice.BurglaryorTheft);
            if (claimAdvice.BurglaryorTheft == "Yes")
            {
                csv.NextRecord();
                csv.WriteField("Police Station");
                csv.WriteField(claimAdvice.PoliceStation);
                csv.NextRecord();
                csv.WriteField("Police Officer Name");
                csv.WriteField(claimAdvice.PoliceOfficerName);
                csv.NextRecord();
                csv.WriteField("Police Report Number");
                csv.WriteField(claimAdvice.PoliceReportNumber);
            }
            csv.NextRecord();
            foreach (var item in claimAdvice.Claims)
            {
                csv.NextRecord();
                csv.WriteField("Claim Details (" + (claimAdvice.Claims.IndexOf(item) + 1).ToString() + ")");
                csv.NextRecord();
                csv.WriteField("Description of lost and/or damaged Property");
                csv.WriteField(item.PropertyDescription);
                csv.NextRecord();
                csv.WriteField("Item Age");
                csv.WriteField(item.ItemAge);
                csv.NextRecord();
                csv.WriteField("Original Cost");
                csv.WriteField(item.OriginalCost);
                csv.NextRecord();
                csv.WriteField("Replacement/Repair Cost");
                csv.WriteField(item.ReplacementValue);
                csv.NextRecord();
                csv.WriteField("Amount Claimed");
                csv.WriteField(item.AmountClaimed);
                csv.NextRecord();
            }
            csv.NextRecord();
            csv.WriteField("Total amount claimed");
            csv.WriteField(claimAdvice.TotalAmountClaimed);
            csv.NextRecord();
            csv.WriteField("Third Party Liability Claims");
            csv.WriteField(claimAdvice.ThirdPartyLiabilityClaim);
            csv.NextRecord();
            if (claimAdvice.ThirdPartyLiabilityClaim == "Yes")
            {
                csv.WriteField("Name of Third Party");
                csv.WriteField(claimAdvice.ThirdPartyName);
                csv.NextRecord();
                csv.WriteField("Permanent Address");
                csv.WriteField(claimAdvice.ThirdPartyPermanentAddress);
                csv.NextRecord();
                csv.WriteField("Nature and extent of injuries/damage");
                csv.WriteField(claimAdvice.InjuriesDamageDescription);
                csv.NextRecord();
                csv.WriteField("Have you received any correspondence from Third Parties?");
                csv.WriteField(claimAdvice.ThirdPartyCorrespondence);

                csv.NextRecord();
                foreach (var item in claimAdvice.ThirdPartyFileUploads)
                {
                    csv.NextRecord();
                    csv.WriteField("Third Party Correspondence File Upload Link Table (" + (claimAdvice.ThirdPartyFileUploads.IndexOf(item) + 1).ToString() + ")");
                    csv.NextRecord();
                    csv.WriteField("Upload Description");
                    csv.WriteField(item.UploadDescription);
                    csv.NextRecord();
                    csv.WriteField("Upload Description");
                    csv.WriteField(item.UploadFilename);
                    csv.NextRecord();
                }
                csv.NextRecord();
                csv.WriteField("Have you made any admission of liability?");
                csv.WriteField(claimAdvice.AdmissionofLiability);
                csv.NextRecord();
                csv.WriteField("Give details");
                csv.WriteField(claimAdvice.AdmissionofLiabilityDetails);
                csv.NextRecord();
            }
            foreach (var item in claimAdvice.SupportingFileUploads)
            {
                csv.NextRecord();
                csv.WriteField("Third Party Correspondence File Upload Link Table (" + (claimAdvice.SupportingFileUploads.IndexOf(item) + 1).ToString() + ")");
                csv.NextRecord();
                csv.WriteField("Upload Description");
                csv.WriteField(item.UploadDescription);
                csv.NextRecord();
                csv.WriteField("Upload Description");
                csv.WriteField(item.UploadFilename);
                csv.NextRecord();
            }
            csv.NextRecord();
            csv.WriteField("Other Comments");
            csv.WriteField(claimAdvice.OtherComments);
            csv.NextRecord();
            textWriter.Close();
        }
Exemple #51
0
        public async Task <IActionResult> Predict(string eventData, int SageMakerID)
        {
            Trigger entity = await _context.AlertTriggers.FindAsync(SageMakerID);

            if (entity == null || eventData == null)
            {
                return(StatusCode(404));
            }
            if (eventData.Contains(entity.Condtion) && eventData.Contains("R:301"))
            {
                string[] eventDataSplit = eventData.Split('|');
                List <GenericRecordHolder> genericRecordHolder = new List <GenericRecordHolder>
                {
                    new GenericRecordHolder
                    {
                        field1 = eventDataSplit[2],
                        field2 = eventDataSplit[0]
                    }
                };
                MemoryStream     sendingMemoryStream = new MemoryStream();
                CsvConfiguration config = new CsvConfiguration(CultureInfo.CurrentCulture)
                {
                    HasHeaderRecord = false
                };
                using (var streamWriter = new StreamWriter(sendingMemoryStream))
                {
                    using (var csvWriter = new CsvWriter(streamWriter, config))
                    {
                        csvWriter.WriteRecords(genericRecordHolder);
                    }
                }
                InvokeEndpointResponse invokeEndpointResponse = await _SageMakerClient.InvokeEndpointAsync(new InvokeEndpointRequest
                {
                    Accept       = "application/json",
                    ContentType  = "text/csv",
                    EndpointName = entity.EndpointName,
                    Body         = new MemoryStream(sendingMemoryStream.ToArray())
                });

                if (invokeEndpointResponse.HttpStatusCode.Equals(HttpStatusCode.OK))
                {
                    string       json = string.Empty;
                    MemoryStream receivingMemoryStream = new MemoryStream(invokeEndpointResponse.Body.ToArray())
                    {
                        Position = 0
                    };
                    using (StreamReader reader = new StreamReader(receivingMemoryStream))
                    {
                        json = reader.ReadToEnd();
                    }
                    IPInsightsPredictions predictions = JsonConvert.DeserializeObject <IPInsightsPredictions>(json);
                    TempData["Alert"]   = "Success";
                    TempData["Message"] = "The Machine Learning Model returned " + predictions.Predictions[0].Dot_product;
                    return(RedirectToAction("Streaming", new { InputID = entity.LinkedLogInputID }));
                }
                else
                {
                    TempData["Alert"]   = "Danger";
                    TempData["Message"] = "The Machine Learning Model is facing some issues at the moment...";
                    return(RedirectToAction("Streaming", new { InputID = entity.LinkedLogInputID }));
                }
            }
            else
            {
                TempData["Alert"]   = "Warning";
                TempData["Message"] = "This event cannot be inferred by the Machine Learning Model!";
                return(RedirectToAction("Streaming", new { InputID = entity.LinkedLogInputID }));
            }
        }
Exemple #52
0
        static void Main(string[] args)
        {
            Parameters parms = new Parameters();

            if (!parms.ParseArgs(args))
            {
                return;
            }

            foreach (FileQuery fq in parms.Environment.FileQueries)
            {
                List <AssemblyInformation> assInfoList = new List <AssemblyInformation>();

                foreach (string path in fq.FilePaths)
                {
                    Console.WriteLine($"Processing {path}");
                    assInfoList.Add(new AssemblyInformation(path));
                }

                using (TextWriter tw = new StringWriter())
                {
                    CsvWriter writer = new CsvWriter(tw);
                    writer.WriteRecords(assInfoList);

                    Console.WriteLine($"Saving assembly information to {fq.OutputFileName}.");
                    File.WriteAllText(fq.OutputFileName, tw.ToString());
                }
            }

            foreach (DBQuery dbq in parms.Environment.DBQueries)
            {
                using (QueryHelper qh = new QueryHelper("System.Data.SqlClient", dbq.ConnectionString))
                {
                    qh.ExecuteQuery(dbq.SQL, System.Data.CommandType.Text, null, dr =>
                    {
                        TextWriter tw    = new StringWriter();
                        CsvWriter writer = null;

                        while (dr.Read())
                        {
                            if (writer == null)
                            {
                                writer = new CsvWriter(tw);

                                for (int ordinal = 0; ordinal < dr.FieldCount; ordinal++)
                                {
                                    writer.WriteField(dr.GetName(ordinal));
                                }

                                writer.NextRecord();
                            }

                            for (int ordinal = 0; ordinal < dr.FieldCount; ordinal++)
                            {
                                writer.WriteField(dr.GetValue(ordinal));
                            }

                            writer.NextRecord();
                        }

                        Console.WriteLine($"Saving query results to {dbq.OutputFileName}.");
                        File.WriteAllText(dbq.OutputFileName, tw.ToString());
                    });
                }
            }
        }
        private void ExportItems(string catalogId, OperationStatus currentOperation)
        {
            var fileName = string.Format("{0} Items ({1}).csv", catalogId, DateTime.UtcNow.ToString(DateFormat));

            using (var stream = new MemoryStream())
            {
                var textWriter = new StreamWriter(stream, Encoding.UTF8);
                {
                    var csvWriter = new CsvWriter(textWriter, ",");
                    csvWriter.WriteRow(
                        new List <string>
                    {
                        "Catalog",
                        "Code",
                        "Name",
                        "StartDate",
                        "EndDate",
                        "IsBuyable",
                        "IsActive",
                        "MinQuantity",
                        "MaxQuantity",
                        "Weight",
                        "PackageType",
                        "TaxCategory",
                        "Type"
                    }, false);

                    using (var repository = _catalogRepositoryFactory.GetRepositoryInstance())
                    {
                        if (repository != null)
                        {
                            repository.Items.Where(item => item.CatalogId.Equals(catalogId)).ToList().ForEach(item =>
                            {
                                csvWriter.WriteRow(new[]
                                {
                                    catalogId,
                                    item.Code,
                                    item.Name,
                                    item.StartDate.ToString(),
                                    item.EndDate == null ? string.Empty : item.EndDate.ToString(),
                                    item.IsBuyable.ToString(),
                                    item.IsActive.ToString(),
                                    item.MinQuantity.ToString(),
                                    item.MaxQuantity.ToString(),
                                    item.Weight.ToString(),
                                    item.PackageType == null ? string.Empty : item.PackageType.ToString(),
                                    item.TaxCategory == null ? string.Empty : item.TaxCategory.ToString(),
                                    item.GetType().Name
                                }, false);
                                currentOperation.Processed++;
                            });
                        }
                    }
                }

                stream.Seek(0, SeekOrigin.Begin);
                var uploadError = Upload(fileName, stream);
                if (!string.IsNullOrEmpty(uploadError))
                {
                    currentOperation.Errors.Add(uploadError);
                }
            }
        }
        private void ExportLocalization(string sourceLanguage, string targetLanguage, OperationStatus currentOperation)
        {
            var fileName = string.Format("{0} - {1} ({2}).csv", sourceLanguage, targetLanguage, DateTime.UtcNow.ToString(DateFormat));

            using (var stream = new MemoryStream())
            {
                var textWriter = new StreamWriter(stream, Encoding.UTF8);
                var csvWriter  = new CsvWriter(textWriter, ",");
                csvWriter.WriteRow(
                    new List <string>
                {
                    "Name",
                    sourceLanguage,
                    string.Format("LanguageCode ({0})", targetLanguage),
                    string.Format("Value - {0}", targetLanguage)
                },
                    false);

                using (var repository = _appConfigRepositoryFactory.GetRepositoryInstance())
                {
                    if (repository != null)
                    {
                        var names          = repository.Localizations.ToList().Select(x => x.Name).Distinct();
                        var translateItems =
                            repository.Localizations.Where(x => x.LanguageCode == targetLanguage).ToDictionary(x => x.Name);
                        var originalItems =
                            repository.Localizations.Where(x => x.LanguageCode == sourceLanguage).ToDictionary(x => x.Name);

                        foreach (var name in names)
                        {
                            var isTranslateExists = translateItems.ContainsKey(name);
                            //if ((IsUntranslatedOnly && !isTranslateExists) || !IsUntranslatedOnly)
                            {
                                var original = originalItems.ContainsKey(name)
                                                                                       ? originalItems[name]
                                                                                       : new Localization()
                                {
                                    Name         = name,
                                    LanguageCode = sourceLanguage,
                                    Value        = string.Empty
                                };
                                var translated = isTranslateExists
                                                                                         ? translateItems[name]
                                                                                         : new Localization()
                                {
                                    Name         = original.Name,
                                    LanguageCode = targetLanguage,
                                    Category     = original.Category,
                                    Value        = string.Empty
                                };

                                csvWriter.WriteRow(new[] { name, original.Value, translated.Value }, true);
                                currentOperation.Processed++;
                            }
                        }
                    }
                }

                stream.Seek(0, SeekOrigin.Begin);
                var uploadError = Upload(fileName, stream);
                if (!string.IsNullOrEmpty(uploadError))
                {
                    currentOperation.Errors.Add(uploadError);
                }
            }
        }
Exemple #55
0
		/// <summary>
		/// Initializes a new instance using the given writer.
		/// </summary>
		/// <param name="writer">The writer.</param>
		public RecordManager(CsvWriter writer)
		{
			recordWriterFactory = ObjectResolver.Current.Resolve<RecordWriterFactory>(writer);
		}
Exemple #56
0
        public void ExportToFile(string path)
        {
            var rows = _periodDict.Select(p => p.Value)
                       .Select(p =>
            {
                double advanceFunds = _contractDict.Where(c => c.Type == ContractEventType.Accept && c.IsInPeriod(p))
                                      .Select(c => c.FundsChange)
                                      .Sum();

                double rewardFunds = _contractDict.Where(c => c.Type == ContractEventType.Complete && c.IsInPeriod(p))
                                     .Select(c => c.FundsChange)
                                     .Sum();

                double failureFunds = -_contractDict.Where(c => (c.Type == ContractEventType.Cancel || c.Type == ContractEventType.Fail) && c.IsInPeriod(p))
                                      .Select(c => c.FundsChange)
                                      .Sum();

                double constructionFees = _facilityConstructions.Where(f => f.State == ConstructionState.Started && f.IsInPeriod(p))
                                          .Select(c => c.Cost)
                                          .Sum();
                return(new[]
                {
                    _epoch.AddSeconds(p.StartUT).ToString("yyyy-MM"),
                    p.VABUpgrades.ToString(),
                    p.SPHUpgrades.ToString(),
                    p.RnDUpgrades.ToString(),
                    p.CurrentFunds.ToString("F0"),
                    p.CurrentSci.ToString("F1"),
                    p.ScienceEarned.ToString("F1"),
                    advanceFunds.ToString("F0"),
                    rewardFunds.ToString("F0"),
                    failureFunds.ToString("F0"),
                    p.OtherFundsEarned.ToString("F0"),
                    p.LaunchFees.ToString("F0"),
                    p.MaintenanceFees.ToString("F0"),
                    p.ToolingFees.ToString("F0"),
                    p.EntryCosts.ToString("F0"),
                    constructionFees.ToString("F0"),
                    (p.OtherFees - constructionFees).ToString("F0"),
                    string.Join(", ", _launchedVessels.Where(l => l.IsInPeriod(p))
                                .Select(l => l.VesselName)
                                .ToArray()),
                    string.Join(", ", _contractDict.Where(c => c.Type == ContractEventType.Accept && c.IsInPeriod(p))
                                .Select(c => $"{c.DisplayName}")
                                .ToArray()),
                    string.Join(", ", _contractDict.Where(c => c.Type == ContractEventType.Complete && c.IsInPeriod(p))
                                .Select(c => $"{c.DisplayName}")
                                .ToArray()),
                    string.Join(", ", _techEvents.Where(t => t.IsInPeriod(p))
                                .Select(t => t.NodeName)
                                .ToArray()),
                    string.Join(", ", _facilityConstructions.Where(f => f.IsInPeriod(p))
                                .Select(f => $"{f.Facility} ({f.NewLevel + 1}) - {f.State}")
                                .ToArray())
                });
            });

            var columnNames = new[] { "Month", "VAB", "SPH", "RnD", "Current Funds", "Current Sci", "Total sci earned", "Contract advances", "Contract rewards", "Contract penalties", "Other funds earned", "Launch fees", "Maintenance", "Tooling", "Entry Costs", "Facility construction costs", "Other Fees", "Launches", "Accepted contracts", "Completed contracts", "Tech", "Facilities" };
            var csv         = CsvWriter.WriteToText(columnNames, rows, ',');

            File.WriteAllText(path, csv);
        }
        /**************************************************************************/

        private void BuildWorksheetPageDuplicateTitles(
            MacroscopeJobMaster JobMaster,
            CsvWriter ws
            )
        {
            decimal Count    = 0;
            decimal DocCount = 0;

            MacroscopeDocumentCollection DocCollection = JobMaster.GetDocCollection();
            MacroscopeAllowedHosts       AllowedHosts  = JobMaster.GetAllowedHosts();

            DocCount = ( decimal )DocCollection.CountDocuments();

            {
                ws.WriteField("URL");
                ws.WriteField("Occurrences");
                ws.WriteField("Title");

                ws.NextRecord();
            }

            foreach (MacroscopeDocument msDoc in DocCollection.IterateDocuments())
            {
                bool Proceed = false;

                if (DocCount > 0)
                {
                    Count++;
                    this.ProgressForm.UpdatePercentages(
                        Title: null,
                        Message: null,
                        MajorPercentage: -1,
                        ProgressLabelMajor: string.Format("Documents Processed: {0}", Count),
                        MinorPercentage: (( decimal )100 / DocCount) * Count,
                        ProgressLabelMinor: msDoc.GetUrl(),
                        SubMinorPercentage: -1,
                        ProgressLabelSubMinor: null
                        );
                }

                if (AllowedHosts.IsInternalUrl(Url: msDoc.GetUrl()))
                {
                    switch (msDoc.GetDocumentType())
                    {
                    case MacroscopeConstants.DocumentType.HTML:
                        Proceed = true;
                        break;

                    case MacroscopeConstants.DocumentType.PDF:
                        Proceed = true;
                        break;

                    default:
                        Proceed = false;
                        break;
                    }
                }

                if (Proceed)
                {
                    string Title       = msDoc.GetTitle();
                    int    Occurrences = DocCollection.GetStatsTitleCount(msDoc: msDoc);

                    if (Occurrences > 1)
                    {
                        this.InsertAndFormatUrlCell(ws, msDoc);

                        this.InsertAndFormatContentCell(ws, Occurrences);

                        this.InsertAndFormatContentCell(ws, this.FormatIfMissing(Title));

                        ws.NextRecord();
                    }
                }
            }
        }
Exemple #58
0
        // ID, Code, Description, supplierCode, additionalInfo, imageURL, Unit, BulkPrice,
        // StandardPrice, stockNSW, stockQLD, stockVIC, stockWA, barcode, barcodeInner, brand, categories
        private void GetInformation(IWebDriver driver, string ID, string ca)
        {
            try
            {
                var details = driver.FindElement(By.Id("ctl00_lblHeaderMain"));
            }
            catch (Exception)
            {
                // MessageBox.Show("You have a problem, Please restart !!!");
                Stop();
                Thread.Sleep(1000);
                Btn_Start.PerformClick();
            }
            try
            {
                Employee emp = new Employee();
                Thread.Sleep(1000);
                emp.ID           = ID;                                                                   // ID
                emp.Code         = driver.FindElement(By.Id("ctl00_contentMain_lblCode")).Text;          // Code
                emp.Description  = driver.FindElement(By.Id("ctl00_contentMain_lblProductHeader")).Text; // Description
                emp.supplierCode = driver.FindElement(By.Id("ctl00_contentMain_lblSupplierCode")).Text;  // supplierCode
                string info = "";
                try { info = driver.FindElement(By.Id("ctl00_contentMain_LoginView2_lblAdditionalDescription1")).Text; } catch (Exception) { }
                emp.additionalInfo = info;                                                                                  // additionalInfo
                emp.imageURL       = driver.FindElement(By.Id("ctl00_contentMain_imgProduct")).GetAttribute("href");        // imageURL
                emp.Unit           = driver.FindElement(By.Id("ctl00_contentMain_lblUnit")).Text;                           // Unit
                emp.BulkPrice      = driver.FindElement(By.Id("ctl00_contentMain_lblPickupPrice")).Text.Split(' ')[0];      // BulkPrice
                emp.StandardPrice  = driver.FindElement(By.Id("ctl00_contentMain_lblDeliveredPrice")).Text.Split(' ')[0];   // StandardPrice
                emp.stockNSW       = driver.FindElement(By.Id("ctl00_contentMain_lblRealtimeStockNSW")).Text.Split(' ')[0]; // stockNSW
                emp.stockQLD       = driver.FindElement(By.Id("ctl00_contentMain_lblRealtimeStockQLD")).Text.Split(' ')[0]; // stockQLD
                emp.stockVIC       = driver.FindElement(By.Id("ctl00_contentMain_lblRealtimeStockVIC")).Text.Split(' ')[0]; // stockVIC
                emp.stockWA        = driver.FindElement(By.Id("ctl00_contentMain_lblRealtimeStockWA")).Text.Split(' ')[0];  // stockWA

                emp.barcode      = driver.FindElement(By.Id("ctl00_contentMain_lblBarcode")).Text;                          // barcode
                emp.barcodeInner = driver.FindElement(By.Id("ctl00_contentMain_lblbarcodeInner")).Text;                     // barcodeInner
                emp.brand        = driver.FindElement(By.Id("ctl00_contentMain_lblBrand")).Text;                            // brand
                emp.categories   = ca;                                                                                      // categories

                List <Employee> list = new List <Employee>();
                try
                {
                    using (var textReader = File.OpenText(SAVEPATH))
                    {
                        var csv = new CsvReader(textReader);
                        while (csv.Read())
                        {
                            var record = csv.GetRecord <Employee>();
                            list.Add(record);
                        }
                        textReader.Close();
                    }
                }
                catch (Exception)
                {
                }
                list.Add(emp);
                using (StreamWriter sw = new StreamWriter(SAVEPATH))
                    using (CsvWriter cw = new CsvWriter(sw))
                    {
                        cw.WriteHeader <Employee>();
                        foreach (Employee item in list)
                        {
                            cw.WriteRecord <Employee>(item);
                        }
                    }
                Thread.Sleep(500);
            }
            catch (Exception e)
            {
                Console.Write(e.ToString());
            }
        }
Exemple #59
0
        protected override void WriteHeader(CsvWriter writer, CsvSerializerContext serializer, CsvHeaderNamingContext naming)
        {
            writer.WriteField(naming.Get(nameof(EyeVelocity.Velocity)));

            serializer.WriteHeader <SingleEyeGazeData>(writer, naming);
        }
Exemple #60
-1
        public FileContentResult DumpToCSV()
        {
            List<CSVData> data = new List<CSVData>
            {
                new CSVData {Name="namil", Count=1, SomeId=1 },
                new CSVData {Name = "youngjae", Count = 2, SomeId=2 },
                new CSVData {Name="choco", Count=3,SomeId=3 }
            };

            MemoryStream ms = new MemoryStream();
            StreamWriter sw = new StreamWriter(ms);
            CsvWriter writer = new CsvWriter(sw);

            writer.WriteRecord(new FieldName { Name = "Name", Count = "Count", SomeId = "SomeId" });

            foreach(var item in data)
            {
                writer.WriteRecord(item);
            }

            List<TestData> test = new List<TestData>
            {
                new TestData {idx="1234566", name = "namil", age=38, grade=1,job=1 }
            };
            writer.WriteRecord(new TestFieldName { idx = "idx", name = "name", age = "age", grade = "grade" });

            sw.Flush();
            return File(ms.GetBuffer(), "text/csv", "export.csv");
        }