示例#1
0
//        array(
//            'id_roomkind' => "0",
//            'number' => "0",
//            'adult' => "2",
//            'child' => "1",
//        ),
//    );
$r1 = $asa->reserve_level_1("1", '2016-02-24', '2016-02-25', $room_detail);
////exit;
////var_dump($r1);
if (isset($r1['id_reserve_hotel'])) {
    $passengers = array("last_name" => "abdi", "first_name" => "hamid reza", "adress" => "iran_mashhad", "source" => "5897", "telephone" => "021-77651959", "melli_code" => "2120227837", "transfer" => "0", "travel_with" => "1", "nation" => "0", "message" => "test reservation", "mobile" => "09123764208", "flight_number" => "0", "flight_time" => "11 => 15", "clerk" => "clerk");
    //
    //var_dump($passengers);
    //sleep(2);
    $r2 = $asa->reserve_level_2(45773, 125, $passengers);
}
sleep(2);
if (isset($r2['id_reserve_hotel'])) {
    $r3 = $asa->reserve_level_3(45773, 125);
}
if (isset($r3['id_reserve_hotel'])) {
    //get vocher
    $asa->voucher(45773, 125);
    $r4 = $asa->reserve_Cancel(45773, 125);
    if (isset($r4['amount'])) {
        $r5 = $asa->reserve_Cancel_final(45773, 125, 100);
    }
}
//}
//$list_hotel=$asa->hotels_empty_form(5898,1,1,0,'2015-12-25','2015-12-26');
function hot_reserve_asa($refrence_id, $reserve_room_data, $check_in, $check_out, $passengers, $mobile, $email, $address)
{
    include 'asa_hotel.php';
    $db = new db_hotel();
    $asa = new asaHotelDrive($db);
    //var_dump($reserve_room_data);
    //map to Asa roomdetail
    $asa_mapped = array();
    $asa_mapped_item = array();
    foreach ($reserve_room_data as $item) {
        $asa_mapped_item['adult'] = $item['adult'];
        $asa_mapped_item['id_roomkind'] = $item['id_room_source'];
        $asa_mapped_item['number'] = 1;
        $asa_mapped_item['child'] = $item['child'];
        array_push($asa_mapped, $asa_mapped_item);
    }
    //var_dump($reserve_room_data);
    $hotel_source_id = $reserve_room_data[1]['id_source_hotel'];
    $reserve = $asa->reserve_level_1($hotel_source_id, $check_in, $check_out, $asa_mapped);
    //    echo "TEST 13 \n\r";
    if (isset($reserve['error'])) {
        return $reserve;
    }
    $id_reserve_hotel = $reserve['id_reserve_hotel'];
    $id_reserve_asa = $reserve['id_reserve_asa'];
    //map passengers to Asa Format
    $asa_passenger_mapped_item = array();
    $asa_passenger_mapped = array();
    foreach ($passengers as $room) {
        foreach ($room as $pitem) {
            $asa_passenger_mapped_item = array("last_name" => $pitem['family'], "first_name" => $pitem['name'], "adress" => $pitem['name'], "source" => $pitem['name'], "telephone" => $pitem['name'], "melli_code" => $pitem['name'], "transfer" => $pitem['name'], "travel_with" => $pitem['name'], "nation" => "0", "message" => $pitem['name'], "mobile" => $pitem['name'], "flight_number" => $pitem['name'], "flight_time" => $pitem['name'], "clerk" => $pitem['name']);
            array_push($asa_passenger_mapped, $asa_passenger_mapped_item);
        }
    }
    $level_2 = $asa->reserve_level_2($id_reserve_hotel, $id_reserve_asa, $asa_passenger_mapped[0]);
    if (isset($level_2['error'])) {
        return $level_2;
    }
    $id_reserve_hotel = $level_2['id_reserve_hotel'];
    $id_reserve_asa = $level_2['id_reserve_asa'];
    //    $query = "INSERT INTO `hot_reserve_extra` (`id`, `source_id`,`refrence_id`, `val`, `value`) VALUES (NULL, '6', 'id_reserve_hotel',$refrence_id, '" . $id_reserve_hotel . "');";
    $query = "INSERT INTO `hot_reserve_extra` (`id`, `source_id`, `refrence_id`, `val`, `value`) VALUES (NULL, '6', '{$refrence_id}', 'id_reserve_hotel', '{$id_reserve_hotel}');";
    $db->query($query);
    //    $query = "INSERT INTO `hot_reserve_extra` (`id`, `source_id`,`refrence_id` ,`val`, `value`) VALUES (NULL, '6', 'id_reserve_asa',$refrence_id, '" . $id_reserve_asa . "');";
    $query = "INSERT INTO `hot_reserve_extra` (`id`, `source_id`, `refrence_id`, `val`, `value`) VALUES (NULL, '6', '{$refrence_id}', 'id_reserve_asa', '{$id_reserve_asa}');";
    $db->query($query);
    $out['refrence_id'] = $refrence_id;
    $db->close();
    return $out;
}