| Server IP : 103.234.187.230 / Your IP : 216.73.216.216 Web Server : Apache System : Linux lserver42043-ind.megavelocity.net 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64 User : apache ( 48) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/b2bzend/ |
Upload File : |
<?php
function packageBookingViewAction() {
$this->view->intLoggedinUserAgencySysId = $intLoggedinUserAgencySysId = !empty($this->intLoggedinUserAgencySysId) ? $this->intLoggedinUserAgencySysId : 0;
$this->view->view = $view = $this->getRequest()->getParam('view', null);
$this->view->paytype = $paytype = $this->getRequest()->getParam('paytype');
$this->view->strTxnStatus = $strTxnStatus = $this->getRequest()->getParam('status', "");
$error_Message = $this->getRequest()->getParam('error_Message');
$this->view->strTxnId = $strTxnId = $this->getRequest()->getParam('TrxId');
$this->view->getPaymentCompanyName = 1;
$this->view->GUID = $GUID = $this->getRequest()->getParam('GUID');
$this->view->TpSysId = $TpSysId = $this->getRequest()->getParam('TpSysId');
$pid = $this->_request->getParam('pid');
$this->view->intTPSysId = $intTPSysId = base64_decode($pid);
$this->view->intCustSysId = $intCustSysId = base64_decode(trim($this->_request->getParam('cid')));
$this->view->paymentType = $paymentType = $this->_request->getParam('ptype');
$this->_crmcusttravelplan = new Travel_Model_CRM_CustomerTravelPlan();
$this->view->code = $code = $this->getRequest()->getParam('code');
$this->view->token = $token = $this->getRequest()->getParam('token');
$secureCode = Catabatic_ValidateCustomer::secureCode(trim($pid), 1);
if ($secureCode != $code) {
echo "Please check your request parameters";
exit;
}
$objAgency = new Travel_Model_TblAgency();
if (!empty($intTPSysId)) {
$objPkg = new Travel_Model_TblPackage();
$objPkgBooking = new Travel_Model_TblPackageBooking();
$objPkgBooking->TPSysId = $intTPSysId;
$travelPlanDetais = $this->_crmcusttravelplan->CheckCustomerWithLeadId($intTPSysId);
$amountPaid = $objPkgBooking->getAmountPaidForProposalByTPSysId($intTPSysId);
// $amountPaidToCustomer = $objPkgBooking->getAmountPaidtoCustomerForProposalByTPSysId($intTPSysId);
// echo "<pre>";print_r($amountPaid);die;
$this->view->TotalAmountPaid = $TotalAmountPaid = !empty($amountPaid['TotalAmountPaid']) ? $amountPaid['TotalAmountPaid'] : 0;
$objTrx = new Travel_Model_TblAgencyCustomerTrx();
$this->view->arrPaymentHistory = $arrPaymentHistory = $objTrx->getTrasactionProposalByTPSysId($intTPSysId);
$this->view->arrCustomerPaymentHistory = $arrCustomerPaymentHistory = $objTrx->getCustomerTrasactionProposalByTPSysId($intTPSysId);
if ($TotalAmountPaid > 0 && $strTxnStatus == "") {
$this->view->paymentType = "b";
$this->view->intCustSysId = $intCustSysId = $travelPlanDetais[0]['CustomerSysId'];
}
$flexiPackageList = $objPkg->getCustPackageList($intTPSysId);
$flexiPackageList['NetPrice'] = $flexiPackageList['TotalCostGen'] + $flexiPackageList['NetPrice'];
$flexiPackageList['XServiceTaxAmount'] = $flexiPackageList['ServiceProiderFee'] + $flexiPackageList['XServiceTaxAmount'];
$objPaymentDetail = new Payment_Model_Payment();
$getPaymentCompanyName = $objPaymentDetail->getPaymentCompanyNameAllDetail($flexiPackageList['AgencySysId']);
$this->view->insuranceData = $insuranceData = $objPkgBooking->GetAgencyInsuranceData($flexiPackageList['AgencySysId']);
$this->view->getCancellationProtectionPrice = $objPkg->getCancellationProtectionPrice($flexiPackageList['AgencySysId']);
$this->view->TcsSettingDetail = $TcsSettingDetail = $objAgency->getTcsSettingDetail($flexiPackageList['AgencySysId'], 1);
$this->view->getAgencyBookingFromField = $getAgencyBookingFromField = $objAgency->getAgencyBookingFromField($flexiPackageList['AgencySysId']);
$addonsData = $addonsDataSuccess = $addonsVisaData = array();
$addonsDataArr = $objPkg->getTravelPlanAddonServicesMultipleIds($flexiPackageList['AgencySysId'], $intTPSysId, array(21, 6), array());
foreach ($addonsDataArr as $adkey => $advalue) {
if ($advalue['PlanType'] == 21) {
$addonsData[] = $advalue;
} else if ($advalue['PlanType'] == 6) {
$addonsVisaData[] = $advalue;
}
}
$visaTAx = 0;
if ($flexiPackageList['PlanType'] == 5) {
$visaTAx = isset($addonsVisaData[0]['Tax']) ? (float) $addonsVisaData[0]['Tax'] : 0;
}
$this->view->addonsData = $addonsData;
$this->view->addonsDataSuccess = $addonsDataSuccess;
$this->view->addonsVisaData = $addonsVisaData;
$arrAgencyDetails = $objAgency->getAgencyDataById($flexiPackageList['AgencySysId']);
$getCustomerDetail = $objPkgBooking->GetTravelPlanCustomerById($flexiPackageList['CustomerSysId']);
$PartnerLoginAgencySysId = $PartnerTPSysId = $PartnerLoginCustomerSysId = 0;
if (isset($token) && !empty($token)) {
$tokenDec = $this->getDec(base64_decode($token), $arrAgencyDetails['SecurityKey']);
$tokenDecDecode = json_decode($tokenDec, 1);
$PartnerLoginAgencySysId = isset($tokenDecDecode['AgencySysId']) ? (int) $tokenDecDecode['AgencySysId'] : 0;
$PartnerLoginCustomerSysId = isset($tokenDecDecode['CustomerSysId']) ? (int) $tokenDecDecode['CustomerSysId'] : 0;
$PartnerTPSysId = isset($tokenDecDecode['TPSysId']) ? (int) $tokenDecDecode['TPSysId'] : 0;
}
//echo "<pre>";print_r($tokenDecDecode);die;
$CheckPartnerLogin = ($intLoggedinUserAgencySysId > 0) ? 1 : 0;
if ($flexiPackageList['IsB2BProposal'] == 1) {
if (($PartnerLoginAgencySysId == $getCustomerDetail['AgencySysId'] && $PartnerTPSysId == $intTPSysId) || ($flexiPackageList['AgencySysId'] == 12416 )) {
$CheckPartnerLogin = 1;
}
} else {
if (($PartnerLoginCustomerSysId == $getCustomerDetail['CustomerSysId'] && $PartnerTPSysId == $intTPSysId)) {
$CheckPartnerLogin = 1;
}
}
$this->view->AgencyDetail = $arrAgencyDetails;
$this->view->getPaymentCompanyName = isset($getPaymentCompanyName['PaymentOption']) ? $getPaymentCompanyName['PaymentOption'] : '';
$this->view->PaymentMerchantId = isset($getPaymentCompanyName['PaymentMerchantId']) ? $getPaymentCompanyName['PaymentMerchantId'] : '';
if ($flexiPackageList['IsB2BProposal'] == 1) {
$MarketPlaceId = 2;
} else {
$MarketPlaceId = 1;
}
$objPackageSearch = new Gtxnetwork_Model_PackageSearch();
$this->view->arrTNCData = $arrTNCData = $objPackageSearch->packageCustomizeTermsAndConditions($flexiPackageList['AgencySysId'], $flexiPackageList['TPId']);
$this->view->IsGTXNetwork = !empty($flexiPackageList['IsGTXNetwork']) ? $flexiPackageList['IsGTXNetwork'] : '0';
$this->view->flexiPackageList = $flexiPackageList;
$gettransportdata = $this->_crmcusttravelplan->getCustomerTranportDetail($intTPSysId, 1);
$this->view->gettransportdata = $gettransportdata;
$flexiPackageItenList = $objPkg->getCustPackageItenList($intTPSysId);
$this->view->flexiPackageItenList = $flexiPackageItenList;
if ($flexiPackageList['IsPaymentFrom'] == 1) {
$this->_helper->layout->setLayout('layout-package-book-website');
} else {
$this->_helper->layout->setLayout('layout-package-book');
}
$gettransportoption = $objPkg->GetTransPortOption($intTPSysId);
$totaltransport = array_sum(array_column($gettransportoption, 'total'));
$this->view->totaltransportCount = $totaltransport;
$packType = $flexiPackageList['PackSpecType'];
if ($flexiPackageList['PlanType'] == 11) {
} else {
if ($flexiPackageList['PackSpecType'] == '3') { // only for dynamic proposal
$gettransportoption = $objPkg->GetTransPortOption($intTPSysId);
$totaltransport = array_sum(array_column($gettransportoption, 'total'));
$this->view->totaltransportCount = $totaltransport;
$catID = $this->getRequest()->getParam('cID');
$mealID = $this->getRequest()->getParam('mID');
$this->view->catID = $catID = !empty($catID) ? $catID : $flexiPackageList['EconomyMask']; // only for dynamic
$flexiPackageHotelsList = $objPkg->getCustPackageHotelsList($intTPSysId, @$catID, $packType);
$getotherservices = $this->_crmcusttravelplan->GetCustomerTravelPlanOtherServicesDisplay($intTPSysId);
$gettransportdata = $this->_crmcusttravelplan->GetAllTransportOption($intTPSysId);
$this->view->getotherservices = $getotherservices;
$this->view->gettransportdata = $gettransportdata;
$flexiPackageHotelListArr1 = $flexiPackageHotelMealPlanWiseListArr = array();
for ($h = 0; $h < count(@$flexiPackageHotelsList); $h++) {
if ($flexiPackageHotelsList[$h]['IsSelectedOnPkg'] == '1') {
$flexiPackageHotelListArr1[] = $flexiPackageHotelsList[$h];
$flexiPackageHotelMealPlanWiseListArr[$flexiPackageHotelsList[$h]['MealPlanType']][] = $flexiPackageHotelsList[$h];
}
}
$totalDaysNightsArr = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getPackageTotalNoOfDays($flexiPackageItenList);
$totalNight = $totalDaysNightsArr['totalnights'];
$PackageCostCalType = $flexiPackageList['PackageCostCalType'];
if ($PackageCostCalType) {
$PossibleCombinationsOfMealPlanArr = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getPossibleCombinationsOfMealPlan($flexiPackageHotelListArr1, $totalNight, $catID);
$this->view->possibleCombinationsOfMealPlanArr = $PossibleCombinationsOfMealPlanArr;
}
$this->view->mID = $mID = !empty($mealID) ? $mealID : $flexiPackageList['SharedMealPlanType'];
$this->view->flexiPackageHotelsList = !empty($PackageCostCalType) ? $flexiPackageHotelMealPlanWiseListArr[$mID] : $flexiPackageHotelsList;
$marketwiseratebyo = $this->_crmcusttravelplan->GetMarketWiseRateBYOReadyMade($intTPSysId, @$catID, @$tourID, $mID, $MarketPlaceId);
$this->view->marketwiseratebyo = $marketwiseratebyo;
} else { // condition for readymade package
$flexiPackageHotelsList = $objPkg->getCustPackageHotelsListReadymade($intTPSysId);
$this->view->flexiPackageHotelsList = $flexiPackageHotelsList;
$getotherservices = $this->_crmcusttravelplan->GetCustomerTravelPlanOtherServicesDisplay($intTPSysId, 1);
$this->view->getotherservices = $getotherservices;
}
// new Updated Code added on 09/11/2017....
/* Baljeet Code starts */
//Get Package Places
$flexiPackagePlaces = $objPkg->getCustomerPackagePlacesList($intTPSysId);
$this->view->flexiPackagePlaces = $flexiPackagePlaces;
//Get Package Activity
// $flexiPackageActivityList = $objPkg->getCustPackageActivityList($intTPSysId);
$flexiPackageActivityList = array();
$this->view->flexiPackageActivityList = $flexiPackageActivityList;
//Get Package Sightseen
$flexiPackageSightseenList = $objPkg->getCustPackageSightseenList($intTPSysId);
$this->view->flexiPackageSightseenList = $flexiPackageSightseenList;
//Get Package Flight
$flexiPackageFlight = $objPkg->getCustPackageAir($intTPSysId);
$this->view->flexiPackageFlight = $flexiPackageFlight;
}
$arrPkgDetails = $objPkgBooking->getPackageTravelPlanDetails();
// echo "<pre>";print_r($arrPkgDetails[0]['CouponCode']);echo "</pre>";die('die');
if (!empty($arrPkgDetails)) {
$arrPkg = array();
$intTPintSysId = '';
$strIteneryCities = '';
foreach ($arrPkgDetails as $Pkgresult) {
$arrPkg['PkgTitle'] = $Pkgresult['PkgTitle'];
$arrPkg['StartDate'] = $Pkgresult['StartDate'];
$arrPkg['ValidTill'] = $Pkgresult['ValidTill'];
if (stripos($strIteneryCities, $Pkgresult['Cities']) === false) {
$strIteneryCities .= $Pkgresult['Cities'] . ' ';
}
$intTPintSysId .= $Pkgresult['TPintSysId'] . ',';
$arrPkg['CustomerSysId'] = $Pkgresult['CustomerSysId'];
$arrPkg['AgencySysId'] = $Pkgresult['AgencySysId'];
$strStatusType = $Pkgresult['StatusType'];
}
$arrPkg['TPintSysId'] = trim($intTPintSysId, ',');
$arrPkg['IteneryCities'] = trim($strIteneryCities, ' ');
$arrPkg['PkgDuration'] = $Pkgresult['Sequence'];
$arrPkg['DiscountType'] = $Pkgresult['DiscountType'];
$arrPkg['DiscountVal'] = $Pkgresult['DiscountVal'];
$arrPkg['MarkUp'] = $Pkgresult['MarkUp'];
$arrPkg['CustomDiscount'] = $Pkgresult['CustomDiscount'];
$arrPkg['AdvBookingPercent'] = $Pkgresult['AdvBookingPercent'];
$arrPkg['AdvBookingDays'] = $Pkgresult['AdvBookingDays'];
$arrPkg['AgentSysId'] = $Pkgresult['AgentSysId'];
$arrPkg['SupplierSysId'] = $Pkgresult['SupplierSysId'];
$arrPkg['PlanType'] = $Pkgresult['PlanType'];
$arrPkg['IsCardChrgToCustomer'] = $Pkgresult['IsCardChrgToCustomer'];
$arrPkg['EconomyMask'] = $Pkgresult['EconomyMask'];
$strRoomInfoJson = $arrPkgDetails[0]['RoomInfoJson'];
$arrAgentDetails = $objAgency->getAgencyUserDataById($arrPkg['AgentSysId']); //get agent details
$AgencySysId = $arrAgentDetails['AgencySysId'];
//get agent details
$agentDetails = $arrAgentDetails['FirstName'] . ' ' . $arrAgentDetails['LastName'] . ', ' . $arrAgentDetails['ContactNo1'] . ', ' . $arrAgentDetails['EmailId'];
$this->view->AgentDetails = $agentDetails;
$this->view->arrPkgDetails = $arrPkg;
$arrTrevllerDetails = $objPkgBooking->GetAgencyCustomerDetailsForBooking($intTPSysId);
// echo "<pre>";print_r($arrTrevllerDetails);die;
if (!empty($arrTrevllerDetails)) {
foreach ($arrTrevllerDetails as $paxRes) {
$IsLeadPax = trim($paxRes[0]['IsLeadPax']);
if ($IsLeadPax == 1) {
$this->view->leadCustRelation = trim($paxRes[0]['Relation']);
$leadCustSalutation = $this->view->leadCustSalutation = trim($paxRes[0]['Title']);
$leadCustFirstName = $this->view->leadCustFirstName = trim($paxRes[0]['FirstName']);
$leadCustLastName = $this->view->leadCustLastName = trim($paxRes[0]['LastName']);
$leadCustMemberSysId = $this->view->leadCustMemberSysId = (int) $paxRes[0]['MemberSysId'];
$this->view->leadCustDOB = $paxRes[0]['DOB'];
$this->view->leadCustPassportNo = $paxRes[0]['PassportNo'];
$this->view->leadCustPassportIssue = $paxRes[0]['PassportIssue'];
$this->view->leadCustPassportExpiry = $paxRes[0]['PassportExpiry'];
$this->view->leadCustCityId = trim($paxRes[0]['CitySysId']);
$this->view->leadCustCountrySysId = trim($paxRes[0]['ContSysId']);
$this->view->leadCustStateOrZoneSysId = trim($paxRes[0]['StateOrZoneSysId']);
$this->view->leadCustPinCode = trim($paxRes[0]['PinCode']);
$this->view->leadCustAddress = trim($paxRes[0]['Address']);
$leadCustEmailId = $this->view->leadCustEmailId = trim($paxRes[0]['EmailId']);
$SecondaryEmail = $this->view->leadSecondaryEmail = trim($paxRes[0]['SecondaryEmail']);
$SecondaryPhone = $this->view->leadSecondaryPhone = trim($paxRes[0]['SecondaryPhone']);
$this->view->leadCustContacts = (isset($paxRes[0]['ContactsMember']) && $paxRes[0]['ContactsMember'] != '') ? $paxRes[0]['ContactsMember'] : trim($paxRes[0]['Contacts']);
$this->view->leadCustCountrycodeSelf = (isset($paxRes[0]['countrycodeMember']) && $paxRes[0]['countrycodeMember'] != '') ? $paxRes[0]['countrycodeMember'] : trim($paxRes[0]['countrycodeCustomer']);
$this->view->PanCard = trim($paxRes[0]['PanCardMember']);
$this->view->GstNumber = trim($paxRes[0]['GstNumberMember']);
}
}
$this->view->arrTrevllerDetails = $arrTrevllerDetails;
}
$getCreditBalanceForAgency = array();
if (!empty($arrPkg['CustomerSysId'])) {
if ($getCustomerDetail['IsB2bAgent'] == 1 && $flexiPackageList['IsB2BProposal'] == 1) {
$getCreditBalanceForAgency = $objAgency->getCreditBalanceForAgency($getCustomerDetail['AgencySysId']);
if (is_array($getCreditBalanceForAgency)) {
$CheckPartnerLogin = 1;
} else {
$CheckPartnerLogin = 0;
}
} else {
$URL = $this->baseUrl . '/gtxwebservices/customer-wallet/check-wallet-balance/';
$updateCreditBalance = array(
'CustomerSysId' => $arrPkg['CustomerSysId']
);
$SecurityKey = $arrAgencyDetails['SecurityKey'];
$updateBalance = Zend_Controller_Action_HelperBroker::getStaticHelper("Flight")->getBalanceFromB2CWallet($updateCreditBalance, $URL, $SecurityKey);
if ($updateBalance['status'] == 1) {
$BalanceAmount = isset($updateBalance['WalletBalance']['0']['BalanceAmount']) ? $updateBalance['WalletBalance']['0']['BalanceAmount'] : 0;
$getCreditBalanceForAgency = array("BalanceAmount" => $BalanceAmount);
$CheckPartnerLogin = 1;
} else {
$CheckPartnerLogin = 0;
}
}
$this->view->CheckPartnerLogin = $CheckPartnerLogin;
$this->view->getCreditBalanceForAgency = $getCreditBalanceForAgency;
$leadCustEmailId = $this->view->leadCustEmailIdSelf = trim($getCustomerDetail['EmailId']);
$leadCustContacts = $this->view->leadCustContactsSelf = trim($getCustomerDetail['Contacts']);
$leadCustCountrycodeSelf = $this->view->leadCustCountrycodeSelf = trim($getCustomerDetail['countrycode']);
if ($flexiPackageList['IsB2BProposal'] != 1) {
$this->view->leadCustSalutationSelf = trim($getCustomerDetail['Title']);
$this->view->leadCustFirstNameSelf = trim($getCustomerDetail['FirstName']);
$this->view->leadCustLastNameSelf = trim($getCustomerDetail['LastName']);
if ($leadCustFirstName == '') {
$leadCustFirstName = $this->view->leadCustFirstName = trim($getCustomerDetail['FirstName']);
}
if ($leadCustLastName == '') {
$leadCustLastName = $this->view->leadCustLastName = trim($getCustomerDetail['LastName']);
}
$this->view->leadCustDOBSelf = $getCustomerDetail['DOB'];
$this->view->leadCustCityIdSelf = trim($getCustomerDetail['CitySysId']);
$this->view->leadCustAddressSelf = trim($getCustomerDetail['Address']);
$this->view->leadCustEmailId = trim($leadCustEmailId);
$this->view->leadCustContacts = trim($leadCustContacts);
$this->view->leadCustCountrycodeSelf = trim($leadCustCountrycodeSelf);
$this->view->leadCustPassportNoSelf = trim($getCustomerDetail['PassportNo']);
$this->view->leadCustPassportIssueSelf = $getCustomerDetail['PassportIssue'];
$this->view->leadCustPassportExpirySelf = ($getCustomerDetail['PassportExpiry']);
$this->view->leadCustPinCodeSelf = trim($getCustomerDetail['PinCode']);
$this->view->leadCustRelationSelf = trim($getCustomerDetail['Relation']);
$this->view->leadCustCountrySysIdSelf = trim($getCustomerDetail['CountrySysId']);
$this->view->leadCustStateOrZoneSysIdSelf = trim($getCustomerDetail['StateOrZoneSysId']);
$this->view->PanCard = trim($getCustomerDetail['PanCard']);
$this->view->GstNumber = trim($getCustomerDetail['GstNumber']);
$this->view->leadSecondaryEmail = trim($getCustomerDetail['SecondaryEmail']);
$this->view->leadSecondaryPhone = trim($getCustomerDetail['SecondaryPhone']);
} else {
}
}
// echo "<pre>";print_r($getCustomerDetail);die;
$AgentsCustomServiceTaxAmountFlight = 0;
if (!empty($arrPkg['TPintSysId'])) {
$arrAirDetails = $objPkgBooking->getPackageTravelPlanAir($arrPkg['TPintSysId']);
$AgentsCustomServiceTaxAmountFlight = isset($arrAirDetails[0]['AgentsCustomServiceTaxAmount']) ? (float) $arrAirDetails[0]['AgentsCustomServiceTaxAmount'] : 0;
$this->view->arrAirDetails = $arrAirDetails;
$arrSightSeeingDetails = $objPkgBooking->getPackageTravelPlanSightSeeing($arrPkg['TPintSysId']);
$this->view->arrSightSeeingDetails = $arrSightSeeingDetails;
}
$AgentsCustomServiceTaxAmountFlight = 0;
$arrPackageTermsAndConditions = $objPkgBooking->getPackageTermsAndConditions($intTPSysId);
$this->view->arrPackageTermsAndConditions = $arrPackageTermsAndConditions;
//echo "<pre>";print_r($arrPackageTermsAndConditions);die;
if ($flexiPackageList['PlanType'] == 11) {
$arrPkg['ShareCurrency'] = "1_INR";
}
$objCust = new Travel_Model_CRM_CustomerTravelPlan();
$StartDateTime = (array) $arrPkg['StartDate'];
$TripDate = date("Y-m-d", strtotime($StartDateTime['date']));
$this->view->marketPlaceRateArr = $marketPlaceRateArr = $objCust->getCustPackRate($intTPSysId, $TripDate, $MarketPlaceId);
$tppackRate = $objCust->getCustTravelPackRate($intTPSysId, $TripDate, $MarketPlaceId);
// Package Cost.....
// echo "exxit"; exit;
// echo "<pre>";print_r($arrPkg);
// echo "<pre>";print_r($marketPlaceRateArr);
// echo "<pre>";print_r($tppackRate);exit;
$arrPkgCost = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->GetAgencyCustomerTravelPlanCost($intTPSysId, $strRoomInfoJson, $arrPkg, @$marketPlaceRateArr[0], @$tppackRate[0]);
// echo "<pre>";print_r($arrPkgDetails);exit;
$BaseCurrencySymbol = Zend_Controller_Action_HelperBroker::getStaticHelper('Currency')->getCurrencySymbolById($arrPkgCost['baseCurrencyId']);
$finalPackageCostWith_extramarkupNdiscount = round($arrPkgDetails[0]['NetPrice']);
$packageServiceTaxCost = round((int) $arrPkgDetails[0]['AgentServiceTaxAmount'] + (int) $arrPkgDetails[0]['XServiceTaxAmount'] + (int) $arrPkgDetails[0]['AgentsCustomServiceTaxAmount'] - (int) $arrPkgDetails[0]['ServiceTaxOnCustomDiscount']);
$ExtraMarkUp = round((int) $arrPkgDetails[0]['ExtraMarkUp']);
$Discount = (int) $arrPkgDetails['CustomDiscount'];
$CouponDiscount = (int) $arrPkgDetails['DiscountVal'];
$taxdetailforagency = Zend_Controller_Action_HelperBroker::getStaticHelper('Hotel')->getApiServiceTax('', "P", 0);
$tax = (trim($taxdetailforagency['ServiceTaxPercentage']) > 0) ? trim(floatval($taxdetailforagency['ServiceTaxPercentage'])) : 0;
$serviceTax = round(($arrPkg['MarkUp'] - $arrPkg['CustomDiscount']) * $tax / 100);
$exchangerateM = 1;
if ($flexiPackageList['PackSpecType'] != 3) {
/* -----------------Change curr Code--------------------------- */
$packageSharedCurrency = $flexiPackageList['CurrencyType'];
$StartDateTime = (array) $flexiPackageList['StartDate'];
$TripDate = date("Y-m-d", strtotime($StartDateTime['date']));
// $tripdate = date("Y-m-d", strtotime(str_replace('/', '-', @$_REQUEST['tripdate'])));
$marketwiserate = $objPkg->getCustPackRate($flexiPackageList['TPSysId'], '', $TripDate);
$packageBaseCurrency = $marketwiserate[0]['CurrencyType'];
$exchangerateM = $objPkg->currencyExchangeRate($packageSharedCurrency, $arrPkgCost['baseCurrencyId']);
$exchangerate = 1; //because price alresy converted in $flexiPackageList['NetPrice']
// echo '<pre>';print_r($flexiPackageList);die;
$finalPackageCostWith_extramarkupNdiscount = $packageBaseCurrencyNetPrice = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->convertRatetoBaseCurrency($flexiPackageList['NetPrice'], $exchangerate);
$packageServiceTaxCostSum = round(((float) $flexiPackageList['AgentServiceTaxAmount'] + (float) $flexiPackageList['XServiceTaxAmount'] + (float) $flexiPackageList['AgentsCustomServiceTaxAmount'] - (float) $flexiPackageList['ServiceTaxOnCustomDiscount'] + $AgentsCustomServiceTaxAmountFlight + $visaTAx), 2);
$packageServiceTaxCost = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->convertRatetoBaseCurrency($packageServiceTaxCostSum, $exchangerate);
$Discount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->convertRatetoBaseCurrency($flexiPackageList['CustomDiscount'], $exchangerate);
$CouponDiscount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->convertRatetoBaseCurrency($flexiPackageList['DiscountVal'], $exchangerate);
//echo "<pre>";print_r($TotalAmountPaid);exit;
$this->view->finalPackageCostWithMarkupnTaxM = $finalPackageCostWithMarkupnTax = round($packageBaseCurrencyNetPrice, 2);
$this->view->finalPackageCostWithMarkupnTax = $finalPackageCostWithMarkupnTaxM = round(($packageBaseCurrencyNetPrice * $exchangerateM), 2);
/* -----------------Change curr Code--------------------------- */
} else {
// echo "shagdahsgdhjgsdjsa"; exit;
$this->view->finalPackageCostWithMarkupnTaxM = $finalPackageCostWithMarkupnTaxM = $finalPackageCostWith_extramarkupNdiscount;
$this->view->finalPackageCostWithMarkupnTax = $finalPackageCostWithMarkupnTax = $finalPackageCostWith_extramarkupNdiscount;
}
$this->view->BaseCurrencySymbol = $BaseCurrencySymbol;
$this->view->packageServiceTaxCost = $packageServiceTaxCost;
$this->view->Discount = $Discount;
$this->view->CouponDiscount = $CouponDiscount;
$this->view->CouponCode = (isset($arrPkgDetails[0]['CouponCode']) && trim($arrPkgDetails[0]['CouponCode']) != '' && (int) $arrPkgDetails[0]['IsCoupon'] == 1) ? trim($arrPkgDetails[0]['CouponCode']) : '';
$advanceBookingAmount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $finalPackageCostWithMarkupnTaxM);
$advancePkgBookingArray['AdvBookingPercent'] = $arrPkg['AdvBookingPercent'];
$advancePkgBookingArray['bookingAmount'] = $advanceBookingAmount;
$this->view->advanceBookingDetailsArray = $advancePkgBookingArray;
$this->view->arrPkgCost = $arrPkgCost;
//}
$Customer = new Zend_Session_Namespace('CustomerPkgEntries');
if (isset($Customer->PkgCustomerMembersEntries[0]['paymentType']) && $Customer->PkgCustomerMembersEntries[0]['paymentType'] == 'advance') { // advanceBooking with combination of (Baseprce + markup+Tax)
$premiumAmount = $Customer->PkgCustomerMembersEntries[0]['paymentVal'];
$baseAmount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['FinalCost']);
$tax = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['Tax']);
$finalDiscount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['FinalDiscount']);
$finalMarkUp = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['FinalMarkUp']);
} else if (isset($Customer->PkgCustomerMembersEntries[0]['paymentType']) && $Customer->PkgCustomerMembersEntries[0]['paymentType'] == 'flex') { // advanceBooking with combination of (Baseprce + markup+Tax)
$premiumAmount = $Customer->PkgCustomerMembersEntries[0]['paymentVal'];
$baseAmount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['FinalCost']);
$tax = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['Tax']);
$finalDiscount = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['FinalDiscount']);
$finalMarkUp = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getAdvanceBookingDetails($arrPkg['AdvBookingPercent'], $arrPkgCost['FinalMarkUp']);
} else {
$premiumAmount = $finalPackageCostWith_extramarkupNdiscount; // combination of (Baseprce + markup+Tax)
$baseAmount = $arrPkgCost['FinalCost'];
$tax = $arrPkgCost['Tax'];
$finalDiscount = $arrPkgCost['FinalDiscount'];
$finalMarkUp = $arrPkgCost['FinalMarkUp'];
}
$premiumAmountM = $premiumAmount * $exchangerateM;
$checkVisaFinalDocument = array();
if ($flexiPackageList['PlanType'] == 6) {
$finalMarkUp = $flexiPackageList['MarkUp'] + $flexiPackageList['AgencyMarkUp'] + $flexiPackageList['GTXMarkUp'];
$TblVisa = new Travel_Model_TblVisa();
$checkVisaFinalDocument = $TblVisa->checkVisaFinalDocument($flexiPackageList['TPSysId']);
$VisaRatesDeList = $TblVisa->VisaInventoryDeList($flexiPackageList['TPId'], $flexiPackageList['AgencySysId']);
$this->view->ChildAge = isset($VisaRatesDeList['ChildAge']) && !empty($VisaRatesDeList['ChildAge']) ? $VisaRatesDeList['ChildAge'] : '';
$this->view->PassportExpiryDays = isset($VisaRatesDeList['PassportExpiryDays']) && !empty($VisaRatesDeList['PassportExpiryDays']) ? $VisaRatesDeList['PassportExpiryDays'] : '';
}
$this->view->checkVisaFinalDocument = $checkVisaFinalDocument;
$finalMarkUpM = $finalMarkUp * $exchangerateM;
$packageServiceTaxCostM = $packageServiceTaxCost * $exchangerateM;
$ExtraMarkUpM = $ExtraMarkUp * $exchangerateM;
$this->view->finalMarkUp = $finalMarkUp;
$markuparray['intAgentMarkUpAmount'] = $ExtraMarkUpM;
$markuparray['intAgencyMarkUpAmount'] = $finalMarkUpM;
$markuparray['intGTXMarkUpAmount'] = 0;
$markuparray['intTotalAmount'] = $baseAmount;
$markuparray['intTax'] = $tax;
$markuparray['intTotalGTXTaxAmount'] = 0;
$markuparray['GTXServiceTaxAmount'] = 0;
$markuparray['AgentServiceTaxAmount'] = 0;
$markuparray['AgentsCustomServiceTaxAmount'] = 0;
$markuparray['Pax'] = $arrPkgCost['TotalPax'];
$markuparray['SupplierSourceStr'] = $arrPkg['SupplierSysId'] . '/myinventory';
$markuparray['TotalDiscount'] = $finalDiscount;
$markuparray['CurrencyType'] = $arrPkgCost['CurrencyId']; //currency Id
$markuparray['MarketPlaceId'] = 1; //b2b or b2c
$markuparray['packageServiceTaxCost'] = $packageServiceTaxCostM;
// echo "<pre>";print_r($markuparray);exit;
$encryptMarkUpData = $this->getEnc(json_encode($markuparray));
$this->view->guid = $this->GUID();
$CancellationProtectionData['CancellationProtection'] = $flexiPackageList['IsCancellationProtection'];
$CancellationProtectionData['CancellationProtectionPrice'] = $flexiPackageList['CancellationProtectionPrice'];
$CancellationProtectionData['finalPackageCostWithMarkupnTax'] = $finalPackageCostWithMarkupnTax;
$encryptCancellationProtectionData = $this->getEnc(json_encode($CancellationProtectionData));
$this->view->encryptCancellationProtectionData = $encryptCancellationProtectionData;
$Tax = isset($addonsData[0]['Tax']) ? (int) trim($addonsData[0]['Tax']) : 0;
$walletBlance = (($flexiPackageList['IsCancellationProtection'] == 1) ? (int) ($premiumAmountM + $flexiPackageList['CancellationProtectionPrice'] + $Tax - $TotalAmountPaid) : $premiumAmountM + $Tax - $TotalAmountPaid);
$this->view->walletCode = $this->walletCode($arrPkg['AgentSysId'], $this->view->guid, round($walletBlance), $arrPkg['AgencySysId'], $intTPSysId, $intCustSysId, $encryptMarkUpData);
$this->view->securecode = $this->secureCode($intCustSysId, $this->view->guid);
$IsB2CSite = !empty($arrAgencyDetails['IsB2CSite']) ? $arrAgencyDetails['IsB2CSite'] : 0;
$IsPaymentGateway = !empty($arrAgencyDetails['IsPaymentGateway']) ? $arrAgencyDetails['IsPaymentGateway'] : 0;
if ($IsPaymentGateway == 1) {
$paymentModel = new Payment_Model_Payment();
$checkPyamentgatewayType = $paymentModel->checkPyamentgatewayType($arrPkg['AgencySysId']);
$this->view->paymentgatewayDetail = $checkPyamentgatewayType;
if (!empty($checkPyamentgatewayType) && $checkPyamentgatewayType[0]['PaymentOption'] == 2) {
$this->view->strPayWithWalletUrl = Catabatic_Helper::getSiteUrl() . "payment/razor-pay/success";
} else if (!empty($checkPyamentgatewayType) && $checkPyamentgatewayType[0]['PaymentOption'] == 5) {
$this->view->strPayWithWalletUrl = Catabatic_Helper::getSiteUrl() . "payment/converge-pay";
} else {
if (!empty($IsB2CSite) && !empty($IsPaymentGateway)) {
$this->view->strPayWithWalletUrl = Catabatic_Helper::getSiteUrl() . "payment/payment-options/customer-pay-by-agency";
} else {
if (!empty($IsPaymentGateway)) {
$this->view->strPayWithWalletUrl = Catabatic_Helper::getSiteUrl() . "payment/payment-options/customer-pay-by-agency";
} else {
$this->view->strPayWithWalletUrl = Catabatic_Helper::getSiteUrl() . "payment/payment-options/customer-pay";
}
}
}
}
$this->view->strRechargeNowUrl = Catabatic_Helper::getSiteUrl() . "payment/payment-options";
$this->view->strTrxType = ($flexiPackageList['PlanType'] == 2) ? 'H' : 'P'; //TrxType
$this->view->intPlanType = $arrPkg['PlanType'];
$this->view->IsCardChrgToCustomer = $arrPkg['IsCardChrgToCustomer'];
$this->view->encryptMarkUpData = $encryptMarkUpData;
// for wallet use
$fullBaseUrl = $this->view->baseUrl();
$this->view->strReturnURL = $fullBaseUrl . "/package-booking/package-booking-view/pid/" . base64_encode($intTPSysId) . "/cid/" . base64_encode($intCustSysId) . "/code/" . $code;
$this->view->strErrorURL = $fullBaseUrl . "/package-booking/package-booking-view/pid/" . base64_encode($intTPSysId) . "/cid/" . base64_encode($intCustSysId) . "/code/" . $code;
/* Baljeet Code ends */
$Customer = new Zend_Session_Namespace('CustomerPkgEntries');
if ($strStatusType == '8' && empty($Customer->PkgCustomerMembersEntries)) {
$this->view->ErrorCode = 8;
} else {
$this->view->ErrorCode = 5;
}
} else {
$this->view->ErrorCode = 1;
}
} else {
$this->view->ErrorCode = 1;
}
//$strTxnStatus = $paytype = 'success';
if (!empty($strTxnStatus) && $paytype != 2) {
$path = SITE_FULL_URL . 'public/assets/images';
$pathAgency = SITE_FULL_URL . 'public/upload/media/agency/' . $AgencySysId;
if (isset($arrAgencyDetails['Logo']) && $arrAgencyDetails['Logo'] != '') {
$AgencyLogo = $pathAgency . '/' . $arrAgencyDetails['Logo'];
} else {
$AgencyLogo = $path . '/default_company_logo.jpg';
}
$paramArray = $this->_crmcusttravelplan->GetTravelPlanByCustomer($intTPSysId);
$getAgencyFinanceUserDetail = $objAgency->getAgencyFinanceUserDetail($paramArray[0]['AgencySysId']);
if (empty($getAgencyFinanceUserDetail)) {
$getAgencyFinanceUserDetail['SignatureType'] = $arrAgencyDetails['SignatureType'];
$getAgencyFinanceUserDetail['Signature'] = $arrAgencyDetails['Signature'];
$getAgencyFinanceUserDetail['EmailId'] = $arrAgencyDetails['EmailId'];
$getAgencyFinanceUserDetail['ContactNo1'] = $arrAgencyDetails['ContactNo1'];
}
//echo "<pre>";print_r($getAgencyFinanceUserDetail);die;
$paramArrayPackage = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->getPackageDetailsForEmailTemplate($intTPSysId, $paramArray[0], $paramArray[0]['EconomyMask']); //$paramArray['PackageArray']['EconomyMask'] package category
$getCurrencyType = isset($paramArray[0]['CurrencyType']) ? $paramArray[0]['CurrencyType'] : 1;
$GSTSharedModeVal = isset($paramArray[0]['GSTSharedMode']) ? $paramArray[0]['GSTSharedMode'] : 1;
$getCurrencySymbolArray = $this->_crmcusttravelplan->GetCurrencyByCurrencyType($getCurrencyType);
$currencySymbol = isset($getCurrencySymbolArray['Symbol']) ? $getCurrencySymbolArray['Symbol'] : 'INR';
$GSTF = (float) $arrPkgDetails[0]['XServiceTaxAmount'] + (float) $arrPkgDetails[0]['AgentServiceTaxAmount'] + (float) $arrPkgDetails[0]['AgentsCustomServiceTaxAmount'] - (float) $arrPkgDetails[0]['ServiceTaxOnCustomDiscount'];
if ($exchangerate > 0) {
$exchangerate = $exchangerate;
} else {
$exchangerate = 1;
}
$PickupTime = "";
$PickUpLocation = "";
$GST = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->convertRatetoBaseCurrency($GSTF, $exchangerate);
if (isset($paramArray[0]['IsBusRoutePackage']) && $paramArray[0]['IsBusRoutePackage'] == 1) {
$pickuplocationId = $paramArray[0]['pickupLocationSysId'];
$getPickupLocationData = $this->_crmcusttravelplan->getPickupLocation($pickuplocationId);
$PickUpLocation = $getPickupLocationData['pickupLocation'];
$PickupTime = $getPickupLocationData['PickupTime']->format("H:i A");
}
$paymentListArr = array();
$refundGUID = '';
foreach ($arrPaymentHistory as $kkey => $kval) {
if ($kval['TrxOrdDocId'] != 19) {
$strtime = strtotime($kval['TrxDate']->format('Y-m-d'));
$paymentListArr[$strtime . $kkey] = $kval;
} else {
$refundGUID = $kval['GUID'];
}
}
$TcsAddonServicesData = (isset($addonsData[0])) ? $addonsData[0] : 0;
$TcsTax = (isset($TcsAddonServicesData['Tax'])) ? $TcsAddonServicesData['Tax'] : 0;
$CancellationProtectionprice = (isset($paramArray[0]['IsCancellationProtection']) && $paramArray[0]['IsCancellationProtection'] == 1 && empty($paymentListArr)) ? $paramArray[0]['CancellationProtectionPrice'] : 0;
$premiumAmount1 = $premiumAmountM + $CancellationProtectionprice + $TcsTax;
$ARR_SALUTION = unserialize(ARR_SALUTION);
$leadCustSalutationName = (isset($leadCustSalutation) && !empty($leadCustSalutation)) ? $ARR_SALUTION[$leadCustSalutation] : '';
$params['GSTSharedModeVal'] = $GSTSharedModeVal;
$params['currencySymbol'] = $currencySymbol;
$params['PickUpLocation'] = $PickUpLocation;
$params['PickUpTime'] = $PickupTime;
$params['AgencySysId'] = $arrAgencyDetails['AgencySysId'];
$params['agency_logo'] = $AgencyLogo;
$params['company_name'] = $arrAgencyDetails['DisplayName'];
$params['booking_date'] = date("d/m/Y");
$params['package_cost'] = $premiumAmount;
$params['paid_amount'] = $TotalAmountPaid;
$params['paid_amount_currency'] = $amountPaid['Symbol'];
$params['balance_amount'] = round($premiumAmount1 - $TotalAmountPaid);
$params['baseCurrencySymbol'] = $BaseCurrencySymbol;
$params['GST'] = round($GST);
$params['shared_url'] = "";
$params['cust_name'] = trim($leadCustSalutationName . ' ' . $leadCustFirstName . ' ' . $leadCustLastName);
$params['cust_email'] = $leadCustEmailId;
$params['about_package'] = "";
$params['destination_city'] = $arrPkgDetails[0]['Cities'];
$params['agent_firstname'] = '';
$params['SignatureType'] = $getAgencyFinanceUserDetail['SignatureType'];
$params['agent_primarycontact'] = $getAgencyFinanceUserDetail['Signature'];
$params['file_path_location'] = $path;
$params['sendersEmailId'] = $getAgencyFinanceUserDetail['EmailId'];
$params['ContactNo1'] = $getAgencyFinanceUserDetail['ContactNo1'];
$params['agencyDisplayName'] = $arrAgencyDetails['DisplayName'] ? $arrAgencyDetails['DisplayName'] : $arrAgencyDetails['Title'];
$params['PrimaryEmail'] = $arrAgentDetails['PrimaryEmail'];
$params['arrPackage'] = $paramArrayPackage;
$params['customer_contact'] = $getCustomerDetail['Contacts'];
$params['countrycode'] = (strpos($getCustomerDetail['countrycode'], '+') !== false) ? $getCustomerDetail['countrycode'] : "+" . $getCustomerDetail['countrycode'];
$params['ProposalId'] = $intTPSysId;
$params['strTxnId'] = $strTxnId;
$params['AgentContactForSMS'] = array_unique(array($getAgencyFinanceUserDetail['ContactNo1'], $arrAgencyDetails['PrimaryContactNo']));
$params['GUID'] = @$this->getRequest()->getParam('GUID');
$params['TpSysId'] = @$this->getRequest()->getParam('TpSysId');
$params['IsCancellationProtection'] = $paramArray[0]['IsCancellationProtection'];
$params['CancellationProtectionPrice'] = $paramArray[0]['CancellationProtectionPrice'];
$params['TcsAddonServicesData'] = $TcsAddonServicesData;
$DisplayName = $arrAgencyDetails['DisplayName'] ? $arrAgencyDetails['DisplayName'] : $arrAgencyDetails['Title'];
$subject = 'Payment Confirmation from ' . $DisplayName . ' for ' . trim($paramArray[0]['Title']) . ' trip';
$bookNowLink = '';
if ($paramArray[0]['PlanType'] == 5) { //5 for package
$typename = 'package';
$isPkgReadymade = $paramArray[0]['Readymade'];
$pkgId = $paramArray[0]['TPSysId'];
$modifyPackageLink = '';
$secureCode = Zend_Controller_Action_HelperBroker::getStaticHelper('SecureCode')->secureCode(base64_encode($paramArray[0]['TPSysId']), 1);
if ($paramArray[0]['PackSpecType'] == 4) {
$modifyLink = '#';
$viewLink = $this->baseUrl . '/publicpackage/view-customer-final-package/code/' . $secureCode . '/id/' . base64_encode($paramArray[0]['TPSysId']);
} else if ($isPkgReadymade == 0) {
$viewLink = $this->baseUrl . '/package/view-byo-pkg/id/' . base64_encode($paramArray[0]['TPSysId']);
} else {
$modifyLink = '#';
$viewLink = $this->baseUrl . '/publicpackage/view-customer-final-package/code/' . $secureCode . '/id/' . base64_encode($paramArray[0]['TPSysId']);
}
$bookNowLink = $viewLink;
$paybalance = $this->baseUrl . '/package-booking/package-booking-view/pid/' . base64_encode($paramArray[0]['TPSysId']) . '/cid/' . base64_encode($paramArray[0]['CustomerSysId']) . "/code/" . $code;
}
$params['bookNowLink'] = ($bookNowLink != '') ? '<a href="' . $bookNowLink . '" style="text-decoration: none;">View Detail</a>' : '';
$params['paybalance'] = ($bookNowLink != '') ? '(<a href="' . $paybalance . '" style="text-decoration: none;">Click here to Pay Balance</a>)' : '';
if ($strTxnStatus == "success" && (round($premiumAmount1) <= round($TotalAmountPaid))) {
$StatusType = 143; //8 = Proposal Booked
$PaymentStatue = 22;
$BookingStatus = ($paramArray[0]['PlanType'] == 6) ? 108 : 21;
$objTrx = new Travel_Model_TblAgencyCustomerTrx();
$strInvoiceNumber = Zend_Controller_Action_HelperBroker::getStaticHelper("General")->generateInvoiceNumbers($AgencySysId);
$data = array("InvoiceId" => $strInvoiceNumber);
$objTrx->updateInvoiceNumber($data, $strTxnId);
$params['last_payment'] = $arrPaymentHistory[0]['NetAmount'];
$params['payment_type'] = "Full Payment";
$params['paymentStatus'] = "full";
$params['txn_status'] = "Successful";
$FirstName = (isset($paramArray[0]['FirstName']) && $paramArray[0]['FirstName'] != '') ? $paramArray[0]['FirstName'] : '';
$LastName = (isset($paramArray[0]['LastName']) && $paramArray[0]['LastName'] != '') ? $paramArray[0]['LastName'] : '';
$params['customerName'] = $FirstName . ' ' . $LastName;
$params['customer_contact'] = $paramArray[0]['Contacts'];
$emailStatus = Zend_Controller_Action_HelperBroker::getStaticHelper('EmailTemplate')->sendTransactionStatusToCustomer($leadCustEmailId, $subject, $params);
$current_time = new DateTime();
$current_time->add(new DateInterval('PT1M'));
$schedule_time = $current_time->format('Y-m-d H:i:s');
$TotalPaidAmount = trim($params['paid_amount_currency']) . ' ' . $params['paid_amount'];
$destinationPlace = trim($params['destination_city']);
$CustomerMobileNumber = trim($params['countrycode']) . '' . trim($params['customer_contact']);
$PlanTypeName = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->getPlanTypeName($paramArray[0]['PlanType']);
$PackagePlan = $PlanTypeName . " Booking";
$postData = array(
"UserSysId" => $arrPkg['AgentSysId'],
// "IsSchedule" => False,
"schedule_time" => $schedule_time,
"title" => $PackagePlan,
"body" => "Hurray! $FirstName made a booking for $destinationPlace for $TotalPaidAmount.",
//"IsButton" => True,
"URL" => $bookNowLink,
"IsCall" => true,
"mobileNo" => trim($CustomerMobileNumber)
);
if (isset($arrAgentDetails['SecurityKey'])) {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://globaltravelexchange.com/gtxwebservices/agency/create-fire-base-message',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => $postData,
CURLOPT_HTTPHEADER => array(
'securitykey:' . trim($arrAgentDetails['SecurityKey']),
//'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
}
if ($paramArray[0]['Contacts'] != '') {
$arrSMSStatisticsType = array_keys(unserialize(ARR_SMS_STATISTICS_TYPE));
$params['arrSMSStatisticsType'] = $arrSMSStatisticsType[0];
$FirstName = (isset($paramArray[0]['FirstName']) && $paramArray[0]['FirstName'] != '') ? $paramArray[0]['FirstName'] : '';
$LastName = (isset($paramArray[0]['LastName']) && $paramArray[0]['LastName'] != '') ? $paramArray[0]['LastName'] : '';
$params['customerName'] = $FirstName . ' ' . $LastName;
$params['Contacts'] = $paramArray[0]['Contacts'];
$params['DestinationPlaces'] = $paramArray[0]['DestinationPlaces'];
$params['TPSysId'] = $paramArray[0]['TPSysId'];
// $smsStatus = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->SendSmsToCustomerBooking($params);
// $smsStatusAGent = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->SendSmsToCustomerBookingAgent($params);
//$booknowurl = $smsStatus['shortlink'];
}
} else if ($strTxnStatus == "success" && (round($premiumAmount1) > round($TotalAmountPaid))) {
$StatusType = 143; //8 = Proposal Booked
$PaymentStatue = 23;
$BookingStatus = ($paramArray[0]['PlanType'] == 6) ? 108 : 21;
$objTrx = new Travel_Model_TblAgencyCustomerTrx();
$strInvoiceNumber = Zend_Controller_Action_HelperBroker::getStaticHelper("General")->generateInvoiceNumbers($AgencySysId);
$data = array("InvoiceId" => $strInvoiceNumber);
$objTrx->updateInvoiceNumber($data, $strTxnId);
$params['last_payment'] = $arrPaymentHistory[0]['NetAmount'];
$params['payment_type'] = "Partial Payment";
$params['txn_status'] = "Successful";
$params['paymentStatus'] = "part";
// echo "<pre>";print_r($params);die;
$emailStatus = Zend_Controller_Action_HelperBroker::getStaticHelper('EmailTemplate')->sendTransactionStatusToCustomer($leadCustEmailId, $subject, $params);
$TotalPaidAmount = trim($params['paid_amount_currency']) . ' ' . $params['paid_amount'];
$destinationPlace = trim($params['destination_city']);
$CustomerMobileNumber = trim($params['countrycode']) . '' . trim($params['customer_contact']);
$PlanTypeName = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->getPlanTypeName($paramArray[0]['PlanType']);
$PackagePlan = $PlanTypeName . " Booking";
$postData = array(
"UserSysId" => $arrPkg['AgentSysId'],
// "IsSchedule" => False,
"schedule_time" => "",
"title" => $PackagePlan,
"body" => "Hurray! $FirstName made a booking for $destinationPlace for $TotalPaidAmount.",
//"IsButton" => True,
"URL" => $bookNowLink,
"IsCall" => true,
"mobileNo" => trim($CustomerMobileNumber)
);
if (isset($arrAgentDetails['SecurityKey'])) {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://globaltravelexchange.com/gtxwebservices/agency/create-fire-base-message',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => $postData,
CURLOPT_HTTPHEADER => array(
'securitykey:' . trim($arrAgentDetails['SecurityKey']),
//'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
}
if ($paramArray[0]['Contacts'] != '') {
$arrSMSStatisticsType = array_keys(unserialize(ARR_SMS_STATISTICS_TYPE));
$params['arrSMSStatisticsType'] = $arrSMSStatisticsType[0];
$FirstName = (isset($paramArray[0]['FirstName']) && $paramArray[0]['FirstName'] != '') ? $paramArray[0]['FirstName'] : '';
$LastName = (isset($paramArray[0]['LastName']) && $paramArray[0]['LastName'] != '') ? $paramArray[0]['LastName'] : '';
$params['customerName'] = trim($FirstName) . ' ' . trim($LastName);
$params['Contacts'] = $paramArray[0]['Contacts'];
$params['DestinationPlaces'] = trim($paramArray[0]['DestinationPlaces']);
$params['TPSysId'] = $paramArray[0]['TPSysId'];
// $smsStatus = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->SendSmsToCustomerBooking($params);
// $smsStatusAGent = Zend_Controller_Action_HelperBroker::getStaticHelper('Custom')->SendSmsToCustomerBookingAgent($params);
$booknowurl = $smsStatus['shortlink'];
}
} else if ($strTxnStatus == "failure") {
if ($TotalAmountPaid > 0 && ($premiumAmount > $TotalAmountPaid)) {
$StatusType = 143; //8 = Proposal Booked
$PaymentStatue = 23;
$BookingStatus = ($paramArray[0]['PlanType'] == 6) ? 108 : 21;
} else {
$StatusType = 3;
$PaymentStatue = 20;
$BookingStatus = null;
}
$params['last_payment'] = $arrPaymentHistory[0]['NetAmount'];
$params['txn_status'] = "Failed";
$params['paymentStatus'] = "Failed";
//$emailStatus = Zend_Controller_Action_HelperBroker::getStaticHelper('EmailTemplate')->sendTransactionStatusToCustomer($leadCustEmailId, $subject, $params);
} else {
$StatusType = 3;
$PaymentStatue = null;
$BookingStatus = null;
}
// echo $StatusType;die;
$objPkgBooking->updateProposalStatus($StatusType, $PaymentStatue, $BookingStatus, $intTPSysId, $travelPlanDetais[0]['MasterTPSysId']);
}
}
function updateStatusWithRate() {
$strTxnStatus = "";
$intTPSysId = "";
$AgencySysId = "";
$strTxnId = "";
$objPkg = new Travel_Model_TblPackage();
$objPkgBooking = new Travel_Model_TblPackageBooking();
// $objAgency = new Travel_Model_TblAgency();
$objCust = $crmcusttravelplan = new Travel_Model_CRM_CustomerTravelPlan();
$objTrx = new Travel_Model_TblAgencyCustomerTrx();
$arrPaymentHistory = $objTrx->getTrasactionProposalByTPSysId($intTPSysId);
$objPkgBooking->TPSysId = $intTPSysId;
$flexiPackageList = $objPkg->getCustPackageList($intTPSysId);
$arrPkgDetails = $objPkgBooking->getPackageTravelPlanDetails();
//$arrAgencyDetails = $objAgency->getAgencyDataById($flexiPackageList['AgencySysId']);
$paramArray = $crmcusttravelplan->GetTravelPlanByCustomer($intTPSysId);
$travelPlanDetais = $crmcusttravelplan->CheckCustomerWithLeadId($intTPSysId);
$finalPackageCostWith_extramarkupNdiscount = round($arrPkgDetails[0]['NetPrice']);
$premiumAmount = $finalPackageCostWith_extramarkupNdiscount;
if ($flexiPackageList['IsB2BProposal'] == 1) {
$MarketPlaceId = 2;
} else {
$MarketPlaceId = 1;
}
$strRoomInfoJson = $arrPkgDetails[0]['RoomInfoJson'];
$packageSharedCurrency = $flexiPackageList['CurrencyType'];
$StartDateTime = (array) $flexiPackageList['StartDate'];
$TripDate = date("Y-m-d", strtotime($StartDateTime['date']));
$marketPlaceRateArr = $objCust->getCustPackRate($intTPSysId, $TripDate, $MarketPlaceId);
$tppackRate = $objCust->getCustTravelPackRate($intTPSysId, $TripDate, $MarketPlaceId);
$arrPkg = array();
$intTPintSysId = '';
$strIteneryCities = '';
foreach ($arrPkgDetails as $Pkgresult) {
$arrPkg['PkgTitle'] = $Pkgresult['PkgTitle'];
$arrPkg['StartDate'] = $Pkgresult['StartDate'];
$arrPkg['ValidTill'] = $Pkgresult['ValidTill'];
if (stripos($strIteneryCities, $Pkgresult['Cities']) === false) {
$strIteneryCities .= $Pkgresult['Cities'] . ' ';
}
$intTPintSysId .= $Pkgresult['TPintSysId'] . ',';
$arrPkg['CustomerSysId'] = $Pkgresult['CustomerSysId'];
$arrPkg['AgencySysId'] = $Pkgresult['AgencySysId'];
//$strStatusType = $Pkgresult['StatusType'];
}
$arrPkg['TPintSysId'] = trim($intTPintSysId, ',');
$arrPkg['IteneryCities'] = trim($strIteneryCities, ' ');
$arrPkg['PkgDuration'] = $Pkgresult['Sequence'];
$arrPkg['DiscountType'] = $Pkgresult['DiscountType'];
$arrPkg['DiscountVal'] = $Pkgresult['DiscountVal'];
$arrPkg['MarkUp'] = $Pkgresult['MarkUp'];
$arrPkg['CustomDiscount'] = $Pkgresult['CustomDiscount'];
$arrPkg['AdvBookingPercent'] = $Pkgresult['AdvBookingPercent'];
$arrPkg['AdvBookingDays'] = $Pkgresult['AdvBookingDays'];
$arrPkg['AgentSysId'] = $Pkgresult['AgentSysId'];
$arrPkg['SupplierSysId'] = $Pkgresult['SupplierSysId'];
$arrPkg['PlanType'] = $Pkgresult['PlanType'];
$arrPkg['IsCardChrgToCustomer'] = $Pkgresult['IsCardChrgToCustomer'];
$arrPkg['EconomyMask'] = $Pkgresult['EconomyMask'];
$amountPaid = $objPkgBooking->getAmountPaidForProposalByTPSysId($intTPSysId);
$TotalAmountPaid = !empty($amountPaid['TotalAmountPaid']) ? $amountPaid['TotalAmountPaid'] : 0;
$arrPkgCost = Zend_Controller_Action_HelperBroker::getStaticHelper('Package')->GetAgencyCustomerTravelPlanCost($intTPSysId, $strRoomInfoJson, $arrPkg, @$marketPlaceRateArr[0], @$tppackRate[0]);
//$marketwiserate = $objPkg->getCustPackRate($flexiPackageList['TPSysId'], '', $TripDate);
//$packageBaseCurrency = $marketwiserate[0]['CurrencyType'];
$addonsData = $addonsDataSuccess = $addonsVisaData = array();
$addonsDataArr = $objPkg->getTravelPlanAddonServicesMultipleIds($flexiPackageList['AgencySysId'], $intTPSysId, array(21, 6), array());
foreach ($addonsDataArr as $advalue) {
if ($advalue['PlanType'] == 21) {
$addonsData[] = $advalue;
} else if ($advalue['PlanType'] == 6) {
$addonsVisaData[] = $advalue;
}
}
$paymentListArr = array();
$refundGUID = '';
foreach ($arrPaymentHistory as $kkey => $kval) {
if ($kval['TrxOrdDocId'] != 19) {
$strtime = strtotime($kval['TrxDate']->format('Y-m-d'));
$paymentListArr[$strtime . $kkey] = $kval;
} else {
$refundGUID = $kval['GUID'];
}
}
$exchangerateM = $objPkg->currencyExchangeRate($packageSharedCurrency, $arrPkgCost['baseCurrencyId']);
$TcsAddonServicesData = (isset($addonsData[0])) ? $addonsData[0] : 0;
$TcsTax = (isset($TcsAddonServicesData['Tax'])) ? $TcsAddonServicesData['Tax'] : 0;
$CancellationProtectionprice = (isset($paramArray[0]['IsCancellationProtection']) && $paramArray[0]['IsCancellationProtection'] == 1 && empty($paymentListArr)) ? $paramArray[0]['CancellationProtectionPrice'] : 0;
$premiumAmountM = $premiumAmount * $exchangerateM;
$premiumAmount1 = $premiumAmountM + $CancellationProtectionprice + $TcsTax;
if ($strTxnStatus == "success" && (round($premiumAmount1) <= round($TotalAmountPaid))) {
$StatusType = 143;
$PaymentStatue = 22;
$BookingStatus = ($paramArray[0]['PlanType'] == 6) ? 108 : 21;
$objTrx = new Travel_Model_TblAgencyCustomerTrx();
$strInvoiceNumber = Zend_Controller_Action_HelperBroker::getStaticHelper("General")->generateInvoiceNumbers($AgencySysId);
$data = array("InvoiceId" => $strInvoiceNumber);
$objTrx->updateInvoiceNumber($data, $strTxnId);
} else if ($strTxnStatus == "success" && (round($premiumAmount1) > round($TotalAmountPaid))) {
$StatusType = 143;
$PaymentStatue = 23;
$BookingStatus = ($paramArray[0]['PlanType'] == 6) ? 108 : 21;
$objTrx = new Travel_Model_TblAgencyCustomerTrx();
$strInvoiceNumber = Zend_Controller_Action_HelperBroker::getStaticHelper("General")->generateInvoiceNumbers($AgencySysId);
$data = array("InvoiceId" => $strInvoiceNumber);
$objTrx->updateInvoiceNumber($data, $strTxnId);
} else if ($strTxnStatus == "failure") {
if ($TotalAmountPaid > 0 && ($premiumAmount > $TotalAmountPaid)) {
$StatusType = 143;
$PaymentStatue = 23;
$BookingStatus = ($paramArray[0]['PlanType'] == 6) ? 108 : 21;
} else {
$StatusType = 3;
$PaymentStatue = 20;
$BookingStatus = null;
}
} else {
$StatusType = 3;
$PaymentStatue = null;
$BookingStatus = null;
}
$objPkgBooking->updateProposalStatus($StatusType, $PaymentStatue, $BookingStatus, $intTPSysId, $travelPlanDetais[0]['MasterTPSysId']);
}
?>