{main_id};
- my $set_main_id = $dbt->{shareedms_conf}->{invoice};
-
-
print "\n\n";
if(!$ctt->{c_id}){
$lb->failure3("Das Formular wurde gelöscht bzw. ist nicht vorhanden");
@@ -143,12 +148,12 @@ EOF
if($channel_map->{$ctt->{owner}}){
$buchen_users = { txt01 => "$channel_map->{$ctt->{owner}}" };
}else{
- $buchen_users = $db->get_content1("contentadr",$ctt->{owner});
+ $pref_adr->{c_id} = $ctt->{owner};
+ $buchen_users = $dbt->fetch_record($dbh,$pref_adr) if($pref_adr->{c_id});
}
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.2em 1em;background-color:white;border:solid thin gray;position:absolute;left:3px;'}, "$ctt->{txt00} $varenv->{praefix}-$ctt->{ct_name} $journalhead");
@@ -176,7 +181,7 @@ EOF
print $q->hidden(-name=>'main_id', -override=>'1', -value=>"$ctt->{main_id}");
print $q->hidden(-name=>'rel_id', -override=>'1', -value=>"$ctt->{rel_id}");
}elsif(looks_like_number($ctt->{int01}) && ! -f "$varenv->{basedir}/pdfinvoice/$praefix-$ctt->{ct_name}.pdf"){
- print $q->span({-style=>'margin:0 0.2em;position:absolute;right:3px;'}, $but->singlesubmit3("ct_trans","print_pdf","","","")),"\n";
+ print $q->span({-style=>'margin:0 0.2em;position:absolute;right:3px;'}, $but->singlesubmit1("print_pdfview","Print PDF","")),"\n";
}
print $q->span({-style=>'margin:0 0.2em;padding:0.3em;font-size:0.81em;position:absolute;right:100px;'},$q->a({-class=>"ebutton3",-target=>'_blank', -href=>"$dbt->{shareedms_conf}->{copri_wiki}"}, "copri wiki"), "$buchen_users->{txt01} / $invoice_time "),"\n";
print "
\n";
@@ -211,12 +216,12 @@ EOF
my $top = 30;
foreach my $id (sort { $ctt_rel->{$b}->{c_id} <=> $ctt_rel->{$a}->{c_id} } keys (%$ctt_rel)){
my $toppx = $top . "px";
- my $rel_color = "#f7ae37";
- $rel_color = "silver" if($ctt->{c_id} == $ctt_rel->{$id}->{c_id});
+ my $rel_color = "silver";
+ $rel_color = "#f7ae37" if($ctt->{c_id} == $ctt_rel->{$id}->{c_id});
my $journal = "";
$journal = "Journal " if($ctt_rel->{$id}->{template_id} == 209);
my $rel_opos = "";
- $rel_opos = "•" if($ctt_rel->{$id}->{int14});
+ $rel_opos = "" if($ctt_rel->{$id}->{int14});
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"},"[ $rel_opos $ctt_rel->{$id}->{txt00} $varenv->{praefix}-$ctt_rel->{$id}->{ct_name} ]")),"\n";
$top += 22;
}
@@ -226,26 +231,25 @@ EOF
- #Form for AdressData
+ #Start form addressdata
print $q->start_form(-name=>'addressform'),"\n";
#Big table
print $q->start_table({-border=>'0', -width=>'100%',-align=>'left', -cellpadding=>'0', -cellspacing=>'0'}),"\n";
-
print "\n";
print $q->start_table({-class=>'list', -height=>'10em',-border=>'0', -width=>'100%',-align=>'left', -cellpadding=>'3', -cellspacing=>'0'}),"\n";
- ###Content #Edit Address --> template=Adressenliste
$ctt->{txt01} = $q->unescapeHTML("$ctt->{txt01}");
my $int05 = "";
$int05 = "(manuell)" if($ctt->{int05});
- if($users_dms->{u_id} && ($R::trans2edit eq "client" || $R::ct_trans eq "add_transadr")){
- #my @_anrede = ("","Frau","Herr","Firma");
+ if($users_dms->{u_id} && $R::trans2edit eq "client"){
print $q->hidden(-name=>'c_id4trans', -override=>'1', -value=>"$ctt->{c_id}"),"\n";
print $q->hidden(-name=>'tpl_id4trans', -override=>'1', -value=>"$ctt->{template_id}");
- print $q->hidden(-name=>'int10', -override=>'1', -value=>"$c_idadr"),"\n";
- print $q->hidden(-name=>'c_idadr', -override=>'1', -value=>"$c_idadr"),"\n";
print $q->hidden(-name=>'rel_id', -override=>'1', -value=>"$ctt->{rel_id}"),"\n";
+ print $q->hidden(-name=>'int10', -override=>'1', -value=>"$c_idadr"),"\n";
+ print $q->hidden(-name=>'ca_id', -override=>'1', -value=>"$c_idadr"),"\n";
+ print $q->hidden(-name=>'txt10', -override=>'1', -value=>"$ctt->{txt10}"),"\n";
+ print $q->hidden(-name=>'txt11', -override=>'1', -value=>"$ctt->{txt11}"),"\n";
print $q->Tr(),"\n";
print " | ";
@@ -291,10 +295,10 @@ EOF
}
#print $q->td({-class=>'tdval4'},"$ctt->{txt02}"),"\n";
- if($c_idadr && $rel_adr->{rel_id}){
+ if($c_idadr && $ctadr->{rel_id}){
my $vde = "";
$vde = " Vde $ctadr->{int12}" if($ctadr->{int12});
- 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";
+ 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=$ctadr->{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++;
@@ -376,32 +380,29 @@ EOF
}
print $q->end_table;
print " |
\n";
-
- ###end
print $q->end_form,"\n";
-
+ #end form addressdata
###Content #Edit Parts
print "\n";
#operator invoices else position accounting
if($ctt->{template_id} == 208 || $ctt->{int10} == 2){
- $line_count2 = $trin->tpl($varenv,$node_meta,$users_dms,$set_main_id,$ctt,$return);
+ $line_count2 = $trin->tpl($varenv,$node_meta,$users_dms,$ctf,$ctadr,$ctt);
}else{
- $line_count2 = $transp->tpl($varenv,$node_meta,$users_dms,$set_main_id,$ctt,$return);
+ $line_count2 = $transp->tpl($varenv,$node_meta,$users_dms,$ctf,$ctadr,$ctt);
}
print " |
\n";
###end Edit Parts
#Text & Vorbelegungen
- my $tplf = $db->get_tpl("201");#Firma tpl
+ my $tplf = $dbt->get_tpl($dbh,201);#tpl Kunden-Faktura
my @tplf_order = split /,/,$tplf->{tpl_order};
print $q->start_form(),"\n";
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
#Internas und Bearbeitungstatus
@@ -476,9 +477,6 @@ EOF
print $q->td({-class=>'tdval5',-style=>'width:90%;',-colspan=>2}, $but->singlesubmit7("ct_trans","save_text","$ib{save_text}","","","autofocus")),"\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";
diff --git a/copri4/main/src/Tpl/BaseEdit.pm b/copri4/main/src/Tpl/BaseEdit.pm
index 4936058..cb7fd33 100755
--- a/copri4/main/src/Tpl/BaseEdit.pm
+++ b/copri4/main/src/Tpl/BaseEdit.pm
@@ -308,14 +308,15 @@ sub tpl(){
fetch => "all",
keyfield => "c_id",
template_id => "IN::(209,218)",
- #ca_id => "$ctrel->{c_id}",#future change
int10 => "$ctrel->{c_id}",
};
my $cttrans = $dbt->fetch_record($dbh,$pref);
foreach my $id (sort { $cttrans->{$b}->{c_id} <=> $cttrans->{$a}->{c_id} } keys (%$cttrans)){
my $toppx = $top . "px";
- print $q->div({-style=>"position:absolute;top:$toppx;right:20px;"}, " TXID $cttrans->{$id}->{txt16} ",$q->span({-style=>"background-color:#f7ae37"},$q->a({-class=>"linknav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Faktura/$cttrans->{$id}->{node_name}?ct_trans=open\&c_id4trans=$cttrans->{$id}->{c_id}\&tpl_id4trans=$cttrans->{$id}->{template_id}\&owner=$users_dms->{u_id}",-title=>"Faktura Terminal öffnen"},"[ $cttrans->{$id}->{node_name} #$cttrans->{$id}->{ct_name} ]"))),"\n";
+ my $rel_opos = "";
+ $rel_opos = "" if($cttrans->{$id}->{int14});
+ print $q->div({-style=>"position:absolute;top:$toppx;right:20px;"}, " TXID $cttrans->{$id}->{txt16} ",$q->span({-style=>"background-color:#f7ae37"},$q->a({-class=>"linknav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Faktura/$cttrans->{$id}->{node_name}?ct_trans=open\&c_id4trans=$cttrans->{$id}->{c_id}\&tpl_id4trans=$cttrans->{$id}->{template_id}\&owner=$users_dms->{u_id}",-title=>"Faktura Terminal öffnen"},"[ $rel_opos $cttrans->{$id}->{node_name} #$cttrans->{$id}->{ct_name} ]"))),"\n";
$top += 22;
}
}elsif($node_meta->{tpl_id} == 205){
@@ -418,6 +419,12 @@ EOF
#print $q->td({-class=>'content1_cms'}, $q->textfield(-class=>'etxt',-name=>"int09",-default=>"$cttpos->{int09}",-size=>"5",-maxlength=>5), "Text", $q->textfield(-class=>'etxt',-name=>"txt04",-default=>"$cttpos->{txt04}",-size=>"30",-maxlength=>50)),"\n";
print $q->td({-class=>'content1_cms'}, "$cttpos->{int09} ($cttpos->{txt04})"),"\n";
}
+ #pos start station
+ elsif($key eq "int06" && $node_meta->{tpl_id} == 221){
+ print $q->Tr();
+ print $q->td({-class=>'left_italic_cms',-colspan=>'1'},"$des");
+ print $q->td({-class=>'content1_cms',-colspan=>'1'},"$prefix $cttpos->{int06}");
+ }
#pos end station
elsif($key eq "int04" && "$size" eq "select" && $node_meta->{tpl_id} == 221){
my @_valxx = ("null:");
@@ -548,7 +555,7 @@ EOF
#only if invoice isn't booked
if($key eq "txt23" && $cttpos->{ca_id} && $cttpos->{ct_id} && !$cttpos->{state}){
print $q->Tr(),"\n";
- print $q->td({-class=>'left_italic_cms'}, $q->a({-class=>"linknav4",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Waren/Gebühren?ca_id=$cttpos->{ca_id}\&ct_id=$cttpos->{ct_id}\&owner=$users_dms->{u_id}",-title=>""},"Gebühr hinzufügen")),"\n";
+ print $q->td({-class=>'left_italic_cms'}, $q->a({-class=>"linknav4",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Waren/Gebühren?c_id4trans=$cttpos->{ct_id}\&owner=$users_dms->{u_id}",-title=>""},"Gebühr hinzufügen")),"\n";
print $q->td({-class=>'content1_cms'}," "),"\n";
}
diff --git a/copri4/main/src/Tpl/Calorin.pm b/copri4/main/src/Tpl/Calorin.pm
index 74f86c1..ba37e2a 100755
--- a/copri4/main/src/Tpl/Calorin.pm
+++ b/copri4/main/src/Tpl/Calorin.pm
@@ -43,7 +43,7 @@ sub tpl(){
my $lang = "de";
my @tpl_order = ('c_id=ID=5=Datensatz ID (nur intern)','date_time=Mietzeit','txt08=Name=15','int06=Start Station=5','int04=End Station=5','barcode=Bike Nr.=5','int12=Group=select','int10=Rental State=select','int20=Lock State=select','owner=User=select','txt23=Comment=15');
- push (@tpl_order, "txt24=debug,log,agent,HW") if($users_dms->{int03} > 1);
+ push (@tpl_order, "txt24=debug,log,device,HW") if($users_dms->{int03} >= 1);
my %varenv = $cf->envonline();
my %ib = $but->ibuttons();
@@ -183,6 +183,7 @@ sub tpl(){
}
my $c_id = $R::cttpos_id || $R::c_id || "";
+ $c_id = "" if($R::insert_contenttranspos);
my $cttpos = {};
$R::ct_ct_name =~ s/\#//;
my $search = {
@@ -193,6 +194,8 @@ sub tpl(){
if($R::ct_id && looks_like_number($R::ct_id)){
$search->{ct_id} = $R::ct_id;
+ }elsif($R::c_id4trans && looks_like_number($R::c_id4trans)){
+ $search->{ct_id} = $R::c_id4trans;
}elsif($c_id && looks_like_number($c_id)){
$search->{cttpos_id} = $c_id;
}else{
@@ -218,7 +221,7 @@ sub tpl(){
if(!$start_chck && !$end_chck){
if($node_meta->{ct_table} eq "contenttranspos"){
- $cttpos = $dbt->collect_transpos($dbh,$search);
+ $cttpos = $dbt->collect_transpos($dbh,$search,0);
}elsif($node_meta->{ct_table} eq "contenttheftpos"){
#7=get_event alarm
#8=get_position after validate
@@ -344,7 +347,7 @@ sub tpl(){
my $id = $cttpos->{$pid}->{ct_id};
if($ct4rel->{$id}->{c_id} == $cttpos->{$pid}->{ct_id}){
$ct_name = $ct4rel->{$id}->{ct_name};
- $opos = "•" if($ct4rel->{$id}->{int14});
+ $opos = "" if($ct4rel->{$id}->{int14});
$ct_txt00 = $ct4rel->{$id}->{txt00};
$ct_txt01 = $ct4rel->{$id}->{txt01};
$ct_phone = $ct4rel->{$id}->{txt07};
@@ -415,21 +418,17 @@ sub tpl(){
$pos_details .= $did . " = " . $pos_hash->{$did} . "" if($pos_hash->{$did});
}
my $pos_id = "ID $cttpos->{$pid}->{c_id}";
- my $user_device = "";
+ my $user_agent = "";
my $charge = "";
$charge .= " → lock-charge $cttpos->{$pid}->{int14} %" if(looks_like_number($cttpos->{$pid}->{int14}));
$charge .= " → bike-charge $cttpos->{$pid}->{int19} %" if(looks_like_number($cttpos->{$pid}->{int19}) && $record_part->{$cttpos->{$pid}->{cc_id}}->{energy_id});
if($users_dms_primary->{u_id} && $dbt->{copri_conf}->{betau_id}->{$users_dms_primary->{u_id}}){
$pos_id = $q->div({-class=>"popup",-onclick=>"toggle_box('$pid')"},"$cttpos->{$pid}->{c_id}", $q->span({-class=>"popuptext",-id=>"$pid"},"$pos_details"));
- $user_device = "";
- $user_device .= " → endAck" if($cttpos->{$pid}->{int27});
+ $user_agent = "";
+ $user_agent .= " → endAck" if($cttpos->{$pid}->{int27});
my $txt26 = $cttpos->{$pid}->{txt26};
$txt26 = substr($cttpos->{$pid}->{txt26},0,25) if(length($cttpos->{$pid}->{txt26}) > 20);
- $user_device .= " → $txt26" if($txt26);
- my $txt21 = $cttpos->{$pid}->{txt21};
- $txt21 = substr($cttpos->{$pid}->{txt21},0,50) . " ..." if(length($cttpos->{$pid}->{txt21}) > 50);
- #$user_device .= " → $txt21" if($txt21);
-
+ $user_agent .= " → $txt26" if($txt26);
}
my $bikenr = $cttpos->{$pid}->{barcode} || $cttpos->{$pid}->{ct_name};
@@ -476,7 +475,7 @@ sub tpl(){
my $debug_log_view = "";
if($search->{txt24}){
- my $debug_log = "appapi-log: $cttpos->{$pid}->{txt24} | sigapi-log: $cttpos->{$pid}->{txt25} | user-agent: $cttpos->{$pid}->{txt26} | app-debug: $cttpos->{$pid}->{txt27} | lock-HW: $cttpos->{$pid}->{txt28} | response-log: $cttpos->{$pid}->{txt29}";
+ my $debug_log = "appapi-log: $cttpos->{$pid}->{txt24} | sigapi-log: $cttpos->{$pid}->{txt25} | user-agent: $cttpos->{$pid}->{txt26} | user-device: $cttpos->{$pid}->{txt21} | app-debug: $cttpos->{$pid}->{txt27} | lock-HW: $cttpos->{$pid}->{txt28} | response-log: $cttpos->{$pid}->{txt29}";
my $index = index(lc($debug_log), lc($search->{txt24}));
$index -= 20;
$debug_log = "... " . substr($debug_log,$index,100) . " ...";
@@ -500,7 +499,7 @@ sub tpl(){
if($users_dms_primary->{u_id} && $users_dms->{u_id} && $users_dms->{int03} >= 1){
print $q->div({-style=>'float:left;margin:0.4em 0 0 1em;'}, "→ Faktura", $q->a({-class=>"linknav3",-style=>"$trans_style",-href=>"/DMS/Faktura?ct_trans=open\&c_id4trans=$c_id4trans\&tpl_id4trans=$tpl_id4trans\&owner=$users_dms->{owner}",-title=>"Faktura Terminal öffnen"},"$opos \#$ct_name")),"\n" if($c_id4trans && $tpl_id4trans);
- print $q->div({-style=>'float:left;margin-left:1em;'}, "$user_device"),"\n";
+ print $q->div({-style=>'float:left;margin-left:1em;'}, "$user_agent"),"\n";
}
}elsif($node_meta->{ct_table} eq "contenttheftpos"){
diff --git a/copri4/main/src/Tpl/Liste3.pm b/copri4/main/src/Tpl/Liste3.pm
index b797fbf..13f9931 100755
--- a/copri4/main/src/Tpl/Liste3.pm
+++ b/copri4/main/src/Tpl/Liste3.pm
@@ -479,7 +479,7 @@ EOF
}
}
$ct4rel = $dbt->search_content($dbh,$searchref,$node_meta,$users_dms,"$main_ids","$tplids","$ct_ids",$v_journal,$ck4ex);
- $feedb = $pl->export_csv($node_meta,$users_dms,$ct4rel,$coo) if($ck4ex);
+ $feedb = $pl->export_csv($node_meta,$users_dms,$ct4rel,$bike_nodes,$coo) if($ck4ex);
if($node_meta->{node_name} eq "Faktura" || $tplids =~ /218/){
my $v_journalparts = "";
@@ -762,17 +762,27 @@ EOF
$payment_time = $ct4rel->{$id}->{payment_time};
$payment_time = $lb->time4de($payment_time,"1");
}
+
+ #summarize
$sum_saldo += $ct4rel->{$id}->{int16} if($ct4rel->{$id}->{state});
- $sum_opos += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{int14} >= 1 && ($ct4rel->{$id}->{state} !~ /ausfall|fehlgeschlagen/i));
- $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/);
- $sum_CCpayone += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Kreditkarte.*payone/);
- $sum_ausfall += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Zahlungsausfall/);
+
+ if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Zahlungsausfall/){
+ $sum_ausfall += $ct4rel->{$id}->{int01};
+ }elsif($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /fehlgeschlagen/i){
+ $sum_einzugfail += $ct4rel->{$id}->{int01};
+ }elsif($ct4rel->{$id}->{state} && $ct4rel->{$id}->{int14} >= 1){
+ $sum_opos += $ct4rel->{$id}->{int01};
+ }else{
+ $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/);
+ $sum_CCpayone += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Kreditkarte.*payone/);
+ }
$sum_gutschrift += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Gutschrift/);
- $sum_einzugfail += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /fehlgeschlagen/i);
$sum_entgelt += $ct4rel->{$id}->{int01} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Entgelt/);
$sum_abr -= $ct4rel->{$id}->{int02} if($ct4rel->{$id}->{state} && $ct4rel->{$id}->{state} =~ /Abrechnung/);
+ #
+
$c_id4csv .= "$ct4rel->{$id}->{c_id},";
$ct4rel->{$id}->{ct_name} = $q->unescapeHTML($ct4rel->{$id}->{ct_name}) || "";
$ct4rel->{$id}->{c_id} = $q->unescapeHTML($ct4rel->{$id}->{c_id}) || "";
@@ -811,8 +821,8 @@ EOF
print "\n";
#fee2pos
- if($table eq "content" && ($ct4rel->{$id}->{template_id} =~ /229/) && $R::ca_id && $R::ct_id){
- print $q->a({-class=>"editnav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Mietjournal?insert_contenttranspos=1\&cc_id=$ct4rel->{$id}->{c_id}\&ca_id=$R::ca_id\&ct_id=$R::ct_id\&owner=$users_dms->{u_id}",-title=>"Gebühr hinzufügen"}, $q->span({-class=>"bi bi-clipboard2-plus", -style=>'font-size:1.5em;'}));
+ if($table eq "content" && ($ct4rel->{$id}->{template_id} =~ /229/) && $R::c_id4trans){
+ print $q->a({-class=>"editnav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Mietjournal?insert_contenttranspos=1\&c_id=$ct4rel->{$id}->{c_id}\&c_id4trans=$R::c_id4trans\&owner=$users_dms->{u_id}",-title=>"Gebühr hinzufügen"}, $q->span({-class=>"bi bi-clipboard2-plus", -style=>'font-size:1.5em;'}));
}
if($table eq "content" && ($ct4rel->{$id}->{template_id} =~ /205|225/)){
@@ -870,7 +880,7 @@ EOF
if($table eq "contentadr" && ($ct4rel->{$id}->{int12} || !$ct4rel->{$id}->{int04} || !$ct4rel->{$id}->{int13})){
print $q->td({-class=>'tdicon',-style=>"$set_style color:red;"},"•","\n") if($ecol <= "2");
}elsif($table eq "contenttrans" && ($ct4rel->{$id}->{int14} && $ct4rel->{$id}->{int14} >= 1)){
- print $q->td({-class=>'tdicon',-style=>"$set_style color:red;"},"•","\n") if($ecol <= "2");
+ print $q->td({-class=>'tdicon bi bi-record2', -style=>"$set_style;color:Maroon;"},""),"\n" if($ecol <= "2");
}elsif($table eq "content" && $ct4rel->{$id}->{template_id} == 227){
my $dir_thumb = "$varenv{data}/$node_meta->{main_id}-thumb/$ct4rel->{$id}->{c_id}";
my @pics = $lb->read_dirfiles($dir_thumb,"\.JPG|\.PNG","file","");
@@ -906,7 +916,7 @@ EOF
#$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"));
- $ct4rel->{$id}->{$key} =~ s/\./,/ if($key =~ /int/);
+ $ct4rel->{$id}->{$key} =~ s/\./,/ if($key =~ /int/ && $ct4rel->{$id}->{$key});
if($key eq "c_id"){
@@ -928,7 +938,7 @@ EOF
elsif($key eq "ct_name" && $ct4rel->{$id}->{$key}){
if($table =~ /contenttrans|contenttver/){
my $opos = "";
- $opos = "•" if($ct4rel->{$id}->{int14});
+ $opos = "" if($ct4rel->{$id}->{int14});
print $q->td({-class=>'tdint',-style=>"font-weight:normal;$set_style4nr", -nowrap=>1},$q->a({-class=>"linknav3",-href=>"?ct_trans=open\&mode=manager\&c_id4trans=$ct4rel->{$id}->{c_id}\&tpl_id4trans=$ct4rel->{$id}->{template_id}\&owner=$users_dms->{u_id}\&offset=$searchref->{offset}\&limit=$searchref->{limit}",-title=>"Terminal öffnen"},"$opos $ct4rel->{$id}->{$key}"));
}elsif($table =~ /content$|contentadr/){
print $q->td({-class=>"tdint",-style=>"font-weight:normal;$set_style4nr"},$q->a({-class=>"linknav3",-href=>"?node2edit=editpart\&mode=manager\&rel_id=$ct4rel->{$id}->{rel_id}\&offset=$searchref->{offset}\&limit=$searchref->{limit}",-title=>"Terminal öffnen"},"$ct4rel->{$id}->{$key}")),"\n";
@@ -952,7 +962,7 @@ EOF
foreach my $irid (sort { $ctt_rel->{$b}->{c_id} <=> $ctt_rel->{$a}->{c_id} } keys (%$ctt_rel)){
if($ct4rel->{$id}->{c_id} != $ctt_rel->{$irid}->{c_id}){
my $rel_opos = "";
- $rel_opos = "•" if($ctt_rel->{$irid}->{int14});
+ $rel_opos = "" if($ctt_rel->{$irid}->{int14});
print $q->a({-class=>"linknav3",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Faktura/$ctt_rel->{$irid}->{node_name}?ct_trans=open\&c_id4trans=$ctt_rel->{$irid}->{c_id}\&tpl_id4trans=$ctt_rel->{$irid}->{template_id}\&owner=$users_dms->{u_id}\&offset=$searchref->{offset}\&limit=$searchref->{limit}",-title=>"Terminal öffnen"},"$rel_opos $ctt_rel->{$irid}->{ct_name} ");
}
}
@@ -1005,7 +1015,7 @@ EOF
$order_state = "$ct4rel->{$id}->{txt22}" if($ct4rel->{$id}->{txt22});
$order_state = "$ct4rel->{$id}->{txt22}, " if($ct4rel->{$id}->{txt22} && $ct4rel->{$id}->{$key});
my $capture_state = "$ct4rel->{$id}->{$key}";
- $capture_state = "$ct4rel->{$id}->{$key}" if($ct4rel->{$id}->{$key} =~ /payone/ && $ct4rel->{$id}->{int14} >= 1);
+ $capture_state = "$ct4rel->{$id}->{$key}" if($ct4rel->{$id}->{int14} >= 1);
print $q->td({-class=>'tdint',-style=>"$txtstyle $set_style"},"$order_state $capture_state"),"\n";
}elsif($ct4rel->{$id}->{template_id} =~ /205|225/ && $key eq "int10"){#bike_state
my $colorize = "";
@@ -1059,10 +1069,6 @@ EOF
my $timeview = "";
$timeview = $ct4rel->{$id}->{$key} if($ct4rel->{$id}->{$key} && $ct4rel->{$id}->{$key} =~ /\d/);
print $q->td({-class=>'tdint',-style=>"$txtstyle $set_style"},"$timeview"),"\n";
- }elsif($key =~ /txt01/ && $v_journal){
- my $txt01 = "$ct4rel->{$id}->{$key}";
- $txt01 = "$txt01" if($ct4rel->{$id}->{state} eq "Kassenbestand");
- print $q->td({-class=>'tdtxt',-style=>"$txtstyle $set_style"},"$txt01"),"\n";
}elsif($key =~ /txt03/ && $ct4rel->{$id}->{template_id} eq "227"){
print $q->td({-class=>'tdtxt',-style=>"$txtstyle $set_style"},$q->a({-style=>"color:black;",-href=>"$varenv{metahost}/site/$ct4rel->{$id}->{$key}", -target=>'_blank',-title=>'anzeigen'},"$ct4rel->{$id}->{$key}")),"\n";
}elsif($key =~ /txt00/ && $v_journal){
@@ -1166,7 +1172,7 @@ EOF
}#journal offen ende
- if(($nr > 0) && ($v_journal || $R::v_abschluss) && !$R::rel_id){
+ if(($nr > 0) && ($v_journal || $R::close_trans) && !$R::rel_id){
my $m = $k - 4;
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
@@ -1225,7 +1231,7 @@ EOF
print $q->td({-class=>'tdint',-colspan=>"1",-nowrap=>"1"},"$sum_gutschrift €");
}
if($sum_einzugfail != 0){
- $sum_einzugfail *= -1;
+ #$sum_einzugfail *= -1;
$sum_einzugfail = sprintf('%.2f',$sum_einzugfail);
$sum_success += $sum_einzugfail;
print $q->Tr();
@@ -1266,11 +1272,11 @@ EOF
}
if($users_dms->{u_id}){
- if($v_journal =~ /bericht/ && $j_exist->{main_id}){
+ if($v_journal eq "Tagesbericht" && $j_exist->{main_id}){
print $q->Tr();
print $q->td({-style=>"background-color:silver;"},""),"\n";
- print $q->td({-style=>"background-color:silver;",-class=>'tdsum',-colspan=>"$m"},"Tagesabschluss"),"\n";
- print $q->td({-style=>"background-color:silver;",-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},$but->checkbox("1","close_trans","","Tagesbericht abschließen und in das Verkaufsjournal senden"),$but->singlesubmit("v_abschluss","Speichern")),"\n";
+ print $q->td({-style=>"background-color:silver;",-class=>'tdsum',-colspan=>"$m"},"Tagesbericht abschließen, Übertrag in das Verkaufsjournal"),"\n";
+ print $q->td({-style=>"background-color:silver;",-class=>'tdsum',-colspan=>"1",-nowrap=>"1"},$but->singlesubmit("close_trans","Speichern")),"\n";
}
}
@@ -1307,7 +1313,7 @@ EOF
if($table eq "contentadr"){
print $q->div({-style=>'padding:0 20px;font-style:italic;'}, $q->span({-style=>'padding:0.1em 0.8em;',-style=>'color:red;'},"•"), "Der Verleih ist nicht freigeschaltet"),"\n";
}elsif($table eq "contenttrans"){
- print $q->div({-style=>'padding:0 20px;font-style:italic;'}, $q->span({-style=>'padding:0.1em 0.8em;',-style=>'color:red;'},"•"), "payone error"),"\n";
+ print $q->div({-style=>'padding:0 20px;font-style:italic;'}, $q->span({ -class=>'bi bi-record2', -style=>'padding:0.1em 0.8em;color:Maroon;'},""), "OPOS - Offener Posten"),"\n";
}elsif($table eq "content" && $node_meta->{tpl_id} =~ /205|225/){
print $q->div({-style=>'padding:0 20px;font-style:italic;'}, $q->span({-class=>"bi bi-wrench"}), "Service-Wartung"),"\n";
}
diff --git a/copri4/main/src/Tpl/TransInvoices.pm b/copri4/main/src/Tpl/TransInvoices.pm
index d8844e4..af000a4 100755
--- a/copri4/main/src/Tpl/TransInvoices.pm
+++ b/copri4/main/src/Tpl/TransInvoices.pm
@@ -18,7 +18,6 @@ use Data::Dumper;
use Lib::Config;
use Mod::Buttons;
use Mod::Libenz;
-use Mod::Libenzdb;
use Mod::DBtank;
use Mod::APIfunc;
use Mod::Pricing;
@@ -36,14 +35,13 @@ sub tpl(){
my $varenv = shift;
my $node_meta = shift;
my $users_dms = shift;
- my $set_main_id = shift;
+ my $ctf = shift;
+ my $ctadr = shift;
my $ctt = shift;
- my $return = shift || "";
my $q = new CGI;
my $cf = new Config;
my $lb = new Libenz;
- my $db = new Libenzdb;
my $dbt = new DBtank;
my $apif = new APIfunc;
my $but = new Buttons;
@@ -63,14 +61,6 @@ sub tpl(){
my @tpl_order = ();
my $cttpos = { c_id => 0 };
- my $ctf = { c_id => 0 };
- my $pref_cu = {
- table => "contentuser",
- fetch => "one",
- c_id => $dbt->{shareedms_conf}->{parent_id},
- };
- $ctf = $dbt->fetch_tablerecord($dbh,$pref_cu);
-
my $ctf_operator = { c_id => 0 };
my $pref_cuop = {
table => "contentuser",
@@ -103,7 +93,7 @@ sub tpl(){
@tpl_order = ("c_id=ID","int01=Netto Erlös","state=Zahlungsart","int94=Disagio","int95=Transaktion","int96=Zahlungsmeldung","int97=Kreditkarte Zuordnung","int02=Gutschrift");
}
}
- my $tplf = $dbt->get_tpl($dbh,201);#Kunden-Faktura, ex Firma
+ my $tplf = $dbt->get_tpl($dbh,201);#Kunden-Faktura Firma
my @tplf_order = split /,/,$tplf->{tpl_order};
print $q->start_table({-class=>'list', -border=>'0', -width=>'100%',-align=>'left', -cellpadding=>'3', -cellspacing=>'0'}),"\n";
@@ -301,11 +291,8 @@ sub tpl(){
print $q->hidden(-name=>'limit', -override=>'1', -value=>"$R::limit") if($R::limit);
print $q->hidden(-name=>'relids', -override=>'1', -value=>"$R::relids") if($R::relids);
- $set_main_id=$ctt->{main_id} if($ctt->{main_id} && $ctt->{main_id} > "300000");
- print $q->hidden(-name=>'set_main_id', -value=>"$set_main_id", -override=>'1');
-
- if($users_dms->{int03} == 2){
+ if($users_dms->{int03} == 2){
#only if user is also a primary DMS user with invoice rw
print $q->hidden(-name=>'printer_id', -value=>"PDF", -override=>'1');
my $dbh_primary = $dbt->dbconnect_extern($dbt->{primary}->{sharee_primary}->{database}->{dbname});
@@ -345,7 +332,7 @@ sub tpl(){
my $send_invoice_checkbox = 0;
#$send_invoice_checkbox = 0 if($ctt->{txt30});
print $q->div({-class=>'element6',-style=>'float:right;'}, $q->b("$ctt->{txt00}"),
- ": PDF drucken ",$but->checkbox("print_pdf","ct_trans","1","PDF drucken",""),
+ ": PDF drucken ",$but->checkbox("1","print_pdf","1","PDF drucken",""),
" – eMail senden ",$but->checkbox("1","send_invoice","$send_invoice_checkbox","eMail $ctt->{txt00}",""),
" – Zahlungsart ",
$but->selector("state","250px",$kind_of_payment,@_paymentstate),
@@ -366,7 +353,7 @@ sub tpl(){
print $q->hidden(-name=>'offset', -override=>'1', -value=>"$R::offset") if($R::offset);
print $q->hidden(-name=>'limit', -override=>'1', -value=>"$R::limit") if($R::limit);
print $q->hidden(-name=>'relids', -override=>'1', -value=>"$R::relids") if($R::relids);
- print $q->div({-style=>"padding:0.5em;font-size:0.81em;width:98%;text-align:right;"}, "eMail wurde nicht versandt! $ctt->{txt00} eMail ", $but->singlesubmit1("ct_trans","send_invoice_again","send_invoice_again")),"\n" if($users_dms->{u_id} == $dbt->{copri_conf}->{superu_id});
+ #print $q->div({-style=>"padding:0.5em;font-size:0.81em;width:98%;text-align:right;"}, "eMail wurde nicht versandt! $ctt->{txt00} eMail ", $but->singlesubmit1("ct_trans","send_invoice_again","send_invoice_again")),"\n" if($users_dms->{u_id} == $dbt->{copri_conf}->{superu_id});
print $q->end_form;
}
@@ -374,7 +361,14 @@ sub tpl(){
print $q->div({-style=>'padding:0.5em;font-size:0.81em;width:98%;text-align:right;'}, "Download: ", $q->a({-href=>"$varenv->{wwwhost}/FileOut?file=$praefix-$ctt->{ct_name}.pdf&sessionid=$coo", -target=>"_blank" , -type=>'application/octet-stream', -style=>'text-decoration:underline;'}), "$praefix-$ctt->{ct_name}.pdf"),"\n";
}
- $db->updater("contenttrans","c_id","$ctt->{content_id}","txt20","$accounting_start - $accounting_end","","","","","no_time") if(!$int05 && $accounting_start && $accounting_end);
+ if(!$int05 && $accounting_start && $accounting_end){
+ my $update_ctt = {
+ table => "contenttrans",
+ mtime => "no_time",
+ c_id => $ctt->{content_id},
+ };
+ $dbt->update_one($dbh,$update_ctt,"txt20='$accounting_start - $accounting_end'");
+ }
return $line_count2;
}
diff --git a/copri4/main/src/Tpl/TransPositionen.pm b/copri4/main/src/Tpl/TransPositionen.pm
index bc7b4d7..52a6e8b 100755
--- a/copri4/main/src/Tpl/TransPositionen.pm
+++ b/copri4/main/src/Tpl/TransPositionen.pm
@@ -18,7 +18,6 @@ use Data::Dumper;
use Lib::Config;
use Mod::Buttons;
use Mod::Libenz;
-use Mod::Libenzdb;
use Mod::DBtank;
use Mod::APIfunc;
use Mod::Pricing;
@@ -36,14 +35,13 @@ sub tpl(){
my $varenv = shift;
my $node_meta = shift;
my $users_dms = shift;
- my $set_main_id = shift;
+ my $ctf = shift;
+ my $ctadr = shift;
my $ctt = shift;
- my $return = shift || "";
my $q = new CGI;
my $cf = new Config;
my $lb = new Libenz;
- my $db = new Libenzdb;
my $dbt = new DBtank;
my $apif = new APIfunc;
my $but = new Buttons;
@@ -67,23 +65,36 @@ sub tpl(){
my $c_idpos = $R::c_idpos || $R::pos_id || 0;
my $cttpos = { c_id => 0 };
- my $ctf = { c_id => 0 };
- my $pref_cu = {
- table => "contentuser",
- fetch => "one",
- c_id => $dbt->{shareedms_conf}->{parent_id},
- };
- $ctf = $dbt->fetch_tablerecord($dbh,$pref_cu);
-
- my $ctadr = $db->get_content1("contentadr",$ctt->{int10});
my $vibuchen_mtime = "(nicht verfügbar, siehe Internas und log)";
my @tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=timerange","int03=Menge (Miet - Gratis Zeit)","int02=Preis","int07=Rabatt","int04=Gesamt");
- my $tplf = $db->get_tpl("201");#Kunden-Faktura, ex Firma
+ my $tplf = $dbt->get_tpl($dbh,201);#Kunden-Faktura Firma
my @tplf_order = split /,/,$tplf->{tpl_order};
($cttpos,$rows) = $dbt->collect_contentpos($dbh,"contenttrans",$ctt->{content_id});
+ my $station_all = {};
+ my $pref_st = {
+ table => "content",
+ fetch => "all",
+ keyfield => "c_id",
+ template_id => 225,
+ };
+ $station_all = $dbt->fetch_record($dbh,$pref_st);
+
+ my @_stationvalxx = ("null:");
+ foreach my $rid (sort { $station_all->{$a}->{int04} <=> $station_all->{$b}->{int04} } keys (%$station_all)){
+ push (@_stationvalxx, "$station_all->{$rid}->{int04}:$station_all->{$rid}->{int04} - $station_all->{$rid}->{txt01}");
+ }
+ my @_rentalstate_valxx = ();
+ foreach my $s_key (sort keys (%{ $dbt->{copri_conf}->{bike_state} })) {
+ push @_rentalstate_valxx, "$s_key:$dbt->{copri_conf}->{bike_state}->{$s_key}" if($s_key =~ /1|2|3/);
+ }
+ my @_lock_valxx = ();
+ foreach my $s_key (sort keys (%{ $dbt->{copri_conf}->{lock_state} })) {
+ push @_lock_valxx, "$s_key:$dbt->{copri_conf}->{lock_state}->{$s_key}";
+ }
+
foreach my $id (keys(%$cttpos)){
if(ref($cttpos->{$id}) eq "HASH"){
if($cttpos->{$id}->{int26}){
@@ -131,7 +142,6 @@ EOF
#Parts Header
print $q->start_form(-name=>'spartform');
- $c_idpos = $1 if($return && $return =~ /pos_id=(\d+)/);
print $q->hidden(-name=>'trans2edit', -value=>"transpos", -override=>'1'),"\n";
print $q->hidden(-name=>'offset', -override=>'1', -value=>"$R::offset"),"\n" if($R::offset);
print $q->hidden(-name=>'limit', -override=>'1', -value=>"$R::limit"),"\n" if($R::limit);
@@ -200,7 +210,6 @@ EOF
my $set_style="";
my $occupied_style = "";
my $time_style = "";
- #$occupied_style = "color:#ff1493" if($cttpos->{$id}->{txt10} =~ /occupied|requested|canceled/);
$occupied_style = "color:#ff1493" if($cttpos->{$id}->{int10} == 2 ||$cttpos->{$id}->{int10} == 3 || $cttpos->{$id}->{int10} == 6);
#max. Rechnungspositionen
@@ -302,15 +311,10 @@ EOF
my ($e_yy,$e_mo,$e_dd,$e_hh,$e_mi) = $lb->split_date($pricing->{end_time});
print " | \n";
- print $q->textarea(-class=>'autos',-style=>"border: 1px solid #ededed;",-name=>"$key",-default=>"$cttpos->{$id}->{$key}", -override=>'1',-rows=>"3",-cols=>60, -autofocus=>1)," \n";
+ print $q->textarea(-class=>'autos',-style=>"border: 1px solid #ededed;",-name=>"$key",-default=>"$cttpos->{$id}->{$key}", -override=>'1',-rows=>"2",-cols=>60, -autofocus=>1)," \n";
#if Traiff Nr.
if($cttpos->{$id}->{int09}){
- print $q->span({-style=>"$txtstyle $set_style"}, "Tarif: $cttpos->{$id}->{int09} $cttpos->{$id}->{txt04} "), "\n";
-
- print $q->span({-style=>"$txtstyle $set_style"},
- "Endstation: ", $q->textfield(-class=>'etxt',-name=>"int04",-default=>"$cttpos->{$id}->{int04}",-size=>"5",-maxlength=>40),
- "GPS: ", $q->textfield(-class=>'etxt',-name=>"txt06",-default=>"$cttpos->{$id}->{txt06}",-size=>"30",-maxlength=>40))," \n";
print $q->span({-style=>"$txtstyle $set_style"},"Mietzeit: ",
$q->textfield(-id=>'datepicker1',-class=>'etxt',-name=>"start_date",-default=>"$s_dd.$s_mo.$s_yy",-size=>"8",-maxlength=>10),
@@ -318,7 +322,16 @@ EOF
$q->textfield(-class=>'etxt',-name=>"s_mi",-default=>"$s_mi",-size=>"1",-maxlength=>2)," → ",
$q->textfield(-id=>'datepicker2',-class=>'etxt',-name=>"end_date",-default=>"$e_dd.$e_mo.$e_yy",-size=>"8",-maxlength=>10),
$q->textfield(-class=>'etxt',-name=>"e_hh",-default=>"$e_hh",-size=>"1",-maxlength=>2),":",
- $q->textfield(-class=>'etxt',-name=>"e_mi",-default=>"$e_mi",-size=>"1",-maxlength=>2)),"\n";
+ $q->textfield(-class=>'etxt',-name=>"e_mi",-default=>"$e_mi",-size=>"1",-maxlength=>2))," \n";
+
+ my $end_station = "null";
+ $end_station = $cttpos->{$id}->{int04} if(looks_like_number($cttpos->{$id}->{int04}));
+ print $q->span({-style=>"$txtstyle $set_style"},"Station Start: $cttpos->{$id}->{int06}, End: ",$but->selector_class("int04","eselect","width:250px;","$end_station",@_stationvalxx))," \n";
+ #print $q->span({-style=>"$txtstyle $set_style"},"GPS: $cttpos->{$id}->{txt06}")," \n";
+
+ print $q->span({-style=>"$txtstyle $set_style"},"Rental State:", $but->selector_class("int10","eselect","",$cttpos->{$id}->{int10},@_rentalstate_valxx));
+ print $q->span({-style=>"$txtstyle $set_style"},"Lock State:",$but->selector_class("int20","eselect","",$cttpos->{$id}->{int20},@_lock_valxx))," \n";
+ print $q->span({-style=>"$txtstyle $set_style"}, "Tarif: $cttpos->{$id}->{int09} $cttpos->{$id}->{txt04}"), " \n";
}
print " Bemerkung (Mietjournal) $cttpos->{$id}->{txt23}\n" if($cttpos->{$id}->{txt23});
@@ -424,25 +437,24 @@ EOF
}
print " \n";
}
- if($cttpos->{$id}->{txt01} || $cttpos->{$id}->{int09}){
- #$line_count2++;
- $cttpos->{$id}->{txt01} =~ s/fixed/\fixed\<\/span\>/;
- $cttpos->{$id}->{txt01} =~ s/defect/\defect\<\/span\>/;
- my $bike="";
- my $tariff = "";
- $bike = "$cttpos->{$id}->{$key}" if($cttpos->{$id}->{$key});
- $tariff = ", Tarif: $cttpos->{$id}->{int09} $cttpos->{$id}->{txt04}" if($cttpos->{$id}->{txt04});
- print $q->span("$bike $tariff "),"\n";
- }
- if($cttpos->{$id}->{int06} && $cttpos->{$id}->{int04}){
- print $q->span("Start/End Station: $cttpos->{$id}->{int06} / $cttpos->{$id}->{int04}, GPS: $cttpos->{$id}->{txt06}"),"\n";
- }
+ $cttpos->{$id}->{txt01} =~ s/fixed/\fixed\<\/span\>/;
+ $cttpos->{$id}->{txt01} =~ s/defect/\defect\<\/span\>/;
+ print $q->span("$cttpos->{$id}->{$key}")," \n";
if($pricing->{start_time} && $pricing->{end_time}){
my $start_time = $lb->time4de($pricing->{start_time},"1");
my $end_time = $lb->time4de($pricing->{end_time},"1");
- print " \n";
- print $q->span({-style=>"$time_style"}, "Mietzeit: $start_time → $end_time"),"\n";
+ print $q->span({-style=>"$time_style"}, "Mietzeit: $start_time → $end_time")," \n";
}
+
+ if($cttpos->{$id}->{int06} || $cttpos->{$id}->{int04}){
+ print $q->span("Start/End Station: $cttpos->{$id}->{int06} / $cttpos->{$id}->{int04}")," \n";
+ }
+ if($cttpos->{$id}->{int09}){
+ my $tariff = "";
+ $tariff = "Tarif: $cttpos->{$id}->{int09} $cttpos->{$id}->{txt04}" if($cttpos->{$id}->{txt04});
+ print $q->span("$tariff")," \n";
+ }
+
print " Bemerkung (Mietjournal) $cttpos->{$id}->{txt23}\n" if($cttpos->{$id}->{txt23});
print " | \n";
}elsif($key =~ /txt/){
@@ -534,9 +546,6 @@ EOF
print $q->hidden(-name=>'offset', -override=>'1', -value=>"$R::offset"),"\n" if($R::offset);
print $q->hidden(-name=>'limit', -override=>'1', -value=>"$R::limit"),"\n" if($R::limit);
- $set_main_id=$ctt->{main_id} if($ctt->{main_id} && $ctt->{main_id} > "300000");
- print $q->hidden(-name=>'set_main_id', -value=>"$set_main_id", -override=>'1'),"\n";
-
if($users_dms->{int03} == 2){
#only if user is also a primary DMS user with invoice rw
@@ -616,21 +625,9 @@ EOF
}
}
}
-
- #disabled 2022-11-23, needs more testing. Add +10.- on preauth
- if(1==2 && $users_dms->{u_id} == $dbt->{copri_conf}->{superu_id}){
- #further payone capture are only allowed if OPOS && sequence && TXID is set
- if($ctt->{int14} && $ctt->{int18} && $ctt->{txt16}){
- print $q->div({-class=>'element6',-style=>'clear:both;'},"Test. Weitere Payone Einzüge über die vorhandene TXID $ctt->{txt16} (vorautorisiert Summe beachten) durch manuelle inkrement der Sequencenr mit +1", $q->textfield(-class=>'etxt',-name=>"payone_sequence",-default=>"", -override=>'1',-size=>"1",-maxlength=>1)),"\n";
- }
- #Payone reset if OPOS and TXID
- if($ctt->{int14} && $ctt->{txt16}){
- print $q->div({-class=>'element6',-style=>'clear:both;'},"Test. Payone reset löscht den Vorgang mit der TXID $ctt->{txt16} und versucht einen erneuten Einzug", $but->checkbox("1","payone_reset","0","Payone reset","")),"\n";
- }
- }
-
}
print $q->end_form;
+ #end set_stateform
my $praefix = "$ctt->{txt00}-$varenv->{praefix}";
print $q->div({-style=>"clear:both;height:0.1px;"},""),"\n";
@@ -643,7 +640,7 @@ EOF
print $q->hidden(-name=>'tpl_id4trans', -override=>'1', -value=>"$ctt->{template_id}"),"\n";
print $q->hidden(-name=>'offset', -override=>'1', -value=>"$R::offset"),"\n" if($R::offset);
print $q->hidden(-name=>'limit', -override=>'1', -value=>"$R::limit"),"\n" if($R::limit);
- print $q->div({-style=>"padding:0.5em;font-size:0.81em;width:98%;text-align:right;"}, "eMail wurde nicht versandt! $ctt->{txt00} eMail ", $but->singlesubmit1("ct_trans","send_invoice_again","")),"\n" if($users_dms->{u_id} == $dbt->{copri_conf}->{superu_id});
+ #print $q->div({-style=>"padding:0.5em;font-size:0.81em;width:98%;text-align:right;"}, "eMail wurde nicht versandt! $ctt->{txt00} eMail ", $but->singlesubmit1("send_invoice_again","eMail nochmals senden","")),"\n" if($users_dms->{u_id} == $dbt->{copri_conf}->{superu_id});
print $q->end_form;
}
@@ -666,13 +663,18 @@ EOF
print $q->hidden(-name=>'limit', -override=>'1', -value=>"$R::limit"),"\n" if($R::limit);
print $q->hidden(-name=>'sum_paid', -override=>'1',-value=>"$sum_paid");
- print $q->div({-style=>"padding:0.5em;font-size:0.81em;width:98%;text-align:right;"}, "Copri-Ticket-mailing: ", $but->selector_class("cms_message_key","eselect","width:250px;","",@_valxx), "mit PDF", $but->checkbox("1","print_pdf","1","mit PDF",""), $but->singlesubmit1("ct_trans","send_invoice_cms","")),"\n";
+ print $q->div({-style=>"padding:0.5em;font-size:0.81em;width:98%;text-align:right;"}, "Copri-Ticket-mailing: ", $but->selector_class("cms_message_key","eselect","width:250px;","",@_valxx), "mit PDF", $but->checkbox("1","print_pdf","1","mit PDF",""), $but->singlesubmit1("send_invoice_cms","eMail senden","")),"\n";
print $q->end_form;
}
- $db->updater("contenttrans","c_id","$ctt->{content_id}","txt20","$accounting_start - $accounting_end","","","","","no_time") if(!$int05 && $accounting_start && $accounting_end);
- $db->updater("contenttrans","c_id","$ctt->{content_id}","int15","$sum_preauth","","","","","no_time") if($sum_preauth || $sum_preauth == 0);
-
+ if(!$int05 && $accounting_start && $accounting_end){
+ my $update_ctt = {
+ table => "contenttrans",
+ mtime => "no_time",
+ c_id => $ctt->{content_id},
+ };
+ $dbt->update_one($dbh,$update_ctt,"txt20='$accounting_start - $accounting_end'");
+ }
return "$line_count2";
}
1;
diff --git a/copri4/main/src/scripts/Ilockit_cloud.pl b/copri4/main/src/scripts/Ilockit_cloud.pl
index 3d7398d..4410487 100755
--- a/copri4/main/src/scripts/Ilockit_cloud.pl
+++ b/copri4/main/src/scripts/Ilockit_cloud.pl
@@ -125,8 +125,8 @@ sub utctime {
#'deviceTime' => '2021-10-14T08:19:35.000+0000',
#'serverTime' => '2021-10-14T07:19:37.000+0000',
- $utc_epoch -= 2*60*60;# -2 std (Sommerzeit)
- #$utc_epoch -= 1*60*60;# -1 std (Winterzeit)
+ #$utc_epoch -= 2*60*60;# -2 std (Sommerzeit)
+ $utc_epoch -= 1*60*60;# -1 std (Winterzeit)
$utc_epoch += $latency;
$time = gmtime($utc_epoch);#epoch
@@ -433,8 +433,8 @@ sub get_positions {
if($theftmove_count < 10){
system("$dbt->{copri_conf}->{basedir}/$op_name->{syshost}/src/scripts/mailTransportcms.pl '$op_name->{syshost}' 'send_alarm2hotline' '1' '$c_id' ''");
print FILE "$dbt->{copri_conf}->{basedir}/$op_name->{syshost}/src/scripts/mailTransportcms.pl '$op_name->{syshost}' 'send_alarm2hotline' '1' '$c_id' ''\n\n";
- #only if not requested or occupied
- if($op_name->{sms_alert} && $record_cc->{$id}->{int10} !~ /2|3/){
+ #only if locked
+ if($op_name->{sms_alert} && $record_cc->{$id}->{int20} == 1){
system("$dbt->{copri_conf}->{basedir}/$op_name->{syshost}/src/scripts/sms_message.pl '$op_name->{syshost}' 'send_alarm2hotline' '' '$c_id'");
}
}
diff --git a/copri4/main/src/scripts/Ilockit_trackingcloud.pl b/copri4/main/src/scripts/Ilockit_trackingcloud.pl
index 5ecfa3e..2f6ac23 100755
--- a/copri4/main/src/scripts/Ilockit_trackingcloud.pl
+++ b/copri4/main/src/scripts/Ilockit_trackingcloud.pl
@@ -87,8 +87,8 @@ sub utctime {
my $time = Time::Piece->strptime($date, "%Y-%m-%dT%H:%M:%S");
print FILE "localtime: " . $time->datetime . "\n";#localtime
my $utc_epoch = $time->epoch;
- $utc_epoch -= 2*60*60;# -2 std (Sommerzeit)
- #$utc_epoch -= 1*60*60;# -1 std (Winterzeit)
+ #$utc_epoch -= 2*60*60;# -2 std (Sommerzeit)
+ $utc_epoch -= 1*60*60;# -1 std (Winterzeit)
$utc_epoch += $latency;
$time = gmtime($utc_epoch);#epoch
print FILE "utctime: " . $time->datetime . "\n";#utc zulu date time
diff --git a/copri4/main/src/scripts/mailTransportcms.pl b/copri4/main/src/scripts/mailTransportcms.pl
index dea7cf0..fca69b2 100755
--- a/copri4/main/src/scripts/mailTransportcms.pl
+++ b/copri4/main/src/scripts/mailTransportcms.pl
@@ -391,7 +391,7 @@ sub send_occupied2hotline {
};
my $cttpos = { c_id => 0 };
- $cttpos = $dbt->collect_transpos($dbh,$search);
+ $cttpos = $dbt->collect_transpos($dbh,$search,1);
my $bike = "";
foreach my $pid (sort { $cttpos->{$b}->{end_time} cmp $cttpos->{$a}->{end_time} } keys(%$cttpos)){
diff --git a/copri4/main/src/scripts/sms_message.pl b/copri4/main/src/scripts/sms_message.pl
index 891b5f0..8908889 100755
--- a/copri4/main/src/scripts/sms_message.pl
+++ b/copri4/main/src/scripts/sms_message.pl
@@ -72,7 +72,7 @@ if($todo eq "24h_occupied"){
my $dt1 = DateTime->now(time_zone => "Europe/Berlin");
my $cttpos = { c_id => 0 };
- $cttpos = $dbt->collect_transpos($dbh,$search);
+ $cttpos = $dbt->collect_transpos($dbh,$search,1);
foreach my $pid (sort { $cttpos->{$b}->{end_time} cmp $cttpos->{$a}->{end_time} } keys(%$cttpos)){
if($cttpos->{$pid}->{int10} == 3){
diff --git a/copri4/shareedms-operator/src/Lib/Mlogic.pm b/copri4/shareedms-operator/src/Lib/Mlogic.pm
index 033ee21..d19110e 100755
--- a/copri4/shareedms-operator/src/Lib/Mlogic.pm
+++ b/copri4/shareedms-operator/src/Lib/Mlogic.pm
@@ -347,8 +347,8 @@ sub tplselect(){
require "Mod/Failure.pm";
&Failure::tpl($varenv,$users_dms->{u_id},$feedb_req);
}else{
- if(($R::ct_trans !~ /close/) && ($ct_table =~ /contenttrans/) && ($R::ct_trans || $R::trans2edit || $R::ctpos_activ || $R::select_part || $R::set_main_id)){
- &Modalbox::mobox($varenv,$node_meta,$users_dms,$feedb_req);
+ if(($R::ct_trans !~ /close/) && ($ct_table =~ /contenttrans/) && ($R::ct_trans || $R::trans2edit || $R::select_part || $R::set_main_id || $R::set_state)){
+ &Modalbox::mobox($varenv,$node_meta,$users_dms,$feedb_req) if($R::ct_trans ne "delete_trans");
}elsif(($R::ct_trans !~ /close/) && ($ct_table =~ /content$|contentadr|contentuser|contentpos|users$|contenttranspos/ && ($R::ct_trans || $R::rel_edit || $R::base_edit)) || ($R::node2edit && $R::node2edit =~ /edit/)){
&Modalbox3::mobox3($varenv,$node_meta,$users_dms,$feedb_req) if($R::rel_edit !~ /delete|save/ && $R::ct_trans !~ /delete/ && $R::base_edit !~ /delete|save_pos/ && !$R::service_id);
}