diff --git a/copri4/main/src/Mod/APIfunc.pm b/copri4/main/src/Mod/APIfunc.pm index fea9358..4489320 100755 --- a/copri4/main/src/Mod/APIfunc.pm +++ b/copri4/main/src/Mod/APIfunc.pm @@ -993,6 +993,7 @@ sub booking_request(){ table => "contenttranspos", fetch => "one", ca_id => "$auth->{c_id}", + template_id => "224", barcode => "$auto_coupon", }; my $co_pos = { c_id => 0 }; diff --git a/copri4/main/src/Mod/APIjsonserver.pm b/copri4/main/src/Mod/APIjsonserver.pm index 23bacfa..97ad79c 100755 --- a/copri4/main/src/Mod/APIjsonserver.pm +++ b/copri4/main/src/Mod/APIjsonserver.pm @@ -614,10 +614,10 @@ elsif($q->param('request') eq "bikes_all"){ }else{ #if($bikes_allraw->{$bid}->{txt10} && $bikes_allraw->{$bid}->{txt10} =~ /maintenance/) if($bikes_allraw->{$bid}->{int10} && $bikes_allraw->{$bid}->{int10} == 4){ + $bikes_all->{$oprefix . $bid}->{service_state} = "3"; + $bikes_all->{$oprefix . $bid}->{state} = "maintenance"; $service_state_debug .= "$bid: 0\n"; #$bw->log("maintenance TO available service_state bike: $bid:",$bikes_all->{$oprefix . $bid}->{service_state},""); - #1 = "available" - $apif->bikestate_update($authraw,$bikes_allraw->{$bid}->{c_id},"1"); } } #workaround to get todo_info on defect diff --git a/copri4/main/src/Mod/Prelogic.pm b/copri4/main/src/Mod/Prelogic.pm index 85bc35a..01c43ed 100755 --- a/copri4/main/src/Mod/Prelogic.pm +++ b/copri4/main/src/Mod/Prelogic.pm @@ -613,18 +613,18 @@ sub preinit(){ $ctt = $db->get_content1("contenttrans",$ctt->{c_id}); } - if($ctadr->{ct_name} =~ /\w{2}-\d+/){ + if($state !~ /Zahlungseingang/ && !$ctt->{txt16}){ + if($ctadr->{ct_name} =~ /\w{2}-\d+/){ my $payoneret = $payone->preauthorizationSEPA_main(\%varenv,$ctadr,$ctt,$users_dms->{u_id}); sleep 2; - }elsif(length($ctadr->{ct_name}) >= 19){ + }elsif(length($ctadr->{ct_name}) >= 19){ my $payoneret = $payone->preauthorizationCC_main(\%varenv,$ctadr,$ctt,$users_dms->{u_id}); sleep 2; - } + } - $ctt = $db->get_content1("contenttrans",$ctt->{c_id}); - $ctt->{sequence} = $R::payone_sequence || 1; + $ctt = $db->get_content1("contenttrans",$ctt->{c_id}); + $ctt->{sequence} = $R::payone_sequence || 1; - if($state !~ /Zahlungseingang/){ #SEPA capture if($ctadr->{int03} == 1 && $ctt->{txt16} && $R::state =~ /SEPA/){#SEPA my $payoneret = $payone->captureSEPA_main(\%varenv,$ctadr,$ctt,$users_dms->{u_id}); @@ -640,8 +640,8 @@ sub preinit(){ #return "failure::$return_text"; } - #}else{ - #return "failure::Payone Geldeinzug nicht ausgeführt. Hat der Einzug bereits stattgefunden?"; + }else{ + return "failure::Payone Geldeinzug nicht ausgeführt weil TXID bereits vorhanden. Hatte der Einzug bereits stattgefunden?"; } }elsif($ctt->{txt00} eq "Storno" || $state eq "Zahlungsausfall"){ $update_ctt->{int14} = "null"; @@ -649,6 +649,10 @@ sub preinit(){ $u_rows += $dbt->update_record($dbh,$update_ctt,$ctt); #delete OPOS at all $db->updater($table,"barcode",$ctt->{barcode},"int14","null","","","","",""); + }elsif($state eq "fehlgeschlagener Einzug"){ + $update_ctt->{int14} = "null"; + $update_ctt->{pay_time} = "now()"; + $u_rows += $dbt->update_record($dbh,$update_ctt,$ctt); }elsif($ctt->{txt00} eq "Rechnung" && $R::sum_paid <= 0){ $update_ctt->{int14} = "null"; $update_ctt->{pay_time} = "now()"; diff --git a/copri4/main/src/Tpl/Address3.pm b/copri4/main/src/Tpl/Address3.pm index 172cb0a..2e184ee 100755 --- a/copri4/main/src/Tpl/Address3.pm +++ b/copri4/main/src/Tpl/Address3.pm @@ -61,6 +61,7 @@ sub tpl(){ my $pref = { table => "contenttrans", fetch => "one", + template_id => "IN::(209,218)", c_id => $users_dms->{c_id4trans}, }; $ctt = $dbt->fetch_record($dbh,$pref); @@ -144,9 +145,11 @@ EOF $buchen_users = $db->get_content1("contentadr",$ctt->{owner}); } + my $journalhead = ""; + $journalhead = "
Journal" if($ctt->{template_id} == 209); $set_main_id=$main_id if($ctt->{main_id} > "300000"); print $q->hidden(-name=>'set_main_id', -override=>'1', -value=>"$set_main_id"); - print $q->span({-style=>'margin:0em 0.5em 0 0.5em;padding:0.5em 3em;background-color:white;border:solid thin gray;position:absolute;left:3px;'}, "$ctt->{txt00}"); + print $q->span({-style=>'margin:0em 0.5em 0 0.5em;padding:0.5em 3em;background-color:white;border:solid thin gray;position:absolute;left:3px;'}, "$ctt->{txt00} $journalhead"); print "\n"; print $q->b({-style=>'padding:0 1em;'}, "\# $ctt->{ct_name}"), "\n"; @@ -166,7 +169,7 @@ EOF print "\n"; my $praefix = "$ctt->{txt00}-$varenv{praefix}"; - if(!looks_like_number($ctt->{int01}) || $ctt->{ct_name} =~ /-/){ + if(!$journalhead && (!looks_like_number($ctt->{int01}) || $ctt->{ct_name} =~ /-/)){ print $q->span({-style=>'margin:0 0.2em;position:absolute;right:3px;'}, $but->singlesubmit7("ct_trans","remove_chk4rel","$ib{remove_chk4rel}","")),"\n"; print $q->hidden(-name=>'c_id', -override=>'1', -value=>"$ctt->{content_id}"); print $q->hidden(-name=>'template_id', -override=>'1', -value=>"$ctt->{template_id}"); @@ -198,6 +201,7 @@ EOF table => "contenttrans", fetch => "all", keyfield => "c_id", + template_id => "IN::(209,218)", barcode => $ctt->{barcode}, }; my $ctt_rel = ""; @@ -209,7 +213,9 @@ EOF my $toppx = $top . "px"; my $rel_color = "#f7ae37"; $rel_color = "silver" if($ctt->{c_id} == $ctt_rel->{$id}->{c_id}); - print $q->div({-style=>"position:absolute;top:$toppx;right:10px;font-size:0.91em;background-color:$rel_color"}, $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"; + my $journal = ""; + $journal = "Journal " if($ctt_rel->{$id}->{template_id} == 209); + print $q->div({-style=>"position:absolute;top:$toppx;right:10px;font-size:0.91em;background-color:$rel_color"}, "$journal ", $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"; $top += 22; } } diff --git a/copri4/main/src/scripts/Ilockit_trackingcloud.pl b/copri4/main/src/scripts/Ilockit_trackingcloud.pl index 8d99330..1e3e480 100755 --- a/copri4/main/src/scripts/Ilockit_trackingcloud.pl +++ b/copri4/main/src/scripts/Ilockit_trackingcloud.pl @@ -150,7 +150,10 @@ sub get_tripsum { $ctpos->{end_time} =~ s/\..*$//; my $end_time = $ctpos->{end_time}; $end_time =~ s/\s/T/; - my $utc_end_time = utctime($end_time,"+300");#add 5 minutes, 300sec for latency + #add 5 minutes, 300sec for latency + #my $utc_end_time = utctime($end_time,"+300"); + #add 5 minutes + 2 hours end_time Ilockit workaround 2023-04-28 + my $utc_end_time = utctime($end_time,"+7500"); $utc_end_time .= "Z"; my $rest = "deviceId=$ctpos->{int13}\&from=$utc_start_time\&to=$utc_end_time"; diff --git a/copri4/shareedms-operator/src/Lib/Mlogic.pm b/copri4/shareedms-operator/src/Lib/Mlogic.pm index ae580ca..e09a3ca 100755 --- a/copri4/shareedms-operator/src/Lib/Mlogic.pm +++ b/copri4/shareedms-operator/src/Lib/Mlogic.pm @@ -58,6 +58,8 @@ sub tpl(){ my $parent_id = $node_meta->{parent_id}; my $main_id = $node_meta->{main_id}; + my $coprihome = "c o p r i "; + $coprihome .= " home" if($dbt->{primary}->{$varenv->{dbname}}->{title}); my $title = ""; $title .= $dbt->{primary}->{$varenv->{dbname}}->{title} if($dbt->{primary}->{$varenv->{dbname}}->{title}); $title .= $dbt->{operator}->{$varenv->{dbname}}->{title} if($dbt->{operator}->{$varenv->{dbname}}->{title}); @@ -155,7 +157,7 @@ sub tpl(){ print "\n"; - print $q->div({-id=>'Headerlogo'},$q->a({-class=>'navbar-brand',-style=>"color:black;",-href=>"$varenv->{wwwhost}"}, $q->img({ -style=>"height:25px",-src=>"$varenv->{head_logo}"}), "c o p r i" ,$q->div({-style=>'font-size:0.71em;'}, "$title"))),"\n"; + print $q->div({-id=>'Headerlogo'},$q->a({-class=>'navbar-brand',-style=>"color:black;",-href=>"$varenv->{wwwhost}"}, $q->img({ -style=>"height:25px",-src=>"$varenv->{head_logo}"}), "$coprihome" ,$q->div({-style=>'font-size:0.71em;'}, "$title"))),"\n"; my $node = $db->collect_noderel($dbt->{shareedms_conf}->{parent_id},$lang,$users_dms->{u_id}); print "