403Webshell
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/models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/b2bzend/application/models//TblActivities.php
<?php
require_once('BaseModel.php');

class Travel_Model_TblActivities extends BaseModel{
    
    protected $db = NULL;
    
    public $intId = NULL;
   
    public $strCondition = NULL;
    
    public $searchArr = NULL;
    
    public $searchActivitiesArr = NULL;
    
    public $baseUrl = NULL;
       
    /***************************************/
    
    public function __construct(){
        $request = Zend_Controller_Front::getInstance()->getRequest();
        $this->baseUrl = $request->getScheme() . '://' . $request->getHttpHost();
        $this->db = Zend_Db_Table::getDefaultAdapter(); 
    }
    
    
    public function __destruct() {
        $this->db->closeConnection(); 
    }
   
    public function getAllActivitiesList($intLoggedinUserAgencySysId) {
        $sql = " SELECT InvnItemSysId,ActivityType,DurationInMin,DurationStr, XRef, TB_IC_Supplier.SupplierName AS SupplierType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, "
                . "TB_Master_BookingType.Title AS BookingName,tmia.IsActive,tmia.DisplayOnB2C, tmia.IsSaleStart, CONVERT(VARCHAR(24),tmia.FromDate,103) as FromDate,CONVERT(VARCHAR(24),tmia.ToDate,103) as ToDate "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "LEFT JOIN TB_IC_Activity ON tmia.XRef=TB_IC_Activity.ActivitySysId "
                . "LEFT JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "LEFT JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
//                . "LEFT JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType "
                //. "JOIN TB_Master_ActivityGroupType ON TB_IC_Activity.ActivityGrType=TB_Master_ActivityGroupType.ActivityGroupType "
                . " WHERE 1=1 AND IsMarkForDelete='0' ";
            
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        
        if(!empty($this->strCondition)) {
            $sql .= $this->strCondition ;
        }
        
        if(!empty($this->searchArr)) {
            //echo "<pre>"; print_r($searchArr); die;
            if($this->searchArr['cityId']!=0)
            {
              $sql .= " AND TB_IC_Activity.CitySysId = '".$this->searchArr['cityId']."' ";
            }
            
            if($this->searchArr['ActivityGroupType']!=0)
            {
              $sql .= " AND TB_IC_Activity.ActivityGrType = '".$this->searchArr['ActivityGroupType']."' ";
            }
            
            if($this->searchArr['ActivityType']!=0)
            {
                $ActivityType = trim($this->searchArr['ActivityType']);$sql .= " AND ( ',' + TB_IC_Activity.ActivityType + ',' like '%,' + '$ActivityType' + ',%' )";
              $sql .= " AND ( ',' + TB_IC_Activity.ActivityType + ',' like '%,' + '$ActivityType' + ',%' )";  
              //$sql .= " AND TB_IC_Activity.ActivityType = '".$this->searchArr['ActivityType']."' ";
            }
   
            if($this->searchArr['supplierId']!=0)
            {
              $sql .= " AND tmia.SupplierSysId = '".$this->searchArr['supplierId']."'";
            }
            
            if($this->searchArr['ActivityName']!="")
            {
              $ActivityName = $this->searchArr['ActivityName'];
              $sql .= " AND TB_IC_Activity.Title LIKE '%$ActivityName%'";
            }
        }
        
        $sql .= " ORDER BY tmia.UpdateDate DESC ";
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    public function getAllActivityGroupTypeList() {
        $sql = "Select ActivityGroupType, Title From TB_Master_ActivityGroupType where 1 = 1 AND IsActive='1'";
        $sql .= " ORDER BY Title ";
        
        $rowset = $this->db->query($sql)->fetchAll();
        return $rowset;
    }
    
    public function getAllActivityTypeList() {
        $sql = "Select ActivityType, Title, ActivityGroupType, Details From TB_Master_ActivityType where 1 = 1 AND IsActive='1'";
        $sql .= " ORDER BY Title ";
        
        $rowset = $this->db->query($sql)->fetchAll();
        return $rowset;
    }
    
    public function getAllActivityInclypeList() {
        $sql = "Select ActivityInclype, Title From TB_Master_ActivityInclype where 1 = 1 AND IsActive='1'";
        $sql .= " ORDER BY Title ";
        
        $rowset = $this->db->query($sql)->fetchAll();
        return $rowset;
    }
    
    public function getAllBookingTypeList() {
        $sql = "Select BookingType, Title From TB_Master_BookingType where 1 = 1 AND IsActive='1'";
        $sql .= " ORDER BY Title ";
        
        $rowset = $this->db->query($sql)->fetchAll();
        return $rowset;
    }
    
    public function getAllDifficultyTypeList() {
        $sql = "Select DifficultyType, Title From TB_Master_DifficultyType where 1 = 1 AND IsActive='1'";
        $sql .= " ORDER BY Title ";
        
        $rowset = $this->db->query($sql)->fetchAll();
        return $rowset;
    }
    
    public function getInclusionList($inclusions_id) {
        $sql = "select dbo.GetActivityInclype('".$inclusions_id."') as InclusionName ";
        
        $rowset = $this->db->query($sql)->fetchAll();
        return $rowset;
    }
    
    
    public function addActivitiesDetails($data)
    {
        try {
            $this->db->insert('TB_IC_Activity', $data);
            return $this->db->lastInsertId('TB_IC_Activity');
        } catch(Exception $e) {
            die('There has been an error. ' . $e->getMessage());
        }
        return 0;
    }
    
    public function updateActivitiesDetails($ActivitySysId, $insert)
    {
        $where = array('ActivitySysId = ? ' => $ActivitySysId);
        return $this->db->update('TB_IC_Activity', $insert, $where);
    }
    
    public function getCountryList($strCountryName) {
        $sql = "Select ContId, Title From TB_Master_Geo_Country where 1 = 1 AND IsActive='1' AND Code!='0' ";
        
        if(!empty($strCountryName)) {
            $sql .= " AND Title LIKE '$strCountryName%' ";
        }
        
        $sql .= " ORDER BY Title";
        //echo $sql; die;
        
        $rowset = $this->db->query($sql)->fetchAll();
        
        if(count($rowset) >  0 ){
            foreach($rowset as $row) {
                
                $response[] = array('ContId'=>$row['ContId'],'value' => $row['Title'], 'label' => $row['Title']);
            }
        } else {
            $response[] = array('ContId'=>0);   
        }
        return $response;
    }
    
    public function getCityList($strCityName, $strcountryId) {
        $sql = "Select CityId, Title From TB_Master_Geo_City where 1 = 1 AND IsActive='1' ";
        
        if(!empty($strCityName)) {
            $sql .= " AND Title LIKE '$strCityName%' ";
        }
        if(!empty($strcountryId)) {
            $sql .= " AND ContSysId ='".$strcountryId."' ";
        }
        $sql .= " ORDER BY Title";
        //echo $sql; die;
        
        $rowset = $this->db->query($sql)->fetchAll();
        
        if(count($rowset) >  0 ){
            foreach($rowset as $row) {
                
                $response[] = array('CityId'=>$row['CityId'],'value' => $row['Title'], 'label' => $row['Title']);
            }
        } else {
            $response[] = array('CityId'=>0);   
        }
        return $response;
    }
    
    public function getActivitiesList($AgentSysId,$strActivitiesName,$strcountryId,$strCitySysId) {
        $sql = "Select ActivitySysId, Title,IsAgentSpec,ICSourceSysId From TB_IC_Activity where 1 = 1 AND IsActive='1'  AND IsMarkForDel = 0 ";
               
        if(!empty($AgentSysId)) {
            $sql .= " AND (IsApproved = '1' OR (ICSourceSysId = '$AgentSysId' AND IsAgentSpec = 1)) ";
        } 
        if(!empty($strActivitiesName)) {
            $sql .= " AND Title LIKE '%$strActivitiesName%' ";
        }
        if(!empty($strcountryId)) {
            $sql .= " AND ContSysId ='".$strcountryId."' ";
        }
        if(!empty($strCitySysId)) {
            $sql .= " AND CitySysId ='".$strCitySysId."' ";
        }
        $sql .= " ORDER BY Title";
//        echo $sql; die;
        
        $response = $this->db->query($sql)->fetchAll();
        
        return $response;
    }
    
    public function addActivitiesInventory($data) {
        try {
            $this->db->insert('TB_MP_Inventory_Activity', $data);
            return $this->db->lastInsertId('TB_MP_Inventory_Activity');
        } catch(Exception $e) {
            die('There has been an error. ' . $e->getMessage());
        }
        return 0;
    }
    
    public function getAllActivitiesInventoryList($intLoggedinUserAgencySysId) {
        $sql = " SELECT TOP 10 InvnItemSysId, XRef, AgencySysId, inclusions, FromDate, ToDate, PurchasedQty, PublishQty,CostCurrency, TB_Master_Currency.Symbol AS Currency, TB_IC_Supplier.SupplierName AS SupplierType, "
                . "tca.Title, TB_Master_BookingType.Title AS BookingName, tmia.IsTransferInc, TotalCostNativeAdult, TotalCostNativeChild, TotalCostForeignerChild, TotalCostForeignerAdult, tmia.IsActive, tmia.IsSaleStart "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "JOIN TB_IC_Activity [tca] ON tmia.XRef=tca.ActivitySysId "
                . "JOIN TB_Master_Currency ON tmia.CostCurrency=TB_Master_Currency.CurrencyType "
                . "JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
                . " WHERE IsMarkForDelete='0' ";
        
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        $sql .= " ORDER BY tmia.InvnItemSysId DESC ";
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    public function getAllActivitiesInventoryListByActivityId($ActivitySysId,$intLoggedinUserAgencySysId) {
        $sql = " SELECT TOP 10 InvnItemSysId, XRef, AgencySysId, inclusions, FromDate, ToDate, PurchasedQty, PublishQty,CostCurrency, TB_Master_Currency.Symbol AS Currency, TB_IC_Supplier.SupplierName AS SupplierType, "
                . "tca.Title, TB_Master_BookingType.Title AS BookingName, tmia.IsTransferInc, TotalCostNativeAdult, TotalCostNativeChild, TotalCostForeignerChild, TotalCostForeignerAdult, tmia.IsActive, tmia.IsSaleStart "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "JOIN TB_IC_Activity [tca] ON tmia.XRef=tca.ActivitySysId "
                . "JOIN TB_Master_Currency ON tmia.CostCurrency=TB_Master_Currency.CurrencyType "
                . "JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
                . " WHERE IsMarkForDelete='0' ";
        
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        if(!empty($ActivitySysId)) {
            $sql .= " AND XRef = '".$ActivitySysId."' ";
        }
        $sql .= " ORDER BY tmia.InvnItemSysId DESC ";
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    public function getAllFlightInventoryList() {
        $sql = " SELECT  TOP 10 InvnItemSysId, XRefFlightSysId, IsItTwoWay, IsItParent, EconomyType, FromDate, ToDate, PurchasedQty, PublishQty,CostCurrency, TB_Master_Currency.Symbol AS Currency, TotalCost, TB_IC_Supplier.SupplierName AS SupplierType, TB_MP_Inventory_Air.StartPlaceSysId, TB_MP_Inventory_Air.DestPlaceSysId, "
                . "TB_IC_Trans_Air.FlightNumber, TB_Master_Airline.Title As Airline, TB_Master_Place.Title AS FromPlace, TMP.Title AS ToPlace, "
                . "TB_IC_Trans_Air.StopCount, CAST(  CASE WHEN TB_IC_Trans_Air.IsDirect = 0 THEN 'Direct' ELSE 'Connecting' END AS char(15)) AS flightType, TB_MP_Inventory_Air.IsActive "
                . "FROM TB_MP_Inventory_Air "
                . "JOIN TB_IC_Trans_Air ON TB_MP_Inventory_Air.XRefFlightSysId=TB_IC_Trans_Air.AirInvenSysId "
                . "JOIN TB_Master_Currency ON TB_MP_Inventory_Air.CostCurrency=TB_Master_Currency.CurrencyType "
                . "JOIN TB_IC_Supplier ON TB_MP_Inventory_Air.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_Airline ON TB_IC_Trans_Air.AirlineSysId=TB_Master_Airline.AirlineSysId "
                . "JOIN TB_Master_Place ON TB_MP_Inventory_Air.StartPlaceSysId=TB_Master_Place.PlaceSysId "
                . "JOIN TB_Master_Place AS TMP ON TB_MP_Inventory_Air.DestPlaceSysId=TMP.PlaceSysId "
                . "ORDER BY TB_MP_Inventory_Air.IsItTwoWay DESC, TB_MP_Inventory_Air.UpdateDate DESC, IsItParent ";
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
       
    public function getActivitiesInventoryList($InvnItemSysId, $intLoggedinUserAgencySysId) {
        
        $sql = " SELECT InvnItemSysId, XRef, FromDate, ToDate, PurchasedQty, PublishQty,CostCurrency, TB_Master_Currency.Symbol AS Currency, TB_IC_Supplier.SupplierName AS SupplierType, "
                . "tca.Title, TB_Master_BookingType.Title AS BookingName, tmia.IsTransferInc, TotalCostNativeAdult, TotalCostNativeChild, TotalCostForeignerChild, TotalCostForeignerAdult, TrxCurrency, tmia.IsActive "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "JOIN TB_IC_Activity [tca] ON tmia.XRef=tca.ActivitySysId "
                . "JOIN TB_Master_Currency ON tmia.CostCurrency=TB_Master_Currency.CurrencyType "
                . "JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
                . " WHERE 1 = 1 AND IsMarkForDelete='0'  "; 
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        
        $sql .= " ORDER BY tmia.InvnItemSysId DESC ";
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    
    public function getStandardMarkupsActivities($intAgencySysId,$cost_markup = NULL) {
        
        $sql = " SELECT TB_MP_StdMarkup_Activity.MPType AS MPType_id, TB_Master_MPType.Title as MPType, 
                CustGrSysId, Currency, TaxPer, MarkUpType, IsSameForAll, MarkUp, PerPaxMarkUp, MarkUpNativeAdult, MarkUpNativeChild, MarkUpForeignerAdult, MarkUpForeignerChild
                ,DiscountType, DiscountMsg, DiscountNativeAdult, DiscountNativeChild, DiscountForeignerAdult , DiscountForeignerChild, IsPublish, PublishDate, TB_MP_StdMarkup_Activity.Details, RateRuleSysId, TCDocSysId, ValidTill,
                 CreateDate, UpdateDate, IsMarkForDel, IsActive
                 FROM TB_MP_StdMarkup_Activity INNER JOIN TB_Master_MPType 
                 ON TB_MP_StdMarkup_Activity.MPType = TB_Master_MPType.MPType
                 WHERE 1 = 1  AND ItemSourceType = '0' " ;
                
        if(!empty($intAgencySysId)) {
            $sql .= " AND AgencySysId = " . $intAgencySysId;
        }
        
        if(!empty($cost_markup)) {
            $sql .= " AND TB_MP_StdMarkup_Activity.MPType = " . $cost_markup;
        }
        
        $sql .= " ORDER BY UpdateDate DESC ";
        
//        echo $sql; die;
        return $this->db->query($sql)->fetchAll();
    }
      
    public function getCustomizedMarkups($InvnItemSysId, $MPType = '', $CustGrSysId = '', $cost_markup = 0) {
        
        $sql = " SELECT InvnItemSysId, TB_MP_Inventory_Activity_Alloc.MPType AS MPType_id, TB_Master_MPType.Title as MPType, 
                CustGrSysId, AgencySysId, MaxQntToSale, MarkUpType, TaxPer, MarkUpNativeAdult, MarkUpNativeChild, MarkUpForeignerAdult, MarkUpForeignerChild
                ,DiscountType, DiscountMsg, DiscountNativeAdult, DiscountNativeChild, DiscountForeignerAdult , DiscountForeignerChild, NetPriceNativeAdult, 
                 NetPriceNativeChild, NetPriceForeignerAdult, NetPriceForeignerChild, IsPublish, PublishDate, TB_MP_Inventory_Activity_Alloc.Details, RateRuleSysId, TCDocSysId, ValidTill,
                 CreateDate, UpdateDate, IsMarkForDel, IsActive
                 FROM TB_MP_Inventory_Activity_Alloc INNER JOIN TB_Master_MPType 
                 ON TB_MP_Inventory_Activity_Alloc.MPType = TB_Master_MPType.MPType
                 WHERE 1 = 1  " ;
        
        if(!empty($MPType)) {
            $sql .= " AND TB_MP_Inventory_Activity_Alloc.MPType = " . $MPType;
        }
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        
        if(!empty($CustGrSysId)) {
            $sql .= " AND AgencySysId = " . $CustGrSysId;
        }
        
        if(!empty($cost_markup)) {
            $sql .= " AND MarkUpType = " . $cost_markup;
        }
        
        $sql .= " ORDER BY InvnItemSysId, UpdateDate DESC ";
        
        //echo $sql; die;
        
        return $this->db->query($sql)->fetchAll();
    }
    
    public function getActivitiesMarketPlacesByAgencySysId($InvnItemSysId, $intAgencySysId,$cost_markup) {
        $sql = "Select MPType From TB_MP_Inventory_Activity_Alloc where 1 = 1";
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        
        if(!empty($intAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intAgencySysId."' ";
        }
        if(!empty($cost_markup)) {
            $sql .= " AND MarkUpType = '".$cost_markup."' ";
        }
        
        $sql .= " ORDER BY MPType";
        
        $rowset = $this->db->query($sql)->fetchAll();
        if(count($rowset) >  0 ){
            foreach($rowset as $row) {
                $response[] = $row['MPType'];
            }
        } else {
           $response = array(); 
        } 
        return array_values($response);
    }
    
    
    public function getStandardMarkupsPolicies($InvnItemSysId) {
        
        $sql = " SELECT InvnItemSysId, TCInfo, TCDocPath FROM TB_MP_Inventory_Activity WHERE 1 = 1  ";
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        $sql .= " ORDER BY InvnItemSysId";
        //echo $sql; die;
        return $this->db->query($sql)->fetch();
    }
    
    public function addGroupSettings($data) {
        $this->db->insert('TB_MP_Inventory_Activity_GrCost', $data);
        return $this->db->lastInsertId();
    }
    
    public function getActivitiesGroupList($InvnItemSysId, $PaxCount='') {
        
        $sql = " SELECT * FROM TB_MP_Inventory_Activity_GrCost WHERE 1 = 1  " ;
                
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        
        if(!empty($PaxCount)) {
            $sql .= " AND PaxCount = " . $PaxCount;
        }
        
        $sql .= " ORDER BY InvnItemSysId, UpdateDate DESC ";
        
        return $this->db->query($sql)->fetchAll();
    }
    
    public function deleteCustomizedGroupSetting($InvnItemSysId, $PaxVal)
    {
        $where = array('InvnItemSysId = ? ' => $InvnItemSysId, 'PaxCount = ? ' => $PaxVal);
        $this->db->delete('TB_MP_Inventory_Activity_GrCost', $where);
    }
    
    public function addMarkupSettings($data) {
        $this->db->insert('TB_MP_Inventory_Activity_Alloc', $data);
        return $this->db->lastInsertId();
    }
    
    public function updateIsItParentFlight($intLastInsertInwardId,$lastInvnItemSysId)
    {
        $where = array('InvnItemSysId = ? ' => $lastInvnItemSysId);
        $update = array('PairItemSysId'=>$intLastInsertInwardId);
        $this->db->update('TB_MP_Inventory_Air', $update, $where);
    }
    
    public function deleteCustomizedMarkupSetting($InvnItemSysId, $MPType, $intLoggedinUserAgencySysId, $MarkUpType)
    {
        $where = array('InvnItemSysId = ? ' => $InvnItemSysId, 'MPType = ? ' => $MPType, 'AgencySysId = ? ' => $intLoggedinUserAgencySysId, 'MarkUpType = ? ' => $MarkUpType);
        $this->db->delete('TB_MP_Inventory_Activity_Alloc', $where);
    }
    
    
    public function getCustomizedMarkupsPolicies($InvnItemSysId) {
        
        $sql = " SELECT InvnItemSysId, TCInfo, TCDocPath,TotalCostNativeAdult,TotalCostNativeChild,TotalCostForeignerAdult,TotalCostForeignerChild FROM TB_MP_Inventory_Activity WHERE 1 = 1 ";
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        
        //echo $sql; die;
        return $this->db->query($sql)->fetch();
    }
    
    public function addMarkupPoliciesSettings($data) {
        $this->db->insert('TB_MP_Inventory_Air_Artifect', $data);
        return $this->db->lastInsertId();
    }
    
    public function editMarkupPoliciesSettings($update, $InvnItemSysId)
    {
        $where = array('InvnItemSysId = ? ' => $InvnItemSysId);
        $this->db->update('TB_MP_Inventory_Activity', $update, $where);
    }
    
    public function getActivitiesInventoryDetailsList($InvnItemSysId, $intLoggedinUserAgencySysId) {
        
        $sql = " SELECT InvnItemSysId, XRef, tmia.AgencySysId, FromDate, ToDate, PurchasedQty, inclusions, PublishQty,CostCurrency, TB_Master_Currency.Symbol AS Currency, TB_IC_Supplier.SupplierName AS SupplierType, "
                . "tca.Title, TB_Master_BookingType.Title AS BookingName, tmia.IsTransferInc, TotalCostNativeAdult, TotalCostNativeChild, TotalCostForeignerChild, TotalCostForeignerAdult, tmia.IsActive "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "JOIN TB_IC_Activity [tca] ON tmia.XRef=tca.ActivitySysId "
                . "JOIN TB_Master_Currency ON tmia.CostCurrency=TB_Master_Currency.CurrencyType "
                . "JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
                . " WHERE 1 = 1 "; 
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        
        $sql .= " ORDER BY tmia.InvnItemSysId DESC ";
        //echo $sql;exit;
        return $this->db->query($sql)->fetch();
    }
    
    
    public function getAllActivitiesInventoryMarkupList($InvnItemSysId, $intLoggedinUserAgencySysId) {
        
        $sql = " SELECT * FROM TB_MP_Inventory_Activity_Alloc WHERE 1 = 1 ";
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = " . $InvnItemSysId;
        }
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    public function updateActivitiesInventoryDetails($update, $InvnItemSysId, $intLoggedinUserId)
    {
        $where = array('InvnItemSysId = ? ' => $InvnItemSysId,'AgencySysId = ? ' => $intLoggedinUserId);
        $this->db->update('TB_MP_Inventory_Activity', $update, $where);
    }
    
    public function updateActivitiesSaleInventory($InvnItemSysId, $actionValue, $intLoggedinUserId)
    {
        $update = array('IsSaleStart' => $actionValue);
        $where = array('InvnItemSysId = ? ' => $InvnItemSysId,'AgencySysId = ? ' => $intLoggedinUserId);
        $this->db->update('TB_MP_Inventory_Activity', $update, $where);
    }
    
    public function getCurrencyConversionPrice($agentBaseCurrency,$inventoryCurrency) {
        $sql = " SELECT * FROM TB_IC_CurrencyConversion WHERE 1=1 AND IsActive='1' ";
        
        if(!empty($agentBaseCurrency)) {
            $sql .= " AND FCurrencyType = " . $agentBaseCurrency;
        }
        if(!empty($inventoryCurrency)) {
            $sql .= " AND TCurrencyType = " . $inventoryCurrency;
        }
        //echo $sql; die;
        return $this->db->query($sql)->fetch();
    }
    
    
    public function getCurrencyConversionPaddingPrice($agentBaseCurrency) {
        $sql = " SELECT * FROM TB_System_CurrencyExcPadding WHERE 1=1 AND IsActive='1' ";
        
        if(!empty($agentBaseCurrency)) {
            $sql .= " AND CurrencyType = " . $agentBaseCurrency;
        }
        
        return $this->db->query($sql)->fetch();
    }
    
    
    public function cloneMPInventoryActivities($update, $InvnItemSysId) {
        
        $currentDate = date('Y-m-d H:i:s');
        
        $sql = " INSERT INTO TB_MP_Inventory_Activity ( InventoryType
                ,XRef, AgencySysId, SupplierSysId, FromDate, ToDate, BookingType, inclusions
                ,IsTransferInc, IsPickDropInc, PurchasedQty, PublishQty, BlockQty
                ,SoldQty, ReturnQty, NetInHandQty, CostCurrency, TotalCostNativeAdult,TotalCostNativeChild
                ,TotalCostForeignerChild,TotalCostForeignerAdult,TrxCurrency,SaleAmtNativeChild
                ,SaleAmtNativeAdult,SaleAmtForeignerChild,SaleAmtForeignerAdult,Brief,IfAnyOffer
                ,OfferMsg,OfferImage,TCInfo,TCDocPath,IxFixedDateInven,CreatorSysId
                ,ApproveDate
                ,CreateDate
                ,UpdateDate
                ,IsActive
                ,IsMarkForDelete
                ,IsApproved) 
                
                SELECT InventoryType
                ,XRef, AgencySysId, SupplierSysId, '".$update['FromDate']."', '".$update['ToDate']."', BookingType, inclusions
                ,IsTransferInc, IsPickDropInc, PurchasedQty, PublishQty, BlockQty
                ,SoldQty, ReturnQty, NetInHandQty, CostCurrency, '".$update['TotalCostNativeAdult']."','".$update['TotalCostNativeChild']."'
                ,'".$update['TotalCostForeignerChild']."','".$update['TotalCostForeignerAdult']."',TrxCurrency,SaleAmtNativeChild
                ,SaleAmtNativeAdult,SaleAmtForeignerChild,SaleAmtForeignerAdult,Brief,IfAnyOffer
                ,OfferMsg,OfferImage,TCInfo,TCDocPath,IxFixedDateInven,CreatorSysId
                ,'".$currentDate."'
                ,'".$currentDate."'
                ,'".$currentDate."'
                ,'0'
                ,'0'
                ,'0' FROM TB_MP_Inventory_Activity WHERE InvnItemSysId = " . $InvnItemSysId;
                
        $this->db->query($sql);
        return $this->db->lastInsertId('TB_MP_Inventory_Activity');
    }
    
    public function getInventoryDetails($InvnItemSysId, $intLoggedinUserAgencySysId) {
        $sql = " SELECT InvnItemSysId, XRef, TB_IC_Supplier.SupplierName AS SupplierType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.WriteUp AS details, TB_IC_Activity.DifficultyType, TB_IC_Activity.ThingsToCarry, TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, TB_IC_Activity.TimeSlots, TotalCostNativeAdult, TotalCostNativeChild, TotalCostForeignerChild, TotalCostForeignerAdult, "
                . "TB_Master_BookingType.Title AS BookingName, TB_Master_ActivityType.Title As ActivityType, TB_Master_ActivityGroupType.Title AS ActivityGroupType, TB_Master_DifficultyType.Title as DifficultyType, tmia.IsActive "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "JOIN TB_IC_Activity ON tmia.XRef=TB_IC_Activity.ActivitySysId "
                . "JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
                . "LEFT JOIN TB_Master_DifficultyType ON TB_IC_Activity.DifficultyLevel=TB_Master_DifficultyType.DifficultyType "
                . "JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType "
                . "JOIN TB_Master_ActivityGroupType ON TB_IC_Activity.ActivityGrType=TB_Master_ActivityGroupType.ActivityGroupType "
                . " WHERE 1 = 1 ";
        
        if(!empty($InvnItemSysId)) {
            $sql .= " AND InvnItemSysId = '".$InvnItemSysId."' ";
        }
        
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        $sql .= " ORDER BY tmia.UpdateDate DESC ";
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetch();
    }
    
    public function deleteActivitiesInventory($InvnItemSysId, $intLoggedinUserId)
    {
        $where = array('InvnItemSysId = ? ' => $InvnItemSysId, 'AgencySysId = ? ' => $intLoggedinUserId);
        $updateData = array('IsMarkForDelete'=>'1');
        $this->db->update('TB_MP_Inventory_Activity', $updateData, $where);
    }
    
    
    public function getAllActivitiesSearchList($intLoggedinUserAgencySysId, $getData)
    {
        $sql = " SELECT InvnItemSysId, XRef, TB_IC_Supplier.SupplierName AS SupplierType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, TotalCostNativeAdult, TotalCostNativeChild, TotalCostForeignerChild, TotalCostForeignerAdult, "
                . "TB_Master_BookingType.Title AS BookingName, TB_Master_ActivityType.Title As ActivityType, TB_Master_ActivityGroupType.Title AS ActivityGroupType, tmia.IsActive "
                . "FROM TB_MP_Inventory_Activity [tmia] "
                . "JOIN TB_IC_Activity ON tmia.XRef=TB_IC_Activity.ActivitySysId "
                . "JOIN TB_IC_Supplier ON tmia.SupplierSysId=TB_IC_Supplier.SupplierSysId "
                . "JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "JOIN TB_Master_BookingType ON tmia.BookingType=TB_Master_BookingType.BookingType "
                . "JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType "
                . "JOIN TB_Master_ActivityGroupType ON TB_IC_Activity.ActivityGrType=TB_Master_ActivityGroupType.ActivityGroupType "
                . " WHERE IsMarkForDelete='0' ";
            
        if(!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND AgencySysId = '".$intLoggedinUserAgencySysId."' ";
        }
        
        if(!empty($getData['DestinationId'])) {
            $DestinationId = @$getData['DestinationId'];
            $sql .= " AND TB_IC_Activity.CitySysId IN ($DestinationId) ";
        }
        if(!empty($getData['ActivitiesTypeId'])) {
            $ActivitiesTypeId = @$getData['ActivitiesTypeId'];
            $sql .= " AND TB_IC_Activity.ActivityType IN ($ActivitiesTypeId) ";
        }
//        if(!empty($getData['tour_date'])) {
//            $tour_date = @$getData['tour_date'];
//            $sql .= " AND (tmia.FromDate >='".$tour_date."' AND tmia.ToDate <='".$tour_date."')  ";
//        }
        $sql .= " ORDER BY tmia.UpdateDate DESC ";
        
        //echo $sql;
        return $this->db->query($sql)->fetchAll();
    }
    
    
    public function getAllManageActivitiesList($intLoggedinUserId) {

//        $sql = " SELECT ActivitySysId,ActivityGrType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.DurationInMin, TB_IC_Activity.DurationStr, "
//                . " TB_Master_ActivityType.Title As ActivityType, TB_IC_Activity.IsActive, TB_IC_Activity.IsApproved"
//                . " FROM TB_IC_Activity "
//                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
//                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
//                . "LEFT JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType ";

        $sql = " SELECT ActivitySysId,ActivityGrType,ActivityType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, "
                . " TB_IC_Activity.IsActive, TB_IC_Activity.IsApproved, TB_IC_Activity.ActivityTypeName, TB_IC_Activity.ActivityGrTypeName"
                . " FROM TB_IC_Activity "
                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
//                . "LEFT JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType "

//                . "LEFT JOIN TB_Master_ActivityGroupType ON TB_IC_Activity.ActivityGrType=TB_Master_ActivityGroupType.ActivityGroupType "
                . " WHERE TB_IC_Activity.IsMarkForDel='0' ";
            
        if(!empty($intLoggedinUserId)) {
            $sql .= " AND TB_IC_Activity.ICSourceSysId = '".$intLoggedinUserId."'   AND IsAgentSpec = 1  ";
        }
        
        if(!empty($this->searchActivitiesArr)) {
//            echo "<pre>"; print_r($this->searchActivitiesArr); die;
            if($this->searchActivitiesArr['cityId']!=0)
            {
              $sql .= " AND TB_IC_Activity.CitySysId = '".$this->searchActivitiesArr['cityId']."' ";
            }
            
            if($this->searchActivitiesArr['ActivityType']!=0)
            {
                $ActivityType = trim($this->searchActivitiesArr['ActivityType']);
                //$sql .= " AND ( ',' + TB_IC_Activity.ActivityType + ',' like '%,' + '$ActivityType' + ',%' )";
              //$sql .= " AND ( ',' + TB_IC_Activity.ActivityType + ',' like '%,' + '$ActivityType' + ',%' )";
              $sql .= " AND TB_IC_Activity.ActivityType = '".$this->searchActivitiesArr['ActivityType']."' ";
            }
            
            if($this->searchActivitiesArr['ActivityName']!="")
            {
              $ActivityName = $this->searchActivitiesArr['ActivityName'];
              $sql .= " AND TB_IC_Activity.Title LIKE '%$ActivityName%'";
            }
        }
        
        $sql .= " ORDER BY TB_IC_Activity.ActivitySysId DESC ";
        
//        echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    // added by sabir
    public function getAllManageActivitiesListAdmin($country_id,$city_id) {

        $sql = " SELECT TB_IC_Activity.ActivitySysId,TB_IC_Activity.ICSourceSysId,TB_IC_Activity.ActivityGrType,TB_IC_Activity.ActivityType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName,"
                . " TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId, "
                . " TB_IC_Activity.IsActive, TB_IC_Activity.IsApproved,TB_IC_Activity.ActivityTypeName,TB_IC_Activity.IsUnique,TB_IC_Activity.ActivityGrTypeName, TB_IC_Activity.CitySysId, TB_Agency.Title as AgencyName"
                . " FROM TB_IC_Activity "
                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "LEFT JOIN TB_Agency ON TB_IC_Activity.ICSourceSysId=TB_Agency.AgencySysId WHERE 1=1";
        
        if(isset($country_id) && $country_id == 0){die('please update country');}
        if(!empty($country_id) && $country_id != 0) {
            $sql .= " AND TB_IC_Activity.ContSysId = '".$country_id."' ";
        }
        if(!empty($city_id)) {
            $sql .= " AND TB_IC_Activity.CitySysId = '".$city_id."'   AND IsAgentSpec = 1  ";
        }
        if(!empty($this->searchActivitiesArr)) {
            //echo "<pre>"; print_r($this->searchActivitiesArr); die;
            if($this->searchActivitiesArr['cityId']!=0)
            {
              $sql .= " AND TB_IC_Activity.CitySysId = '".$this->searchActivitiesArr['cityId']."' ";
            }
            
            if($this->searchActivitiesArr['ActivityType']!=0)
            {
                $ActivityType = trim($this->searchActivitiesArr['ActivityType']);
                $sql .= " AND ( ',' + TB_IC_Activity.ActivityType + ',' like '%,' + '$ActivityType' + ',%' )";
              //$sql .= " AND ( ',' + TB_IC_Activity.ActivityType + ',' like '%,' + '$ActivityType' + ',%' )";
              //$sql .= " AND TB_IC_Activity.ActivityType = '".$this->searchActivitiesArr['ActivityType']."' ";
            }
            
            if($this->searchActivitiesArr['ActivityName']!="")
            {
              $ActivityName = $this->searchActivitiesArr['ActivityName'];
              $sql .= " AND TB_IC_Activity.Title LIKE '%$ActivityName%'";
            }
            if($this->searchActivitiesArr['AgencyName']!="")
            {
              $AgencyName = $this->searchActivitiesArr['AgencyName'];
              $sql .= " AND TB_Agency.Title LIKE '%$AgencyName%'";
            }
        }
        $sql .= " AND TB_IC_Activity.IsApproved = '0' AND TB_IC_Activity.IsMapped = '0' AND TB_IC_Activity.IsMarkForDel = '0' ";
        $sql .= " ORDER BY TB_IC_Activity.ActivitySysId DESC ";
        //echo $sql;exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    public function getAllManageActivitiesListMapMaster($country_id,$city_id) {

        $sql = " SELECT TB_IC_Activity.ActivitySysId,TB_IC_Activity.ICSourceSysId,TB_IC_Activity.ActivityGrType,TB_IC_Activity.ActivityType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName,"
                . " TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId, "
                . " TB_IC_Activity.IsActive, TB_IC_Activity.IsApproved, TB_IC_Activity.CitySysId, TB_Agency.Title as AgencyName"
                . " FROM TB_IC_Activity "
                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "LEFT JOIN TB_Agency ON TB_IC_Activity.ICSourceSysId=TB_Agency.AgencySysId WHERE 1=1";
        
        if(!empty($country_id)) {
            $sql .= " AND TB_IC_Activity.ContSysId = '".$country_id."'  ";
        }
        if(!empty($city_id)) {
            $sql .= " AND TB_IC_Activity.CitySysId = '".$city_id."' ";
        }
        $sql .= " AND TB_IC_Activity.IsApproved = '1' AND TB_IC_Activity.IsMarkForDel = '0' ";
        $sql .= " ORDER BY TB_IC_Activity.Title ASC ";
        //echo $sql;
        return $this->db->query($sql)->fetchAll();
    }
    
    public function getAllManageActivitiesListAgency($agencyId,$country_id,$city_id) {

        $sql = " SELECT TB_IC_Activity.ActivitySysId,TB_IC_Activity.ICSourceSysId,TB_IC_Activity.IsUnique,TB_IC_Activity.ActivityGrType,TB_IC_Activity.ActivityType, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName,"
                . " TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId, "
                . " TB_IC_Activity.IsActive, TB_IC_Activity.IsApproved, TB_IC_Activity.CitySysId, TB_Agency.Title as AgencyName"
                . " FROM TB_IC_Activity "
                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "LEFT JOIN TB_Agency ON TB_IC_Activity.ICSourceSysId=TB_Agency.AgencySysId WHERE 1=1";
        
        if(!empty($country_id)) {
            $sql .= " AND TB_IC_Activity.ContSysId = '".$country_id."'  ";
        }
        if(!empty($city_id)) {
            $sql .= " AND TB_IC_Activity.CitySysId = '".$city_id."' ";
        }
        if(!empty($agencyId)) {
            $sql .= " AND TB_IC_Activity.ICSourceSysId = '".$agencyId."'  ";
        }
        $sql .= " AND TB_IC_Activity.IsApproved = '0' AND TB_IC_Activity.IsMapped = '0' AND TB_IC_Activity.IsUnique = '0' AND TB_IC_Activity.IsMarkForDel = '0' ";
        $sql .= " ORDER BY TB_IC_Activity.Title ASC ";
        //echo $sql;
        return $this->db->query($sql)->fetchAll();
    }
    
    
    public function getManageActivitiesDetails($ActivitySysId, $intLoggedinUserId) {

//        $sql = " SELECT ActivitySysId, TB_IC_Activity.IsAgentSpec, TB_IC_Activity.AgentSysId, TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId, PeakMothMask, PickUpLocation, DaysWeekMask, TB_IC_Activity.Icon, TB_IC_Activity.ActivityGrType AS ActivityGrTypeId, TB_IC_Activity.ActivityType AS ActivityTypeId, DifficultyLevel, IsTransferInc, StartAgeYr, EndAgeYr, Popularity, ThingsToCarry,OtherInclusion,Advisory,RefundPolicy,CancellationPolicy,ConfirmationPolicy,TimeSlots, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.WriteUp AS details, TB_IC_Activity.DifficultyLevel, TB_IC_Activity.ThingsToCarry,TB_IC_Activity.OtherInclusion,TB_IC_Activity.Advisory,TB_IC_Activity.RefundPolicy,TB_IC_activity.CancellationPolicy,TB_IC_Activity.ConfirmationPolicy,TB_IC_Activity.DurationInMin, TB_IC_Activity.DurationStr, "
//                . " TB_Master_ActivityType.Title As ActivityType,  TB_Master_DifficultyType.Title as DifficultyType,TB_IC_Activity.Address, TB_IC_Activity.IsApproved, TB_IC_Activity.IsTeenAllowed, TB_IC_Activity.IsKidAllowed, TB_IC_Activity.IsAdultAllowed, TB_IC_Activity.AwardRecognizations, TB_IC_Activity.IsPetAllowed, TB_IC_Activity.IsTrxAllowed, TB_IC_Activity.IsPickAllowed, TB_IC_Activity.BookingType, ";

        $sql = " SELECT TB_IC_Activity.ActivitySysId,TB_IC_Activity.ActivityType,TB_IC_Activity.IsUnique,TB_IC_Activity.ActivityGrType, TB_IC_Activity.IsAgentSpec, TB_IC_Activity.AgentSysId, TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId, PeakMothMask, PickUpLocation, DaysWeekMask, TB_IC_Activity.Icon, TB_IC_Activity.ActivityGrType AS ActivityGrTypeId, TB_IC_Activity.ActivityType AS ActivityTypeId, DifficultyLevel, IsTransferInc, StartAgeYr, EndAgeYr, Popularity, ThingsToCarry,OtherInclusion,Advisory,RefundPolicy,CancellationPolicy,ConfirmationPolicy,TimeSlots, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.WriteUp AS details, TB_IC_Activity.DifficultyLevel, TB_IC_Activity.ThingsToCarry,TB_IC_Activity.OtherInclusion,TB_IC_Activity.Advisory,TB_IC_Activity.RefundPolicy,TB_IC_activity.CancellationPolicy,TB_IC_Activity.ConfirmationPolicy,TB_IC_Activity.DurationInMin,TB_IC_Activity.DurationStr, "
                . "   TB_Master_DifficultyType.Title as DifficultyType,TB_IC_Activity.Address, TB_IC_Activity.IsApproved, TB_IC_Activity.IsTeenAllowed, TB_IC_Activity.IsKidAllowed, TB_IC_Activity.IsAdultAllowed, TB_IC_Activity.AwardRecognizations, TB_IC_Activity.IsPetAllowed, TB_IC_Activity.IsTrxAllowed, TB_IC_Activity.IsPickAllowed, TB_IC_Activity.BookingType, "

                . " TB_IC_Activity.latitude, TB_IC_Activity.longitude,TB_IC_Activity.ActivityTypeName, TB_IC_Activity.ActivityGrTypeName, TB_IC_Activity.PrimaryContact, TB_IC_Activity.SecondaryContact, TB_IC_Activity.OtherContacts, TB_IC_Activity.StartLocalTime, TB_IC_Activity.EndLocalTime, TB_IC_Activity.IsActive, TB_IC_Activity.IsMarkForDel "
                . "FROM TB_IC_Activity "
                . "LEFT JOIN TB_Master_Geo_Country ON TB_IC_Activity.ContSysId=TB_Master_Geo_Country.ContId "
                . "LEFT JOIN TB_Master_Geo_City ON TB_IC_Activity.CitySysId=TB_Master_Geo_City.CityId "
                . "LEFT JOIN TB_Master_DifficultyType ON TB_IC_Activity.DifficultyLevel=TB_Master_DifficultyType.DifficultyType "

//                . "LEFT JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType "

//                . "LEFT JOIN TB_Master_ActivityType ON TB_IC_Activity.ActivityType=TB_Master_ActivityType.ActivityType "

//                . "LEFT JOIN TB_Master_ActivityGroupType ON TB_IC_Activity.ActivityGrType=TB_Master_ActivityGroupType.ActivityGroupType "
                . " WHERE 1 = 1 ";
        
        if(!empty($ActivitySysId)) {
            $sql .= " AND ActivitySysId = '".$ActivitySysId."' ";
        }
        
//        if(!empty($intLoggedinUserId)) {
//            $sql .= " AND TB_IC_Activity.AgentSysId = '".$intLoggedinUserId."' ";
//        }
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetch();
    }
    
    
    public function getManageActivitiesDetailsMap($ActivitySysId) {

//        $sql = " SELECT ActivitySysId, TB_IC_Activity.IsAgentSpec, TB_IC_Activity.AgentSysId, TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId, PeakMothMask, PickUpLocation, DaysWeekMask, TB_IC_Activity.Icon, TB_IC_Activity.ActivityGrType AS ActivityGrTypeId, TB_IC_Activity.ActivityType AS ActivityTypeId, DifficultyLevel, IsTransferInc, StartAgeYr, EndAgeYr, Popularity, ThingsToCarry,OtherInclusion,Advisory,RefundPolicy,CancellationPolicy,ConfirmationPolicy,TimeSlots, TB_Master_Geo_Country.Title AS CountryName, TB_Master_Geo_City.Title AS CityName, TB_IC_Activity.Title AS ActivityName, TB_IC_Activity.WriteUp AS details, TB_IC_Activity.DifficultyLevel, TB_IC_Activity.ThingsToCarry,TB_IC_Activity.OtherInclusion,TB_IC_Activity.Advisory,TB_IC_Activity.RefundPolicy,TB_IC_activity.CancellationPolicy,TB_IC_Activity.ConfirmationPolicy,TB_IC_Activity.DurationInMin, TB_IC_Activity.DurationStr, "
//                . " TB_Master_ActivityType.Title As ActivityType,  TB_Master_DifficultyType.Title as DifficultyType,TB_IC_Activity.Address, TB_IC_Activity.IsApproved, TB_IC_Activity.IsTeenAllowed, TB_IC_Activity.IsKidAllowed, TB_IC_Activity.IsAdultAllowed, TB_IC_Activity.AwardRecognizations, TB_IC_Activity.IsPetAllowed, TB_IC_Activity.IsTrxAllowed, TB_IC_Activity.IsPickAllowed, TB_IC_Activity.BookingType, ";

        $sql = " SELECT TB_IC_Activity.ActivitySysId, TB_IC_Activity.synonyms,"
                . "TB_IC_Activity.ContSysId, TB_IC_Activity.CitySysId,"
                . " TB_IC_Activity.Title AS ActivityName, "
                . "TB_IC_Activity.IsMarkForDel "
                . "FROM TB_IC_Activity "
                . " WHERE 1 = 1 ";
        
        if(!empty($ActivitySysId)) {
            $sql .= " AND ActivitySysId = '".$ActivitySysId."' ";
        }
        
//        if(!empty($intLoggedinUserId)) {
//            $sql .= " AND TB_IC_Activity.AgentSysId = '".$intLoggedinUserId."' ";
//        }
        
        //echo $sql;exit;
        return $this->db->query($sql)->fetch();
    }
    
    
    /*
     * setMasking. To create masking (need master data, result data and primary key of master table).
     * Created by Pooja on 3aug2016
     * @param  array $maskingArr
     * @param  array $masterListingArr
     * @param  int $primaryKey
     * @return int.
     */

    public function setMasking($maskingArr, $masterListingArr) {
        $mask = '1';

        if (count($masterListingArr) > 0) {
            foreach ($masterListingArr as $Key => $Val) {
                $char = in_array($Key, $maskingArr) ? '1' : '0';
                $mask .= $char;
            }
        }

        return $mask;
    }
    
    
    /*
     * getMasking(). To create masking (need master data, result data and primary key of master table).
     * Created by Pooja on 4aug2016
     * @param  string $varfromDb
     * @param  array $masterListingArr
     * @param  int $primaryKey
     * @return int.
     */
    public function getMasking($varfromDb, $masterListingArr) {
        $varfromDbArr = str_split(trim($varfromDb));
        $resultMask = array();
        $counter = 1;
        foreach ($masterListingArr as  $Key => $Val) { 
            if (@$varfromDbArr[$counter] == 1) {
                $skey = $Key -1; 
                $resultMask[$skey] = $Key;
            }
        $counter++;}
        return $resultMask;
    }
    
    public function setActiveDeactive($ActivitySysId, $statusValue)
    {
        $where = array('ActivitySysId = ? ' => base64_decode($ActivitySysId));
        $updateData = array('IsActive' => $statusValue);
        return $this->db->update('TB_IC_Activity', $updateData, $where);
    }
    
    
    public function setActiveDeactiveInventory($InvnItemSysId, $intLoggedinUserAgencySysId, $statusValue)
    {
        $where = array('InvnItemSysId = ? ' => base64_decode($InvnItemSysId), 'AgencySysId = ? ' => $intLoggedinUserAgencySysId);
        $updateData = array('IsActive' => $statusValue);
        return $this->db->update('TB_MP_Inventory_Activity', $updateData, $where);
    }
    
    
    public function getSuppliersList($cityId, $intLoggedinUserId) {
        
        $sql = " SELECT distinct(TB_IC_Supplier.SupplierSysId), TB_IC_Supplier.SupplierName FROM TB_IC_Supplier "
                . " RIGHT JOIN TB_MP_Inventory_Activity ON TB_MP_Inventory_Activity.SupplierSysId=TB_IC_Supplier.SupplierSysId WHERE 1 =1 AND TB_IC_Supplier.IsDelete='0' ";

        if (!empty($cityId)) {
            $sql .= " AND TB_IC_Supplier.CitySysId = " . $cityId;
        }
        
        if (!empty($intLoggedinUserId)) {
            $sql .= " AND TB_IC_Supplier.AgentSysId = " . $intLoggedinUserId;
        }

        $sql .= " AND TB_IC_Supplier.Services LIKE '_1%' " ;
        $sql .= " ORDER BY TB_IC_Supplier.SupplierName ";

        //echo $sql; exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    
    public function getActivitiesTypeListByActivitiesGroupId($ActivitiesGrTypeId) {
        $sql = " SELECT ActivityType, Title, ActivityGroupType FROM TB_Master_ActivityType "
                . "WHERE 1 =1 AND IsActive='1' ";

        if (!empty($ActivitiesGrTypeId)) {
            $sql .= " AND ActivityGroupType in(".$ActivitiesGrTypeId.") ";
        }
        
        $sql .= " ORDER BY Title ";

        //echo $sql; exit;
        return $this->db->query($sql)->fetchAll();
    }
    
    
    /**
     * setApproveDisapprove. To set IsActive/IsDeactive record.
     * 
     * @param  string $whereCondition
     * @param  string $tableName
     * @param  int    $isActive
     * @return int
     */
    public function setApproveDisapprove($whereCondition, $tableName, $updateArr)
    {
        try
        {            
            $isChanged = $this->db->update($tableName, $updateArr , $whereCondition);
        } 
        catch (Exception $e) 
        {
            die('There has been an error. ' . $e->getMessage());
        }
        return @$isChanged ? $isChanged : 0;
    }
    
    
    /**
     * setSaleStartStop. To set IsSaleStart record.
     * 
     * @param  string $whereCondition
     * @param  string $tableName
     * @param  int    $IsSaleStart
     * @return int
     */
    public function setSaleStartStop($whereCondition, $tableName, $IsSaleStart=0)
    {
        try
        {            
            $isChanged = $this->db->update($tableName, array('IsSaleStart'=>$IsSaleStart), $whereCondition);
        } 
        catch (Exception $e) 
        {
            die('There has been an error. ' . $e->getMessage());
        }
        return @$isChanged ? $isChanged : 0;
    }
    
    
    public function addStdMarkupActivities($data = array()) {
        try {
            $select = $this->db->select()
                    ->from("TB_MP_StdMarkup_Activity", array('count(*) AS totalRecords'))
                    ->where("ItemSourceType =?", 0)
                    ->where("AgencySysId =?", $data['AgencySysId'])
                    ->where("MpType =?", $data['MPType']);
            $resultData = $this->db->fetchOne($select);
//            echo $resultData; die;
            if ($resultData == 1) {
                $where['AgencySysId = ?'] = $data['AgencySysId'];
                $where['MpType = ?'] = $data['MPType'];
                return $this->db->update('TB_MP_StdMarkup_Activity', $data, $where);
            } else {
                $this->db->insert('TB_MP_StdMarkup_Activity', $data);
                return $this->db->lastInsertId('TB_MP_StdMarkup_Activity');
            }
        } catch (Exception $e) {
            die('There has been an error. ' . $e->getMessage());
        }
    }
    
    public function getInventoryCityList($intLoggedinUserAgencySysId)
    {
        $sql = " SELECT distinct(tb3.CityId) AS CityId, tb3.Title FROM TB_MP_Inventory_Activity AS tb1 "
                . "LEFT JOIN TB_IC_Activity AS tb2 ON tb1.XRef = tb2.ActivitySysId "
                . "LEFT JOIN TB_Master_Geo_City AS tb3 ON tb2.CitySysId = tb3.CityId  WHERE 1 = 1 " ;
        if (!empty($intLoggedinUserAgencySysId)) {
            $sql .= " AND tb1.AgencySysId = " . $intLoggedinUserAgencySysId;
        }         
        $sql .= " AND tb3.IsMarkForDel = '0' AND tb3.Title!='0' AND tb1.IsMarkForDelete = '0' ";
         
        $sql .= " ORDER BY tb3.Title";
        //echo $sql; die;
        
        $result = $this->db->query($sql)->fetchAll();
        return $result;
    }
    
    
    public function getActivitiesCityList($intLoggedinUserId)
    {
        $sql = " SELECT distinct(tb3.CityId) AS CityId, tb3.Title FROM TB_IC_Activity AS tb2 "
                . "LEFT JOIN TB_Master_Geo_City AS tb3 ON tb2.CitySysId = tb3.CityId  WHERE 1 = 1 " ;
        if (!empty($intLoggedinUserId)) {
            $sql .= " AND tb2.ICSourceSysId = " . $intLoggedinUserId;
        }         
        $sql .= " AND tb3.IsMarkForDel = '0' AND tb3.Title!='0' ";
         
        $sql .= " ORDER BY tb3.Title";
        //echo $sql; die;
        
        $result = $this->db->query($sql)->fetchAll();
        return $result;
    }
    
    public function getAgencyMarkupSettingDetails($intLoggedinUserAgencySysId, $maketPlaceId)
    {
        $agencyMarkup = array('AgencySysId','MPType','Currency','MarkUpType','IsSameForAll', 'MarkUp', 'MarkUpNativeAdult', 'MarkUpNativeChild', 'MarkUpForeignerAdult', 'MarkUpForeignerChild','TaxPer','IsActive');	
        $select = $this->db->select();
        $select->from(array('tbl' => "TB_MP_StdMarkup_Activity"), $agencyMarkup);
        $select->where("tbl.ItemSourceType = ?", 0);
        $select->where("tbl.AgencySysId = ?", $intLoggedinUserAgencySysId);
        $select->where("tbl.MPType = ?", $maketPlaceId);
        //echo $select; die;
        $result = $this->db->fetchRow($select);
        return $result;
    }
    
    
    // Added By Pardeep Panchal
    
    
    public function displayOnB2C($ActivitySysId, $statusValue){
        $where = array('InvnItemSysId = ? ' => base64_decode($ActivitySysId));
        $updateData = array('DisplayOnB2C' => $statusValue);
        return $this->db->update('TB_MP_Inventory_Activity', $updateData, $where);
    }
     public function getXrefNumberForActivity($ActivitySysId)
    {
        $select = $this->db->select();
        $select->from(array('tbl' => "TB_MP_Inventory_Activity"),array('XRef'));
        $select->where("tbl.InvnItemSysId = ?", base64_decode($ActivitySysId));
       
        //echo $select; die;
        $result = $this->db->fetchRow($select);
        return $result;
    }
    
    public function GetRateExist($ActivitySysId) {
        $select = $this->db->select();
        $selectarray = array('InvnItemSysId','XRef');
        $select->from(array('tb1' => "TB_MP_Inventory_Activity"), $selectarray);
        $select->where("tb1.XRef =?", $ActivitySysId);
        $select->where("tb1.IsMarkForDelete =?", 0);
        $result = $this->db->fetchRow($select);
        return $result;
    }
    
    public function getActivityName($ActivityType)
    {
        $select = $this->db->select();
        $select->from(array('tbl' => "TB_Master_ActivityType"),array('Title'));
        $select->where("tbl.ActivityType = ?", $ActivityType);
        $result = $this->db->fetchRow($select);
        return $result['Title'];
    }
    public function getActivityGroupName($ActivityGroupType)
    {
        $select = $this->db->select();
        $select->from(array('tbl' => "TB_Master_ActivityGroupType"),array('Title'));
        $select->where("tbl.ActivityGroupType = ?", $ActivityGroupType);
        $result = $this->db->fetchRow($select);
        return $result['Title'];
    }
     public function getStandardMarkupsActivitiesMPType($ActicitySysId,$intAgencySysId,$MPType=1) {
        
        $sql = " SELECT TB_MP_StdMarkup_Activity.MPType AS MPType_id, TB_Master_MPType.Title as MPType, 
                CustGrSysId, Currency, TaxPer, MarkUpType, IsSameForAll, MarkUp, PerPaxMarkUp, MarkUpNativeAdult, MarkUpNativeChild, MarkUpForeignerAdult, MarkUpForeignerChild
                ,DiscountType, DiscountMsg, DiscountNativeAdult, DiscountNativeChild, DiscountForeignerAdult , DiscountForeignerChild, IsPublish, PublishDate, TB_MP_StdMarkup_Activity.Details, RateRuleSysId, TCDocSysId, ValidTill,
                 CreateDate, UpdateDate, IsMarkForDel, IsActive
                 FROM TB_MP_StdMarkup_Activity INNER JOIN TB_Master_MPType 
                 ON TB_MP_StdMarkup_Activity.MPType = TB_Master_MPType.MPType
                 WHERE 1 = 1  AND ItemSourceType = '0' " ;
				if(!empty($MPType)) {
					$sql .= " AND TB_MP_StdMarkup_Activity.MPType = " . $MPType;
				}
				if(!empty($intAgencySysId)) {
					$sql .= " AND AgencySysId = " . $intAgencySysId;
				}
				$sql .= " ORDER BY UpdateDate DESC ";
				return $this->db->query($sql)->fetchAll();
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit