auto commit on 2019-03-08 17:32
authorKilian Saffran <ksaffran@dks.lu>
Fri, 8 Mar 2019 16:32:35 +0000 (17:32 +0100)
committerKilian Saffran <ksaffran@dks.lu>
Fri, 8 Mar 2019 16:32:35 +0000 (17:32 +0100)
bin/createpdfA4invoice.pl [moved from bin/createpdf.pl with 100% similarity]
bin/createpdfcashbox.pl [new file with mode: 0644]
bin/githelper.pl [new file with mode: 0644]
bin/pdfcashbox.pdf [new file with mode: 0644]

similarity index 100%
rename from bin/createpdf.pl
rename to bin/createpdfA4invoice.pl
diff --git a/bin/createpdfcashbox.pl b/bin/createpdfcashbox.pl
new file mode 100644 (file)
index 0000000..cbd53a0
--- /dev/null
@@ -0,0 +1,268 @@
+#!/usr/bin/env perl
+
+use strict;
+use PDF::API2;
+use PDF::Table;
+#use Image::Size;
+use utf8;
+use Encode;
+use Data::Dumper;
+my $pdf = PDF::API2->new();
+#
+# use constant mm => 25.4 / 72;
+# use constant in => 1 / 72;
+# use constant pt => 1;
+
+$pdf->preferences({-fitwindow => 1});
+my $fntbold = $pdf->corefont('Helvetica-Bold');
+my $fnt = $pdf->corefont('Helvetica');
+#
+my $page = $pdf->page();
+my $x=220;
+my $y=500;
+$page->mediabox($x,$y);
+# $page->mediabox(220,284);
+#height: 284
+#width: 220
+#header
+my $paperhead = $page->text();
+$y=$y-10;
+$paperhead->translate(110, $y);
+$paperhead->font($fntbold,10);
+$paperhead->text_center('Hand and Hand fir Afrika');
+$y=$y-12;
+$paperhead->translate(110, $y);
+$paperhead->text_center('Beetebuerg');
+$y=$y-12;
+$paperhead->translate(110, $y);
+$paperhead->text_center('Divers Day Hellange 2019');
+$paperhead->font($fnt,10);
+$y=$y-14;
+$paperhead->translate(20, $y);
+$paperhead->text("Commande:\t0001");
+$y=$y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("Table:\t14");
+$y=$y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("10 Bières 2,80 €");
+$y = $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("9 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("8 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("7 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("6 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("5Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("4 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("3 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("2 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("1 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("0 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("8 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("7 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("6 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("5Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("4 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("3 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("2 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("1 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("0 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("8 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("7 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("6 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("5Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("4 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("3 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("2 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("1 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("0 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("8 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("7 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("6 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("5Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("4 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("3 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("2 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("1 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("0 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("8 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("7 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("6 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("5Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("4 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("3 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("2 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("1 Bières 2,80 €");
+$y= $y-12;
+$paperhead->translate(20, $y);
+$paperhead->text("0 Bières 2,80 €");
+$pdf->saveas('pdfcashbox.pdf');
+$pdf->end;
+
+# $gfx->translate(-$x,-$y);
+# my $red_line = $page->gfx();
+# $red_line->strokecolor('black');
+# $red_line->linewidth(1);
+# $red_line->move( 50, 753 );
+# $red_line->line( 285, 753 );
+# $red_line->stroke;
+# my $dkstext = $page->text();
+# $dkstext->translate(200, 743);
+# $dkstext->font($fnt,9);
+# $dkstext->text_center('Database Knowledge Solutions - Simplify IT!');
+
+
+# my $adr_line = $page->gfx();
+# $adr_line->strokecolor('black');
+# $adr_line->linewidth(1);
+# $adr_line->move( 52, 662 );
+# $adr_line->line( 280, 662 );
+# $adr_line->stroke;
+# $x=550;
+# $y = 820;
+# my $fz=11;
+# my $txt = $page->text();
+#  $txt->font($fntbold,$fz);
+#  $txt->translate($x, $y);
+#  $txt->text_right('DKS s.à r.l.');
+#  $txt->font($fnt,$fz);
+#  $y = $y -$fz-3;
+#  $txt->translate($x, $y);
+#  $txt->text_right("8b, rue du Moulin");
+#  $y = $y -$fz-3;
+#  $txt->translate($x, $y);
+#  $txt->text_right("6914 Roodt/Syre");
+#  $y = $y - (2*($fz+3));
+#  $txt->translate($x, $y);
+#  $txt->text_right("Tel: +352 691 504574");
+#  $y = $y -$fz-3;
+#  $txt->translate($x, $y);
+#  $txt->text_right("info\@dks.lu / www.dks.lu");
+# #
+# $y = $y - (4*($fz+3));
+# $txt->translate($x, $y);
+# $txt->font($fntbold,30);
+# $txt->text_right("Rechnung");
+
+# my $pdftbladdress = new PDF::Table;
+# my $inv_data3 = [ ["An:"], ["Kilian Saffran"], ["4, rue Principale"], ["L-3770 Tétange"] ];
+
+# my $tbl_props3 = {  x => 50,  w => 230,  font => $fnt,  font_size => $fz,  start_y => 680,  start_h => 620,  next_y => 750,  next_h => 500,  padding => 2,  padding_bottom => 3,  padding_top => 3,  padding_right => 5,  column_props => [{ min_w => 200, max_w => 200, justify => 'left' }],  header_props => [{ font_size => $fz, font => $fntbold, bg_color => 'white', font_color => 'black', repeat => 1, justify => 'left' }],  border => 0 };
+# my ($lastpage, $tblpages, $final_y) = $pdftbladdress->table($pdf,$page,$inv_data3,%{$tbl_props3});
+
+# print $lastpage." - ".$tblpages." - ".$final_y."\n";
+
+# my $pdftblinvdata = new PDF::Table;
+
+# my $inv_data = [ ["Rechnungs-Nr.","00000000-0000"], ["Datum","00.00.0000"], ["Fälligkeit","00.00.0000"], ["Kunden-Nr.","00000000"], ["Ust-Id","LU 0000 0000"] ];
+
+# my $tbl_props2 = {x => 390, w => 175, font => $fnt, font_size => $fz, start_y => 680, start_h => 620, next_y => 750, next_h => 500, padding => 2, padding_bottom => 3, padding_top => 3, padding_right => 5, column_props => [ { min_w => 70, max_w => 70, justify => 'left' }, { min_w => 90, max_w => 90, justify => 'left', font => $fntbold } ], border => 0};
+# ($lastpage, $tblpages, $final_y) = $pdftblinvdata->table( $pdf, $page, $inv_data, %{$tbl_props2} );
+# print $lastpage." - ".$tblpages." - ".$final_y."\n";
+# #print Dumper($tbl_props2);
+# my $pdftable = new PDF::Table;
+
+#  my $some_data =[ ["Product / Dienstleistung", "Anzahl","EinzelPreis","Netto-Preis"], ["Computer Installation Donec super long text goes here to provoke a text block Donec super long text goes here to provoke a text block Donec super long text goes here to provoke a text block", "1 Stunde","55,00 €","55,00 €"], ["Computer Installation", "1 Stunde","55,00 €","55,00 €"], ["Computer Installation", "1 Stunde","55,00 €","55,00 €"] ];
+#  my $tbl_propsm = {x => 50, w => 500, font => $fnt, font_size => $fz, start_y => 570, start_h => 300, next_y => 750, next_h => 500, padding => 2, padding_left => 5, padding_bottom => 10, padding_top => 5, padding_right => 5, header_props => { font_size => $fz, font => $fntbold, bg_color => '#e6e6e6', font_color => 'black', repeat => 1, justify => 'center' }, column_props => [ { }, { min_w => 40, max_w => 40, justify => 'right' }, { min_w => 20, max_w => 20, justify => 'right' }, { min_w => 50, max_w => 50, justify => 'right', font => $fnt } ], border => 0.5};
+
+#  ($lastpage, $tblpages, $final_y) = $pdftable->table( $pdf, $page, $some_data, %{$tbl_propsm} );
+#  print $lastpage." - ".$tblpages." - ".$final_y."\n";
+
+# my $pdftotalsum = new PDF::Table;
+# my $total_data = [ ["Gesamt Netto :","165,00 €"], ["MwSt. (17%) :","28,05 €"], ["Gesamt Brutto :","193,05 €"] ];
+# my $tbl_props4 = {x => 349.5, w => 201, font => $fnt, font_size => $fz, start_y => $final_y, start_h => 150, next_y => 750, next_h => 500, padding => 2, padding_left => 5, padding_bottom => 10, padding_top => 5, padding_right => 5, column_props => [ { justify => 'right' }, { min_w => 70, max_w => 70, justify => 'right', font => $fntbold } ], border => 0.5};
+
+#  ($lastpage, $tblpages, $final_y) = $pdftotalsum->table( $pdf, $page, $total_data, %{$tbl_props4} );
+#  print $lastpage." - ".$tblpages." - ".$final_y."\n";
+
+
+
+
diff --git a/bin/githelper.pl b/bin/githelper.pl
new file mode 100644 (file)
index 0000000..c76c650
--- /dev/null
@@ -0,0 +1,46 @@
+#!C:\Strawberry\perl\bin\perl.exe
+
+use strict;
+use File::Basename;
+use File::Find::Rule;
+use Data::Dumper;
+use POSIX qw (strftime);
+my $wksp = $ENV{HOME}.'/Workspace';
+if ($^O eq "MSWin32"){
+  $wksp = $ENV{USERPROFILE}.'/Workspace';
+  $wksp =~ s/\\/\//g;
+}
+#print $wksp."\n";
+#print ."\n";
+
+my $ff = File::Find::Rule->new();
+$ff->name(".git");
+$ff->directory;
+my @rep = $ff->in($wksp);
+foreach my $r (@rep){
+  chdir(dirname($r));
+  my $ret = `git status`;
+  if ($ret =~ /nothing to commit, working tree clean/){
+    print "repository ".basename(dirname($r))." OK!\n";
+    next;
+  } elsif (($ret =~ /Changes not staged for commit/) || ($ret =~ /Untracked files/)){
+    print "repository ".basename(dirname($r))." changes to add,commit and push!\n";
+    my $add = `git add -A`;
+    print "Data Added:".$add."\n";
+    my $msg = "auto commit on ".strftime("%Y-%m-%d %H:%M",localtime());
+    my $commit = `git commit -m "$msg"`;
+    print "Data Commited:".$commit."\n";
+    my $push = `git push`;
+    if ($push =~ /\!\s\[rejected\]/){
+      my $pull = `git pull`;
+      print "Data pulled:".$pull."\n";
+      $push = `git push`;
+      print "Data pushed:".$push."\n";
+    }
+    $ret = `git status`;
+    print $ret."\n---\n";
+  }
+  
+  #print $ret."\n---\n";
+}
+print Dumper(@rep);
\ No newline at end of file
diff --git a/bin/pdfcashbox.pdf b/bin/pdfcashbox.pdf
new file mode 100644 (file)
index 0000000..aedc815
Binary files /dev/null and b/bin/pdfcashbox.pdf differ