mirror of
https://gitlab.com/t6353/sharee.bike.git
synced 2025-05-13 23:26:29 +02:00
Invoice refactoring
This commit is contained in:
parent
74ecbbd2a8
commit
b3fb4e2143
9 changed files with 220 additions and 441 deletions
|
@ -85,7 +85,7 @@ td {
|
|||
}
|
||||
|
||||
.tdtxt {
|
||||
font-size:1em;
|
||||
font-size:0.91em;
|
||||
padding:0.1em 0.5em;
|
||||
vertical-align: top;
|
||||
text-align: left;
|
||||
|
@ -107,7 +107,7 @@ td {
|
|||
}
|
||||
|
||||
.tdint {
|
||||
font-size:1em;
|
||||
font-size:0.91em;
|
||||
padding:0.1em 0.5em;
|
||||
vertical-align: top;
|
||||
text-align: right;
|
||||
|
@ -342,11 +342,11 @@ td {
|
|||
#my $umst1619 = $lb->umst_breaking($ctt,"");
|
||||
|
||||
|
||||
my @tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=Mietzeit","int03=Menge","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
my @tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=Mietzeit","int03=Menge (Std:Min)","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
my ($cttpos,$rows) = $db->collect_contentpos("contenttrans",$c_id);
|
||||
foreach my $id (keys(%$cttpos)){
|
||||
if($cttpos->{$id}->{int26}){
|
||||
@tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=Mietzeit","int26=Einsparung","int03=Menge","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
@tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=Mietzeit","int26=Einsparung","int03=Menge (Std:Min)","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -387,6 +387,8 @@ td {
|
|||
|
||||
#Tablecontent (ct_name(primary key))
|
||||
my $sum_parts19=0;
|
||||
my $diff19 = 100 + 19;
|
||||
my $sum_umst19=0;
|
||||
my $j=0;
|
||||
my $k=0;
|
||||
my $nullcount=0;
|
||||
|
@ -396,28 +398,33 @@ td {
|
|||
|
||||
my $gesamt = 0;
|
||||
my $rabatt = "";
|
||||
my $einzel = $cttpos->{$id}->{int02};
|
||||
my $menge = $cttpos->{$id}->{int03} || 0;
|
||||
my $unit = $cttpos->{$id}->{txt03};
|
||||
my $pricing = {};
|
||||
my $counting = {};
|
||||
my $rental_feed = {};
|
||||
|
||||
($gesamt,$rabatt) = $pri->price2calc($cttpos->{$id});
|
||||
if($cttpos->{$id}->{int35} && $cttpos->{$id}->{start_time} && $cttpos->{$id}->{end_time}){
|
||||
($pricing,$counting) = $pri->counting_rental(\%varenv,$cttpos->{$id},"calc_price");
|
||||
$rental_feed = $pri->fetch_rentalfeed(\%varenv,$cttpos->{$id},$counting);
|
||||
$rabatt = $pricing->{discount};
|
||||
$sum_parts19 += $pricing->{total_price};
|
||||
$gesamt = $pri->round($pricing->{total_price});
|
||||
$gesamt = sprintf('%.2f', $gesamt);
|
||||
}else{
|
||||
($gesamt,$rabatt) = $pri->price2calc($cttpos->{$id});
|
||||
$sum_parts19 += $gesamt;
|
||||
$gesamt = $pri->round($gesamt);
|
||||
$gesamt = sprintf('%.2f', $gesamt);
|
||||
}
|
||||
|
||||
if($gesamt == 0){
|
||||
$nullcount++;
|
||||
}
|
||||
|
||||
if($gesamt != 0){
|
||||
$gesamt = $lb->round($gesamt);
|
||||
$gesamt = $lb->cashme($gesamt,",");
|
||||
|
||||
$j++;
|
||||
if($j<=$max_table_wc || $break_table_wc){
|
||||
|
||||
($gesamt,$rabatt) = $pri->price2calc($cttpos->{$id});
|
||||
$sum_parts19 += $gesamt;
|
||||
$gesamt = $lb->round($gesamt);
|
||||
$gesamt = $lb->cashme($gesamt,",");
|
||||
|
||||
#2. empty loop for sum
|
||||
if($break_table_wc){
|
||||
#print "$j|";
|
||||
|
@ -446,15 +453,17 @@ td {
|
|||
if($key =~ /txt01/){
|
||||
print "<td class='tdtxt'>\n";
|
||||
if($cttpos->{$id}->{$key}){
|
||||
$cttpos->{$id}->{$key} =~ s/\<br \/\>/; /g;
|
||||
print "$cttpos->{$id}->{$key}<br />\n";
|
||||
$cttpos->{$id}->{$key} =~ s/\<br \/\>/, /g;
|
||||
my $tariff = "";
|
||||
$tariff = "<br />Tarif: $cttpos->{$id}->{int09} $cttpos->{$id}->{txt04}" if($cttpos->{$id}->{txt04});
|
||||
print "$cttpos->{$id}->{$key} $tariff<br />\n";
|
||||
}
|
||||
if($cttpos->{$id}->{start_time} && $cttpos->{$id}->{end_time}){
|
||||
#print "<br />\n";
|
||||
$cttpos->{$id}->{start_time} = $lb->time4de($cttpos->{$id}->{start_time},"1");
|
||||
$cttpos->{$id}->{end_time} = $lb->time4de($cttpos->{$id}->{end_time},"1");
|
||||
|
||||
print $q->span("Mietzeit: $cttpos->{$id}->{start_time} – $cttpos->{$id}->{end_time}"),"\n";
|
||||
print $q->span("$cttpos->{$id}->{start_time} – $cttpos->{$id}->{end_time}"),"\n";
|
||||
}
|
||||
print "</td>\n";
|
||||
}
|
||||
|
@ -472,25 +481,36 @@ td {
|
|||
print $q->td({-class=>'tdint',-nowrap=>'1'},"$co2saving");
|
||||
}
|
||||
if($key =~ /int03/){
|
||||
$cttpos->{$id}->{$key} =~ s/\./,/;
|
||||
print $q->td({-class=>'tdint'},"$cttpos->{$id}->{$key}"),"\n";
|
||||
if($cttpos->{$id}->{int35} && $cttpos->{$id}->{start_time} && $cttpos->{$id}->{end_time}){
|
||||
print $q->td({-class=>'tdint',-nowrap=>1},"$pricing->{real_clock} $pricing->{freed_time}"),"\n";
|
||||
}else{
|
||||
$cttpos->{$id}->{$key} =~ s/\./,/;
|
||||
print $q->td({-class=>'tdint'},"$cttpos->{$id}->{$key}"),"\n";
|
||||
}
|
||||
}
|
||||
|
||||
if($key =~ /int02/){
|
||||
if($cttpos->{$id}->{$key} == "0"){
|
||||
$cttpos->{$id}->{$key}="";
|
||||
if($key =~ /int02/){
|
||||
if($cttpos->{$id}->{int35} && $cttpos->{$id}->{start_time} && $cttpos->{$id}->{end_time}){
|
||||
print "<td class='tdint' nowrap>\n";
|
||||
foreach my $fid (sort keys(%{ $rental_feed->{tariff_description2} })){
|
||||
if(ref($rental_feed->{tariff_description2}->{$fid}) eq "ARRAY"){
|
||||
print "$rental_feed->{tariff_description2}->{$fid}[0]: $rental_feed->{tariff_description2}->{$fid}[1]<br />\n";
|
||||
}
|
||||
}
|
||||
print "</td>\n";
|
||||
}else{
|
||||
$cttpos->{$id}->{$key} =~ s/\./,/;
|
||||
}
|
||||
print $q->td({-nowrap=>'1',-class=>'tdint'},"$cttpos->{$id}->{$key}"),"\n";
|
||||
}
|
||||
$cttpos->{$id}->{$key} =~ s/\./,/;
|
||||
print $q->td({-class=>'tdint',-nowrap=>1},"$cttpos->{$id}->{$key} €"),"\n";
|
||||
}
|
||||
}
|
||||
|
||||
if($key =~ /int04/){
|
||||
$gesamt .= " €";
|
||||
if($key =~ /int04/){
|
||||
$gesamt =~ s/\./,/;
|
||||
if($rabatt != 0){
|
||||
print $q->td({-nowrap=>'1',-class=>'tdint'},"(Rabatt $rabatt) $gesamt"),"\n";
|
||||
$rabatt =~ s/\./,/;
|
||||
print $q->td({-nowrap=>'1',-class=>'tdint'},"$rabatt $gesamt €"),"\n";
|
||||
}else{
|
||||
print $q->td({-nowrap=>'1',-class=>'tdint'},"$gesamt"),"\n";
|
||||
print $q->td({-nowrap=>'1',-class=>'tdint'},"$gesamt €"),"\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -516,18 +536,23 @@ td {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
my $diff19 = 100 + 19;
|
||||
my $sum_umst19 = $sum_parts19 / $diff19 * 19;
|
||||
$sum_umst19 = $lb->round($sum_umst19);
|
||||
if($sum_parts19 && $sum_parts19 != 0){
|
||||
$sum_umst19 = $sum_parts19 / $diff19 * 19;
|
||||
$sum_umst19 = $pri->round($sum_umst19);
|
||||
}
|
||||
my $sum_netto19 = $sum_parts19 - $sum_umst19;
|
||||
$sum_netto19 = $lb->cashme($sum_netto19);
|
||||
my $sum_nettoall = $sum_netto19;
|
||||
$sum_nettoall = $lb->cashme($sum_nettoall,",");
|
||||
$sum_netto19 = sprintf('%.2f', $sum_netto19);
|
||||
$sum_netto19 =~ s/\./,/;
|
||||
|
||||
my $sum_paid = $sum_parts19;
|
||||
$sum_parts19 = $lb->cashme($sum_parts19,",");
|
||||
$sum_umst19 = $lb->cashme($sum_umst19,",");
|
||||
$sum_paid = $lb->cashme($sum_paid,",");
|
||||
$sum_paid = $pri->round($sum_paid);
|
||||
my $sum_preauth = $sum_paid || 0;
|
||||
$sum_paid = sprintf('%.2f', $sum_paid);
|
||||
$sum_paid =~ s/\./,/;
|
||||
|
||||
$sum_parts19 = sprintf('%.2f', $sum_parts19);
|
||||
$sum_umst19 = sprintf('%.2f', $sum_umst19);
|
||||
$sum_umst19 =~ s/\./,/;
|
||||
|
||||
|
||||
print $q->Tr(),"\n";
|
||||
|
@ -549,7 +574,7 @@ td {
|
|||
if($ctt->{txt00} !~ /steuerfrei/){#dirty hack
|
||||
print $q->Tr(),"\n";
|
||||
print $q->td({-class=>'tdint'},"Betrag Netto:"),"\n";
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_nettoall €"),"\n";
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_netto19 €"),"\n";
|
||||
if($sum_parts19 != "0"){
|
||||
print $q->Tr();
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"19% UmSt auf $sum_netto19 €:"),"\n";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue