@ -4,19 +4,22 @@ using static Gremlin_BlazorServer.Data.EntityClasses.Enums;
namespace Gremlin_BlazorServer.Services
{
public class TexService
public abstract class TexService
{
private readonly GenericController genericController = new ( ) ;
private static GenericController genericController = new ( ) ;
public StringBuilder CreateTex ( Quote quote )
public static StringBuilder ? CreateTex ( Quote quote )
{
StringBuilder texStringBuilder = CreateTexFile ( quote ) ;
StringBuilder ? texStringBuilder = CreateTexFile ( quote ) ;
if ( texStringBuilder = = null ) return null ;
string correctedTex = Replace ( texStringBuilder . ToString ( ) ) ;
return new ( correctedTex ) ;
}
private static StringBuilder CreateBriefkopf ( Contact recipient , bool tex = false )
private static StringBuilder ? CreateBriefkopf ( Contact recipient , bool tex = false )
{
if ( recipient . Account ? . AccountName = = null ) return null ;
StringBuilder briefkopf = new ( ) ;
_ = recipient . Gender = = ( byte ) Gender . Male
@ -43,8 +46,9 @@ namespace Gremlin_BlazorServer.Services
return briefkopf ;
}
private StringBuilder CreateTexFile ( Quote quote )
private static StringBuilder ? CreateTexFile ( Quote quote )
{
if ( quote . Recipient = = null | | quote . LineItems = = null ) return null ;
const string rand = "2" ; //RUSettingModel.GetSettingValue(Properties.Settings.Default.userSettingID, "texRand");
StringBuilder texFile = new ( "\\documentclass[a4paper,ngerman,parskip,10pt]{scrlttr2}\n"
@ -220,7 +224,7 @@ namespace Gremlin_BlazorServer.Services
return texFile ;
}
private string CreateRbDisclaimer ( Quote quote )
private static string CreateRbDisclaimer ( Quote quote )
{
Random r = new ( ) ;
@ -276,7 +280,7 @@ namespace Gremlin_BlazorServer.Services
return dreipp ;
}
private string GetCoverletterRow ( LineItem lineItem )
private static string GetCoverletterRow ( LineItem lineItem )
{
CustomDescription ? customDescription = genericController . Get < CustomDescription > ( cD = > cD . ProductNumber . Equals ( lineItem . ProductNumber ) & & cD . OptionNumber . Equals ( lineItem . OptionNumber ) ) ;
return customDescription = = null
@ -286,7 +290,7 @@ namespace Gremlin_BlazorServer.Services
: $"\\item {customDescription.CoverletterText} (\\#{lineItem.Position})\n" ;
}
private string CreateCoverletter ( Quote quote )
private static string CreateCoverletter ( Quote quote )
{
bool subitem = false ;
string coverLetter = $"nachfolgend erhalten Sie Ihr gewünschtes Angebot über ein(e) {quote.Description}.\\\\\n" + "Es umfasst im Einzelnen:\n" + "\\begin{itemize}\n" ;