public CSVWorker(string fn, string fp, List <AvailabilityCarSearch.CarSearchDetails> l) { _list = l; _csv = new CSVGenerator(); worker(); // runs the main thread FileName = _csv.saveAs(fn, fp); }
public string ExportFuelOrdersByCustClient(ExportDataRequest model) { var table = ExportFuelOrdersByCust(model.ClientID, model.ListOfIDs, model.StartDate.ToShortDateString(), model.EndDate.ToShortDateString()); DataTable copyDataTable; copyDataTable = table.Copy(); copyDataTable.PrimaryKey = null; copyDataTable.Columns["Name"].SetOrdinal(0); copyDataTable.Columns["RequestedBy"].SetOrdinal(1); copyDataTable.Columns["TailNumber"].SetOrdinal(4); copyDataTable.Columns["Product"].SetOrdinal(5); copyDataTable.Columns["PPG"].SetOrdinal(6); copyDataTable.Columns["DateRequested"].SetOrdinal(7); copyDataTable.Columns["FuelingDateTime"].SetOrdinal(8); copyDataTable.Columns["PostedRetail"].SetOrdinal(9); copyDataTable.Columns["QuotedPPG"].SetOrdinal(10); copyDataTable.Columns["InvoicedPPG"].SetOrdinal(11); copyDataTable.Columns["QuotedVolume"].SetOrdinal(12); copyDataTable.Columns["InvoicedVolume"].SetOrdinal(13); copyDataTable.Columns["RampFee"].SetOrdinal(14); copyDataTable.Columns["RampFeeWaivedAt"].SetOrdinal(15); copyDataTable.Columns["InvoiceStatus"].SetOrdinal(16); copyDataTable.Columns["CustNotes"].SetOrdinal(17); string filePath = ExportHelper.CreateFilePath("FuelOrderTransactions.csv", model.ClientName); CSVGenerator.GenerateCSV(copyDataTable, filePath); return(ExportHelper.GetFilePathFromRoot(filePath)); }
public string ExportFuelOrdersByAdminClient(ExportDataRequest model) { var table = ExportFuelOrders(model.ClientID, model.ListOfIDs, model.StartDate.ToShortDateString(), model.EndDate.ToShortDateString()); string filePath = ExportHelper.CreateFilePath("FuelOrderTransactions.csv", model.ClientName); CSVGenerator.GenerateCSV(table, filePath); return(ExportHelper.GetFilePathFromRoot(filePath)); }
public string ExportCustTotalByStatusData(GetDashboardRequest model) { var table = GetTotalCustFuelOrdersByStatusDataTable(model.ClientID, model.StartDateFilter.ToShortDateString(), model.EndDateFilter.ToShortDateString()); string filePath = ExportHelper.CreateFilePath("FuelOrdersTotalByStatus.csv", model.ClientName); CSVGenerator.GenerateCSV(table, filePath); return(ExportHelper.GetFilePathFromRoot(filePath)); }
private double SaccadeDirectionCounts(List <Saccade> saccades) { // key is 0 through 35 // value is the count for that bucket Dictionary <int, int> counts = CSVGenerator.CalculateDirectionCounts(currentlyLoadedSaccades.ToArray()); return(0); }
public string ExportContacts(ExportDataRequest model) { var table = GetCompanies(model.ClientID, model.ListOfIDs); string filePath = ExportHelper.CreateFilePath("Companies.csv", model.ClientName); CSVGenerator.GenerateCSV(table, filePath); return(ExportHelper.GetFilePathFromRoot(filePath)); }
public IActionResult DownloadHeaderCSVJS([FromBody] Dictionary <string, object> param) { // ログインチェック if (!isLogin(param)) { return(Unauthorized()); } var searchCondition = new UserSearchCondition(); if (param.ContainsKey("requestData")) { // パラメータの設定 var requestData = param["requestData"] as Newtonsoft.Json.Linq.JObject; searchCondition = getUserSearchCondition(requestData); } var csvData = new System.Text.StringBuilder(); try { // データ取得とCSV文字列取得 var models = service.GetAllUsers(searchCondition); var generator = new CSVGenerator <UserModel>(); foreach (var model in models) { generator.Add(model); } csvData.AppendLine(generator.GetCSV(true, getDownloadColumnUserModel())); } catch (Exception ex) { logger.LogCritical("{0}", ex.Message); return(BadRequest()); } var status = ResponseDTO.Results.OK; var message = string.Empty; var data = new Dictionary <string, string>(); if (csvData.Length > 0) { data.Add("csv", csvData.ToString()); // サンプルのファイル名 string fileName = string.Format("テスト_{0:yyyyMMddHHmmss}.csv", DateTime.Now); fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8); data.Add("filename", fileName); } else { status = ResponseDTO.Results.NG; message = SearchResultZero; } return(Json(new ResponseDTO(status, message, data))); }
public void BuildFromListEmpty() { var persons = Array.Empty <Person>(); var expect = @"""Person Name"",""Id""".Trim(); var generator = new CSVGenerator(); var generated = generator.BuildFromCollection(persons).BytesToString(); Assert.AreEqual(expect, generated.Trim()); }
private bool GenerateOutputFiles() { var invoiceNoValue = CSVGenerator.Generate(InvoiceNoValue, nameof(InvoiceNoValue), true); var invoiceUpToSixPages = CSVGenerator.Generate(InvoiceUpToSixPages, nameof(InvoiceUpToSixPages), true); var invoiceUpToTwelvePages = CSVGenerator.Generate(InvoiceUpToTwelvePages, nameof(InvoiceUpToTwelvePages), true); var invoiceMoreThanTwelvePages = CSVGenerator.Generate(InvoiceMoreThanTwelvePages, nameof(InvoiceMoreThanTwelvePages), true); return(invoiceNoValue && invoiceUpToSixPages && invoiceUpToTwelvePages && invoiceMoreThanTwelvePages); }
private void OnPopulationExport() { var fileName = string.Format("{0}_RegionsPopulation_{1:yyyyMMdd}.csv" , string.Join("_", ConfigurationService.HospitalRegion.DefaultStates.OfType <string>().ToList()) , DateTime.Now); var exportPath = MonahrqContext.FileExportsDirPath; if (Directory.Exists(exportPath)) { Directory.CreateDirectory(exportPath); } //Open File Dialog so that user can point to the Export folder and file.. var dlg = new SaveFileDialog { CheckFileExists = false, Filter = @"CSV Files (*.csv)|*.csv|All Files (*.*)|*.*", FilterIndex = 1, RestoreDirectory = true, AddExtension = true, FileName = fileName, InitialDirectory = MonahrqContext.FileExportsDirPath }; //if (!Directory.Exists(dlg.InitialDirectory)) Directory.CreateDirectory(dlg.InitialDirectory); //..but quit Export if user changes its mind by pressing Cancel button if (dlg.ShowDialog() != true) { return; } //Manufacture a filename if none is informed if (string.IsNullOrEmpty(dlg.FileName)) { dlg.FileName = fileName; } //Cue Export with a wait cursor (Export may be too fast to be observed) using (ApplicationCursor.SetCursor(Cursors.Wait)) { //Export the Hospitals collection in memory //var hospitals = CollectionItems.SourceCollection as IList<Hospital>; var regionsPopulation = GetRegionsPopulations(); if (regionsPopulation == null) { return; } CSVGenerator.Create(regionsPopulation, dlg.FileName); Notify(string.Format("Regions' Population exported to file {0}", dlg.FileName)); } }
public string ExportByClientID(ExportDataRequest model) { if (!ModelState.IsValid) { return((Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)).ToString()); } var table = GetAirports(model.ClientID, model.ListOfIDs); string filePath = ExportHelper.CreateFilePath("Airports.csv", model.ClientName); CSVGenerator.GenerateCSV(table, filePath); return(ExportHelper.GetFilePathFromRoot(filePath)); }
public void TestGetPropertyNames() { var json = File.ReadAllText(@"data\quarter.json"); var quarters = Quarter.Parse("2371", json); var propertyNames = CSVGenerator.GetPropertyNames(quarters[0]); var actual = string.Join(",", propertyNames); var expected = File.ReadAllText(@"data\propertyNames.txt"); Assert.IsTrue(propertyNames.Count == 77); Assert.AreEqual(actual, expected); }
public void TestGenerateAndWrite() { var json = File.ReadAllText(@"data\quarter.json"); var quarters = Quarter.Parse("2371", json); using (var stream = new MemoryStream()) { CSVGenerator.GenerateAndWrite(stream, Encoding.UTF8, quarters); var actual = Encoding.UTF8.GetString(stream.ToArray()); var expected = File.ReadAllText(@"data\csv.txt"); Assert.AreEqual(actual, expected); } }
public ActionResult DownloadHeaderCSV(string json) { var csvData = new System.Text.StringBuilder(); try { if (!string.IsNullOrEmpty(json)) { var param = Newtonsoft.Json.JsonConvert.DeserializeObject <Dictionary <string, object> >(json); // ログインチェック if (!isLogin(param)) { return(LocalRedirect("/")); } // 検索条件の存在確認 if (param.ContainsKey("requestData")) { var requestData = Newtonsoft.Json.JsonConvert.DeserializeObject <UserSearchCondition>(param["requestData"].ToString()); // データ取得とCSV文字列取得 var models = service.GetAllUsers(requestData); var generator = new CSVGenerator <UserModel>(); foreach (var model in models) { generator.Add(model); } csvData.AppendLine(generator.GetCSV(true, getDownloadColumnUserModel())); } } } catch (Exception ex) { logger.LogCritical("{0}", ex.Message); return(LocalRedirect("/")); } // サンプルのファイル名 string fileName = string.Format("テスト_{0:yyyyMMddHHmmss}.csv", DateTime.Now); fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8); // ファイル名を設定 Response.Headers.Add("Content-Disposition", "attachment; filename=" + fileName); return(Content(csvData.ToString(), "text/csv")); }
public void BuildFromList() { var persons = new[] { new Person { Id = 1, Name = "Alice Li" }, new Person { Id = 2, Name = "我能吞下玻璃而不伤身体。" }, }; var expect = "\"Person Name\",\"Id\"\r\n\"Alice Li\",\"1\"\r\n\"我能吞下玻璃而不伤身体。\",\"2\"".Trim(); var generator = new CSVGenerator(); var generated = generator.BuildFromCollection(persons).BytesToString(); Assert.AreEqual(expect, generated.Trim()); }
/// <summary> /// The main entry point for the application. /// </summary> static void Main() { ILogger logger = new Logger(); IConfigSettings configSettings = new ConfigSettings(); IPowerService powerService = new PowerService(); IFileGenerator fileGenerator = new CSVGenerator(configSettings); IPositonService positionService = new PositonService(logger, powerService, fileGenerator); ServiceBase[] ServicesToRun; ServicesToRun = new ServiceBase[] { new srvPowerPosition(logger, configSettings, positionService) }; ServiceBase.Run(ServicesToRun); }
public string ExportPrices(ExportDataRequest model /*int adminId, string adminName*/) { var table = GetSupplierFuelsPricesDataTable(model.ClientID); DataTable copyDataTable; copyDataTable = table.Copy(); copyDataTable.PrimaryKey = null; copyDataTable.Columns.Remove("Id"); copyDataTable.Columns.Remove("AdminClientID"); copyDataTable.Columns.Remove("SupplierID"); copyDataTable.Columns.Remove("DateUploaded"); copyDataTable.Columns["EffectiveDate"].SetOrdinal(7); string filePath = ExportHelper.CreateFilePath("VendorFuelsPrices.csv", model.ClientName); CSVGenerator.GenerateCSV(copyDataTable, filePath); return(ExportHelper.GetFilePathFromRoot(filePath)); }
private void cSVToolStripMenuItem_Click(object sender, EventArgs e) { var dialog = new SaveFileDialog { Filter = @"CSV|*.csv", Title = @"Save as CSV file" }; var dialogResult = dialog.ShowDialog(); if (dialogResult == DialogResult.OK) { if (dialog.FileName != "") { using (new WaitCursor()) { CSVGenerator.Generate(TableInformation, dialog.FileName); } MessageBox.Show($"Data saved as:\r\n\r\n{dialog.FileName}", @"Succsess", MessageBoxButtons.OK, MessageBoxIcon.Information); } } }
private void directionFrequenciesButton_Click(object sender, RoutedEventArgs e) { Dictionary <int, int> counts = CSVGenerator.CalculateDirectionCounts(calculatedSaccades.ToArray()); CSVGenerator.CreateDirectionCSV(counts); }
public static void CreateClass(CSVTableReader csvTableReader, string modelPath, string namespaceName, string modelName, string configPath, string configName, bool refresh = true) { CreateModelClass(CSVGenerator.CSV2Class(csvTableReader, namespaceName, modelName), modelPath, namespaceName, modelName, false); CreateConfigClass(namespaceName, modelName, configPath, configName, refresh); }
public void CSVReadAndWriteTest() { //Support List<> data type. Debug.Log("Auto generate data list:"); foreach (var data in CSVConverter.ConvertColumn <List <float> >( new CSVTableWriter() .AddHeader(new CSVRecordWriter { "Item1" }) .AddHeader(new CSVRecordWriter { "List<float>" }) .AddRecord(new CSVRecordWriter { "1.25|3.33|2.5|4" }) .AddRecord(new CSVRecordWriter { "2.5|4|5.1" }) .GetEncodeTable())) { Debug.Log(string.Join("|", data)); } //Using ValueTuple as the data type. Debug.Log("Auto generate data list:"); foreach (var data in CSVConverter.Convert <ValueTuple <float, string> >( new CSVTableWriter() .AddHeader(new CSVRecordWriter { "Item1", "Item2" }) .AddHeader(new CSVRecordWriter { "float", "string" }) .AddRecord(new CSVRecordWriter { "1.25", "first" }) .AddRecord(new CSVRecordWriter { "2.5", "second" }) .GetEncodeTable())) { Debug.Log(data); } //Custom cell separator. CSVTableWriter csvTableWriter = CSVGenerator.Class2CSVTable <ExampleTestData>(';'); Debug.Log("Auto generate csv:\n" + csvTableWriter.GetEncodeTable(NewLineStyle.NonUnix)); string classStr = CSVGenerator.CSV2Class(csvTableWriter.GetEncodeTable(NewLineStyle.NonUnix), null, nameof(ExampleTestData), csvTableWriter.CellSeparator); Debug.Log("Auto generate class:\n" + classStr); csvTableWriter.AddRecord(new CSVRecordWriter() .Add("1") .Add("#cccccc") .Add("2") .Add("normal string") .Add("\"string with double quote") .Add("1;2;3|4;5;6") .Add("#cccccc;string content") .Add("#cccccc;string content|#ffffff;second string") .Add("#cccccc;string content|#ffffff;second string")); csvTableWriter.AddRecord(new CSVRecordWriter() .Add("3") .Add("#dddddd") .Add("4") .Add("string with, comma") .Add("\"string with\", comma and \"double quote") .Add("7;8;9|10;11;12|7;7;7") .Add("#dddddd;string content2") .Add("#dddddd;string content2|#eeeeee;second string2") .Add("#dddddd;string content2|#eeeeee;second string2")); Debug.Log("csv add data:\n" + csvTableWriter.GetEncodeTable(NewLineStyle.NonUnix)); var dataList = CSVConverter.Convert <ExampleTestData>(csvTableWriter.GetEncodeTable(NewLineStyle.NonUnix), csvTableWriter.CellSeparator); Debug.Log("Auto generate data list:"); foreach (var data in dataList) { Debug.Log(data); } Debug.Log("Auto generate data IEnumerable:"); foreach (var data in CSVConverter.ConvertEnumerator <ExampleTestData>(csvTableWriter.GetEncodeTable(NewLineStyle.NonUnix), csvTableWriter.CellSeparator)) { Debug.Log(data); } string newContent = new CSVTableWriter() .AddHeader(new CSVRecordWriter { "Name", "Age" }) .AddHeader(new CSVRecordWriter { "string", "int" }) .AddRecord(new CSVRecordWriter { "Name1", "10" }) .AddRecord(new CSVRecordWriter { "Name2", "20" }) .AddRecord(new CSVRecordWriter { "Name3", "30" }) .AddRecord(new CSVRecordWriter { "Name4", "40" }) .GetEncodeTable(NewLineStyle.NonUnix); Debug.Log("Auto generate column data by header name:"); foreach (var name in CSVConverter.ConvertColumn <string>(newContent, "Name")) { Debug.Log(name); } Debug.Log("Auto generate column data by header index:"); foreach (var age in CSVConverter.ConvertColumn <int>(newContent, 1)) { Debug.Log(age); } }
public static void CreateModelClass(string csvPath, string modelPath, string namespaceName, string modelName, bool refresh = true) { Write(CSVGenerator.CSV2Class(File.ReadAllText(csvPath), namespaceName, modelName), Path.Combine(modelPath, modelName + ".cs"), refresh); }
public static void CreateModelClass(CSVTableReader csvTableReader, string modelPath, string namespaceName, string modelName, bool refresh = true) { Write(CSVGenerator.CSV2Class(csvTableReader, namespaceName, modelName), Path.Combine(modelPath, modelName + ".cs"), refresh); }