| 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/application/modules/gtxwebservices/models/ |
Upload File : |
<?php
class Gtxwebservices_Model_DyanamicProposal extends Zend_Db_Table_Abstract {
function __construct() {
$this->db = Zend_Db_Table::getDefaultAdapter();
}
public function __destruct() {
$this->db->closeConnection();
}
public function saveDynamicQueryData($requestPerameter) {
try {
$this->_dbObj->beginTransaction();
$this->_crmcusttravelplan = new Travel_Model_CRM_CustomerTravelPlan();
$AgencySysId = $requestPerameter["AgencySysId"];
$AgentSysId = !empty($requestPerameter["AgentSysId"]) ? $requestPerameter["AgentSysId"] : '';
$IsFromGTXNetwork = $requestPerameter['IsFromGTXNetwork'] ? $requestPerameter['IsFromGTXNetwork'] : 0; // Added By Pardeep Panchal For Sharing GTXNetwork Packages...
$GTXNetworkAgencySysId = $requestPerameter['GTXNetworkAgencySysId'] ? $requestPerameter['GTXNetworkAgencySysId'] : 0; // Added By Pardeep Panchal For Sharing GTXNetwork Packages...
$travelplanID = $requestPerameter["TravelPlanId"];
$fname = $requestPerameter["FirstName"];
$lname = isset($requestPerameter["LastName"])?$requestPerameter["LastName"]:0;
$custemail = $email = $requestPerameter["Email"];
$mobilenum = $requestPerameter["MobileNumber"];
$createDate = $updatedate = date('Y-m-d H:i:s');
$planbookingID = 'Q/' . date('y');
$salution = "";
$CRMCustSysId = "";
$pkgCheckInDate = isset($requestPerameter['pkgCheckInDate'])?$requestPerameter['pkgCheckInDate']:0;
$pkgCheckOutDate = isset($requestPerameter['pkgCheckOutDate'])?$requestPerameter['pkgCheckInDate']:0;
$min_price = isset($requestPerameter['MinPrice']) ? $requestPerameter['MinPrice'] : '0';
$max_price = isset($requestPerameter['MaxPrice']) ? $requestPerameter['MaxPrice'] : '0';
$roomlp = !empty($requestPerameter['roomlp']) ? $requestPerameter['roomlp'] : '';
$aboutpackage = !empty($requestPerameter['aboutpackage']) ? $requestPerameter['aboutpackage'] : '';
$tripaddress = !empty($requestPerameter['tripaddress']) ? $requestPerameter['tripaddress'] : '';
$cardcharges = !empty($requestPerameter['cardcharges']) ? $requestPerameter['cardcharges'] : 1;
$MarkupArray = !empty($requestPerameter['MarkUp']) ? $requestPerameter['MarkUp'] : 0;
$discountValue = !empty($requestPerameter['discountValue']) ? $requestPerameter['discountValue'] : 0;
$IsShareWithGST = isset($requestPerameter['GSTIncluded']) ? $requestPerameter['GSTIncluded'] : 0;
$AgencyMarkUp = !empty($requestPerameter['AgencyMarkUp1']) ? $requestPerameter['AgencyMarkUp1'] : 0;
$Price = !empty($requestPerameter['Price']) ? $requestPerameter['Price'] : 0;
$StaxDiscount = !empty($requestPerameter['StaxDiscount1']) ? $requestPerameter['StaxDiscount1'] : 0;
$StaxMarkUp = !empty($requestPerameter['StaxMarkUp1']) ? $requestPerameter['StaxMarkUp1'] : 0;
$XServiceTaxAmount = !empty($requestPerameter['XServiceTaxAmount']) ? $requestPerameter['XServiceTaxAmount'] : 0;
$NetPrice = !empty($requestPerameter['NetPrice']) ? $requestPerameter['NetPrice'] : 0;
$catID = !empty($requestPerameter['catID']) ? $requestPerameter['catID'] : 1;
$tourID = !empty($requestPerameter['tourID']) ? $requestPerameter['tourID'] : 1;
$MealTypeId = !empty($requestPerameter['mID']) ? $requestPerameter['mID'] : 0;
$SACCode = !empty($requestPerameter['sac_code']) ? $requestPerameter['sac_code'] : 440063; // default value 440063 for Tour Oprators..
$gsttype = !empty($requestPerameter['gsttype']) ? $requestPerameter['gsttype'] : 1;
$queryTPSysId = !empty($requestPerameter['queryTPSysId']) ? $requestPerameter['queryTPSysId'] : '';
$search_going_to = !empty($requestPerameter['search_going_to']) ? $requestPerameter['search_going_to'] : '';
$IsB2BCustomer = !empty($requestPerameter['IsB2BCustomer']) ? $requestPerameter['IsB2BCustomer'] : 0;
$IsB2BAgent = isset($requestPerameter['IsB2BAgent']) ? $requestPerameter['IsB2BAgent'] : 0;
$aId = !empty($requestPerameter['aId']) ? $requestPerameter['aId'] : ''; //b2b agent id
$EmailTemplateType = isset($requestPerameter['EmailTemplateType']) ? $requestPerameter['EmailTemplateType'] : 2;
$EmailTemplateColor = isset($requestPerameter['EmailTemplateColor']) ? $requestPerameter['EmailTemplateColor'] : '';
$AgencyCRMLeadSysId = isset($requestPerameter['leadID']) ? (int) $requestPerameter['leadID'] : 0;
$going_from_cityid = (int) $requestPerameter['FromDestinationId'];
$going_from_cityname = trim($requestPerameter['FromDestination']);
$SelectPricingType = isset($requestPerameter['SelectPricing']) ? $requestPerameter['SelectPricing'] : 'OverAll';
if ($going_from_cityid == 0) {
$going_from_cityid = '';
}
$leadsourceTitle = isset($requestPerameter['leadsource']) ? $this->_HtmlPurifier->filter(trim($requestPerameter['leadsource'])) : 'Agency';
$intLeadSourceSysId = $this->_crmcustomerObj->getLeadSource($AgencySysId, $leadsourceTitle); // for Master LeadSouce Creation
$leadsource = (isset($intLeadSourceSysId[0]['LeadSourceSysId']) && !empty($intLeadSourceSysId[0]['LeadSourceSysId'])) ? $intLeadSourceSysId[0]['LeadSourceSysId'] : 0;
if ($IsB2BCustomer == 1) {
$MarketPlaceId = 2;
} else {
$MarketPlaceId = 1;
}
if (!empty($search_going_to)) {
$search_going_to_dest = explode('__', $search_going_to);
$going_to_cityname = $search_going_to_dest[1];
$going_to_cityid = $search_going_to_dest[0];
}
$destPlaceArr = isset($requestPerameter['DestinationPlaces']) ? json_decode(base64_decode($requestPerameter['DestinationPlaces']), true) : '';
if (isset($destPlaceArr) && !empty($destPlaceArr)) {
foreach ($destPlaceArr as $destIds => $destValues) {
$destIdsArr[] = $destIds;
$destValuesArr[] = $destValues;
}
$destinationIds = implode(', ', $destIdsArr);
$destinationValues = implode(', ', $destValuesArr);
}
$prevCustomerSysId = isset($requestPerameter['customerId']) ? $requestPerameter['customerId'] : '';
if (!empty($pkgCheckInDate)) {
$explode_trip_start = explode('/', $pkgCheckInDate);
$main_trip_start_date = $explode_trip_start[2] . '-' . $explode_trip_start[1] . '-' . $explode_trip_start[0];
} else {
$main_trip_start_date = date('Y-m-d');
$pkgCheckInDate = date("d/m/Y");
}
if (!empty($pkgCheckOutDate)) {
$explode_trip_start = explode('/', $pkgCheckOutDate);
$main_trip_end_date = $explode_trip_start[2] . '-' . $explode_trip_start[1] . '-' . $explode_trip_start[0];
} else {
$main_trip_end_date = date('Y-m-d');
$pkgCheckOutDate = date("d/m/Y");
}
######******************************Start Check user in system *************************************** */
if (isset($email) && !empty($email)) {
try {
if ($aId != '' || $IsB2BCustomer == 1 || $IsB2BAgent == 1) {
if ($aId != '') {
$customerDetailsEmail = $this->_crmcustomerObj->ChkEmailWithResponseUpdateB2B($email, $aId);
} else {
$customerDetailsEmail = $this->_crmcustomerObj->ChkEmailWithResponseB2B($email, $AgencySysId);
}
} else {
$customerDetailsEmail = $this->_crmcustomerObj->ChkEmailWithResponseUpdate($email, $AgencySysId);
}
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
if (isset($mobilenum) && !empty($mobilenum)) {
try {
if ($aId != '' || $IsB2BCustomer == 1 || $IsB2BAgent == 1) {
if ($aId != '') {
$customerDetailsMobile = $this->_crmcustomerObj->ChkMobileWithResponseB2B($mobilenum, $aId, '', $CRMCustSysId);
} else {
$customerDetailsMobile = $this->_crmcustomerObj->ChkMobileExistInAgencyB2B($mobilenum, $AgencySysId);
}
} else {
$customerDetailsMobile = $this->_crmcustomerObj->ChkMobileWithResponse($mobilenum, $AgencySysId, '', $CRMCustSysId);
}
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
if (!empty($customerDetailsEmail) || !empty($customerDetailsMobile)) {
$status = 'success';
$CustomerSysId = $customerDetailsEmail['CustomerSysId'] ? $customerDetailsEmail['CustomerSysId'] : $customerDetailsMobile['CustomerSysId'];
$CRMCustSysId = $customerDetailsEmail['CRMCustSysId'] ? $customerDetailsEmail['CRMCustSysId'] : $customerDetailsMobile['CRMCustSysId'];
} else {
$status = 'failure';
$CRMCustSysId = '';
}
if ($status == 'failure' || $CustomerSysId == '') {
if ($CRMCustSysId == '') {
$userArray = array(
'EmailId' => $email,
'Salutation' => 1,
'PrimaryContactNumber' => '',
'FullName' => $fname . ' ' . $lname,
'FirstName' => $fname,
'LastName' => $lname ? $lname : '',
'ActiveDate' => $updatedate,
'UpdatedDate' => $updatedate,
'CreatedDate' => $updatedate,
'IsApproved' => '1',
'IsActive' => '1',
'IsMarkForDelete' => '0'
);
$CRMCustSysId = $this->_crmcustomerObj->addCustomer($userArray);
}
$userLeadArray = array(
'AgencySysId' => $AgencySysId,
'EmailId' => $email,
'Salutation' => $salution ? $salution : 0,
'PrimaryContactNumber' => $mobilenum ? $mobilenum : '',
'FullName' => $fname . ' ' . $lname,
'FirstName' => $fname ? $fname : '',
'LastName' => $lname ? $lname : '',
'LeadSourceSysId' => $leadsource,
'LeadStageSysId' => "",
'AssignUserSysId' => '',
'ActiveDate' => $updatedate,
'UpdatedDate' => $updatedate,
'CreatedDate' => $updatedate,
'IsApproved' => '1',
'IsActive' => '1',
'IsMarkForDelete' => '0'
);
if ((int) $AgencyCRMLeadSysId > 0) {
$AgencyCRMLeadSysId = $AgencyCRMLeadSysId;
} else {
$AgencyCRMLeadSysId = $this->_crmagencyleadaccountObj->addCustomer($userLeadArray);
}
$agencyuserArray = array(
'AgencySysId' => $AgencySysId,
'AgencyCRMLeadSysId' => $AgencyCRMLeadSysId,
'CRMCustSysId' => $CRMCustSysId,
'EmailId' => $email,
'Title' => $salution ? $salution : 0,
'Logo' => '',
'IsfromSM' => '0',
'UserId' => '0',
'CitySysId' => '',
'StateOrZoneSysId' => 0,
'CountrySysId' => '',
'IsEmployee' => '0',
'Contacts' => $mobilenum ? $mobilenum : '',
'JoinDate' => $updatedate,
'UserName' => $fname . '' . $lname,
'FirstName' => $fname ? $fname : '',
'LastName' => $lname ? $lname : '',
'Relation' => '',
'PassportNo' => '',
'PassportExpiry' => '',
'DOB' => '',
'MarriageAnniversary' => '',
'CreatedByUserSysId' => '',
'RegisterDate' => $updatedate,
'UpdateDate' => $updatedate,
'IsApproved' => '0',
'IsActive' => '1',
'IsMarkForDelete' => '0'
);
### Insert Record in to Agency Table as well ########
$CustomerSysId = $this->_agencycustomerObj->addAgencyCustomer($agencyuserArray);
}
try {
$travelplandata = $this->GetTravelPlan($travelplanID);
$PkgSellValidTill = $travelplandata[0]['PkgSellValidTill'];
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
if ((int) $IsB2BAgent == 1 && $CustomerSysId > 0) {
$getB2bAgencySysId = $this->_crmcusttravelplan->getB2bAgencySysId($CustomerSysId);
$GTXNetworkAgencySysId = isset($getB2bAgencySysId[0]['AgencySysId'])?$getB2bAgencySysId[0]['AgencySysId']:0;
}
if (empty($queryTPSysId) || ($prevCustomerSysId != '' && $prevCustomerSysId != $CustomerSysId)) {
$customertravelpaln = array(
'PlanBookingId' => $planbookingID,
'MasterTPSysId' => '',
'AgencySysId' => $AgencySysId,
'AgentSysId' => $AgentSysId,
'CreatorSysId' => !empty($AgentSysId) ? $AgentSysId : $travelplandata[0]['AgentSysId'],
'StatusType' => (isset($leadsourceTitle) && ($leadsourceTitle == 'Website' && $IsB2BCustomer == 0)) ? 1 : 2,
'CustomerSysId' => $CustomerSysId,
'PlanType' => 5,
'InventoryType' => 5,
'MinPax' => $travelplandata[0]['MinPax'] ? $travelplandata[0]['MinPax'] : 0,
'PackRangeType' => $travelplandata[0]['PackRangeType'] ? $travelplandata[0]['PackRangeType'] : 0,
'Title' => $travelplandata[0]['Title'] ? $travelplandata[0]['Title'] : '',
'EconomyMask' => !empty($catID) ? $catID : 1,
'BYOPackTypeMask' => $travelplandata[0]['BYOPackTypeMask'] ? $travelplandata[0]['BYOPackTypeMask'] : '',
'PackTypeMask' => '',
'InclCatMask' => $travelplandata[0]['InclCatMask'] ? $travelplandata[0]['InclCatMask'] : 0,
'InclMask' => '',
'ExclusionMask' => $travelplandata[0]['ExclusionMask'] ? $travelplandata[0]['ExclusionMask'] : '',
'PackSpecType' => $travelplandata[0]['PackSpecType'] ? $travelplandata[0]['PackSpecType'] : '',
'SupplierSysId' => isset($travelplandata[0]['SupplierSysId']) ? $travelplandata[0]['SupplierSysId'] : '0',
'PriceRange' => 0,
'SeasonMask' => $travelplandata[0]['SeasonMask'] ? $travelplandata[0]['SeasonMask'] : 0,
'GeoType' => $travelplandata[0]['GeoType'] ? $travelplandata[0]['GeoType'] : 0,
'IsFixDatePlan' => $travelplandata[0]['IsFixDatePlan'] ? $travelplandata[0]['IsFixDatePlan'] : 0,
'IsFixPlan' => $travelplandata[0]['IsFixPlan'] ? $travelplandata[0]['IsFixPlan'] : 0,
'Details' => $travelplandata[0]['Details'] ? $travelplandata[0]['Details'] : '',
'ImageTN' => $travelplandata[0]['ImageTN'] ? $travelplandata[0]['ImageTN'] : '',
'ImgForList' => $travelplandata[0]['ImgForList'] ? $travelplandata[0]['ImgForList'] : '',
'ImgeDetails' => $travelplandata[0]['ImgeDetails'] ? $travelplandata[0]['ImgeDetails'] : '',
'StartDate' => $main_trip_start_date,
'ValidTill' => $main_trip_end_date ? $main_trip_end_date : '',
'PkgSellValidTill' => $PkgSellValidTill ? $PkgSellValidTill->format('Y-m-d') : '',
'Price' => $travelplandata[0]['Price'] ? $travelplandata[0]['Price'] : 0,
'CurrencyType' => $travelplandata[0]['CurrencyType'] ? $travelplandata[0]['CurrencyType'] : 0,
'DiscountMsg' => $travelplandata[0]['DiscountMsg'] ? $travelplandata[0]['DiscountMsg'] : '',
'DiscountType' => $travelplandata[0]['DiscountType'] ? $travelplandata[0]['DiscountType'] : 0,
'DiscountVal' => $travelplandata[0]['DiscountVal'] ? $travelplandata[0]['DiscountVal'] : 0,
'AdvBookingPercent' => $travelplandata[0]['AdvBookingPercent'] ? $travelplandata[0]['AdvBookingPercent'] : 0,
'AdvBookingDays' => $travelplandata[0]['AdvBookingDays'] ? $travelplandata[0]['AdvBookingDays'] : 0,
'NetPrice' => $travelplandata[0]['NetPrice'] ? $travelplandata[0]['NetPrice'] : 0,
'MinPrice' => $min_price ? $min_price : 0,
'MaxPrice' => $max_price ? $max_price : 0,
'TotalMinDays' => $travelplandata[0]['TotalMinDays'] ? $travelplandata[0]['TotalMinDays'] : 0,
'TotalMaxDays' => $travelplandata[0]['TotalMaxDays'] ? $travelplandata[0]['TotalMaxDays'] : 0,
'Hotels' => $travelplandata[0]['Hotels'] ? $travelplandata[0]['Hotels'] : '',
'PopularPlaces' => $travelplandata[0]['PopularPlaces'] ? $travelplandata[0]['PopularPlaces'] : '',
'SourcePlaceSysId' => isset($travelplandata[0]['SourcePlaceSysId']) ? $travelplandata[0]['SourcePlaceSysId'] : '',
'SourcePlaces' => isset($travelplandata[0]['SourcePlaces']) ? $travelplandata[0]['SourcePlaces'] : '',
'DestinationPlacesSysId' => isset($going_to_cityid) ? $going_to_cityid : $destinationIds,
'DestinationPlaces' => isset($going_to_cityname) ? $going_to_cityname : $destinationValues,
'CityIds' => $destinationIds ? $destinationIds : '',
'Cities' => $destinationValues ? $destinationValues : '',
'Countries' => $travelplandata[0]['Countries'] ? $travelplandata[0]['Countries'] : '',
'IsMarkForDel' => $travelplandata[0]['IsMarkForDel'] ? $travelplandata[0]['IsMarkForDel'] : '0',
'DestinationCovered' => $travelplandata[0]['DestinationCovered'] ? $travelplandata[0]['DestinationCovered'] : '0',
'RoomInfoJson' => $requestPerameter['roomjson'] ? $requestPerameter['roomjson'] : '',
'GreetingMessage' => $aboutpackage ? $aboutpackage : '',
'EmailText' => '',
'EmailDestination' => $destinationValues ? $destinationValues : '',
'ProposalEmailTo' => trim($email),
'CreateDate' => $createDate,
'UpdateDate' => $createDate,
'IsActive' => (isset($leadsourceTitle) && ($leadsourceTitle == 'Website' && $IsB2BCustomer == 0)) ? 0 : 1,
'Readymade' => 2, // for dynamic package
'IsAprooved' => 1,
'TPId' => $travelplandata[0]['TPSysId'],
'IsPriceShared' => 1, // to detect withprice or without price true = If price shared , false = price range shared
'TourType' => $tourID,
'GSTSharedMode' => $gsttype, // (1 for 5% on total Cost, 2 for 18% on Service Fee) to detect what type and how much tax will apply to customer
'SACCode' => $SACCode,
'LeadSourceSysId' => $leadsource,
'PackageCostCalType' => !empty($travelplandata[0]['PackageCostCalType']) ? $travelplandata[0]['PackageCostCalType'] : 0, // to detect package is by lowest cost or by meal plan
'B2BAgencySysId' => trim($GTXNetworkAgencySysId),
'SharedMealPlanType' => $MealTypeId, // shared meal plan id
'IsB2Bproposal' => trim($IsB2BCustomer) ? trim($IsB2BCustomer) : '0',
'IsGTXNetwork' => $IsFromGTXNetwork,
'EmailTemplateType' => !empty($EmailTemplateType) ? $EmailTemplateType : '1',
'EmailTemplateColor' => !empty($EmailTemplateColor) ? $EmailTemplateColor : '',
'IsShareWithGST' => $IsShareWithGST,
'ProposalEmailFrom' => '',
'LeadSysId' => (int) $AgencyCRMLeadSysId
);
try {
$where = "AgencyCRMLeadSysId = " . $AgencyCRMLeadSysId;
$userArray = array(
'IsApproved' => '1',
'UpdatedDate' => $createDate,
'LeadStageSysId' => 50
);
$this->_crmagencyleadaccountObj->UpdateGtxCrmCustomer($userArray, $where);
$leadID = $this->_crmcusttravelplan->addCustomerTravelPlanQuery($customertravelpaln);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
} else {
$leadID = $queryTPSysId;
$where = "TPSysId = " . $leadID;
$updatetravelplan = array(
'UpdateDate' => $createDate,
'PackSpecType' => $travelplandata[0]['PackSpecType'] ? $travelplandata[0]['PackSpecType'] : '',
'Readymade' => 2,
'IsPriceShared' => 1,
'SharedMealPlanType' => $MealTypeId, // shared meal plan id
'BYOPackTypeMask' => $travelplandata[0]['BYOPackTypeMask'] ? $travelplandata[0]['BYOPackTypeMask'] : '',
'Title' => $travelplandata[0]['Title'] ? $travelplandata[0]['Title'] : '',
'CustomerSysId' => $CustomerSysId,
'StatusType' => (isset($leadsourceTitle) && ($leadsourceTitle == 'Website' && $IsB2BCustomer == 0)) ? 1 : 2,
'B2BAgencySysId' => trim($GTXNetworkAgencySysId),
);
try {
$updatetravelPlan = $this->UpdateCustomerTravelPlanQuery($updatetravelplan, $where);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
$VersionIdDetails = $this->GetLatestVersionID($leadID);
$VersionId = (count($VersionIdDetails) > 0) ? $VersionIdDetails[0]['VersionId'] + 1 : 1;
$agentDetails = $this->getAgentDetails($AgentSysId);
$sendersEmailId = $agentDetails['EmailId'];
$proposalEmailFrom = $requestPerameter['senderEmailID'] ? trim($requestPerameter['senderEmailID']) : trim($sendersEmailId);
$customertravelpalnProposal12 = array(
'VersionId' => $VersionId,
'PlanBookingId' => $planbookingID,
'MasterTPSysId' => $leadID,
'AgencySysId' => $AgencySysId,
'AgentSysId' => !empty($AgentSysId) ? $AgentSysId : $travelplandata[0]['AgentSysId'],
'CreatorSysId' => !empty($AgentSysId) ? $AgentSysId : $travelplandata[0]['AgentSysId'],
'StatusType' => 4,
'CustomerSysId' => $CustomerSysId,
'PlanType' => 5,
'InventoryType' => 5,
'MinPax' => $travelplandata[0]['MinPax'] ? $travelplandata[0]['MinPax'] : 0,
'PackRangeType' => $travelplandata[0]['PackRangeType'] ? $travelplandata[0]['PackRangeType'] : 0,
'Title' => $travelplandata[0]['Title'] ? $travelplandata[0]['Title'] : '',
'EconomyMask' => !empty($catID) ? $catID : 1,
'PackTypeMask' => $travelplandata[0]['PackTypeMask'] ? $travelplandata[0]['PackTypeMask'] : '',
'InclCatMask' => $travelplandata[0]['InclCatMask'] ? $travelplandata[0]['InclCatMask'] : 0,
'InclMask' => $travelplandata[0]['InclMask'] ? $travelplandata[0]['InclMask'] : '',
'ExclusionMask' => $travelplandata[0]['ExclusionMask'] ? $travelplandata[0]['ExclusionMask'] : '',
'PackSpecType' => $travelplandata[0]['PackSpecType'] ? $travelplandata[0]['PackSpecType'] : '',
'SupplierSysId' => isset($travelplandata[0]['SupplierSysId']) ? $travelplandata[0]['SupplierSysId'] : '0',
'PriceRange' => 0,
'Readymade' => 2,
'SeasonMask' => $travelplandata[0]['SeasonMask'] ? $travelplandata[0]['SeasonMask'] : 0,
'GeoType' => $travelplandata[0]['GeoType'] ? $travelplandata[0]['GeoType'] : 0,
'IsFixDatePlan' => $travelplandata[0]['IsFixDatePlan'] ? $travelplandata[0]['IsFixDatePlan'] : 0,
'IsFixPlan' => $travelplandata[0]['IsFixPlan'] ? $travelplandata[0]['IsFixPlan'] : 0,
'Details' => $travelplandata[0]['Details'] ? $travelplandata[0]['Details'] : '',
'ImageTN' => $travelplandata[0]['ImageTN'] ? $travelplandata[0]['ImageTN'] : '',
'ImgForList' => $travelplandata[0]['ImgForList'] ? $travelplandata[0]['ImgForList'] : '',
'ImgeDetails' => $travelplandata[0]['ImgeDetails'] ? $travelplandata[0]['ImgeDetails'] : '',
'StartDate' => $main_trip_start_date,
'ValidTill' => $main_trip_end_date ? $main_trip_end_date : '',
'PkgSellValidTill' => $PkgSellValidTill ? $PkgSellValidTill->format('Y-m-d') : '',
'CurrencyType' => $travelplandata[0]['CurrencyType'] ? $travelplandata[0]['CurrencyType'] : 0,
'DiscountMsg' => $travelplandata[0]['DiscountMsg'] ? $travelplandata[0]['DiscountMsg'] : '',
'DiscountType' => $travelplandata[0]['DiscountType'] ? $travelplandata[0]['DiscountType'] : 0,
'AdvBookingPercent' => $travelplandata[0]['AdvBookingPercent'] ? $travelplandata[0]['AdvBookingPercent'] : 0,
'AdvBookingDays' => $travelplandata[0]['AdvBookingDays'] ? $travelplandata[0]['AdvBookingDays'] : 0,
'Price' => $Price ? $Price : 0,
'NetPrice' => $NetPrice ? $NetPrice : 0,
'DiscountVal' => $travelplandata[0]['DiscountVal'] ? $travelplandata[0]['DiscountVal'] : 0,
'CustomDiscount' => ($discountValue[0] > 0) ? $discountValue[0] : 0,
'AgentsCustomServiceTaxAmount' => $StaxMarkUp ? $StaxMarkUp : 0,
'ServiceTaxOnCustomDiscount' => $StaxDiscount ? $StaxDiscount : 0,
'MarkUp' => ($MarkupArray[0] > 0) ? $MarkupArray[0] : 0,
'AgencyMarkUp' => $AgencyMarkUp ? $AgencyMarkUp : 0,
'XServiceTaxAmount' => $XServiceTaxAmount,
'GTXServiceTaxAmount' => 0,
'AgentServiceTaxAmount' => 0,
'GTXMarkup' => 0,
'MinPrice' => $travelplandata[0]['MinPrice'] ? $travelplandata[0]['MinPrice'] : 0,
'IsCardChrgToCustomer' => $cardcharges,
'TotalMinDays' => $travelplandata[0]['TotalMinDays'] ? $travelplandata[0]['TotalMinDays'] : 0,
'TotalMaxDays' => $travelplandata[0]['TotalMaxDays'] ? $travelplandata[0]['TotalMaxDays'] : 0,
'Hotels' => $travelplandata[0]['Hotels'] ? $travelplandata[0]['Hotels'] : '',
'PopularPlaces' => $travelplandata[0]['PopularPlaces'] ? $travelplandata[0]['PopularPlaces'] : '',
'SourcePlaceSysId' => isset($travelplandata[0]['SourcePlaceSysId']) ? $travelplandata[0]['SourcePlaceSysId'] : '',
'SourcePlaces' => isset($travelplandata[0]['SourcePlaces']) ? $travelplandata[0]['SourcePlaces'] : '',
'DestinationPlacesSysId' => isset($destinationIds) ? $destinationIds : $going_to_cityid,
'DestinationPlaces' => isset($destinationValues) ? $destinationValues : $going_to_cityname,
'CityIds' => $destinationIds ? $destinationIds : '',
'Cities' => $destinationValues ? $destinationValues : '',
'Countries' => $travelplandata[0]['Countries'] ? $travelplandata[0]['Countries'] : '',
'IsMarkForDel' => $travelplandata[0]['IsMarkForDel'] ? $travelplandata[0]['IsMarkForDel'] : '0',
'RoomInfoJson' => $requestPerameter['roomjson'] ? $requestPerameter['roomjson'] : '',
'CreateDate' => $createDate,
'UpdateDate' => $createDate,
'IsActive' => (isset($leadsourceTitle) && ($leadsourceTitle == 'Website' && $IsB2BCustomer == 0)) ? 0 : 1,
'IsAprooved' => 1,
'IsMarkForDel' => $travelplandata[0]['IsMarkForDel'] ? $travelplandata[0]['IsMarkForDel'] : '0',
'TPId' => $travelplandata[0]['TPSysId'],
'IsPriceShared' => 1, // to detect withprice or without price true = If price shared , false = price range shared
'GreetingMessage' => $aboutpackage ? $aboutpackage : '',
'EmailText' => '',
'EmailDestination' => $tripaddress,
'ProposalEmailTo' => trim($custemail),
'IsShared' => 1,
'GroupSize' => $travelplandata[0]['GroupSize'] ? $travelplandata[0]['GroupSize'] : '',
'IsInsuranceExist' => $travelplandata[0]['TravelInsurance'] ? $travelplandata[0]['TravelInsurance'] : '',
'BYOPackTypeMask' => $travelplandata[0]['BYOPackTypeMask'] ? $travelplandata[0]['BYOPackTypeMask'] : '',
'PackSpecType' => 3,
'TourType' => $tourID,
'IsFixDatePlan' => $travelplandata[0]['IsFixDatePlan'] ? $travelplandata[0]['IsFixDatePlan'] : '',
'GSTSharedMode' => $gsttype, // (1 for 5% on total Cost, 2 for 18% on Service Fee) to detect what type and how much tax will apply to customer
'SACCode' => $SACCode,
'PackageCostCalType' => !empty($travelplandata[0]['PackageCostCalType']) ? $travelplandata[0]['PackageCostCalType'] : 0, // to detect package is by lowest cost or by meal plan
'B2BAgencySysId' => trim($GTXNetworkAgencySysId),
'SharedMealPlanType' => $MealTypeId, // shared meal plan id
'LeadSourceSysId' => $leadsource,
'IsB2Bproposal' => trim($IsB2BCustomer) ? trim($IsB2BCustomer) : '0',
'IsGTXNetwork' => $IsFromGTXNetwork,
'DestinationCovered' => $travelplandata[0]['DestinationCovered'] ? $travelplandata[0]['DestinationCovered'] : '0',
'EmailTemplateType' => !empty($EmailTemplateType) ? $EmailTemplateType : '1',
'EmailTemplateColor' => !empty($EmailTemplateColor) ? $EmailTemplateColor : '',
'IsShareWithGST' => $IsShareWithGST,
'ProposalEmailFrom' => $proposalEmailFrom,
'LeadSysId' => (int) $AgencyCRMLeadSysId,
'SelectPricingType' => $SelectPricingType
);
try {
$tpproposalID = $this->_crmcusttravelplan->addCustomerTravelPlan($customertravelpalnProposal12);
if (count($tpproposalID) > 0) {
$agencyuserArray = array(
'UpdateDate' => $createDate
);
$whereAgencyCustomer = " AgencySysId=" . $AgencySysId . " AND CustomerSysId=" . $CustomerSysId . "";
$agencyCustomerData = $this->_agencycustomerObj->UpdateAgencyCustomer($agencyuserArray, $whereAgencyCustomer);
}
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
##################################################################
$travelplanIetnaryData = $this->GetTravelPlanItenary($travelplanID);
$travelpanitenary = array_column($travelplanIetnaryData, 'TPIntSysId');
$tplanitenayvalues = implode(', ', $travelpanitenary);
for ($i = 0; $i < count($travelplanIetnaryData); $i++) {
$tpstart_date = $travelplanIetnaryData[$i]['StartDate'];
$tpend_date = $travelplanIetnaryData[$i]['EndDate'];
$travelitenaryarray = array(
'TPSysId' => $tpproposalID,
'Sequence' => $travelplanIetnaryData[$i]['Sequence'],
'AgencySysId' => $travelplanIetnaryData[$i]['AgencySysId'],
'Title' => $travelplanIetnaryData[$i]['Title'],
'Details' => $travelplanIetnaryData[$i]['Details'],
'InclMask' => $travelplanIetnaryData[$i]['InclMask'] ? trim($travelplanIetnaryData[$i]['InclMask']) : '',
'ExclusionMask' => $travelplanIetnaryData[$i]['ExclusionMask'] ? $travelplanIetnaryData[$i]['ExclusionMask'] : '',
'InclCatMask' => $travelplanIetnaryData[$i]['InclCatMask'] ? trim($travelplanIetnaryData[$i]['InclCatMask']) : '',
'PackInclMask' => $travelplanIetnaryData[$i]['PackInclMask'] ? $travelplanIetnaryData[$i]['PackInclMask'] : '',
'PackTypeMask' => trim($travelplanIetnaryData[$i]['PackTypeMask']),
'ImageTN' => $travelplanIetnaryData[$i]['ImageTN'],
'ImgForList' => $travelplanIetnaryData[$i]['ImgForList'],
'ImgeDetails' => $travelplanIetnaryData[$i]['ImgeDetails'],
'Rating' => $travelplanIetnaryData[$i]['Rating'] ? $travelplanIetnaryData[$i]['Rating'] : 0,
'TotalMinDays' => $travelplanIetnaryData[$i]['TotalMinDays'] ? $travelplanIetnaryData[$i]['TotalMinDays'] : 0,
'TotalMaxDays' => $travelplanIetnaryData[$i]['TotalMaxDays'],
'Hotels' => $travelplanIetnaryData[$i]['Hotels'],
'PopularPlaces' => $travelplanIetnaryData[$i]['PopularPlaces'],
'CitySysId' => $travelplanIetnaryData[$i]['CitySysId'],
'Cities' => $travelplanIetnaryData[$i]['Cities'],
'Countries' => $travelplanIetnaryData[$i]['Countries'],
'IsMarkForDel' => 0,
'IsActive' => 1,
'StartDate' => $tpstart_date,
'EndDate' => $tpend_date,
'CreateDate' => $createDate,
'UpdateDate' => $createDate,
);
try {
$lasttravelitenaryID[] = $this->_crmcustomertravelItenary->addCustomerTravelItenary($travelitenaryarray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
##################################################################
$tplanitenaryaccomdata = $this->GetTravelPlanItenaryAccom($tplanitenayvalues, $catID);
for ($k = 0; $k < count($tplanitenaryaccomdata); $k++) {
$existingtpintID = $tplanitenaryaccomdata[$k]['TPIntSysId'];
$getkeyvalue = array_search($existingtpintID, $travelpanitenary);
if ($tplanitenaryaccomdata[$k]['MasterIntSysId'] > 0) {
$masterintsysID = $tplanitenaryaccomdata[$k]['MasterIntSysId'];
$getkeyvalueintID = array_search($masterintsysID, $travelpanitenary);
$getmasterID = $lasttravelitenaryID[$getkeyvalueintID];
} else {
$getmasterID = 0;
}
if ((isset($leadsourceTitle) && $leadsourceTitle == 'Website')) {
$IsSelectedOnPkg = 0;
} else {
$IsSelectedOnPkg = $tplanitenaryaccomdata[$k]['IsSelectedOnPkg'] ? $tplanitenaryaccomdata[$k]['IsSelectedOnPkg'] : 0;
}
if (isset($leadsourceTitle) && $leadsourceTitle == 'Website' && count($requestPerameter['ItineraryArray']['itineraries'][$existingtpintID]['hotel']) > 0) {
foreach ($requestPerameter['ItineraryArray']['itineraries'][$existingtpintID]['hotel'] as $key => $value) {
if ($tplanitenaryaccomdata[$k]['InvnItemSysId'] == $value['itemid'] && $value['IsIncluded'] == 1) {
$IsSelectedOnPkg = 1;
}
}
}
$travelitenaryaccomArray = array(
'TPIntSysId' => $lasttravelitenaryID[$getkeyvalue] ? $lasttravelitenaryID[$getkeyvalue] : 0,
'MasterIntSysId' => $getmasterID,
'SeqId' => $tplanitenaryaccomdata[$k]['SeqId'] ? $tplanitenaryaccomdata[$k]['SeqId'] : 0,
'AgencySysId' => $tplanitenaryaccomdata[$k]['AgencySysId'] ? $tplanitenaryaccomdata[$k]['AgencySysId'] : 0,
'AccoSysId' => $tplanitenaryaccomdata[$k]['AccoSysId'] ? $tplanitenaryaccomdata[$k]['AccoSysId'] : 0,
'InvnItemSysId' => $tplanitenaryaccomdata[$k]['InvnItemSysId'] ? $tplanitenaryaccomdata[$k]['InvnItemSysId'] : '0',
'RoomType' => $tplanitenaryaccomdata[$k]['RoomType'] ? $tplanitenaryaccomdata[$k]['RoomType'] : 0,
'MealPlanType' => $tplanitenaryaccomdata[$k]['MealPlanType'] ? $tplanitenaryaccomdata[$k]['MealPlanType'] : 0,
'RoomNumber' => $tplanitenaryaccomdata[$k]['RoomNumber'] ? $tplanitenaryaccomdata[$k]['RoomNumber'] : '',
'RoomTypeStr' => $tplanitenaryaccomdata[$k]['RoomTypeStr'] ? $tplanitenaryaccomdata[$k]['RoomTypeStr'] : '',
'Title' => $tplanitenaryaccomdata[$k]['Title'] ? $tplanitenaryaccomdata[$k]['Title'] : '',
'SpecialRequest' => '',
'CheckInTime' => $tplanitenaryaccomdata[$k]['CheckInTime'] ? $tplanitenaryaccomdata[$k]['CheckInTime'] : '',
'CheckOutTime' => $tplanitenaryaccomdata[$k]['CheckOutTime'] ? $tplanitenaryaccomdata[$k]['CheckOutTime'] : '',
'XRefCityId' => $tplanitenaryaccomdata[$k]['XRefCityId'] ? $tplanitenaryaccomdata[$k]['XRefCityId'] : '',
'FromDate' => $tplanitenaryaccomdata[$k]['FromDate'] ? $tplanitenaryaccomdata[$k]['FromDate'] : '',
'ToDate' => $tplanitenaryaccomdata[$k]['ToDate'] ? $tplanitenaryaccomdata[$k]['ToDate'] : '',
'AdultPax' => 0,
'ChildPax' => 0,
'InfantPax' => 0,
'PetPax' => 0,
'TotalPax' => $tplanitenaryaccomdata[$k]['TotalPax'] ? $tplanitenaryaccomdata[$k]['TotalPax'] : 0,
'TotalNights' => $tplanitenaryaccomdata[$k]['TotalNights'] ? $tplanitenaryaccomdata[$k]['TotalNights'] : 0,
'StarRating' => $tplanitenaryaccomdata[$k]['StarRating'] ? $tplanitenaryaccomdata[$k]['StarRating'] : 0,
'CurrencyType' => $tplanitenaryaccomdata[$k]['CurrencyType'] ? $tplanitenaryaccomdata[$k]['CurrencyType'] : 0,
'TotalCost' => $tplanitenaryaccomdata[$k]['TotalCostGen'] ? $tplanitenaryaccomdata[$k]['TotalCostGen'] : 0,
'Discounts' => $tplanitenaryaccomdata[$k]['Discounts'] ? $tplanitenaryaccomdata[$k]['Discounts'] : 0,
'Taxes' => $tplanitenaryaccomdata[$k]['Taxes'] ? $tplanitenaryaccomdata[$k]['Taxes'] : 0,
'NetCost' => $tplanitenaryaccomdata[$k]['NetCost'] ? $tplanitenaryaccomdata[$k]['NetCost'] : 0,
'XServiceTaxAmount' => 0,
'GTXServiceTaxAmount' => 0,
'AgentServiceTaxAmount' => 0,
'AgentsCustomServiceTaxAmount' => 0,
'MarkUp' => 0,
'GTXMarkup' => 0,
'AgencyMarkUp' => 0,
'IsSelectedOnPkg' => $IsSelectedOnPkg,
'CreateDate' => $tplanitenaryaccomdata[$k]['CreateDate'] ? $tplanitenaryaccomdata[$k]['CreateDate'] : '',
'UpdateDate' => $tplanitenaryaccomdata[$k]['UpdateDate'] ? $tplanitenaryaccomdata[$k]['UpdateDate'] : '',
'IsMarkForDel' => 0,
'IsActive' => 1,
'IsFromAPI' => 0,
'SupplierSysId' => $tplanitenaryaccomdata[$k]['SupplierSysId'] ? $tplanitenaryaccomdata[$k]['SupplierSysId'] : '',
'SourceSysId' => $tplanitenaryaccomdata[$k]['SourceSysId'] ? $tplanitenaryaccomdata[$k]['SourceSysId'] : '',
'TotalCostSO' => $tplanitenaryaccomdata[$k]['TotalCostSO'] ? $tplanitenaryaccomdata[$k]['TotalCostSO'] : 0,
'TotalCostDO' => $tplanitenaryaccomdata[$k]['TotalCostDO'] ? $tplanitenaryaccomdata[$k]['TotalCostDO'] : 0,
'TotalCostTO' => 0,
'TotalCost' => $tplanitenaryaccomdata[$k]['TotalCost'] ? $tplanitenaryaccomdata[$k]['TotalCost'] : 0,
'RoomMemInfoJson' => $requestPerameter['roomjson'] ? $requestPerameter['roomjson'] : '',
'TotalCostExtraBed' => $tplanitenaryaccomdata[$k]['TotalCostExtraBed'] ? $tplanitenaryaccomdata[$k]['TotalCostExtraBed'] : 0,
'TotalCostWithoutBed' => $tplanitenaryaccomdata[$k]['TotalCostWithoutBed'] ? $tplanitenaryaccomdata[$k]['TotalCostWithoutBed'] : 0,
'BYOPackType' => $tplanitenaryaccomdata[$k]['BYOPackType'] ? $tplanitenaryaccomdata[$k]['BYOPackType'] : '1',
);
try {
$tplanitenaryaccomdataID = $this->_crmcusttravelplanItenaryAccom->addCustomerTravelPlanAccom($travelitenaryaccomArray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
##################################################################
$tpitenrayEvents = $this->GetTravelPlanItenaryEvents($tplanitenayvalues);
if (count($tpitenrayEvents) > 0) {
for ($k = 0; $k < count($tpitenrayEvents); $k++) {
$existingtpintID = $tpitenrayEvents[$k]['TPIntSysId'];
$getkeyvalue = array_search($existingtpintID, $travelpanitenary);
$IsOptionalActivity = $tpitenrayEvents[$k]['IsOptionalActivity'] ? $tpitenrayEvents[$k]['IsOptionalActivity'] : 0;
if (isset($leadsourceTitle) && $leadsourceTitle == 'Website' && count($requestPerameter['ItineraryArray']['itineraries'][$existingtpintID]['activity']) > 0) {
foreach ($requestPerameter['ItineraryArray']['itineraries'][$existingtpintID]['activity'] as $key => $value) {
if ($tpitenrayEvents[$k]['TPActivitySysId'] == $value['itemid'] && $value['IsIncluded'] == 1) {
$IsOptionalActivity = 1;
}
}
}
$tpitenrayevntsArray = array(
'TPIntSysId' => $lasttravelitenaryID[$getkeyvalue] ? $lasttravelitenaryID[$getkeyvalue] : 0,
'Sequence' => $tpitenrayEvents[$k]['Sequence'] ? $tpitenrayEvents[$k]['Sequence'] : 0,
'AgencySysId' => $tpitenrayEvents[$k]['AgencySysId'] ? $tpitenrayEvents[$k]['AgencySysId'] : 0,
'TPActivitySysId' => $tpitenrayEvents[$k]['TPActivitySysId'] ? $tpitenrayEvents[$k]['TPActivitySysId'] : 0,
'CurrencyType' => $tpitenrayEvents[$k]['CurrencyType'] ? $tpitenrayEvents[$k]['CurrencyType'] : 0,
'Title' => $tpitenrayEvents[$k]['Title'] ? $tpitenrayEvents[$k]['Title'] : '',
'Type' => $tpitenrayEvents[$k]['Type'] ? $tpitenrayEvents[$k]['Type'] : '',
'CityId' => $tpitenrayEvents[$k]['CityId'] ? $tpitenrayEvents[$k]['CityId'] : 0,
'IsMarkForDel' => $tpitenrayEvents[$k]['IsMarkForDel'] ? $tpitenrayEvents[$k]['IsMarkForDel'] : 0,
'IsActive' => $tpitenrayEvents[$k]['IsActive'] ? $tpitenrayEvents[$k]['IsActive'] : 1,
'Cost' => $tpitenrayEvents[$k]['Cost'] ? $tpitenrayEvents[$k]['Cost'] : 0,
'KidsCost' => $tpitenrayEvents[$k]['KidsCost'] ? $tpitenrayEvents[$k]['KidsCost'] : 0,
'Markup' => $tpitenrayEvents[$k]['Markup'] ? $tpitenrayEvents[$k]['Markup'] : 0,
'TotalCost' => $tpitenrayEvents[$k]['TotalCost'] ? $tpitenrayEvents[$k]['TotalCost'] : 0,
'IsOptionalActivity' => $IsOptionalActivity,
'SupplierSysId' => $tpitenrayEvents[$k]['SupplierSysId'] ? $tpitenrayEvents[$k]['SupplierSysId'] : 0,
);
try {
$travelitenrayevents = $this->_crmcustomertravelItenaryEvents->addCustomerTravelItenaryEvents($tpitenrayevntsArray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
}
##################################################################
$tpitenarysightseeing = $this->GetTravelPlanSightSeeing($tplanitenayvalues);
if (count($tpitenarysightseeing) > 0) {
for ($k = 0; $k < count($tpitenarysightseeing); $k++) {
$existingtpintID = $tpitenarysightseeing[$k]['InvnItemSysId'];
$getkeyvalue = array_search($existingtpintID, $travelpanitenary);
$fromDate = $tpitenarysightseeing[$k]['FromDate'];
$toDate = $tpitenarysightseeing[$k]['ToDate'];
$IsOptionalSightSeeing = $tpitenarysightseeing[$k]['IsOptionalSightSeeing'] ? $tpitenarysightseeing[$k]['IsOptionalSightSeeing'] : 0;
$tpitenraysightseeingArray = array(
'InvnItemSysId' => $lasttravelitenaryID[$getkeyvalue] ? $lasttravelitenaryID[$getkeyvalue] : 0,
'SeqId' => $tpitenarysightseeing[$k]['SeqId'] ? $tpitenarysightseeing[$k]['SeqId'] : 0,
'SSSysId' => $tpitenarysightseeing[$k]['SSSysId'] ? $tpitenarysightseeing[$k]['SSSysId'] : 0,
'AgencySysId' => $tpitenarysightseeing[$k]['AgencySysId'] ? $tpitenarysightseeing[$k]['AgencySysId'] : 0,
'Title' => $tpitenarysightseeing[$k]['Title'] ? $tpitenarysightseeing[$k]['Title'] : 0,
'Type' => $tpitenarysightseeing[$k]['Type'] ? $tpitenarysightseeing[$k]['Type'] : 0,
'CityId' => $tpitenarysightseeing[$k]['CityId'] ? $tpitenarysightseeing[$k]['CityId'] : 0,
'Cost' => $tpitenarysightseeing[$k]['Cost'] ? $tpitenarysightseeing[$k]['Cost'] : 0,
'FromDate' => $fromDate->format('Y-m-d'),
'ToDate' => $toDate->format('Y-m-d'),
'BookingType' => $tpitenarysightseeing[$k]['BookingType'] ? $tpitenarysightseeing[$k]['BookingType'] : 0,
'Qty' => $tpitenarysightseeing[$k]['Qty'] ? $tpitenarysightseeing[$k]['Qty'] : 0,
'IfAnyOffer' => $tpitenarysightseeing[$k]['IfAnyOffer'] ? $tpitenarysightseeing[$k]['IfAnyOffer'] : 0,
'OfferMsg' => $tpitenarysightseeing[$k]['OfferMsg'] ? $tpitenarysightseeing[$k]['OfferMsg'] : 0,
'OfferImage' => $tpitenarysightseeing[$k]['OfferImage'] ? $tpitenarysightseeing[$k]['OfferImage'] : 0,
'IxFixedDateInven' => $tpitenarysightseeing[$k]['IxFixedDateInven'] ? $tpitenarysightseeing[$k]['IsMarkForDel'] : 0,
'CreateDate' => $createDate,
'UpdateDate' => $createDate,
'IsActive' => $tpitenarysightseeing[$k]['IsActive'] ? $tpitenarysightseeing[$k]['IsActive'] : 0,
'IsMarkForDelete' => $tpitenarysightseeing[$k]['IsMarkForDelete'] ? $tpitenarysightseeing[$k]['IsMarkForDelete'] : 0,
'Cost' => $tpitenarysightseeing[$k]['Cost'] ? $tpitenarysightseeing[$k]['Cost'] : 0,
'KidsCost' => $tpitenarysightseeing[$k]['KidsCost'] ? $tpitenarysightseeing[$k]['KidsCost'] : 0,
'Markup' => $tpitenarysightseeing[$k]['Markup'] ? $tpitenarysightseeing[$k]['Markup'] : 0,
'TotalCost' => $tpitenarysightseeing[$k]['TotalCost'] ? $tpitenarysightseeing[$k]['TotalCost'] : 0,
'IsOptionalSightSeeing' => $IsOptionalSightSeeing,
'SupplierSysId' => $tpitenarysightseeing[$k]['SupplierSysId'] ? $tpitenarysightseeing[$k]['SupplierSysId'] : 0,
);
try {
$travelitenraysightssing = $this->_crmcustomertravelSightSeeing->addCustomerTravelItenarySightSeeing($tpitenraysightseeingArray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
}
##################################################################
$travelplanmarketPrice = $this->GetTravelMarketPrice($travelplanID, $MarketPlaceId);
if (count($travelplanmarketPrice) > 0) {
for ($k = 0; $k < count($travelplanmarketPrice); $k++) {
$fromDate = $travelplanmarketPrice[$k]['FromDate'];
$toDate = $travelplanmarketPrice[$k]['ToDate'];
$travelmarketpriceArray = array(
'TPIntSysId' => $tpproposalID,
'AgencySysId' => trim($travelplanmarketPrice[$k]['AgencySysId']) ? $travelplanmarketPrice[$k]['AgencySysId'] : 0,
'FromDate' => $fromDate->format('Y-m-d'),
'ToDate' => $toDate->format('Y-m-d'),
'CurrencyType' => $travelplanmarketPrice[$k]['CurrencyType'] ? $travelplanmarketPrice[$k]['CurrencyType'] : 0,
'MarkType' => $travelplanmarketPrice[$k]['MarkType'] ? $travelplanmarketPrice[$k]['MarkType'] : 0,
'MarketPlaceId' => $travelplanmarketPrice[$k]['MarketPlaceId'] ? $travelplanmarketPrice[$k]['MarketPlaceId'] : 0,
'MarketPlace' => $travelplanmarketPrice[$k]['MarketPlace'] ? $travelplanmarketPrice[$k]['MarketPlace'] : 0,
'Permission' => $travelplanmarketPrice[$k]['Permission'] ? $travelplanmarketPrice[$k]['Permission'] : 0,
'MarkPercent' => $travelplanmarketPrice[$k]['MarkPercent'] ? $travelplanmarketPrice[$k]['MarkPercent'] : 0,
'CostPPSO' => $travelplanmarketPrice[$k]['CostPPSO'] ? $travelplanmarketPrice[$k]['CostPPSO'] : 0,
'CostPPDO' => $travelplanmarketPrice[$k]['CostPPDO'] ? $travelplanmarketPrice[$k]['CostPPDO'] : 0,
'CostPPTO' => $travelplanmarketPrice[$k]['CostPPTO'] ? $travelplanmarketPrice[$k]['CostPPTO'] : 0,
'TourType' => $travelplanmarketPrice[$k]['TourType'] ? $travelplanmarketPrice[$k]['TourType'] : 0,
'PackCategoryId' => $travelplanmarketPrice[$k]['PackCategoryId'] ? $travelplanmarketPrice[$k]['PackCategoryId'] : 0,
'CostExtraBed' => $travelplanmarketPrice[$k]['CostExtraBed'] ? $travelplanmarketPrice[$k]['CostExtraBed'] : 0,
'CostChildWithoutBed' => $travelplanmarketPrice[$k]['CostChildWithoutBed'] ? $travelplanmarketPrice[$k]['CostChildWithoutBed'] : 0,
'Tax' => $travelplanmarketPrice[$k]['Tax'] ? $travelplanmarketPrice[$k]['Tax'] : 0,
'ExcludedPercent' => $travelplanmarketPrice[$k]['ExcludedPercent'] ? $travelplanmarketPrice[$k]['ExcludedPercent'] : 0,
"PricePerPerson" => $travelplanmarketPrice[$k]['PricePerPerson'] ? $travelplanmarketPrice[$k]['PricePerPerson'] : 0,
"TotalCost" => $travelplanmarketPrice[$k]['TotalCost'] ? $travelplanmarketPrice[$k]['TotalCost'] : 0,
"CostPerPerson" => $travelplanmarketPrice[$k]['CostPerPerson'] ? $travelplanmarketPrice[$k]['CostPerPerson'] : 0,
'CreateDate' => $createDate,
'UpdateDate' => $createDate,
'IsActive' => $travelplanmarketPrice[$k]['IsActive'] ? $travelplanmarketPrice[$k]['IsActive'] : 0,
'IsMarkForDel' => 0,
'MealPlanType' => !empty($travelplanmarketPrice[$k]['MealPlanType']) ? $travelplanmarketPrice[$k]['MealPlanType'] : 0, // meal plan
);
try {
$travelitenramarketwsierate = $this->_crmcustomertravelMarketPlaces->addCustomerTravelMarketRate($travelmarketpriceArray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
}
$tpitenaryplaces = $this->GetTravelPlanItenaryPaces($tplanitenayvalues);
if (count($tpitenaryplaces) > 0) {
for ($k = 0; $k < count($tpitenaryplaces); $k++) {
$existingtpintID = $tpitenaryplaces[$k]['TPIntSysId'];
$getkeyvalue = array_search($existingtpintID, $travelpanitenary);
$tpitenrayplacesArray = array(
'TPSysId' => $tpproposalID,
'TPIntSysId' => $lasttravelitenaryID[$getkeyvalue] ? $lasttravelitenaryID[$getkeyvalue] : 0,
'Sequence' => $tpitenaryplaces[$k]['Sequence'] ? $tpitenaryplaces[$k]['Sequence'] : 0,
'PlaceSysId' => $tpitenaryplaces[$k]['PlaceSysId'] ? $tpitenaryplaces[$k]['PlaceSysId'] : 0,
'AgencySysId' => $tpitenaryplaces[$k]['AgencySysId'] ? $tpitenaryplaces[$k]['AgencySysId'] : 0,
'IsMarkForDel' => $tpitenaryplaces[$k]['IsMarkForDel'] ? $tpitenaryplaces[$k]['IsMarkForDel'] : 0,
'IsActive' => $tpitenaryplaces[$k]['IsActive'] ? $tpitenaryplaces[$k]['IsActive'] : 0,
'CreateDate' => $tpitenaryplaces[$k]['CreateDate'] ? $tpitenaryplaces[$k]['CreateDate'] : $createDate,
'UpdateDate' => $tpitenaryplaces[$k]['UpdateDate'] ? $tpitenaryplaces[$k]['UpdateDate'] : $createDate,
);
try {
$travelitenrayplaces = $this->_crmcustomertravelItenaryPlaces->addCustomerTravelItenaryPlaces($tpitenrayplacesArray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
}
$objPackage = new Travel_Model_TblPackage();
$cancelPolicyData = $objPackage->getPackageCancelPolictyList($travelplanID);
if (count($cancelPolicyData) > 0) {
$cancelPolicyArray = array();
foreach ($cancelPolicyData as $cancelPolicy) {
unset($cancelPolicy['TPRulesSysId']);
$cancelPolicyArray = $cancelPolicy;
$cancelPolicyArray['TPSysId'] = $tpproposalID;
$cancelPolicyArray['CreateDate'] = $createDate;
$cancelPolicyArray['UpdateDate'] = $createDate;
$travelplancancelpolicyids[] = $objPackage->insertData('TB_Agency_Customer_TravelPlan_Rules', $cancelPolicyArray);
}
}
try {
$travelplanterms = $this->GetCustomerTravelPlanTerms($travelplanID);
if (count($travelplanterms) > 0) {
for ($k = 0; $k < count($travelplanterms); $k++) {
$travelplantermsArray = array(
'TPIntSysId' => $tpproposalID,
'AgencySysId' => $travelplanterms[$k]['AgencySysId'] ? $travelplanterms[$k]['AgencySysId'] : 0,
'Inclusions' => $travelplanterms[$k]['Inclusions'] ? $travelplanterms[$k]['Inclusions'] : 0,
'Exclusions' => $travelplanterms[$k]['Exclusions'] ? $travelplanterms[$k]['Exclusions'] : 0,
'CancellationPolicy' => $travelplanterms[$k]['CancellationPolicy'] ? $travelplanterms[$k]['CancellationPolicy'] : 0,
'TravelBasics' => $travelplanterms[$k]['TravelBasics'] ? $travelplanterms[$k]['TravelBasics'] : '',
'TermsAndConditions' => $travelplanterms[$k]['TermsAndConditions'] ? $travelplanterms[$k]['TermsAndConditions'] : '',
'BookingTerms' => $travelplanterms[$k]['BookingTerms'] ? $travelplanterms[$k]['BookingTerms'] : '',
'WhyUseUs' => $travelplanterms[$k]['WhyUseUs'] ? $travelplanterms[$k]['WhyUseUs'] : '',
'REFUNDPOLICY' => $travelplanterms[$k]['REFUNDPOLICY'] ? $travelplanterms[$k]['REFUNDPOLICY'] : '',
'CreateDate' => $createDate,
'UpdateDate' => $createDate,
'IsMarkForDel' => $travelplanterms[$k]['IsMarkForDel'] ? $travelplanterms[$k]['IsMarkForDel'] : 0,
'IsActive' => $travelplanterms[$k]['IsActive'] ? $travelplanterms[$k]['IsActive'] : 0,
);
try {
$travelitenramarketwsierate = $this->_crmcustomertravelTerm->addCustomerTerm($travelplantermsArray);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
}
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
$travelplanTransFixed = $this->GetTravelPlanItenaryTransFixed($travelplanID);
for ($j = 0; $j < count($travelplanTransFixed); $j++) {
$existingtpintIDTF = $travelplanTransFixed[$j]['TPIntSysId'];
$getkeyvalue = array_search($existingtpintIDTF, $travelpanitenary);
$IsIncluded = $travelplanTransFixed[$j]['IsIncluded'] ? $travelplanTransFixed[$j]['IsIncluded'] : 0;
if (isset($leadsourceTitle) && $leadsourceTitle == 'Website' && count($requestPerameter['ItineraryArray']['itineraries'][$existingtpintIDTF]['transfers']) > 0) {
foreach ($requestPerameter['ItineraryArray']['itineraries'][$existingtpintIDTF]['transfers'] as $key => $value) {
$dataTrans = $value;
for ($n = 0; $n < count($dataTrans); $n++) {
if ($travelplanTransFixed[$j]['FixTransSysId'] == $dataTrans[$n]['itemid'] && ($dataTrans[$n]['IsIncluded'] == 1)) {
$IsIncluded = 1;
}
}
}
}
$dataTrans = array(
'AgencySysId' => $AgencySysId,
'TPSysId' => $tpproposalID,
'TPIntSysId' => $lasttravelitenaryID[$getkeyvalue] ? $lasttravelitenaryID[$getkeyvalue] : 0,
'Type' => 'Included',
'IsIncluded' => $IsIncluded,
'VehSysId' => $travelplanTransFixed[$j]['VehSysId'] ? $travelplanTransFixed[$j]['VehSysId'] : 0,
'VehicleTypeSysId' => $travelplanTransFixed[$j]['VehicleTypeSysId'] ? $travelplanTransFixed[$j]['VehicleTypeSysId'] : 0,
'RouteSysId' => $travelplanTransFixed[$j]['RouteSysId'] ? $travelplanTransFixed[$j]['RouteSysId'] : 0,
'RouteVechSysId' => $travelplanTransFixed[$j]['RouteVechSysId'] ? $travelplanTransFixed[$j]['RouteVechSysId'] : 0,
'TransType' => $travelplanTransFixed[$j]['TransType'] ? $travelplanTransFixed[$j]['TransType'] : '',
'TransTypeCat' => $travelplanTransFixed[$j]['TransTypeCat'] ? $travelplanTransFixed[$j]['TransTypeCat'] : '',
'FromPlace' => $travelplanTransFixed[$j]['FromPlace'] ? $travelplanTransFixed[$j]['FromPlace'] : '',
'ToPlace' => $travelplanTransFixed[$j]['ToPlace'] ? $travelplanTransFixed[$j]['ToPlace'] : '',
'SourceCityId' => $travelplanTransFixed[$j]['SourceCityId'] ? $travelplanTransFixed[$j]['SourceCityId'] : 0,
'DestCityId' => $travelplanTransFixed[$j]['DestCityId'] ? $travelplanTransFixed[$j]['DestCityId'] : 0,
'CostPerson' => $travelplanTransFixed[$j]['CostPerson'] ? $travelplanTransFixed[$j]['CostPerson'] : 0,
'TotalPrice' => $travelplanTransFixed[$j]['TotalPrice'] ? $travelplanTransFixed[$j]['TotalPrice'] : 0,
'Capacity' => $travelplanTransFixed[$j]['Capacity'] ? $travelplanTransFixed[$j]['Capacity'] : 0,
'IsGroup' => $travelplanTransFixed[$j]['IsGroup'] ? $travelplanTransFixed[$j]['IsGroup'] : 0,
'CreateDate' => $createDate,
'IsMarkForDel' => '0',
'IsActive' => '1',
'Sequence' => $travelplanTransFixed[$j]['Sequence'] ? $travelplanTransFixed[$j]['Sequence'] : 0,
);
try {
$updateId = $this->_crmcustomertravelFixed->addCustomerFixedItinerary($dataTrans);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
$travelplanOtherServices = $this->GetTravelPlanOtherServices($travelplanID);
for ($j = 0; $j < count($travelplanOtherServices); $j++) {
$IsOptionalServices = $travelplanOtherServices[$j]['IsOptionalServices'] ? $travelplanOtherServices[$j]['IsOptionalServices'] : 0;
if (isset($leadsourceTitle) && $leadsourceTitle == 'Website' && count($requestPerameter['ItineraryArray']['others']['services']) > 0) {
foreach ($requestPerameter['ItineraryArray']['others']['services'] as $key => $value) {
if ($travelplanOtherServices[$j]['OtherSrvSysId'] == $value['itemid'] && $value['IsIncluded'] == 1) {
$IsOptionalServices = 1;
}
}
}
$dataOtherServices = array(
'TPIntSysId' => $tpproposalID,
'OtherSrvSysId' => $travelplanOtherServices[$j]['OtherSrvSysId'] ? $travelplanOtherServices[$j]['OtherSrvSysId'] : 0,
'SupplierSysId' => $travelplanOtherServices[$j]['SupplierSysId'] ? $travelplanOtherServices[$j]['SupplierSysId'] : 0,
'ServiceTitle' => $travelplanOtherServices[$j]['ServiceTitle'] ? $travelplanOtherServices[$j]['ServiceTitle'] : '',
'ServiceType' => $travelplanOtherServices[$j]['ServiceType'] ? $travelplanOtherServices[$j]['ServiceType'] : '',
'Comment' => $travelplanOtherServices[$j]['Comment'] ? $travelplanOtherServices[$j]['Comment'] : '',
'CurrencyType' => $travelplanOtherServices[$j]['CurrencyType'] ? $travelplanOtherServices[$j]['CurrencyType'] : 0,
'RateType' => $travelplanOtherServices[$j]['RateType'] ? $travelplanOtherServices[$j]['RateType'] : 0,
'PaxCount' => $travelplanOtherServices[$j]['PaxCount'] ? $travelplanOtherServices[$j]['PaxCount'] : 0,
'Cost' => $travelplanOtherServices[$j]['Cost'] ? $travelplanOtherServices[$j]['Cost'] : 0,
'IsOptionalServices' => $IsOptionalServices,
'IsCostInclInTP' => $travelplanOtherServices[$j]['IsCostInclInTP'] ? $travelplanOtherServices[$j]['IsCostInclInTP'] : 0,
'IsActive' => 1,
'IsMarkForDelete' => 0,
'IsApproved' => 1,
'CreateDate' => $createDate,
'UpdateDate' => $createDate
);
try {
$updateId = $this->_crmcustomerTravelOtherServicesObj->addCustomerTravelOtherServices($dataOtherServices);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
}
$this->_dbObj->commit();
try {
Zend_Controller_Action_HelperBroker::getStaticHelper('DynamicPackageSeasonCost')->GetDynamicPackagePrice($requestPerameter['roomjson'], $tpproposalID, $catID, $tourID, $MealTypeId, $main_trip_start_date, 'Customer', 'UpdateTable', 'AddRequest', $MarketPlaceId);
return array('TPSysId' => $tpproposalID, 'CurrencyType' => $travelplanmarketPrice[0]['CurrencyType']);
} catch (Zend_Exception $e) {
$error_Message = $e->getMessage();
}
} catch (Exception $e) {
$this->_dbObj->rollBack();
throw new Exception($e->getMessage());
}
}
}