pull/1/head
Sascha Woitschetzki 2021-06-11 12:10:03 +07:00 committed by Sascha Woitschetzki
parent 4c55632435
commit ad53f6454b
4 changed files with 18 additions and 36 deletions

@ -0,0 +1,6 @@
namespace Gremlin
{
internal class Context
{
}
}

@ -5,22 +5,22 @@ using Microsoft.VisualBasic.FileIO;
using MySqlConnector; using MySqlConnector;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics;
using System.Data; using System.Data;
using System.Globalization; using System.Globalization;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows; using System.Windows;
using static Gremlin.GremlinData.EntityClasses.Enums;
using Gremlin.GremlinUtilities; using Gremlin.GremlinUtilities;
using Gremlin.GremlinData.EntityClasses; using Gremlin.GremlinData.EntityClasses;
using static Gremlin.GremlinData.EntityClasses.Enums;
namespace Gremlin.GremlinData.DBClasses namespace Gremlin.GremlinData.DBClasses
{ {
internal static class DbHelper internal static class DbHelper
{ {
private static readonly DateTime FarInTheFuture = DateTime.Parse("2050-12-31t00:00:00.000000z", CultureInfo.CurrentCulture); private static readonly DateTime FarInTheFuture = DateTime.Parse("2050-12-31t00:00:00.000000z", CultureInfo.CurrentCulture);
private static readonly ParallelOptions parallelOptions = new() { MaxDegreeOfParallelism = Environment.ProcessorCount * 2 };
public static bool CheckDatabaseConnection(string connectionString) public static bool CheckDatabaseConnection(string connectionString)
{ {
@ -115,7 +115,7 @@ namespace Gremlin.GremlinData.DBClasses
using (GremlinContext db = new()) using (GremlinContext db = new())
{ {
_ = db.ProductLines.Add(PlToBeAdded); db.ProductLines.Add(PlToBeAdded);
db.SaveChanges(); db.SaveChanges();
} }
} }
@ -1049,7 +1049,8 @@ namespace Gremlin.GremlinData.DBClasses
//Eingelesenen Contacts in DB schreiben: //Eingelesenen Contacts in DB schreiben:
using (GremlinContext db = new()) using (GremlinContext db = new())
{ {
DateTime now = DateTime.Now; DateTime now;
now = DateTime.Now;
foreach (Contact contact in ContactsReadFromFile) foreach (Contact contact in ContactsReadFromFile)
{ {
@ -1417,8 +1418,7 @@ namespace Gremlin.GremlinData.DBClasses
////Counter für Debugging ////Counter für Debugging
//int x = 0; //int x = 0;
//Multithreading foreach (Product product in NonNewProducts)
_ = Parallel.ForEach(NonNewProducts, parallelOptions, (product) =>
{ {
////Debugging-Counter ////Debugging-Counter
//x++; //x++;
@ -1433,7 +1433,7 @@ namespace Gremlin.GremlinData.DBClasses
if (ExistingProduct == null) if (ExistingProduct == null)
{ {
NewProducts.Add(product); NewProducts.Add(product);
return; continue;
} }
//Wenn keine Änderung, dann nur DataVersionComment mit CPL-Dateinamen aktualisieren... //Wenn keine Änderung, dann nur DataVersionComment mit CPL-Dateinamen aktualisieren...
@ -1501,13 +1501,13 @@ namespace Gremlin.GremlinData.DBClasses
NewProducts.Add(UpdatedProduct); NewProducts.Add(UpdatedProduct);
} }
UpdatedProducts.Add(ExistingProduct); UpdatedProducts.Add(ExistingProduct);
}); }
_ = InsertProducts(NewProducts); //enthält auch ResolvePL() _ = InsertProducts(NewProducts); //enthält auch ResolvePL()
db.Products.UpdateRange(ObsoleteProducts); db.Products.UpdateRange(ObsoleteProducts);
db.Products.UpdateRange(UpdatedProducts); db.Products.UpdateRange(UpdatedProducts);
int changes = db.SaveChanges(); int changes = db.SaveChanges();
_ = MessageBox.Show($"Es wurden {changes} Änderungen an der Datenbank durchgeführt.\n Davon waren {UpdatedProducts.Count} UpdatedProducts, {ObsoleteProducts.Count} ObsoleteProducts und {NewProducts.Count} NewProducts"); Debug.WriteLine($"Es wurden {changes} Änderungen an der Datenbank durchgeführt.");
} }
return true; return true;
@ -1952,10 +1952,10 @@ namespace Gremlin.GremlinData.DBClasses
{ {
try try
{ {
AccountType accountType = context.AccountTypes AccountType query = context.AccountTypes
.Where(account => account.AccountTypeCode == AccTypeCode) .Where(a => a.AccountTypeCode == AccTypeCode)
.First(); .First();
return accountType; return query;
} }
catch catch
{ {

@ -1,15 +0,0 @@
using Gremlin.GremlinData.EntityClasses;
namespace Gremlin.Operations
{
public class LineItemOperations
{
public static string ToTex(LineItem lineItem)
{
Product product = lineItem.GetProduct();
return lineItem.OptionNumber == ""
? $"{lineItem.Position} &\\textbf{{{product.CustomDescription.Heading}}} ({lineItem.ProductNumber})\\newline {product.CustomDescription.DescriptionText}&{lineItem.Amount}&\\SI{{{lineItem.Total}}}{{\\sieuro}}\\\\"
: $"{lineItem.Position} &\\textbf{{{product.CustomDescription.Heading}}} ({lineItem.ProductNumber}\\#{lineItem.OptionNumber})\\newline {product.CustomDescription.DescriptionText}&{lineItem.Amount}&\\SI{{{lineItem.Total}}}{{\\sieuro}}\\\\";
}
}
}

@ -123,14 +123,5 @@ namespace Gremlin.Operations
return anschreibenListe; return anschreibenListe;
} }
//public static decimal GetSum(List<LineItem> quote)
//{
// decimal gesamtnetto = new();
// foreach (LineItem lineItem in quote)
// {
// gesamtnetto += lineItem.ListPrice;
// }
// return gesamtnetto;
//}
} }
} }