operator accounting fix

This commit is contained in:
ragu 2022-11-02 20:14:57 +01:00
parent 7f4becd901
commit 7744e1dccc
13 changed files with 325 additions and 403 deletions

View file

@ -56,7 +56,6 @@ sub tpl(){
};
$ctf = $dbt->fetch_tablerecord($dbh,$pref_cu);
#my $rel4tpl = $db->get_rel4tpl("",$lang,$users_dms->{c_id4trans},$users_dms->{tpl_id4trans});
my $ctt = { c_id => 0 };
my $pref = {
table => "contenttrans",
@ -152,7 +151,7 @@ EOF
print $but->singlesubmit3("ct_trans","set_workflow2invoice","","",""),"\n";
print $q->hidden(-name=>'set_main_id4workflow', -override=>'1', -value=>"300008"), "\n";
}
if($ctt->{ct_name} =~ /\d+/ && $ctt->{txt00} eq "Rechnung"){
if($ctt->{ct_name} =~ /\d+/ && $ctt->{txt00} eq "Rechnung" && $ctt->{int10} != 2){#only for client invoice
print $but->singlesubmit3("ct_trans","set_workflow2storno","","",""), "\n";
print $q->hidden(-name=>'set_main_id4workflow', -override=>'1', -value=>"300009"), "\n";
}
@ -210,38 +209,36 @@ EOF
print $q->hidden(-name=>'rel_id', -override=>'1', -value=>"$ctt->{rel_id}"),"\n";
print $q->Tr(),"\n";
print "<td class='tdtxt' nowrap>";
print "<td class='tdescr4' nowrap>";
print $but->singlesubmit7("ct_trans","save_adr","$ib{save_adr}","","","ebutton"),"\n";
#print $q->span($q->a({-class=>"ebutton3",-href=>'javascript:history.back()'}, " back "));
print "</td>\n";
#print $q->td({-class=>'tdval',-nowrap=>1}, $but->selector("txt02","60px",$ctt->{txt02},@_anrede)),"\n";
#print $q->td({-class=>'tdval'}," ID $c_idadr $mandat"),"\n";
print $q->td({-class=>'tdval',-colspan=>'2'},"Kunden ID $c_idadr"),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'},"Kunden ID $c_idadr"),"\n";
$ctt->{txt01} = $lb->newline($ctt->{txt01},"","1");
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Vorname Name<br />Zusatz"),"\n";
print $q->td({-class=>'tdval',-colspan=>'2'},$q->textarea(-class=>'autos',-style=>'border:1px solid #ededed;background-color: #ededed;', -name=>'txt01', -default=>"$ctt->{txt01}", -rows=>1, -columns=>38)),"\n";
print $q->td({-class=>'tdescr4'},"Vorname Name<br />Zusatz"),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'},$q->textarea(-class=>'autos',-style=>'border:1px solid #ededed;background-color: #ededed;', -name=>'txt01', -default=>"$ctt->{txt01}", -rows=>1, -columns=>38)),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Straße Nr."),"\n";
print $q->td({-class=>'tdval',-colspan=>'2',-nowrap=>1}, $q->textfield(-class=>'etxt',-name=>'txt03', -default=>"$ctt->{txt03}", -size=>'34', maxlength=>'45')),"\n";
print $q->td({-class=>'tdescr4'},"Straße Nr."),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2',-nowrap=>1}, $q->textfield(-class=>'etxt',-name=>'txt03', -default=>"$ctt->{txt03}", -size=>'34', maxlength=>'45')),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"PLZ Ort"),"\n";
print $q->td({-class=>'tdval',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt06', -default=>"$ctt->{txt06}", -size=>'34', maxlength=>'45')),"\n";
print $q->td({-class=>'tdescr4'},"PLZ Ort"),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt06', -default=>"$ctt->{txt06}", -size=>'34', maxlength=>'45')),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"eMail"),"\n";
print $q->td({-class=>'tdval',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt08', -default=>"$ctt->{txt08}", -size=>'34', maxlength=>'45')),"\n";
print $q->td({-class=>'tdescr4'},"eMail"),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt08', -default=>"$ctt->{txt08}", -size=>'34', maxlength=>'45')),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Telefon"),"\n";
print $q->td({-class=>'tdval',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt07', -default=>"$ctt->{txt07}", -size=>'34', maxlength=>'40')),"\n";
print $q->td({-class=>'tdescr4'},"Telefon"),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt07', -default=>"$ctt->{txt07}", -size=>'34', maxlength=>'40')),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Leistungsdatum"),"\n";
print $q->td({-class=>'tdval',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt20', -default=>"$ctt->{txt20}", -size=>'34', maxlength=>'60'),$but->checkbox("1","int05","$ctt->{int05}"),"manuell"),"\n";
print $q->td({-class=>'tdescr4'},"Leistungsdatum"),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'}, $q->textfield(-class=>'etxt',-name=>'txt20', -default=>"$ctt->{txt20}", -size=>'34', maxlength=>'60'),$but->checkbox("1","int05","$ctt->{int05}"),"manuell"),"\n";
print $q->hidden(-name=>"int05",-override=>1,-value=>"");
}elsif($users_dms->{u_id}){
print $q->Tr(),"\n";
if(!$ctt->{close_time} && $node_meta->{template_id} == 218){
print "<td class='tdtxt' style='width:8em;' nowrap>";
if(!$ctt->{close_time} && (!$ctt->{int10} || $ctt->{int10} != 2)){
print "<td class='tdescr4' style='width:8em;' nowrap>";
print $but->singlesubmit2glyph("trans2edit","client","Kunden bearbeiten","background-color:white;"),"\n";
print $q->hidden(-name=>'c_id4trans', -override=>'1', -value=>"$ctt->{c_id}"),"\n";
#from json_selectadr
@ -250,41 +247,43 @@ EOF
print $q->textfield(-style=>'border:1px solid silver;vertical-align: top;',-id=>"json_selectadr",-name=>"json_selectadr", -value=>""),"\n";
print "</td>\n";
}else{
print $q->td({-class=>'tdtxt'},"&nbsp;"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
}
#print $q->td({-class=>'tdval'},"$ctt->{txt02}"),"\n";
#print $q->td({-class=>'tdval4'},"$ctt->{txt02}"),"\n";
if($c_idadr && $rel_adr->{rel_id}){
my $vde = "";
$vde = " Vde $ctadr->{int12}" if($ctadr->{int12});
print $q->td({-class=>'tdval',-colspan=>'2'},$q->span({-style=>"background-color:#dcd77f;"},$q->a({-class=>"linknav",-href=>"/DMS/Kunden?node2edit=editpart\&mode=manager\&rel_id=$rel_adr->{rel_id}\&tpl_id=202",-title=>"Kunden Stammdaten öffnen"}," Kunden ID $c_idadr ")), $q->span({-style=>"color:red;padding-left:10px;"}," $vde")),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'},$q->span({-style=>"background-color:#dcd77f;"},$q->a({-class=>"linknav",-href=>"/DMS/Kunden?node2edit=editpart\&mode=manager\&rel_id=$rel_adr->{rel_id}\&tpl_id=202",-title=>"Kunden Stammdaten öffnen"}," Kunden ID $c_idadr ")), $q->span({-style=>"color:red;padding-left:10px;"}," $vde")),"\n";
}
$ctt->{txt01} = $lb->newline($ctt->{txt01},"","");
print $q->Tr(),"\n"; $line_count1++;
print $q->td({-class=>'tdtxt'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval',-colspan=>2},"$ctt->{txt01}"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval4',-colspan=>2},"$ctt->{txt01}"),"\n";
print $q->Tr(),"\n"; $line_count1++;
print $q->td({-class=>'tdtxt'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval',-colspan=>2},"$ctt->{txt03}"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval4',-colspan=>2},"$ctt->{txt03}"),"\n";
print $q->Tr(),"\n"; $line_count1++;
print $q->td({-class=>'tdtxt'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval',-colspan=>2},"$ctt->{txt06}"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval4',-colspan=>2},"$ctt->{txt06}"),"\n";
print $q->Tr(),"\n"; $line_count1++;
print $q->td({-class=>'tdtxt'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval',-colspan=>2},"$ctt->{txt08}"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval4',-colspan=>2},"$ctt->{txt08}"),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval',-colspan=>2},"$ctt->{txt07}"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval4',-colspan=>2},"$ctt->{txt07}"),"\n";
print $q->Tr(),"\n";$line_count1++;
print $q->td({-class=>'tdescr'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval',-colspan=>2},"$ctt->{txt20} $int05"),"\n";
print $q->td({-class=>'tdescr4'},"&nbsp;"),"\n";
print $q->td({-class=>'tdval4',-colspan=>2},"$ctt->{txt20} $int05"),"\n";
}
print $q->end_table;
print "</td>\n";
print "<td width='50%' style='font-size:1em;'>\n";
print $q->start_table({-class=>'list', -border=>'0', -width=>'100%',-align=>'left', -cellpadding=>'0', -cellspacing=>'0'}),"\n";
if($node_meta->{tpl_id} == 208){
#if operator accounting/invoice
if($node_meta->{tpl_id} == 208 || $ctt->{int10} == 2){
my $tplop = $dbt->get_tpl($dbh,"196");#Operator-Faktura
my @tplop_order = split /,/,$tplop->{tpl_order};
foreach(@tplop_order){
@ -295,12 +294,12 @@ EOF
my $ctt_key = "int" . $count_key;
$ctt->{$ctt_key} =~ s/\./,/;
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr', -style=>'width:50%;'},"$val"),"\n";
print $q->td({-class=>'tdescr4', -style=>'width:50%;'},"$val"),"\n";
if($ctt->{$ctt_key}){
$ctt->{$ctt_key} =~ s/\./,/;
print $q->td({-class=>'tdval'},"$ctt->{$ctt_key} $unit"),"\n";
print $q->td({-class=>'tdval4'},"$ctt->{$ctt_key} $unit"),"\n";
}else{
print $q->td({-class=>'tdval'},""),"\n";
print $q->td({-class=>'tdval4'},""),"\n";
}
}
}
@ -311,23 +310,23 @@ EOF
$kind_of_payment = "$_paymentstate[0]" if($ctadr->{int03} == 1);
$kind_of_payment = "$_paymentstate[1]" if($ctadr->{int03} == 2);
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Payone Zahlungsart"),"\n";
print $q->td({-class=>'tdval'},"$kind_of_payment | aus Kunden Stammdaten"),"\n";
print $q->td({-class=>'tdescr4'},"Payone Zahlungsart"),"\n";
print $q->td({-class=>'tdval4'},"$kind_of_payment | aus Kunden Stammdaten"),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Payone TXID"),"\n";
print $q->td({-class=>'tdval'},"$ctt->{txt16}"),"\n";
print $q->td({-class=>'tdescr4'},"Payone TXID"),"\n";
print $q->td({-class=>'tdval4'},"$ctt->{txt16}"),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Payone Saldo"),"\n";
print $q->td({-class=>'tdval'},"$ctt->{int16} $pay_sequence"),"\n";
print $q->td({-class=>'tdescr4'},"Payone Saldo"),"\n";
print $q->td({-class=>'tdval4'},"$ctt->{int16} $pay_sequence"),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"Payone Referenz"),"\n";
print $q->td({-class=>'tdval'},"$ctt->{txt25}"),"\n";
print $q->td({-class=>'tdescr4'},"Payone Referenz"),"\n";
print $q->td({-class=>'tdval4'},"$ctt->{txt25}"),"\n";
#check payone status
if($ctt->{txt28} =~ /error/i){
print $q->Tr(),"\n";
print $q->td({-class=>'tdescr'},"payone error"),"\n";
print $q->td({-class=>'tdval'},"(transaction) $ctt->{txt28}"),"\n";
print $q->td({-class=>'tdescr4'},"payone error"),"\n";
print $q->td({-class=>'tdval4'},"(transaction) $ctt->{txt28}"),"\n";
}
}
print $q->end_table;
@ -359,36 +358,25 @@ EOF
print $q->hidden(-name=>'c_id4trans', -override=>'1', -value=>"$ctt->{c_id}");
print $q->hidden(-name=>'set_main_id', -override=>'1', -value=>"$set_main_id"),"\n";
#Text save area
print "<tr><td colspan='5' style='font-size:1.1em;padding-top:1em;'>\n";
print $q->start_table({-class=>'list', -border=>'0', -width=>'100%',-align=>'left', -cellpadding=>'0', -cellspacing=>'0'}),"\n";
print $q->Tr(),"\n";
print $q->td({-class=>'tdval4',-colspan=>"2"},$q->span({-style=>'font-weight:bold;'},"Internas und Bearbeitungstatus")),"\n";
print $q->td({-class=>'tdval4',-colspan=>"2"},$q->span({-style=>'font-weight:bold;'},"PDF Formular Texte "),$q->span({-style=>'color:silver;font-weight:normal;'}," ( für den Kunden sichtbar )")),"\n";
print $q->td({-class=>'tdval5',-colspan=>"2"},$q->span({-style=>'font-weight:bold;'},"Internas und Bearbeitungstatus")),"\n";
print $q->td({-class=>'tdval5',-colspan=>"2"},$q->span({-style=>'font-weight:bold;'},"PDF Formular Texte "),$q->span({-style=>'color:silver;font-weight:normal;'}," ( für den Kunden sichtbar )")),"\n";
if($dbt->{shareedms_conf}->{order_state}){
print $q->Tr(),"\n";
my @_orderstate = split(/\|/,$dbt->{shareedms_conf}->{order_state});
print $q->td({-class=>'tdval4',-colspan=>2},$but->selector("txt22","180px",$ctt->{txt22},@_orderstate)),"\n";
print $q->td({-class=>'tdval5',-colspan=>2},$but->selector("txt22","180px",$ctt->{txt22},@_orderstate)),"\n";
}
$ctt->{txt23} = $q->unescapeHTML("$ctt->{txt23}") if($ctt->{txt23});
print $q->Tr(),"\n";
print $q->td({-class=>'tdval4',-colspan=>'2'},$q->textarea(-class=>'etxt',-name=>'txt23', -default=>"$ctt->{txt23}", -rows=>6, -columns=>65)),"\n";
my $ebutton = "ebutton";
$ebutton = "ebutton4" if($ctt->{ct_name} && $ctt->{ct_name} =~ /\d+/ && !$R::trans2edit && !$ctt->{txt12} && $ctt->{txt21} && $ctt->{txt21} !~ /\,/);
if($ctt->{close_time}){
print $q->Tr(),"\n";
print $q->td({-class=>'tdval',-colspan=>2}, $but->singlesubmit7("ct_trans","save_text_internas","$ib{save_text}","","","$ebutton")),"\n";
print $q->end_form,"\n";
print $q->start_form(),"\n";
}
print $q->td({-class=>'tdval5',-colspan=>'2'},$q->textarea(-class=>'etxt',-name=>'txt23', -default=>"$ctt->{txt23}", -rows=>6, -columns=>65)),"\n";
$ctt->{txt12} = $q->unescapeHTML($ctt->{txt12}) || "";
print $q->td({-class=>'tdval4',-colspan=>'2'},$q->textarea(-class=>'etxt',-name=>'txt12', -default=>"$ctt->{txt12}", -rows=>6, -columns=>65)),"\n";
print $q->td({-class=>'tdval5',-colspan=>'2'},$q->textarea(-class=>'etxt',-name=>'txt12', -default=>"$ctt->{txt12}", -rows=>6, -columns=>65)),"\n";
print $q->Tr(),"\n"; $line_count1++;
my @line_txt12 = split(/\n/,$ctt->{txt12});
@ -412,27 +400,48 @@ EOF
$line_count1 += scalar(@line_key);
$ctf->{$key} = $lb->newline($ctf->{$key},"","");
print $q->Tr(); $line_count1++;
print $q->td({-class=>'tdval4',-colspan=>2},"$ctf->{$key}"),"\n";
print $q->td({-class=>'tdval5',-colspan=>2},"$ctf->{$key}"),"\n";
}
}
}
###
print $q->hidden(-name=>'c_id4trans', -override=>'1', -value=>"$ctt->{c_id}"),"\n";
print $q->hidden(-name=>'set_main_id', -override=>'1', -value=>"$set_main_id"),"\n";
my $ebutton = "ebutton";
$ebutton = "ebutton4" if($ctt->{ct_name} && $ctt->{ct_name} =~ /\d+/ && !$R::trans2edit && !$ctt->{txt12} && $ctt->{txt21} !~ /\,/);
print $q->Tr(),"\n";
print $q->td({-style=>'font-size:0.81em;padding:0.3em 0em;border:0px;',-colspan=>2}, $but->singlesubmit7("ct_trans","save_text","$ib{save_text}","","","$ebutton"),"$formular_text"),"\n" if(!$ctt->{close_time});
if($ctt->{close_time}){
print $q->td({-class=>'tdval5',-colspan=>2}, $but->singlesubmit7("ct_trans","save_text_internas","$ib{save_text}","","","ebutton"),"$formular_text"),"\n";
}else{
print $q->td({-class=>'tdval5',-colspan=>2}, $but->singlesubmit7("ct_trans","save_text","$ib{save_text}","","","ebutton"),"$formular_text"),"\n";
}
print $q->end_table,"\n";
print "</td></tr>\n";
print $q->hidden(-name=>'c_id4trans', -override=>'1', -value=>"$ctt->{c_id}"),"\n";
print $q->hidden(-name=>'set_main_id', -override=>'1', -value=>"$set_main_id"),"\n";
print $q->end_form,"\n";
print $q->end_table,"\n";
###end Big
if($ctt->{barcode}){
my $pref_rel = {
table => "contenttrans",
fetch => "all",
keyfield => "c_id",
barcode => $ctt->{barcode},
c_id => "!=::$ctt->{c_id}",
};
my $ctt_rel = "";
$ctt_rel = $dbt->fetch_record($dbh,$pref_rel);
if(ref($ctt_rel) eq "HASH"){
print "<div style='padding: 0 10px 15px 5px;'>Relationen\n";
foreach my $id (sort { $ctt_rel->{$b}->{c_id} <=> $ctt_rel->{$a}->{c_id} } keys (%$ctt_rel)){
print $q->span({-style=>"background-color:#f7ae37"}, $q->a({-class=>"linknav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Faktura/$ctt_rel->{$id}->{node_name}?ct_trans=open\&c_id4trans=$ctt_rel->{$id}->{c_id}\&tpl_id4trans=$ctt_rel->{$id}->{template_id}\&owner=$users_dms->{u_id}",-title=>"Faktura Terminal öffnen"},"[ $ctt_rel->{$id}->{txt00} #$ctt_rel->{$id}->{ct_name} ]")),"\n";
}
print "</div>\n";
}
}
$line_count2 = "0" . "$line_count2" if($line_count2 < 10);
my $line_count = "$line_count1.$line_count2";

View file

@ -81,20 +81,17 @@ sub tpl(){
my $today = strftime("%d.%m.%Y",localtime(time));
my $now_date = strftime("%Y-%m-%d",localtime(time));
my @months = ("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
my $mon = strftime "%m", localtime;
my $hh;my $mm;
my $hh=0;
my $mm=0;
my $day = strftime "%d", localtime;
my $mon = strftime "%m", localtime;
my $year = strftime "%Y", localtime;
($year,$mon,$day,$hh,$mm) = $lb->split_date($users_dms->{cal_start}) if($users_dms->{cal_start});
my $start_date_time = $R::start_date_time;
my $end_date_time = $R::end_date_time;
$start_date_time = "01.$mon.$year" if(!$start_date_time);
my $end_date_time = $R::end_date_time;
my $days4month = Days_in_Month($year,$mon);
$end_date_time = "$days4month.$mon.$year" if(!$end_date_time);
@ -234,6 +231,8 @@ sub tpl(){
$offset=0;
$limit=10000;
$tplids = "209,218";
my $tpl = $dbt->get_tpl($dbh,209);
@tpl_order = split /,/,$tpl->{tpl_order};
}
elsif(!$R::detail_search && -f $hashfile && $node_meta->{node_name} =~ /letzte Suche/){
@ -241,7 +240,10 @@ sub tpl(){
$message .= ">>> es wurden die letzten Suchparameter oder Filter geladen <<<";
$offset=0;
$limit=10000;
$tplids = "208,209,218";
#$tplids = "208,209,218";#reload store by hashfile
$v_journal = $node_meta->{node_name};
my $tpl = $dbt->get_tpl($dbh,209);
@tpl_order = split /,/,$tpl->{tpl_order};
}
elsif($node_meta->{node_name} eq "Tagesbericht"){
@ -254,7 +256,7 @@ sub tpl(){
$tplids = 218;
}
elsif($node_meta->{node_name} eq "Verkaufsjournal"){
elsif($node_meta->{node_name} eq "Verkaufsjournal" || $R::tpl_id4trans eq "209"){
$main_id = $dbt->{shareedms_conf}->{invoicejournal};
$v_journal = $node_meta->{node_name};
$tplids = 209;
@ -278,6 +280,7 @@ sub tpl(){
if($R::detail_search eq "suchen"){
$tplids = "208,209,218";
}
$searchref->{tplids} = "$tplids";
}
$main_ids = "$main_id,";
$main_ids .= $db->collect_noderec($main_id,$lang,"nothing");
@ -301,7 +304,7 @@ sub tpl(){
my $header_style = "";
$header_style = "border:2px solid #9f1f0e;" if($message);
if($node_meta->{tpl_id} == 205){
if($node_meta->{tpl_id} == 205 || $node_meta->{tpl_id} == 209){
print $q->div({-class=>"copri_header",-style=>"background-color:$node_meta->{bg_color};"},"$path", $q->span({-style=>"padding:5px 10px;background-color:#86cbd7;color:white;"},
" $months[$mon -1] $year",
$q->a({-class=>"linknav",-style=>"padding:0 0.5em;",-title=>"Monat zurück",-href=>"?cal_delta_start=0:-1:0"}," &larr; "),
@ -393,9 +396,7 @@ sub tpl(){
if($node_meta->{ct_table} eq "contenttrans" && $c_id4trans && $c_id4trans =~ /^\d+$/){
$ct4rel = $db->collect_cid($table,$lang,$tplids,$R::rel_id,$R::barcode,"c_id",$c_id4trans);
}
elsif(!$start_chck && !$end_chck){
$rows = $db->count_content($table,"$main_ids","$tplids");
#collect search keys
foreach my $postkey (@keywords){
@ -410,15 +411,22 @@ sub tpl(){
}
#trying to save hashref
if(!$v_journal && $R::detail_search && ref($searchref) eq "HASH"){
if($R::detail_search && ref($searchref) eq "HASH"){
store $searchref, $hashfile;
}elsif(!$v_journal && !$R::detail_search && -f $hashfile && ($path =~ /letzte Suche/ || $limit > $varenv{limit})){
}elsif(!$R::detail_search && -f $hashfile && ($path =~ /letzte Suche/)){
$searchref = {};
$searchref = retrieve($hashfile);
$tplids = $searchref->{tplids} if($searchref->{tplids});
}
#print Dumper($searchref);exit;
$rows = $db->count_content($table,"$main_ids","$tplids");
#Verkaufsjournal
#Verkaufsjournal default view
if($node_meta->{tpl_id} == 209 && $v_journal && !$R::detail_search){
$searchref->{start_pay_time} = $start_date_time;
$searchref->{end_pay_time} = $end_date_time;
}
if(1==2 && $node_meta->{tpl_id} == 209 && $v_journal && !$R::detail_search){
my $pref_209 = {
table => "contenttrans",
fetch => "one",
@ -449,7 +457,7 @@ sub tpl(){
}
$ct4rel = $db->search_content3($searchref,$table,$dbt->{shareedms_conf}->{parent_id},$node_meta,$users_dms->{u_id},$lang,"$main_ids","$tplids","$ct_ids",$v_journal,$time,$R::s_kontext,$scol,$users_dms->{sort_updown},$offset,$limit,$export,$R::todo,$ck4ex,$opos);
if($node_meta->{node_name} eq "Faktura" || $node_meta->{tpl_id} == 218){
if($node_meta->{node_name} eq "Faktura" || $tplids =~ /218/){
my $v_journalparts = "";
$v_journalparts = $v_journal . "_parts";
$ct4rel_parts = $db->search_content3($searchref,$table,$dbt->{shareedms_conf}->{parent_id},$node_meta,$users_dms->{u_id},$lang,"$main_ids","$tplids","$ct_ids",$v_journalparts,$time,$R::s_kontext,$scol,$users_dms->{sort_updown},$offset,$limit,$export,$R::todo,$ck4ex,$opos);
@ -476,8 +484,16 @@ sub tpl(){
my $hstyle = "border-right: solid thin gray;border-bottom: solid thin gray;";
if($v_journal && $v_journal =~ /journal/){
print $q->div({-style=>"background-color:silver;$hstyle"},$but->singlesubmit1("detail_search","operator_accounting","","margin:0 0 2px 20px;",""),"es dürfen nur Rechnungen mit erfolgreichem payone Einzug selektiert werden."),"\n";
#accounting workflow
if($node_meta->{node_name} eq "Verkaufsjournal"){
print "<div style='padding-bottom:5px;background-color:silver;'>\n";
if($R::accounting_select){
print $but->singlesubmit1("detail_search","operator_accounting","","margin:0 0 0px 20px;",""),"\n";
}else{
print $q->a({-class=>'elinkbutton',-style=>'margin:0 0 2px 20px;', -href=>'?accounting_select=1'},"1. Einzüge selektieren"),"\n";
}
print "$months[$mon -1] $year\n";
print "</div>\n";
}
print $q->hidden(-name=>'mandant_main_id', -value=>"$dbt->{shareedms_conf}->{parent_id}"),"\n";
print $q->hidden(-name=>'tpl_id4trans', -value=>"$node_meta->{tpl_id}"),"\n";
@ -524,11 +540,11 @@ sub tpl(){
$h++;
my ($key,$val,$size) = split /=/,$_;
if($size =~ /area/){
$size = "10em";
}elsif($key =~ /int0|c_id/){
$size = "1em" if(!$size);
}elsif($size !~ /^\d+$/){
$size = "6em";
$size = "5em";
}elsif($key =~ /int0|c_id|ct_name/){
$size = "1em";# if(!$size);
}else{
$size = "2em";
}
$s_val = $searchref->{$key};
@ -591,7 +607,8 @@ sub tpl(){
push (@_states,@_orderstates);
print $q->td({-class=>'search_line'},$but->selector("s_$key","120px","$s_val",@_states)),"\n";
}
my $s_mtime; my $e_mtime;
my $s_mtime="";
my $e_mtime="";
if($key eq "mtime"){
$s_mtime = $searchref->{start_mtime};
$e_mtime = $searchref->{end_mtime};
@ -600,9 +617,9 @@ sub tpl(){
$s_mtime = $searchref->{start_atime};
$e_mtime = $searchref->{end_atime};
}
if($key eq "bctime"){
$s_mtime = $searchref->{start_bctime};
$e_mtime = $searchref->{end_bctime};
if($key eq "pay_time"){
$s_mtime = $searchref->{start_pay_time};
$e_mtime = $searchref->{end_pay_time};
}
if($key eq "date_time"){
$s_mtime = $searchref->{start_date_time};
@ -652,11 +669,8 @@ sub tpl(){
print $q->td({-style=>"font-size:0.71em;padding:0;border:0px solid green;",-colspan=>"$tdcal",-nowrap=>"1"},"$day4month"),"\n";
}
my $sum_ec="0";my $sum_kredit="0";my $sum_abb="0";my $sum_ueb="0";my $sum_geka="0";my $sum_paypal="0";my $sum_SEPApayone="0";my $sum_CCpayone="0";my $sum_ausfall="0";my $sum_kasse="0";my $sum_start="0";my $close_time="";my $payment_time="";
my $sum_saldo="0";my $sum_opos="0";my $sum_abb="0";my $sum_ueb="0";my $sum_success="0";my $sum_SEPApayone="0";my $sum_CCpayone="0";my $sum_ausfall="0";my $close_time="";my $payment_time="";
my $nr=0;my $nx=0;
my $check_kaution=0;
my $rabatt_key = "";
my $kost_key = "";
#BIG LOOP loop content table
foreach my $id (sort {
@ -686,7 +700,8 @@ sub tpl(){
my $sum_pos = 0;
my $pricing = {};
my $counting = {};
if($ct4rel->{$id}->{state} ne "Kassenbestand"){
#pre-sum only if client invoice
if($ct4rel->{$id}->{template_id} == 218 && $ct4rel->{$id}->{int10} != 2){
foreach my $cpid (keys (%$ct4rel_parts)){
if($ct4rel->{$id}->{c_id} == $ct4rel_parts->{$cpid}->{ct_id}){
@ -701,7 +716,7 @@ sub tpl(){
}
my $sum_chk = $ct4rel->{$id}->{int01};
$sum_pos = $lb->round($sum_pos);
$sum_pos = $lb->cashme($sum_pos);
$sum_pos = sprintf('%.2f',$sum_pos);
my $sum_chkdiff = $sum_chk - $sum_pos;
if($ct4rel->{$id}->{int01} && ($sum_pos ne $sum_chk) && ($sum_chkdiff > 0.02 || $sum_chkdiff < -0.02)){
$sum_error = "1";
@ -721,9 +736,6 @@ sub tpl(){
#print $q->start_form(-name=>'listeform');
$sum_kasse = $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} eq "Kassenbestand");
$sum_start = $ct4rel->{$id}->{int02} if($ct4rel->{$id}->{state} eq "Kassenbestand");
if(1==1){
if(1==1){
$nr++;
@ -735,8 +747,8 @@ sub tpl(){
$payment_time = $ct4rel->{$id}->{payment_time};
$payment_time = $lb->time4de($payment_time,"1");
}
$sum_ec += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /EC/);
#$sum_kredit += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Kredit/);
$sum_saldo += $ct4rel->{$id}->{int16} if($ct4rel->{$id}->{state});
$sum_opos += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} ne "Zaglungsausfall" && $ct4rel->{$id}->{int14} >= 1);
$sum_abb += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Abbuchung/);
$sum_ueb += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Überweisung/);
$sum_SEPApayone += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /SEPA.*payone|Zahlungseingang.*payone/);
@ -768,7 +780,7 @@ sub tpl(){
#permissions
if($users_dms_primary->{int03} == 2 && $users_dms->{int03} == 2){
my $checked = 0;
#$checked = 1 if($node_meta->{template_id} == 209 && $ct4rel->{$id}->{int01} > 0 && $ct4rel->{$id}->{state} =~ /payone/i && !$ct4rel->{$id}->{int14});
$checked = 1 if($R::accounting_select && $node_meta->{template_id} == 209 && $ct4rel->{$id}->{int01} > 0 && $ct4rel->{$id}->{state} =~ /payone/i && !$ct4rel->{$id}->{int14});
print $q->td({-style=>"background-color:silver;"}, $q->checkbox(-name=>"ck4ex", -checked=>"$checked", -value=>"$ct4rel->{$id}->{c_id}", -label=>'')),"\n";
}else{
print $q->td({-style=>"background-color:silver;"},"&nbsp;"),"\n";
@ -858,40 +870,22 @@ sub tpl(){
$ny = $nr if($path =~ /letzte Suche/);
print $q->td({-class=>'tdint',-style=>"$set_style color:grey;"},"$ny"),"\n" if($ecol <= "2");
}
#print $q->td("$ecol\n") if($ecol <= "2");
#my $ctimg = "000empty";
#my $ct_name4img = "$ct4rel->{$id}->{ct_name}.jpg";
#$ct_name4img =~ s/\s//g;
#my $title = "Foto nicht vorhanden";
#if(-f "$varenv{img4thumb}/$ct_name4img"){
# $ctimg = "$ct_name4img";
# $title="$ct4rel->{$id}->{ct_name}";
#}
#print $q->td({-class=>'element',-style=>"$set_style"},$q->a({-href=>"/img4ct/$ctimg",-rel=>'lightbox',-title=>"$title"},$q->img({-src=>"/img4thumb/$ctimg", -style=>'max-width:20px;border:1px solid silver;'})));
#Tablecontent (parameter)
$k=0;
foreach (@tpl_order){
$k++;
my ($key,$val,$size,$colorize) = split /=/,$_;
$rabatt_key = 1 if($key =~ /int07/);
$kost_key = 1 if($key =~ /node05|node08/);
my $txtstyle = "text-align:left;";
my $isize = "26";
if($key =~ /barcode|c_id|ct_name|int|time\d+|state|sort|public/){
$txtstyle = "text-align:right;max-width:8em;";
$isize = "5";
$isize = "5" if($key =~ /int/);
}
$isize = $size if($size =~ /\d/);
$ct4rel->{$id}->{$key} = $lb->time4de($ct4rel->{$id}->{$key},"1") if($key =~ /time$/);
$ct4rel->{$id}->{$key} = $q->unescapeHTML($ct4rel->{$id}->{$key});# if($key !~ /byte/);
my $br4text = $R::node2edit || "";
$ct4rel->{$id}->{$key} = $lb->newline($ct4rel->{$id}->{$key},"","$br4text");
$set_style4nr = $set_style;
$set_style4nr="background-color:#e3dbc9;" if(($key eq "barcode") || ($key eq "int04"));
#$set_style4nr="background-color:#e3dbc9;" if($key eq "barcode");
$ct4rel->{$id}->{$key} =~ s/\./,/ if($key =~ /int/);
if($key eq "c_id" && $val eq "raw"){
@ -1090,161 +1084,83 @@ sub tpl(){
}
}
}
#sub-table-row, Journal mit Teileansicht
if(1==2 && $v_journal){
my $o = "9";
$o = 8 if($varenv{wwwhost} =~ /cofi/);#because of extra col ID
$o++ if($rabatt_key); #Verkaufjournal mit Rabatt
$o++ if($kost_key); #Verkaufjournal mit Kostenstelle
my $m = $k - $o;
foreach my $cpid (sort { $ct4rel_parts->{$a}->{c_id} <=> $ct4rel_parts->{$b}->{c_id} } keys(%$ct4rel_parts)){
if($ct4rel->{$id}->{c_id} eq $ct4rel_parts->{$cpid}->{ct_id}){
my $pos_style="color:grey;$set_style";
my $sum_parts = $ct4rel_parts->{$cpid}->{int02} * $ct4rel_parts->{$cpid}->{int03};
if($ct4rel_parts->{$cpid}->{int07} != 0){
#my $rabatt_eur = $ct4rel_parts->{$cpid}->{int02} * $ct4rel_parts->{$cpid}->{int03} * $ct4rel_parts->{$cpid}->{int07}/100;
my $rabatt_eur = $ct4rel_parts->{$cpid}->{int07};
$rabatt_eur = $ct4rel_parts->{$cpid}->{int02} * $ct4rel_parts->{$cpid}->{int03} * $ct4rel_parts->{$cpid}->{int07}/100 if($ct4rel_parts->{$cpid}->{int08} != 1);#wenn int08 != 1 alias €
$sum_parts = $ct4rel_parts->{$cpid}->{int02} * $ct4rel_parts->{$cpid}->{int03} - $rabatt_eur;
}
$sum_parts = $lb->round($sum_parts);
$sum_parts = $lb->cashme($sum_parts);
my $parts_time = "";
if($ct4rel_parts->{$cpid}->{start_time} && $ct4rel_parts->{$cpid}->{end_time}){
$ct4rel_parts->{$cpid}->{start_time} = $lb->time4de($ct4rel_parts->{$cpid}->{start_time},"1");
$ct4rel_parts->{$cpid}->{end_time} = $lb->time4de($ct4rel_parts->{$cpid}->{end_time},"1");
$parts_time = "$ct4rel_parts->{$cpid}->{start_time} - $ct4rel_parts->{$cpid}->{end_time}";
}
print $q->Tr(),"\n";
print $q->td({-style=>"background-color:silver;"},""),"\n";
#print $q->td({-colspan=>'2',-style=>"$pos_style"},"$ct4rel->{$id}->{c_id} | $ct4rel_parts->{$cpid}->{ct_id}\n");
print $q->td({-colspan=>'3',-style=>"$pos_style"},""),"\n";
print $q->td({-class=>'tdtxt',-style=>"$pos_style"},"$ct4rel_parts->{$cpid}->{txt00}"),"\n";
print $q->td({-colspan=>'1',-style=>"$pos_style"},""),"\n";
print $q->td({-class=>'tdtxt',-style=>"$pos_style"},"$ct4rel_parts->{$cpid}->{txt01}"),"\n";
print $q->td({-class=>'tdint',-style=>"$pos_style"},"$ct4rel_parts->{$cpid}->{ct_name}"),"\n";
print $q->td({-colspan=>"$m",-style=>"$pos_style"},""),"\n";
print $q->td({-class=>'tdint',-style=>"$pos_style"},"$ct4rel_parts->{$cpid}->{int03}"),"\n";
print $q->td({-class=>'tdint',-style=>"$pos_style"},"$ct4rel_parts->{$cpid}->{int02}"),"\n";
#Rabatt
if($rabatt_key && $ct4rel_parts->{$cpid}->{int07}){
$ct4rel_parts->{$cpid}->{int07} .= " €" if($ct4rel_parts->{$cpid}->{int08} == 1);#wenn int08 != 1 alias €;
$ct4rel_parts->{$cpid}->{int07} .= " %" if($ct4rel_parts->{$cpid}->{int08} != 1);#wenn int08 != 1 alias €;
print $q->td({-class=>'tdint',-style=>"$pos_style",-nowrap=>1},"$ct4rel_parts->{$cpid}->{int07}"),"\n";
}elsif($rabatt_key){
print $q->td({-class=>'tdint',-style=>"$pos_style",-nowrap=>1},""),"\n";
}
print $q->td({-class=>'tdint',-style=>"$pos_style"},"$sum_parts"),"\n";
print $q->td({-colspan=>'1',-style=>"$pos_style"},""),"\n";
}
}
}
}
}#journal offen ende
#Kassenjournal alias Summe Bar und Kredit
if(($nr > 0) && ($v_journal || $R::v_abschluss) && (!$R::rel_id) && ("$R::s_kontext" ne "Waren")){
#if(($nr > 0) && ($v_journal || $R::v_abschluss || $close_time) && (!$R::rel_id)){
#print "($nr > 0) && ($v_journal || $R::v_abschluss || $close_time) && (!$R::rel_id)";
if(($nr > 0) && ($v_journal || $R::v_abschluss) && !$R::rel_id){
$k="9" if(!$k);
my $m = $k;
$sum_ec = $lb->round($sum_ec);
$sum_ec = $lb->cashme($sum_ec);
#$sum_kredit = $lb->round($sum_kredit);
#$sum_kredit = $lb->cashme($sum_kredit);
$sum_abb = $lb->round($sum_abb);
$sum_abb = $lb->cashme($sum_abb);
$sum_ueb = $lb->round($sum_ueb);
$sum_ueb = $lb->cashme($sum_ueb);
$sum_geka = $lb->round($sum_geka);
$sum_geka = $lb->cashme($sum_geka);
$sum_paypal = $lb->round($sum_paypal);
$sum_paypal = $lb->cashme($sum_paypal);
$sum_SEPApayone = $lb->round($sum_SEPApayone);
$sum_SEPApayone = $lb->cashme($sum_SEPApayone);
$sum_CCpayone = $lb->round($sum_CCpayone);
$sum_CCpayone = $lb->cashme($sum_CCpayone);
$sum_ausfall = $lb->round($sum_ausfall);
$sum_ausfall = $lb->cashme($sum_ausfall);
$sum_start = $lb->cashme($sum_start);
$sum_kasse = $lb->cashme($sum_kasse);
$close_time = $R::s_mtime if($R::s_mtime);
my $summiert = "Gesamt Umsätze";
#my @_states = ("Bar","EC-Karte","Kreditkarte","Abbuchung","Überweisung");
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdtxt',-style=>'text-align:center;background-color:silver;',-colspan=>"$m"},"$summiert");
print $q->td({-class=>'tdtxt',-style=>'text-align:center;background-color:silver;',-colspan=>"$m"},"Gesamt Umsätze");
print $q->td({-class=>'tdsum',-colspan=>"1",-style=>'background-color:silver;'},"");
print $q->td({-class=>'tdsum',-colspan=>"1",-style=>'background-color:silver;'},"");
if(1==1){
if($sum_ec != "0"){
if($sum_saldo != 0){
$sum_saldo = sprintf('%.2f',$sum_saldo);
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"EC-Karten Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_ec €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"$m"},"Saldo Summe");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_saldo €");
}
#if($sum_kredit != "0"){
# print $q->Tr();
# print $q->td({-style=>"background-color:silver;"},""),"\n";
# print $q->td({-class=>'tdsum',-colspan=>"$m"},"Kreditkarten Summe");
# print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_kredit €");
#}
if($sum_abb != "0"){
if($sum_opos != 0){
$sum_opos *= -1;
$sum_opos = sprintf('%.2f',$sum_opos);
$sum_success += $sum_opos;
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"Abbuchung Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_abb €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"$m"},"OPOS Summe");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_opos €");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"");
}
if($sum_ueb != "0"){
if($sum_ueb != 0){
$sum_ueb = sprintf('%.2f',$sum_ueb);
$sum_success += $sum_ueb;
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"Überweisung Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_ueb €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"$m"},"Überweisung Summe");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_ueb €");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"");
}
if($sum_geka != "0"){
if($sum_SEPApayone != 0){
$sum_SEPApayone = sprintf('%.2f',$sum_SEPApayone);
$sum_success += $sum_SEPApayone;
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"Geldkarte Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_geka €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"$m"},"SEPA-Lastschrift (payone) Summe");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_SEPApayone €");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"");
}
if($sum_paypal != "0"){
if($sum_CCpayone != 0){
$sum_CCpayone = sprintf('%.2f',$sum_CCpayone);
$sum_success += $sum_CCpayone;
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"PayPal Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_paypal €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"$m"},"Kreditkarte (payone) Summe");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_CCpayone €");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"");
}
if($sum_SEPApayone != "0"){
if($sum_ausfall != 0){
$sum_ausfall *= -1;
$sum_ausfall = sprintf('%.2f',$sum_ausfall);
$sum_success += $sum_ausfall;
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"SEPA-Lastschrift (payone) Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_SEPApayone €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
print $q->td({-class=>'tdint',-colspan=>"$m"},"Zahlungsausfall Summe");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_ausfall €");
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"");
}
if($sum_CCpayone != "0"){
if($sum_success != 0){
$sum_success = sprintf('%.2f',$sum_success);
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"Kreditkarte (payone) Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_CCpayone €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
}
if($sum_ausfall != "0"){
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
print $q->td({-class=>'tdsum',-colspan=>"$m"},"Zahlungsausfall Summe");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_ausfall €");
print $q->td({-class=>'tdsum',-colspan=>"$m"},"Erfolgreiche Zahlungen");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"$sum_success €");
print $q->td({-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},"");
}

View file

@ -136,7 +136,7 @@ sub tpl(){
$searchref->{table_pos} = "contentpos";
$searchref->{template_id_pos} = "$node_meta->{tpl_id}";
$tpl_ids = "205";
#$main_ids = $node_meta->{main_id};
$node_meta->{tpl_order} .= ",txt10=Redistribution" if($node_meta->{tpl_id} != 499);
}
elsif($node_meta->{tpl_id} > 600 && $node_meta->{tpl_id} < 700){
$table = "contentadr";

View file

@ -130,6 +130,7 @@ sub tpl(){
my $sum_operatorcredit=0;
my $sum_payonecapture=0;
my $sum_parts19=0;
my $sum_all=0;
my $diff19 = 100 + 19;
my $sum_umst19=0;
my $i=0;
@ -141,6 +142,7 @@ sub tpl(){
my $oac = $pri->operator_accounting2calc(\%varenv,$cttpos->{$id},$ctf_operator);
$sum_operatorcredit += $oac->{int02};#Abrechnung Gutschrift
$sum_parts19 += $oac->{int100};#Operator Rechnung (TeilRad Gebühren + Disagio incl. 19%)
$sum_all += $oac->{int01};
$oac->{int01} = sprintf('%.2f', $oac->{int01});
if(1==1){
@ -212,6 +214,10 @@ sub tpl(){
$sum_operatorcredit = sprintf('%.2f', $sum_operatorcredit);
$sum_operatorcredit =~ s/\./,/;
$sum_all = sprintf('%.2f', $sum_all);
$sum_all =~ s/\./,/;
my $payment_text = "";
foreach(@tplf_order){
my ($key,$des,$size) = split /=/,$_;
@ -252,13 +258,15 @@ sub tpl(){
}
print $q->Tr("\n");$line_count2++;
print $q->td({-class=>'tdsum',-colspan=>2},"Summe $ctt->{state}");
print $q->td({-class=>'tdint',-colspan=>1,-style=>'color:silver;'},"(Einzüge $sum_all)");
print $q->td({-class=>'tdsum',-colspan=>1},"Summe $ctt->{state}");
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_paid €");
}
#Summe Betreiber Abrechnung (Gutschrift)
else{
print $q->Tr("\n");$line_count2++;
print $q->td({-class=>'tdsum',-colspan=>2},"Summe $ctt->{state}");
print $q->td({-class=>'tdint',-colspan=>1,-style=>'color:silver;'},"(Einzüge $sum_all)");
print $q->td({-class=>'tdsum',-colspan=>1},"Summe $ctt->{state}");
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_operatorcredit €");
}