2018-12-05 18:47:26 +01:00
package com.jFxKasse.datatypes ;
public class PrintDataSimple extends PrintData
{
private String printString ;
/ * *
2018-12-06 23:59:01 +01:00
* Constructor with all data that is not in the DB
2018-12-05 18:47:26 +01:00
* @param lineBreak
* @param headerSpace
* @param footerSpace
* @param timeAndDatePrint
* @param header
* @param footer
* /
public PrintDataSimple ( int lineBreak , int headerSpace , int footerSpace ,
String timeAndDatePrint , String header , String footer )
{
super ( lineBreak , headerSpace , footerSpace , timeAndDatePrint , header ,
footer ) ;
}
/ * *
* Generates the String
* @return the final Print String
* /
public String getPrintString ( )
{
generatePrintString ( ) ;
return this . printString ;
}
@Override
protected void generatePrintString ( )
{
/* Header */
2018-12-07 11:25:45 +01:00
String header = " " ;
2018-12-05 18:47:26 +01:00
for ( int i = 1 ; i < headerSpace ; i + + ) {
header = header + " \ n " ;
}
// This is the final header
header = header + setCenter ( this . header ) ;
/* Info */
String info = setRight ( " Bestellung: " , timeAndDateOrder ) + " \ n "
+ setRight ( " Druck: " , timeAndDatePrint ) + " \ n "
+ setRight ( " Bestellnummer: " , jobID ) ;
/* Positionen */
String positionen = " \ n " ;
2018-12-06 23:15:06 +01:00
int posCount = positionsQuantity . length ( )
- positionsQuantity . replace ( " ; " , " " ) . length ( ) + 1 ;
2018-12-05 18:47:26 +01:00
2018-12-06 23:15:06 +01:00
String [ ] positionQuantity = positionsQuantity . split ( " ; " ) ;
2018-12-05 18:47:26 +01:00
2018-12-06 23:15:06 +01:00
String [ ] positionName = positionsName . split ( " ; " ) ;
2018-12-05 18:47:26 +01:00
2018-12-06 23:15:06 +01:00
String [ ] positionValue = positionsValue . split ( " ; " ) ;
2018-12-05 18:47:26 +01:00
2018-12-06 23:59:01 +01:00
for ( int i = 0 ; i < posCount ; i + + ) { // All different posNames
2018-12-05 18:47:26 +01:00
int quantity = Integer . parseInt ( positionQuantity [ i ] ) ;
2018-12-06 23:59:01 +01:00
for ( int j = 0 ; j < quantity ; j + + ) { // quantities
2018-12-05 18:47:26 +01:00
positionen = positionen + setRight ( breakLines ( positionName [ i ] ) ,
positionValue [ i ] + " € " ) + " \ n " ;
}
}
/* Price */
String price = setRight ( " Gesamt: " , ( jobValue + " € " ) ) ;
/* Footer */
String footer = setCenter ( this . footer ) ;
for ( int i = 1 ; i < footerSpace ; i + + ) {
footer = footer + " \ n " ;
}
footer = footer + " _ " ;
/* Build final Print String */
printString = header + " \ n " + getSeparator ( ) + " \ n " + info + " \ n "
+ getSeparator ( ) + " \ n " + positionen + " \ n " + getSeparator ( ) + " \ n "
+ price + " \ n " + getSeparator ( ) + " \ n " + footer ;
}
}