mirror of
https://gitlab.com/t6353/sharee.bike.git
synced 2025-06-16 05:36:29 +02:00
accounting and statistik adjustments
This commit is contained in:
parent
e6c7010f28
commit
4435999ac2
10 changed files with 122 additions and 87 deletions
|
@ -60,7 +60,7 @@ sub tpl(){
|
|||
|
||||
my $dbh_primary = $dbt->dbconnect_extern($dbt->{primary}->{sharee_primary}->{database}->{dbname});
|
||||
my $users_dms_primary = { u_id => 0 };
|
||||
$users_dms_primary = $dbt->select_users($dbh_primary,$users_dms->{u_id},"and int03=2");
|
||||
$users_dms_primary = $dbt->select_users($dbh_primary,$users_dms->{u_id},"");
|
||||
|
||||
my $table = "contenttrans";
|
||||
my $u_name = $q->escapeHTML("$R::u_name");
|
||||
|
@ -458,7 +458,7 @@ sub tpl(){
|
|||
$comment_view = "→ $comment" if($comment);
|
||||
|
||||
my $kunde = "$cttpos->{$pid}->{txt08}";
|
||||
if($users_dms_primary->{u_id} && $users_dms_primary->{int03} == 2){
|
||||
if($users_dms_primary->{u_id} && $users_dms->{u_id} && $users_dms->{int02} >= 1){
|
||||
$kunde = $q->a({-class=>"linknav3",-style=>"$part_style",-href=>"/DMS/Kunden/?detail_search=1&s_c_id=$cttpos->{$pid}->{ca_id}",-title=>"Kunde im Kundenstamm"},"$cttpos->{$pid}->{txt08} ($cttpos->{$pid}->{ca_id})");#2021-05-24 saves kd name
|
||||
}
|
||||
|
||||
|
@ -470,7 +470,7 @@ sub tpl(){
|
|||
print $q->div({-style=>"float:left;margin-left:$c_left"}, "$i) $edit_pos $pos_id → <span style='$time_style'>$start_time – $end_time</span> → $kunde → Start Station $start_station → End Station $end_station → Bike $bikenr $status $lock_state → $u_name/$u_name_end<br />$track_info $charge $comment_view"),"\n";
|
||||
}
|
||||
|
||||
if($users_dms_primary->{u_id} && $users_dms_primary->{int03} == 2){
|
||||
if($users_dms_primary->{u_id} && $users_dms->{u_id} && $users_dms->{int03} >= 1){
|
||||
print $q->div({-style=>'float:left;margin-left:1em;'}, "→ Faktura", $q->a({-class=>"linknav3",-style=>"$trans_style",-href=>"/DMS/Faktura?ct_trans=open\&c_id4trans=$c_id4trans\&tpl_id4trans=$tpl_id4trans\&kind_of_trans=Faktura\&owner=$users_dms->{owner}",-title=>"Faktura Terminal öffnen"},"\#$ct_name")),"\n" if($c_id4trans && $tpl_id4trans);
|
||||
print $q->div({-style=>'float:left;margin-left:1em;'}, "$user_device"),"\n";
|
||||
}
|
||||
|
|
|
@ -399,7 +399,7 @@ sub tpl(){
|
|||
|
||||
my $ctrel = {};
|
||||
#only if permission read
|
||||
if(($node_meta->{ct_table} eq "content" && $users_dms->{int01} >= 1) || ($node_meta->{ct_table} eq "contentadr" && $users_dms_primary->{u_id} && $users_dms_primary->{int02} >= 1 && $users_dms->{u_id} && $users_dms->{int02} >= 1) || ($node_meta->{ct_table} eq "contenttrans" && $users_dms_primary->{u_id} && $users_dms_primary->{int03} >= 1 && $users_dms->{u_id} && $users_dms->{int03} >= 1)){
|
||||
if(($node_meta->{ct_table} eq "content" && $users_dms->{int01} >= 1) || ($node_meta->{ct_table} eq "contentadr" && $users_dms_primary->{u_id} && $users_dms->{u_id} && $users_dms->{int02} >= 1) || ($node_meta->{ct_table} eq "contenttrans" && $users_dms_primary->{u_id} && $users_dms->{u_id} && $users_dms->{int03} >= 1)){
|
||||
|
||||
|
||||
my $c_id4trans = $R::c_id4trans || "";
|
||||
|
|
|
@ -213,19 +213,12 @@ EOF
|
|||
}
|
||||
}
|
||||
}
|
||||
#trying to save hashref
|
||||
#if($R::detail_search && ref($searchref) eq "HASH"){
|
||||
# store $searchref, $hashfile;
|
||||
#}elsif($keycount > 0 && !$R::detail_search && -f $hashfile && !$R::col_sort && !$R::sort_updown){
|
||||
# $searchref = {};
|
||||
# $searchref = retrieve($hashfile);
|
||||
#}
|
||||
#print Dumper($searchref);
|
||||
|
||||
my $export = "";
|
||||
my $todo = "";
|
||||
my $ck4ex = "";
|
||||
#only if permission read
|
||||
if(($node_meta->{ct_table} eq "users" && $users_dms->{int07} >= 1) || ($node_meta->{ct_table} eq "contentadrpos" && $users_dms->{int02} >= 1) || ($node_meta->{ct_table} eq "contentpos" && $users_dms->{int01} >= 1) || ($node_meta->{ct_table} eq "contentuser" && $users_dms->{int08} >= 1)){
|
||||
if(($node_meta->{ct_table} eq "users" && $users_dms->{int07} >= 1) || ($node_meta->{ct_table} eq "contentadrpos" && $users_dms->{int01} >= 1) || ($node_meta->{ct_table} eq "contentpos" && $users_dms->{int01} >= 1) || ($node_meta->{ct_table} eq "contentuser" && $users_dms->{int08} >= 1)){
|
||||
$ct4rel = $db->search_content3($searchref,$table,$dbt->{shareedms_conf}->{parent_id},$node_meta,$users_dms->{u_id},$lang,"$main_ids","$tpl_ids","","",$time,"",$scol,$users_dms->{sort_updown},$offset,$limit,$export,$todo,$ck4ex,"");
|
||||
}else{
|
||||
$return = "failure::Abbruch. Keine Zugriffsberechtigung";
|
||||
|
|
|
@ -98,9 +98,9 @@ sub tpl(){
|
|||
($cttpos,$rows) = $dbt->collect_contenttrans($dbh,$ctt->{content_id});
|
||||
#int9x are not in db
|
||||
if($varenv{dbname} eq "sharee_sx"){
|
||||
@tpl_order = ("c_id=ID","int01=Netto Erlös","state=Zahlungsart","int94=payone Disagio","int02=Summe Gutschrift");
|
||||
@tpl_order = ("c_id=ID","int01=Netto Erlös","state=Zahlungsart","int94=Disagio","int02=Summe Gutschrift");
|
||||
}else{
|
||||
@tpl_order = ("c_id=ID","int01=Netto Erlös","state=Zahlungsart","int94=payone Disagio","int95=payone Transaktion","int96=payone Zahlungsmeldung","int97=payone Kreditkarte Zuordnung","int02=Summe Gutschrift");
|
||||
@tpl_order = ("c_id=ID","int01=Netto Erlös","state=Zahlungsart","int94=Disagio","int95=Transaktion","int96=Zahlungsmeldung","int97=Kreditkarte Zuordnung","int02=Summe Gutschrift");
|
||||
}
|
||||
}
|
||||
my $tplf = $dbt->get_tpl($dbh,201);#Kunden-Faktura, ex Firma
|
||||
|
@ -127,10 +127,9 @@ sub tpl(){
|
|||
print $q->start_form(-name=>'transposform'),"\n";
|
||||
|
||||
my $sum_operatorcredit=0;
|
||||
my $sum_payonecapture=0;
|
||||
my $sum_parts19=0;
|
||||
my $sum_netto=0;
|
||||
my $sum_brutto=0;
|
||||
my $sum_all=0;
|
||||
my $diff19 = 100 + 19;
|
||||
my $sum_umst19=0;
|
||||
my $i=0;
|
||||
my $accounting_start = "";
|
||||
|
@ -140,7 +139,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_netto += $oac->{int100};#Operator invoice (TeilRad Gebühren netto)
|
||||
$sum_all += $oac->{int99};#capture brutto
|
||||
$oac->{int01} = sprintf('%.2f', $oac->{int01});#capture netto
|
||||
|
||||
|
@ -192,26 +191,28 @@ sub tpl(){
|
|||
}
|
||||
}#foreach end
|
||||
|
||||
if($sum_parts19 && $sum_parts19 != 0){
|
||||
$sum_umst19 = $sum_parts19 / $diff19 * 19;
|
||||
$sum_umst19 = $pri->round($sum_umst19);
|
||||
#sum int100 netto
|
||||
if($sum_netto && $sum_netto != 0){
|
||||
$sum_brutto = $sum_netto * 1.19;
|
||||
$sum_netto = $pri->round($sum_netto);
|
||||
$sum_brutto = $pri->round($sum_brutto);
|
||||
$sum_umst19 = $sum_brutto - $sum_netto;
|
||||
}
|
||||
my $sum_netto19 = $sum_parts19 - $sum_umst19;
|
||||
$sum_netto19 = sprintf('%.2f', $sum_netto19);
|
||||
$sum_netto19 =~ s/\./,/;
|
||||
$sum_operatorcredit = $pri->round($sum_operatorcredit);
|
||||
my $total_operatorcredit = $sum_operatorcredit - $sum_brutto;
|
||||
my $sum_paid = $sum_brutto;
|
||||
|
||||
my $sum_paid = $sum_parts19;
|
||||
$sum_paid = $pri->round($sum_paid);
|
||||
$sum_paid = sprintf('%.2f', $sum_paid);
|
||||
$sum_paid =~ s/\./,/;
|
||||
|
||||
$sum_parts19 = sprintf('%.2f', $sum_parts19);
|
||||
$sum_netto = sprintf('%.2f', $sum_netto);
|
||||
$sum_netto =~ s/\./,/;
|
||||
$sum_brutto = sprintf('%.2f', $sum_brutto);
|
||||
$sum_brutto =~ s/\./,/;
|
||||
$sum_umst19 = sprintf('%.2f', $sum_umst19);
|
||||
$sum_umst19 =~ s/\./,/;
|
||||
|
||||
$sum_operatorcredit = $pri->round($sum_operatorcredit);
|
||||
$sum_operatorcredit = sprintf('%.2f', $sum_operatorcredit);
|
||||
$sum_operatorcredit =~ s/\./,/;
|
||||
$total_operatorcredit = sprintf('%.2f', $total_operatorcredit);
|
||||
$total_operatorcredit =~ s/\./,/;
|
||||
|
||||
$sum_all = sprintf('%.2f', $sum_all);
|
||||
$sum_all =~ s/\./,/;
|
||||
|
@ -225,48 +226,63 @@ sub tpl(){
|
|||
$ctf->{$key} = $lb->newline($ctf->{$key},"","");
|
||||
$ctt->{state} =~ s/\(payone.*//;
|
||||
if($des =~ /$ctt->{state}/){
|
||||
if($sum_parts19 < 0){
|
||||
$payment_text = "$ctf->{txt58}";
|
||||
$payment_text = "($key) " if($users_dms->{u_id} eq $varenv{superu_id});
|
||||
if($sum_netto < 0){
|
||||
$payment_text .= "$ctf->{txt58}";
|
||||
}else{
|
||||
$payment_text = "$ctf->{$key}";
|
||||
$payment_text .= "$ctf->{$key}";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
my $cs = $tc - 3;
|
||||
my $sc = 2;
|
||||
$sc = 1 if($ctt->{template_id} != 208);
|
||||
my $pt = $tc - $sc;
|
||||
print "<tr>\n";
|
||||
print "<td colspan='$cs'><div style='font-size:0.81em;padding:0.3em 0em;border:0px;'>$payment_text</div></td>\n";
|
||||
print "<td style='border:0px solid black;' colspan='$pt'><div style='font-size:0.81em;padding:0.3em 0em;'>$payment_text</div></td>\n";
|
||||
|
||||
###print sum
|
||||
print "<td style='font-size:1em;' colspan='3'>\n";
|
||||
print $q->start_table({-class=>'list',-style=>'border-top:0px;border-style:solid;border-color:black;', -border=>'0', -width=>'100%',-align=>'center', -cellpadding=>'3', -cellspacing=>'0'}),"\n";
|
||||
print "<td style='border:0px solid black;max-width:200px;' colspan='$sc'>\n";
|
||||
print $q->start_table({-class=>'list',-style=>'', -border=>'0', -width=>'100%',-align=>'right', -cellpadding=>'3', -cellspacing=>'0'}),"\n";
|
||||
print $q->Tr("\n");
|
||||
print $q->td(" ");
|
||||
|
||||
#Summe Betreiber Rechnung
|
||||
#Sum operator invoice
|
||||
if($ctt->{template_id} != 208){#not equal Abrechnung
|
||||
print $q->Tr("\n"); $line_count2++;
|
||||
print $q->td({-class=>'tdint',-colspan=>2},"Nettobetrag");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_netto19 €");
|
||||
print $q->td({-class=>'tdint',-colspan=>1},"Nettobetrag");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_netto €");
|
||||
|
||||
if($sum_netto19 != 0){
|
||||
if($sum_netto != 0){
|
||||
print $q->Tr("\n");$line_count2++;
|
||||
print $q->td({-class=>'tdint',-colspan=>2,-nowrap=>"1"},"19% UmSt auf $sum_netto19 €");
|
||||
print $q->td({-class=>'tdint',-colspan=>1,-nowrap=>"1"},"19% UmSt auf $sum_netto €");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_umst19 €");
|
||||
}
|
||||
|
||||
print $q->Tr("\n");$line_count2++;
|
||||
print $q->td({-class=>'tdint',-colspan=>1,-style=>'color:silver;'},"(Einzüge brutto $sum_all)");
|
||||
print $q->td({-class=>'tdsum',-colspan=>1},"Entgeld TeilRad GmbH");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_paid €");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_brutto €");
|
||||
|
||||
#print $q->Tr("\n");$line_count2++;
|
||||
#print $q->td({-class=>'tdint',-colspan=>1,-style=>'color:silver;'},"(pay Einzüge brutto)");
|
||||
#print $q->td({-class=>'tdint',-nowrap=>"1",-style=>'color:silver;'},"$sum_all €");
|
||||
|
||||
}
|
||||
#Summe Betreiber Abrechnung (Gutschrift)
|
||||
else{
|
||||
print $q->Tr("\n");$line_count2++;
|
||||
print $q->td({-class=>'tdint',-colspan=>1,-style=>'color:silver;'},"(Einzüge brutto $sum_all)");
|
||||
#print $q->td({-class=>'tdint',-colspan=>1,-style=>'color:silver;'},"(Einzüge brutto $sum_all)");
|
||||
print $q->td({-class=>'tdsum',-colspan=>1},"Summe");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$sum_operatorcredit €");
|
||||
|
||||
print $q->Tr("\n");$line_count2++;
|
||||
print $q->td({-class=>'tdsum',-colspan=>1},"Entgeld TeilRad GmbH");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"- $sum_brutto €");
|
||||
|
||||
print $q->Tr("\n");$line_count2++;
|
||||
print $q->td({-class=>'tdsum',-colspan=>1},"Auszahlungsbetrag");
|
||||
print $q->td({-class=>'tdint',-nowrap=>"1"},"$total_operatorcredit €");
|
||||
}
|
||||
|
||||
print $q->end_table;
|
||||
|
@ -297,8 +313,10 @@ sub tpl(){
|
|||
if($users_dms_primary->{u_id} && $users_dms_primary->{int03} == 2){
|
||||
my @_paymentstate = ("");
|
||||
my $kind_of_payment = "";
|
||||
#we need it for both
|
||||
print $q->hidden(-name=>'sum_operatorcredit', -override=>'1',-value=>"$sum_operatorcredit");
|
||||
print $q->hidden(-name=>'sum_paid', -override=>'1',-value=>"$sum_paid");
|
||||
if($ctt->{template_id} != 208){#not equal Abrechnung
|
||||
print $q->hidden(-name=>'sum_paid', -override=>'1',-value=>"$sum_paid");
|
||||
push @_paymentstate, "Entgeld TeilRad GmbH";
|
||||
if($ctt->{state} && $ctt->{int01}){
|
||||
$kind_of_payment = "$ctt->{state}";
|
||||
|
@ -310,8 +328,7 @@ sub tpl(){
|
|||
}
|
||||
}
|
||||
else{
|
||||
print $q->hidden(-name=>'sum_operatorcredit', -override=>'1',-value=>"$sum_operatorcredit");
|
||||
push @_paymentstate, "Gutschrift";
|
||||
push @_paymentstate, "Betreiber Abrechnung";
|
||||
if($ctt->{state} && $ctt->{int02}){
|
||||
$kind_of_payment = "$ctt->{state}";
|
||||
$ctt->{int02} =~ s/\./,/;
|
||||
|
@ -355,6 +372,6 @@ sub tpl(){
|
|||
|
||||
$db->updater("contenttrans","c_id","$ctt->{content_id}","txt20","$accounting_start - $accounting_end","","","","","no_time") if(!$int05 && $accounting_start && $accounting_end);
|
||||
|
||||
return "$line_count2";
|
||||
return $line_count2;
|
||||
}
|
||||
1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue