mirror of
https://gitlab.com/t6353/sharee.bike.git
synced 2025-02-22 19:56:29 +01:00
sig prefix and rental if reserved start
This commit is contained in:
parent
b3fb4e2143
commit
c8d7b562bd
13 changed files with 172 additions and 168 deletions
|
@ -786,8 +786,9 @@ sub fetch_bike_tariff {
|
|||
my $bike = shift;
|
||||
my $owner = shift;
|
||||
|
||||
my $bike_id = "";
|
||||
$bike_id = $1 if($bike =~ /(\d+)/);
|
||||
my $bike_id = $bike || "";
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
my $main_ids = "";
|
||||
my ($bike_group,$user_group,$tariff_content,$user_tour) = $self->fetch_tariff($varenv->{dbname},$auth,"");
|
||||
|
@ -872,11 +873,11 @@ sub booking_request(){
|
|||
my $ct_tariff = shift;
|
||||
my $owner = shift || "";
|
||||
my $gps = shift || "";
|
||||
my $reserveid = shift || "";
|
||||
my $sig_book = shift || {};
|
||||
|
||||
my $dbh = "";
|
||||
my $bike_id = "";
|
||||
$bike_id = $1 if($bike =~ /(\d+)$/);
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)$/);
|
||||
|
||||
my $pos_id="";
|
||||
my $now_dt = strftime "%Y-%m-%d %H:%M", localtime;
|
||||
|
@ -935,7 +936,7 @@ sub booking_request(){
|
|||
if($ctt->{c_id}){
|
||||
|
||||
#2 = "requested"
|
||||
$pos_id = $dbt->insert_pos($dbh,$ctt->{c_id},$ct_bike,$auth,$ct_tariff,$now_dt,$bike,"2",$owner,$reserveid);
|
||||
$pos_id = $dbt->insert_pos($dbh,$ctt->{c_id},$ct_bike,$auth,$ct_tariff,$now_dt,$bike,"2",$owner,$sig_book);
|
||||
$bw->log("booking_request insert_pos:",$pos_id,"");
|
||||
|
||||
if($pos_id){
|
||||
|
@ -1003,7 +1004,7 @@ sub booking_update(){
|
|||
my $varenv = shift;
|
||||
my $auth = shift;
|
||||
my $owner = shift || 0;
|
||||
my $rentalid = shift || "";
|
||||
my $sig_book = shift || {};
|
||||
|
||||
my $state = $q->escapeHTML($q->param('state')) || "";
|
||||
my $lock_state = $q->escapeHTML($q->param('lock_state')) || "";
|
||||
|
@ -1012,8 +1013,12 @@ sub booking_update(){
|
|||
my $rows = 0;
|
||||
my $user_agent = $q->user_agent();
|
||||
my $record_pos = { c_id => 0 };#if fails
|
||||
my $bike = $q->param('bike');
|
||||
my $bike_id = $1 if($q->escapeHTML($q->param('bike')) =~ /(\d+)/);
|
||||
#my $bike = $q->param('bike');
|
||||
#my $bike_id = $1 if($q->escapeHTML($q->param('bike')) =~ /(\d+)/);
|
||||
my $bike = $q->escapeHTML($q->param('bike')) || "";
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
my $state_key = 0;
|
||||
my $state_text = "";
|
||||
|
@ -1146,7 +1151,7 @@ sub booking_update(){
|
|||
$update_pos->{owner} = "$owner";
|
||||
|
||||
$update_pos->{int10} = "$state_key";
|
||||
$update_pos->{txt11} = "$rentalid";
|
||||
$update_pos->{txt11} = "$sig_book->{rentalid}" if($sig_book->{rentalid});
|
||||
$rows = $dbt->update_record($dbh,$update_pos,$record_pos);
|
||||
|
||||
if($rows > 0){
|
||||
|
@ -1174,7 +1179,7 @@ sub booking_update(){
|
|||
$update_pos->{int41} = "$counting->{int41}" if(looks_like_number($counting->{int41}));
|
||||
|
||||
$update_pos->{int10} = "$state_key";
|
||||
$update_pos->{txt11} = "$rentalid";
|
||||
$update_pos->{txt11} = "$sig_book->{rentalid}" if($sig_book->{rentalid});
|
||||
$rows = $dbt->update_record($dbh,$update_pos,$record_pos);
|
||||
|
||||
$booking_values->{response_state} = "OK: available bike " . $q->param('bike') . ", still locked";
|
||||
|
@ -1210,7 +1215,7 @@ sub booking_update(){
|
|||
$update_cc->{int04} = "$stations_raw->{$id}->{int04}";
|
||||
$update_pos->{int24} = "1";
|
||||
$update_pos->{int10} = "$state_key";
|
||||
$update_pos->{txt11} = "$rentalid";
|
||||
$update_pos->{txt11} = "$sig_book->{rentalid}" if($sig_book->{rentalid});
|
||||
$update_cc->{txt06} = "$gps";#end content coordinates
|
||||
$update_pos->{txt06} = "$gps";#end pos coordinates
|
||||
$update_pos->{int21} = "$gps_age_minutes";
|
||||
|
@ -1351,7 +1356,8 @@ sub booking_update(){
|
|||
owner => "$owner",
|
||||
};
|
||||
|
||||
if($q->param('voltage') && $q->param('voltage') =~ /(\d+)/){
|
||||
#only by system=Ilockit
|
||||
if($record_pos->{int11} eq "2" && $q->param('voltage') && $q->param('voltage') =~ /(\d+)/){
|
||||
$update_cc->{int14} = $1;
|
||||
$self->service_automatic($q) if($1 <= 50);
|
||||
}
|
||||
|
@ -1710,6 +1716,14 @@ sub bikes_available(){
|
|||
my $auth = shift;
|
||||
my $authed = 0;
|
||||
|
||||
my $station = $q->escapeHTML($q->param('station')) || "";
|
||||
my $station_id = $1 if($station =~ /(\d+)/);
|
||||
|
||||
my $bike = $q->escapeHTML($q->param('bike')) || "";
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
#my $users_serviceapp = $dbt->select_users($dbh,$auth->{c_id},"and int09=1");
|
||||
my $return={};
|
||||
my $pref = {
|
||||
|
@ -1726,13 +1740,11 @@ sub bikes_available(){
|
|||
$main_ids =~ s/[a-z_-]+//ig;#should work also without Trenner
|
||||
$pref = { %$pref, main_id => "IN::($main_ids)" };
|
||||
|
||||
if($q->param('station')){
|
||||
my $station_id = $1 if($q->param('station') =~ /(\d+)/);
|
||||
$pref = { %$pref, int04 => "=::" . $q->escapeHTML($station_id) } if(looks_like_number($station_id));
|
||||
if(looks_like_number($station_id)){
|
||||
$pref = { %$pref, int04 => "=::" . $station_id };
|
||||
}
|
||||
if($q->param('bike')){
|
||||
my $bike_id = $1 if($q->param('bike') =~ /(\d+)/);
|
||||
$pref = { %$pref, barcode => "=::" . $q->escapeHTML($bike_id) } if(looks_like_number($bike_id));
|
||||
if(looks_like_number($bike_id)){
|
||||
$pref = { %$pref, barcode => "=::" . $bike_id };
|
||||
}
|
||||
|
||||
my $record = $dbt->fetch_record($dbh,$pref) if(ref($bike_group) eq "ARRAY" && @{$bike_group}[0]);
|
||||
|
|
|
@ -192,8 +192,9 @@ elsif($q->param('request') eq "booking_request"){
|
|||
if(ref($auth) eq "HASH" && $auth->{authcookie}){
|
||||
my $bike = $q->escapeHTML($q->param('bike')) || "";
|
||||
if($bike){
|
||||
my $bike_id = "";
|
||||
$bike_id = $1 if($bike =~ /(\d+)/);
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
#check count of occcupied/requested bikes
|
||||
my $record = $apif->user_bikes_occupied($q,$authraw);
|
||||
|
@ -238,16 +239,18 @@ elsif($q->param('request') eq "booking_request"){
|
|||
my $ct_bike = {};
|
||||
my $ct_tariff = {};
|
||||
($ct_bike,$ct_tariff) = $apif->fetch_bike_tariff(\%varenv,$authraw,$bike,$aowner);
|
||||
|
||||
my $sig_book = {
|
||||
rentalId => "",
|
||||
reservationId => ""
|
||||
};
|
||||
|
||||
if($ct_bike->{barcode} && $ct_tariff->{barcode}){
|
||||
my $reserveid = "";
|
||||
#disabled
|
||||
#TODO, check if we need prios revervation for rental. After work maybe enable
|
||||
if(1==2 && $ct_bike->{int11} == 3){
|
||||
my $sigo_book = $si->sigo_booking(\%varenv,$auth,$ct_bike,"reserve");
|
||||
$reserveid = $sigo_book->{reservationId} if($sigo_book->{reservationId});
|
||||
#sig reservation. not mandatory
|
||||
if($ct_bike->{int11} == 3){
|
||||
$sig_book = $si->sig_booking(\%varenv,$auth,$ct_bike,"","reserve");
|
||||
}
|
||||
$response_book = $apif->booking_request(\%varenv,$authraw,$bike,$ct_bike,$ct_tariff,$aowner,$gps,$reserveid);
|
||||
$response_book = $apif->booking_request(\%varenv,$authraw,$bike,$ct_bike,$ct_tariff,$aowner,$gps,$sig_book);
|
||||
}elsif(!$ct_tariff->{barcode}){
|
||||
$response->{response_state} = "Failure 2089: booking bike $bike fails, no user tariff available";
|
||||
$response->{response_text} = "Reservierungsfehler Fahrrad Nr. $bike. Es konnte kein Mietrad Tarif gefunden werden.";
|
||||
|
@ -268,13 +271,13 @@ elsif($q->param('request') eq "booking_request"){
|
|||
};
|
||||
my $dbh = "";
|
||||
$ctpos = $dbt->fetch_tablerecord($dbh,$booking_pos);
|
||||
my $rentalid = "";
|
||||
#sig booking
|
||||
if($ctpos->{int11} == 3){
|
||||
my $sigo_book = $si->sigo_booking(\%varenv,$auth,$ctpos,"rental");
|
||||
$rentalid = $sigo_book->{rentalId} if($sigo_book->{rentalId});
|
||||
#usecase with reservationId (in ctpos) is in sig not defined, thats because using ct_bike.txt22
|
||||
$sig_book = $si->sig_booking(\%varenv,$auth,$ct_bike,$ctpos,"rental");
|
||||
}
|
||||
|
||||
(my $rows, my $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$rentalid);
|
||||
(my $rows, my $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$sig_book);
|
||||
$response = {%$response, %$booking_values};
|
||||
}else{
|
||||
$response = {%$response, %$response_book};
|
||||
|
@ -313,8 +316,9 @@ elsif($q->param('request') eq "booking_cancel" || $q->param('request') eq "booki
|
|||
if(ref($auth) eq "HASH" && $auth->{authcookie}){
|
||||
my $bike = $q->escapeHTML($q->param('bike')) || "";
|
||||
if($bike){
|
||||
my $bike_id = "";
|
||||
$bike_id = $1 if($bike =~ /(\d+)/);
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
my $ctpos = {};
|
||||
my $booking_pos = {
|
||||
|
@ -326,32 +330,38 @@ elsif($q->param('request') eq "booking_cancel" || $q->param('request') eq "booki
|
|||
};
|
||||
$ctpos = $dbt->fetch_tablerecord($dbh,$booking_pos);
|
||||
|
||||
my $sig_book = {
|
||||
rentalId => "",
|
||||
reservationId => ""
|
||||
};
|
||||
|
||||
if($q->param('request') eq "booking_update" && $q->param('state') && $q->param('state') =~ /canceled/){
|
||||
my $booking_values = {};
|
||||
|
||||
my $reserveid = "";
|
||||
if($ctpos->{int11} == 3){
|
||||
my $sigo_book = $si->sigo_booking(\%varenv,$auth,$ctpos,"reserve_end");
|
||||
$reserveid = $sigo_book->{reservationId} if($sigo_book->{reservationId});
|
||||
#this sigo request is still not defined
|
||||
#$sig_book = $si->sig_booking(\%varenv,$auth,"",$ctpos,"reserve_end");
|
||||
$response->{response_state} = "Failure: sigo bike reservation can not be canceled on sigo";
|
||||
$response->{response_text} = "Abbruch, die Reservierung kann nicht storniert werden";
|
||||
($rows, $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$sig_book);
|
||||
}else{
|
||||
($rows, $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$sig_book);
|
||||
}
|
||||
|
||||
($rows, my $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$reserveid);
|
||||
$response = {%$response, %$booking_values};
|
||||
|
||||
}elsif($q->param('request') eq "booking_update" && (($q->param('state') && $q->param('state') =~ /occupied|available/) || ($q->param('lock_state') && $q->param('lock_state') =~ /locking|locked|unlocking|unlocked/))){
|
||||
|
||||
|
||||
my $rentalid = "";
|
||||
if($ctpos->{int11} == 3){
|
||||
if($q->param('state') eq "occupied"){
|
||||
my $sigo_book = $si->sigo_booking(\%varenv,$auth,$ctpos,"rental");
|
||||
$rentalid = $sigo_book->{rentalId} if($sigo_book->{rentalId});
|
||||
$sig_book = $si->sig_booking(\%varenv,$auth,"",$ctpos,"rental");
|
||||
}
|
||||
if($q->param('state') eq "available"){
|
||||
my $sigo_book = $si->sigo_booking(\%varenv,$auth,$ctpos,"rental_end");
|
||||
$rentalid = $sigo_book->{rentalId} if($sigo_book->{rentalId});
|
||||
$sig_book = $si->sig_booking(\%varenv,$auth,"",$ctpos,"rental_end");
|
||||
}
|
||||
}
|
||||
|
||||
($rows, my $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$rentalid);
|
||||
($rows, my $booking_values) = $apif->booking_update($q,\%varenv,$authraw,$aowner,$sig_book);
|
||||
$response = {%$response, %$booking_values};
|
||||
|
||||
#keep in mind, it works on operator dependency
|
||||
|
@ -423,8 +433,7 @@ elsif($q->param('request') eq "booking_cancel" || $q->param('request') eq "booki
|
|||
|
||||
}else{
|
||||
$response->{response_state} = "Failure: no bike defined";
|
||||
$response->{response_text} = "Abbruch, es wurde keine Fahrrad Nummer angegeben";
|
||||
$response->{timeCode} = 0;#if fails
|
||||
$response->{response_text} = "Abbruch, es wurde keine Fahrrad Nummer angegeben";
|
||||
}
|
||||
}else{
|
||||
$response->{response_state} = "Failure 1001: authcookie not defined";
|
||||
|
@ -747,7 +756,13 @@ elsif($q->param('request') eq "service_done"){
|
|||
|
||||
my ($auth,$authraw) = $apif->auth_verify($q);
|
||||
my $station_id = $1 if($q->param('station') =~ /(\d+)/);
|
||||
my $bike_id = $1 if($q->param('bike') =~ /(\d+)/);
|
||||
#my $bike_id = $1 if($q->param('bike') =~ /(\d+)/);
|
||||
|
||||
my $bike = $q->escapeHTML($q->param('bike')) || "";
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
$response->{uri_operator} = "$varenv{wwwhost}";
|
||||
|
||||
if(ref($auth) eq "HASH" && $auth->{authcookie}){
|
||||
|
@ -883,9 +898,14 @@ elsif($q->param('request') eq "service_work"){
|
|||
|
||||
my ($auth,$authraw) = $apif->auth_verify($q);
|
||||
my $station_id = "";
|
||||
my $bike_id = "";
|
||||
$station_id = $1 if($q->param('station') =~ /(\d+)/);
|
||||
$bike_id = $1 if($q->param('bike') =~ /(\d+)/);
|
||||
#$bike_id = $1 if($q->param('bike') =~ /(\d+)/);
|
||||
|
||||
my $bike = $q->escapeHTML($q->param('bike')) || "";
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
$response->{uri_operator} = "$varenv{wwwhost}";
|
||||
my $node = {};
|
||||
my $response_work = {};
|
||||
|
|
|
@ -55,6 +55,7 @@ sub new {
|
|||
$ua->max_size( $bytes );
|
||||
$ua->default_header( 'x-api-key' => $apikeyconf{sigo}->{api_key} );
|
||||
|
||||
#will be called on bikes_available
|
||||
sub sigo_available {
|
||||
my $self = shift;
|
||||
my $q = shift;
|
||||
|
@ -90,14 +91,15 @@ sub sigo_available {
|
|||
my $ret_json = $self->get_sigo("$endpoint",$rest_json);
|
||||
eval {
|
||||
$response_in = decode_json($ret_json);
|
||||
print FILE "<--- station_and_bikes response_in:\n";
|
||||
$now_dt = strftime "%Y-%m-%d %H:%M:%S", localtime;
|
||||
print FILE "<--- $now_dt station_and_bikes response_in:\n";
|
||||
#print FILE Dumper($response_in) . "\n";
|
||||
|
||||
if(ref($response_in) eq "HASH"){
|
||||
foreach my $resp (@{ $response_in->{items} }) {
|
||||
print FILE "response_in loop\n" . Dumper($resp) . "\n";
|
||||
|
||||
if($dbt->{operator}->{$varenv->{dbname}}->{operatorApp} && $q->param('request') eq "stations_available"){
|
||||
if(ref($resp->{site}) eq "HASH" && $dbt->{operator}->{$varenv->{dbname}}->{operatorApp} && $q->param('request') eq "stations_available"){
|
||||
|
||||
#station (mainly using sigojson site object)
|
||||
my $station = "SX$resp->{site}->{id}";
|
||||
|
@ -150,11 +152,16 @@ sub sigo_available {
|
|||
}
|
||||
}#end stations_available
|
||||
|
||||
if($dbt->{operator}->{$varenv->{dbname}}->{operatorApp} && $q->param('request') eq "bikes_available"){
|
||||
if(ref($resp->{site}) eq "HASH" && $dbt->{operator}->{$varenv->{dbname}}->{operatorApp} && $q->param('request') eq "bikes_available"){
|
||||
|
||||
#bike (mainly using sigojson state object)
|
||||
my $bike = "SX$resp->{mobile_bike_id}";
|
||||
if($bike && looks_like_number($resp->{mobile_bike_id}) && looks_like_number($resp->{site}->{id})){
|
||||
#my $bike = "SX$resp->{mobile_bike_id}";
|
||||
my $bike = $q->escapeHTML($resp->{license_plate}) || "";
|
||||
my $bike_id = $bike;
|
||||
$bike_id =~ s/S[1-9]X/SX/;
|
||||
$bike_id = $1 if($bike_id =~ /(\d+)/);
|
||||
|
||||
if($bike && looks_like_number($bike_id) && looks_like_number($resp->{site}->{id})){
|
||||
print FILE "Bike: $bike\n";
|
||||
$response_out->{$bike}->{bike} = "$bike";
|
||||
$response_out->{$bike}->{authed} = "$authed";
|
||||
|
@ -165,14 +172,12 @@ sub sigo_available {
|
|||
$response_out->{$bike}->{gps}->{longitude} = "$resp->{state}->{lon}" || "";
|
||||
$response_out->{$bike}->{bike_charge} = "$resp->{energy_level}" || "0";
|
||||
$response_out->{$bike}->{state} = "defect";
|
||||
if($resp->{status} eq "ACTIVE"){#?
|
||||
$response_out->{$bike}->{state} = "available";
|
||||
}elsif($resp->{status} eq "MAINTANANCE"){
|
||||
$response_out->{$bike}->{state} = "maintanance";
|
||||
}elsif($resp->{status} eq "OFFLINE"){
|
||||
$response_out->{$bike}->{state} = "defect";
|
||||
}elsif($resp->{status} eq "OPERATION"){#?
|
||||
if($resp->{reservation_state} eq "RESERVED"){
|
||||
$response_out->{$bike}->{state} = "requested";
|
||||
}elsif($resp->{reservation_state} eq "ACTIVE-RENTAL"){
|
||||
$response_out->{$bike}->{state} = "occupied";
|
||||
}elsif(!$resp->{reservation_state}){
|
||||
$response_out->{$bike}->{state} = "available";
|
||||
}
|
||||
|
||||
#$response_out->{$bike}->{lock_state} = "undefined";#?
|
||||
|
@ -227,8 +232,8 @@ sub sigo_available {
|
|||
}
|
||||
#just like caching
|
||||
$return2copri->{$bike}->{int11} = 3;
|
||||
$return2copri->{$bike}->{barcode} = $1 if($response_out->{$bike}->{bike} =~ /(\d+)/);
|
||||
$return2copri->{$bike}->{txt22} = $resp->{id};#bike id like 380116b5-0522-43da-ab66-477744a731a3
|
||||
$return2copri->{$bike}->{barcode} = $bike_id;
|
||||
$return2copri->{$bike}->{txt22} = $resp->{id};#sig bikeId like 380116b5-0522-43da-ab66-477744a731a3
|
||||
$return2copri->{$bike}->{int04} = $1 if($response_out->{$bike}->{station} =~ /(\d+)/);
|
||||
$return2copri->{$bike}->{txt01} = "$response_out->{$bike}->{description}";
|
||||
$return2copri->{$bike}->{txt06} = "$response_out->{$bike}->{gps}->{latitude},$response_out->{$bike}->{gps}->{longitude}";
|
||||
|
@ -262,16 +267,17 @@ sub sigo_available {
|
|||
}#end sigo_available
|
||||
|
||||
#POST resverve, rental, ...
|
||||
sub sigo_booking {
|
||||
sub sig_booking {
|
||||
my $self = shift;
|
||||
my $varenv = shift || {};
|
||||
my $auth = shift || {};
|
||||
my $ct_bike = shift || {};
|
||||
my $ctpos = shift || {};
|
||||
my $todo = shift || "";
|
||||
|
||||
my $dbh = "";
|
||||
my $owner = 169;
|
||||
my $sigo_book = {};
|
||||
my $sig_book = {};
|
||||
|
||||
open(FILE,">>$varenv->{logdir}/APIsigo_client.log");
|
||||
print FILE "\n*** $now_dt 'sigo_post $todo' \n";
|
||||
|
@ -279,6 +285,7 @@ sub sigo_booking {
|
|||
my $endpoint = "$dbt->{operator}->{$varenv->{dbname}}->{endpoint}/";
|
||||
my %json = ();
|
||||
|
||||
#reservation start
|
||||
if($todo eq "reserve"){
|
||||
$endpoint .= "bikes/reserve";
|
||||
%json = (
|
||||
|
@ -286,13 +293,33 @@ sub sigo_booking {
|
|||
email => "r.guempelein\@sharee.bike"
|
||||
);
|
||||
}
|
||||
elsif($todo eq "rental"){
|
||||
$endpoint .= "rental";
|
||||
#reservation end, this sigo request is still not defined
|
||||
elsif($todo eq "reserve_end"){
|
||||
$endpoint .= "reserve/end";
|
||||
%json = (
|
||||
bikeId => "$ct_bike->{txt22}",
|
||||
reservationId => "$ctpos->{txt10}",
|
||||
email => "r.guempelein\@sharee.bike"
|
||||
);
|
||||
}
|
||||
#rental start
|
||||
elsif($todo eq "rental"){
|
||||
$endpoint .= "rental";
|
||||
my $sig_serial = $ctpos->{txt22} || $ct_bike->{txt22};
|
||||
%json = (
|
||||
bikeId => "$sig_serial",
|
||||
#reservationId => "$ctpos->{txt10}",#not in sig implemented
|
||||
email => "r.guempelein\@sharee.bike"
|
||||
);
|
||||
}
|
||||
#rental end
|
||||
elsif($todo eq "rental_end"){
|
||||
$endpoint .= "rental/end";
|
||||
%json = (
|
||||
rentalId => "$ctpos->{txt11}",
|
||||
email => "r.guempelein\@sharee.bike"
|
||||
);
|
||||
#keep in mind, it will return no json, just text: "Rental Ended"
|
||||
}
|
||||
else{
|
||||
print "Failure, request $todo not defined\n";
|
||||
|
||||
|
@ -304,22 +331,22 @@ sub sigo_booking {
|
|||
my $rest_json = encode_json(\%json);
|
||||
|
||||
my $ret_json = $self->post_sigo($endpoint,$rest_json);
|
||||
#
|
||||
$now_dt = strftime "%Y-%m-%d %H:%M:%S", localtime;
|
||||
eval {
|
||||
$sigo_book = decode_json($ret_json);
|
||||
print FILE "<--- sigo_post $todo response_in:\n" . Dumper($sigo_book);
|
||||
print $ret_json . "\n";
|
||||
$sig_book = decode_json($ret_json);
|
||||
print FILE "<--- $now_dt sigo_post $todo response_in:\n" . Dumper($sig_book);
|
||||
#print $ret_json . "\n";
|
||||
|
||||
};
|
||||
if ($@){
|
||||
print FILE "<--- failure sigo_post $todo raw response_in:\n" . Dumper($ret_json) . "\n";
|
||||
print FILE "<--- $now_dt failure sigo_post $todo raw response_in:\n" . Dumper($ret_json) . "\n";
|
||||
#warn $@;
|
||||
print FILE "warn:" . $@ . "\n";
|
||||
}
|
||||
}
|
||||
|
||||
close(FILE);
|
||||
return $sigo_book;
|
||||
return $sig_book;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1315,7 +1315,7 @@ sub insert_pos(){
|
|||
my $ct_name = shift || "";
|
||||
my $status = shift || "";
|
||||
my $owner = shift || "";
|
||||
my $reserveid = shift || "";
|
||||
my $sig_book = shift || {};
|
||||
|
||||
$ct_name = $ct->{barcode} if(!$ct_name);#artikelnr or bikenr
|
||||
my $prefix = "";
|
||||
|
@ -1368,7 +1368,7 @@ sub insert_pos(){
|
|||
my $sth;
|
||||
#Verleihräder
|
||||
if($ct->{template_id} && $ct->{template_id} == 205){#Leihrad_list
|
||||
$sth = $dbh->prepare("INSERT INTO contenttranspos (ct_id,cc_id,ca_id,ct_name,barcode,txt01,txt08,txt02,txt09,txt12,itime,start_time,end_time,int02,int03,int06,int04,txt05,txt06,txt07,int10,int12,int13,owner,int07,txt04,int09,int17,int15,int16,int11,int18,int19,txt17,txt18,int20,int25,int34,txt22,txt10,int35,int36,int37,time01,time02) VALUES ('$ctt_id','$ct->{c_id}','$ctadr->{c_id}','$ct_name','$ct->{barcode}','$ct->{txt01}','$user_name','$ct->{txt02}','$ctadr->{txt09}','$prefix',now(),now(),'$endRental','$unit_price','$menge','$station','$station','$ct->{txt06}','$ct->{txt06}','$ct->{txt07}','$status','$from_main_id','$deviceId','$owner','$rabatt','$tariff_desc','$tariff_nr','$daymax_price','$abo_price','$free_hours','$ct->{int11}','$sharing_type','$bike_charge','$ct->{txt17}','$ct->{txt18}','$ct->{int20}','$trackon','$staff','$ct->{txt22}','$reserveid','$unit_price1','$unit_price2','$start_price','$unit_time','$free_time') RETURNING c_id");
|
||||
$sth = $dbh->prepare("INSERT INTO contenttranspos (ct_id,cc_id,ca_id,ct_name,barcode,txt01,txt08,txt02,txt09,txt12,itime,start_time,end_time,int02,int03,int06,int04,txt05,txt06,txt07,int10,int12,int13,owner,int07,txt04,int09,int17,int15,int16,int11,int18,int19,txt17,txt18,int20,int25,int34,txt22,txt10,int35,int36,int37,time01,time02) VALUES ('$ctt_id','$ct->{c_id}','$ctadr->{c_id}','$ct_name','$ct->{barcode}','$ct->{txt01}','$user_name','$ct->{txt02}','$ctadr->{txt09}','$prefix',now(),now(),'$endRental','$unit_price','$menge','$station','$station','$ct->{txt06}','$ct->{txt06}','$ct->{txt07}','$status','$from_main_id','$deviceId','$owner','$rabatt','$tariff_desc','$tariff_nr','$daymax_price','$abo_price','$free_hours','$ct->{int11}','$sharing_type','$bike_charge','$ct->{txt17}','$ct->{txt18}','$ct->{int20}','$trackon','$staff','$ct->{txt22}','$sig_book->{reservationId}','$unit_price1','$unit_price2','$start_price','$unit_time','$free_time') RETURNING c_id");
|
||||
}else{
|
||||
$sth = $dbh->prepare("INSERT INTO contenttranspos (ct_id,cc_id,ca_id,ct_name,barcode,txt08,txt09,itime,int02,int03,txt01,txt06,txt07,int10,int12,owner) VALUES ('$ctt_id','$ct->{c_id}','$ctadr->{c_id}','$ct_name','0','$user_name','$ctadr->{txt09}',now(),'$unit_price1','1','$ct->{txt01}','$ct->{txt06}','$ct->{txt07}','0','$from_main_id','$owner') RETURNING c_id");
|
||||
}
|
||||
|
|
|
@ -731,9 +731,9 @@ sub payone_capture(){
|
|||
open(EMA, ">> $varenv->{logdir}/copri-print.log");
|
||||
print EMA "\n$now_dt\n$topdf --page-size A4 \"$varenv->{wwwhost}/Printpreview?printer_id=PDF\&mandant_main_id=$mandant_id\&main_id=$main_id\&ct_name2print=$ctt->{ct_name}\&c_id4trans=$ctt->{c_id}\&u_id=$owner\&wc=$wc_line\" $varenv->{pdf}/$praefix-$ctt->{ct_name}.pdf\nreturn: $print_return\nfilesize: $filesize\nexit_code: $exit_code\n";
|
||||
|
||||
#send_invoice infomail
|
||||
if(-f "$varenv->{pdf}/$praefix-$ctt->{ct_name}.pdf"){
|
||||
system(`$varenv->{basedir}/src/scripts/mailTransport.pl "$varenv->{syshost}" "send_invoice" "$ctt->{c_id}" "$praefix-$ctt->{ct_name}.pdf"`);
|
||||
#send_invoice infomail, only if eMail never sent
|
||||
if(-f "$varenv->{pdf}/$praefix-$ctt->{ct_name}.pdf" && !$ctt->{txt30}){
|
||||
system("$varenv->{basedir}/src/scripts/mailTransport.pl '$varenv->{syshost}' 'send_invoice' '$ctt->{c_id}' '$praefix-$ctt->{ct_name}.pdf'");
|
||||
print EMA "---> Sent Invoice e-mail command: $varenv->{basedir}/src/scripts/mailTransport.pl '$varenv->{syshost}' 'send_invoice' '$ctt->{c_id}' '$praefix-$ctt->{ct_name}.pdf'\n";
|
||||
}
|
||||
close EMA;
|
||||
|
|
|
@ -203,10 +203,8 @@ sub preinit(){
|
|||
$table = "contenttranspos";
|
||||
my $menge="1";
|
||||
|
||||
#Leihrad-logik
|
||||
my ($zcolumn,$zcontent,$ct_node);
|
||||
$zcolumn = "barcode";
|
||||
$zcontent = "$R::spart_ct_name" || "$R::json_select";
|
||||
my $zcolumn = "barcode";
|
||||
my $zcontent = "$R::spart_ct_name" || "$R::json_select";
|
||||
|
||||
#get part for adding and get from_main_id
|
||||
my $ct_name = "$R::spart_ct_name" || "$R::json_select" || "";#turn-around!§$
|
||||
|
@ -223,21 +221,13 @@ sub preinit(){
|
|||
|
||||
|
||||
if($ct->{main_id}){
|
||||
$ct_node = $db->get_node4multi($ct->{main_id},$lang);
|
||||
#check if part linked to mandant
|
||||
my $mandant_check;
|
||||
$waren = $db->get_node2($varenv{wwwhost},"Waren",$lang);
|
||||
$mandant_check = $db->collect_noderec($waren->{main_id},$lang,"nothing") if($waren->{main_id});
|
||||
$mandant_check =~ s/,/|/g;
|
||||
$users_dms = $db->select_users($users_dms->{u_id}) if($ib_key =~ /new_/);#nur bei new_ mit save_
|
||||
if(!$users_dms->{c_id4trans} && $ib_key !~ /new_transdate/){
|
||||
return "failure::Zu welchem Vorgang soll die Aktion verknüpft werden? Bitte erst den entsprechenden Vorgang öffnen.";
|
||||
}elsif($ct->{main_id} && ($ct_node->{main_id} !~ /$mandant_check/)){
|
||||
return "failure::Der Artikel \"$R::spart_ct_name\" ist in der Datenbank vorhanden, aber nicht in \"$ctf->{ct_name}\" verlinkt<br />Kläre bitte ob eine Faktura hier in Zukunft gewollt ist. Falls ja, informiere den Admin damit dieser die Verknüpfung herstellt.";
|
||||
}
|
||||
}
|
||||
|
||||
if(($ct_name || $ct->{barcode}) && $rel->{content_id} && $ct_node->{main_id}){
|
||||
if(($ct_name || $ct->{barcode}) && $rel->{content_id}){
|
||||
my $partnr = "$ct_name / $ct->{barcode}";
|
||||
$partnr = "$ct_name" if("$ct_name" eq "$ct->{barcode}" || !$ct->{barcode});
|
||||
my $bezeichnung = "$ct->{txt01}";
|
||||
|
@ -246,18 +236,8 @@ sub preinit(){
|
|||
my $einzel_rabatt = $ct->{int07};
|
||||
$einzel_rabatt = $ctt->{int06} if($ctt->{int06} > 0);
|
||||
my $unit = $ct->{txt03};
|
||||
if($ctf->{int02} != 0 && $ct->{int09} != 0){
|
||||
$einzel_preis = $ctf->{int02};
|
||||
$menge = $ct->{int09};
|
||||
$unit = "AW";
|
||||
}
|
||||
|
||||
|
||||
#umst
|
||||
my $umst=0;
|
||||
$umst = $ct_node->{int03};
|
||||
$umst = $1 if($ctf->{txt13} =~ /(\d+)/ && $ct_node->{int03} !~ /\d/);#Standard VK Umst
|
||||
|
||||
#Add Parts from content to contenttranspos#################
|
||||
my $pos_id;
|
||||
#Sort counter
|
||||
|
@ -266,18 +246,9 @@ sub preinit(){
|
|||
my $ctt = $db->get_content1("contenttrans",$users_dms->{c_id4trans});
|
||||
|
||||
#INSERT pos
|
||||
$pos_id = $db->insert_contenttranspos($table,$partnr,$users_dms->{u_id},$ct->{barcode},$ct->{c_id},$ctt->{c_id},$ct->{main_id},$bezeichnung,$ct_node->{node_name},$unit,$einzel_preis,$menge,$umst,$einzel_rabatt,$lager,"","$ct->{txt05}","$ct->{txt06}","$ct->{txt07}","$ctt->{txt08}","$ctt->{int10}");
|
||||
$pos_id = $db->insert_contenttranspos($table,$partnr,$users_dms->{u_id},$ct->{barcode},$ct->{c_id},$ctt->{c_id},$ct->{main_id},$bezeichnung,"",$unit,$einzel_preis,$menge,"",$einzel_rabatt,$lager,"","$ct->{txt05}","$ct->{txt06}","$ct->{txt07}","$ctt->{txt08}","$ctt->{int10}");
|
||||
$i_rows += 1 if($pos_id > 0);
|
||||
|
||||
#append Rahmennummer
|
||||
if($ct->{txt11}){
|
||||
my $rahmennr = "$ct->{txt11}";
|
||||
$rahmennr = "$ctt->{txt11} | $ct->{txt11}" if($ctt->{txt11});#add nr.
|
||||
$db->updater("contenttrans","c_id",$rel->{content_id},"txt11",$rahmennr,$users_dms->{u_id});
|
||||
}
|
||||
|
||||
#}
|
||||
#################################################################
|
||||
|
||||
#negate if not rental-bike
|
||||
if(($ct->{template_id} ne "205") && ($ctt->{txt00} !~ /Angebot|Kostenvoranschlag|Auftrag|Storno/) && !$R::c_idpos){
|
||||
|
@ -781,7 +752,7 @@ sub preinit(){
|
|||
#my $key_pdf;
|
||||
#$key_pdf = `/usr/bin/pdftotext $varenv{basedir}/pdf/$praefix-$ctt->{ct_name}.pdf - | grep "Seite:"`;
|
||||
#system(`$varenv{basedir}/src/Mod/newsletter_tink.pl "$varenv{basedir}" "$varenv{wwwhost}" "send_invoice" "$ctt->{int10}" "$ctt->{ct_name}"`);# if($key_pdf =~ /Seite:/);
|
||||
system(`$varenv{basedir}/src/scripts/mailTransport.pl "$varenv{syshost}" "send_invoice" "$ctt->{c_id}" "$praefix-$ctt->{ct_name}.pdf"`);
|
||||
system("$varenv{basedir}/src/scripts/mailTransport.pl '$varenv{syshost}' 'send_invoice' '$ctt->{c_id}' '$praefix-$ctt->{ct_name}.pdf'");
|
||||
|
||||
}
|
||||
#
|
||||
|
|
|
@ -243,11 +243,11 @@ sub counting_rental {
|
|||
my $discount_val = $ctpos->{int07} || 0;
|
||||
if($discount_val != 0 && $total_price){
|
||||
my $discount_eur = $discount_val;
|
||||
$discount_eur = $total_price * $discount_val/100 if($ctpos->{int08} != 1);
|
||||
$discount_eur = $total_price * $discount_val/100 if(!$ctpos->{int08} || $ctpos->{int08} != 1);
|
||||
$total_price -= $discount_eur;
|
||||
|
||||
$discount = "-" . $ctpos->{int07};
|
||||
if($ctpos->{int08} == 1){
|
||||
if($ctpos->{int08} && $ctpos->{int08} == 1){
|
||||
$discount .= " €";
|
||||
}else{
|
||||
$discount =~ s/\.00//;
|
||||
|
@ -345,7 +345,7 @@ sub fetch_rentalfeed {
|
|||
}elsif($td_template->{$td}->{time02} && $ctpos->{time02} =~ /[1-9]/){
|
||||
$time_unit = $dbt->time_format($ctpos->{time02});
|
||||
$return->{tariff_description2}->{$td} = ["$td_template->{$td}->{time02}","$time_unit / Tag"];
|
||||
}elsif($td_template->{$td}->{xduration} && $returned_counting->{real_clock} =~ /[1-9]/){
|
||||
}elsif($td_template->{$td}->{xduration} && $returned_counting->{real_clock} && $returned_counting->{real_clock} =~ /[1-9]/){
|
||||
$time_unit = $dbt->time_format($returned_counting->{real_clock});
|
||||
$return->{tariff_description2}->{$td} = ["$td_template->{$td}->{xduration}","$time_unit"];
|
||||
}elsif($td_template->{$td}->{xprice} && $returned_counting->{total_price} && $returned_counting->{total_price} > 0){
|
||||
|
@ -562,14 +562,14 @@ sub price2calc {
|
|||
my $ctpos = shift;
|
||||
|
||||
my $total = 0;
|
||||
my $discount = "";
|
||||
my $einzel = $ctpos->{int02};
|
||||
my $menge = $ctpos->{int03};
|
||||
my $discount = 0;
|
||||
my $einzel = $ctpos->{int02} || 0;
|
||||
my $menge = $ctpos->{int03} || 0;
|
||||
my $discount_val = $ctpos->{int07} || 0;
|
||||
if($discount_val != 0 && $einzel && $menge){
|
||||
my $discount_eur = $discount_val;
|
||||
#if int08 != 1 alias €
|
||||
$discount_eur = $einzel * $menge * $discount_val/100 if($ctpos->{int08} != 1);
|
||||
$discount_eur = $einzel * $menge * $discount_val/100 if(!$ctpos->{int08} || $ctpos->{int08} != 1);
|
||||
$total = $einzel * $menge - $discount_eur;
|
||||
}elsif($einzel && $menge){
|
||||
$total = $einzel * $menge;
|
||||
|
@ -577,7 +577,7 @@ sub price2calc {
|
|||
|
||||
if($ctpos->{int07} && $ctpos->{int07} > 0 && $menge > 0){
|
||||
$discount = "-" . $ctpos->{int07};
|
||||
if($ctpos->{int08} == 1){
|
||||
if($ctpos->{int08} && $ctpos->{int08} == 1){
|
||||
$discount .= " €";
|
||||
}else{
|
||||
$discount =~ s/\.00//;
|
||||
|
@ -588,34 +588,5 @@ sub price2calc {
|
|||
return ($total,$discount);
|
||||
}
|
||||
|
||||
#computes rental position price and rabatt
|
||||
sub rental_price2calc {
|
||||
my $self = shift;
|
||||
my $ctpos = shift || {};
|
||||
my $pricing = shift || {};
|
||||
|
||||
my $total = 0;
|
||||
my $discount = "";
|
||||
my $discount_val = $ctpos->{int07} || 0;
|
||||
if($discount_val != 0 && $pricing->{total_price}){
|
||||
my $discount_eur = $discount_val;
|
||||
#if int08 != 1 alias €
|
||||
$discount_eur = $pricing->{total_price} * $discount_val/100 if($ctpos->{int08} != 1);
|
||||
$total = $pricing->{total_price} - $discount_eur;
|
||||
}elsif($pricing->{total_price}){
|
||||
$total = $pricing->{total_price};
|
||||
}
|
||||
|
||||
if($ctpos->{int07} && $ctpos->{int07} > 0){
|
||||
$discount = "-" . $ctpos->{int07};
|
||||
if($ctpos->{int08} == 1){
|
||||
$discount .= " €";
|
||||
}else{
|
||||
$discount =~ s/\.00//;
|
||||
$discount .= " %";
|
||||
}
|
||||
}
|
||||
|
||||
return ($total,$discount);
|
||||
}
|
||||
1;
|
||||
|
|
|
@ -114,7 +114,7 @@ EOF
|
|||
|
||||
print "</div>\n";
|
||||
|
||||
print $q->div({-class=>"content2_legende", -style=>'font-weight:bold;'}, "• Ist ein Lastenrad an einer Mietradstation verfügbar?"),"\n";
|
||||
#print $q->div({-class=>"content2_legende", -style=>'font-weight:bold;'}, "• Ist ein Lastenrad an einer Mietradstation verfügbar?"),"\n";
|
||||
print $q->div({-class=>"content2_legende"}, $q->img({-style=>'height:30px;', -src=>"$varenv->{metahost}/img/$icon_green"}), "Lastenrad verfügbar"),"\n";
|
||||
print $q->div({-class=>"content2_legende"}, $q->img({-style=>'height:30px;', -src=>"$varenv->{metahost}/img/$icon_red"}), "Lastenrad nicht verfügbar"),"\n";
|
||||
print $q->div({-class=>"content2_legende"}, " "),"\n";
|
||||
|
|
|
@ -70,7 +70,7 @@ sub tpl(){
|
|||
my $vibuchen_mtime = "";
|
||||
$vibuchen_mtime = "Payone post " . $lb->time4de($ctt->{pay_time},1) . " . " if($ctt->{pay_time});
|
||||
|
||||
my @tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=timerange","int03=Menge","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
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");#Firma tpl
|
||||
my @tplf_order = split /,/,$tplf->{tpl_order};
|
||||
|
||||
|
@ -83,7 +83,7 @@ sub tpl(){
|
|||
foreach my $id (keys(%$cttpos)){
|
||||
if(ref($cttpos->{$id}) eq "HASH"){
|
||||
if($cttpos->{$id}->{int26}){
|
||||
@tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=timerange","int26=Einsparung","int03=Menge","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
@tpl_order = ("txt01=Beschreibung","ct_name=Nummer","date_time=timerange","int26=Einsparung","int03=Menge (Miet - Gratis Zeit)","int02=Preis","int07=Rabatt","int04=Gesamt");
|
||||
}
|
||||
#enhanced tariff
|
||||
#if($cttpos->{$id}->{int35}){
|
||||
|
@ -299,7 +299,7 @@ EOF
|
|||
|
||||
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=>"35",-maxlength=>40)),"<br />\n";
|
||||
"GPS: ", $q->textfield(-class=>'etxt',-name=>"txt06",-default=>"$cttpos->{$id}->{txt06}",-size=>"30",-maxlength=>40)),"<br />\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),
|
||||
|
|
|
@ -36,23 +36,23 @@ my $todo = $ARGV[1];
|
|||
if($todo eq "available"){
|
||||
$q->param(-name=>'request',-value=>"bikes_available");
|
||||
my $auth = { c_id => 0 };
|
||||
my $return = $si->sigo_available($q,\%varenv,$auth);
|
||||
print $0 . Dumper($return) . "\n";
|
||||
my $return = $si->sigo_available($q,\%varenv,$auth);
|
||||
#print $0 . Dumper($return) . "\n";
|
||||
}
|
||||
|
||||
if($todo eq "reserve"){
|
||||
my $auth = { c_id => 1842 };
|
||||
my $bike = { txt22 => "380116b5-0522-43da-ab66-477744a731a3" };# bike 1150
|
||||
#my $bike = "SX1150";# bike 1150 from app booking_request
|
||||
my $return = $si->sigo_booking(\%varenv,$auth,$bike,$todo);
|
||||
print $0 . Dumper($return) . "\n";
|
||||
my $return = $si->sigo_booking(\%varenv,$auth,$bike,$todo);
|
||||
#print $0 . Dumper($return) . "\n";
|
||||
}
|
||||
|
||||
if($todo eq "rental"){
|
||||
my $auth = { c_id => 1842 };
|
||||
my $bike = { txt22 => "380116b5-0522-43da-ab66-477744a731a3" };# bike 1150
|
||||
#my $bike = "SX1150";# bike 1150 from app booking_request
|
||||
my $return = $si->sigo_booking(\%varenv,$auth,$bike,$todo);
|
||||
print $0 . Dumper($return) . "\n";
|
||||
my $return = $si->sigo_booking(\%varenv,$auth,$bike,$todo);
|
||||
#print $0 . Dumper($return) . "\n";
|
||||
}
|
||||
|
||||
|
|
|
@ -190,15 +190,18 @@ print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$bookin
|
|||
|
||||
my $booking_update_locking = "$uriop?request=booking_update&bike=$bike&lock_state=locking$and_station_state_locking&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_locking"},"[ booking_update_locking ]---> $booking_update_locking")),"\n";
|
||||
|
||||
my $booking_update_locked = "$uriop?request=booking_update&bike=$bike&lock_state=locked$and_station_state_locked&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_locked"},"[ booking_update_locked ]---> $booking_update_locked")),"\n";
|
||||
my $booking_update_unlocking = "$uriop?request=booking_update&bike=$bike&lock_state=unlocking$and_station_state_unlocked&voltage=39&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_unlocking"},"[ booking_update_unlocking ]---> $booking_update_unlocking")),"\n";
|
||||
|
||||
my $booking_update_occupied_unlocking = "$uriop?request=booking_update&bike=$bike&state=occupied&lock_state=unlocking$and_station_state_unlocked&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_occupied_unlocking"},"[ booking_update_occupied_unlocking ]---> $booking_update_occupied_unlocking")),"\n";
|
||||
|
||||
my $booking_update_unlocked = "$uriop?request=booking_update&bike=$bike&lock_state=unlocked$and_station_state_unlocked&voltage=39&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_unlocked"},"[ booking_update_unlocked ]---> $booking_update_unlocked")),"\n";
|
||||
|
||||
my $booking_update_oc_ul = "$uriop?request=booking_update&bike=$bike&state=occupied&lock_state=unlocked$and_station_state_unlocked&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_oc_ul"},"[ booking_update_oc_ul ]---> $booking_update_oc_ul")),"\n";
|
||||
my $booking_update_occupied_unlocked = "$uriop?request=booking_update&bike=$bike&state=occupied&lock_state=unlocked$and_station_state_unlocked&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_update_occupied_unlocked"},"[ booking_update_occupied_unlocked ]---> $booking_update_occupied_unlocked")),"\n";
|
||||
|
||||
my $booking_request_oc_uling = "$uriop?request=booking_request&bike=$bike&state=occupied&lock_state=unlocking$and_station_state_unlocked&authcookie=$coo";
|
||||
print $q->div({-style=>'margin:15px;'},$q->a({-target=>'_blank', -href=>"$booking_request_oc_uling"},"[ booking_request_oc_unlocking ]---> $booking_request_oc_uling")),"\n";
|
||||
|
|
|
@ -43,9 +43,9 @@ sub tpl(){
|
|||
my $coo = $q->cookie('domcookie') || $q->param('sessionid') || "";
|
||||
|
||||
#my $api_test = "sharee_kn";
|
||||
my $api_test = "sharee_fr01"; my $bike="FR1538";
|
||||
#my $api_test = "sharee_fr01"; my $bike="FR1538";
|
||||
#my $api_test = "sharee_wue";
|
||||
#my $api_test = "sharee_sx"; my $bike="SX1150";
|
||||
my $api_test = "sharee_sx"; my $bike="S3X1001";
|
||||
#my $api_test = "sharee_ren"; my $bike="REN2";
|
||||
print $q->div({-style=>'float:right;text-align:right;height:25px;padding:6px 15px;background-color:white'},$q->a({-style=>"background-color:#ffffff;color:#$bgcolor1;", -href=>"$varenv->{metahost}/src/scripts/tests/index.pl?sessionid=$coo\&api_test=$api_test\&bike=$bike", -target=>'_blank'}," [ tests --> $api_test ] "),"$users_sharee->{txt08}",$q->a({-style=>"color:#$bgcolor1;", -href=>"logout_sharee$session"},"logout")),"\n";
|
||||
|
||||
|
|
|
@ -49,9 +49,9 @@ sub tpl(){
|
|||
if($users_sharee->{c_id} eq $varenv->{superu_id} || $dbt->{copri_conf}->{stage} eq "test"){
|
||||
my $coo = $q->cookie('domcookie') || $q->param('sessionid') || $dbt->{website}->{$varenv->{syshost}}->{merchant_id};
|
||||
#my $api_test = "sharee_kn";
|
||||
my $api_test = "sharee_fr01"; my $bike="FR1538";
|
||||
#my $api_test = "sharee_fr01"; my $bike="FR1538";
|
||||
#my $api_test = "sharee_wue";
|
||||
#my $api_test = "sharee_sx"; my $bike="SX1150";
|
||||
my $api_test = "sharee_sx"; my $bike="S3X1001";
|
||||
#my $api_test = "sharee_ren"; my $bike="REN2";
|
||||
print $q->div({-style=>'float:right;text-align:right;height:25px;padding:6px 15px;background-color:white'},$q->a({-style=>"background-color:#ffffff;color:#$bgcolor1;", -href=>"$varenv->{metahost}/src/scripts/tests/index.pl?sessionid=$coo\&api_test=$api_test\&bike=$bike", -target=>'_blank'}," [ tests --> $api_test ] ")),"\n";
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue