You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
information-system/application/models/import_model.php

1895 lines
90 KiB
PHP

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<?php
class Import_model extends CI_Model
{
function __construct()
{
parent::__construct();
$this->HT = $this->load->database('HT', TRUE);
}
function import_clear()
{
$this->HT->query('TRUNCATE TABLE infoContents');
$this->HT->query('TRUNCATE TABLE infoStructures');
}
function import_clear_site(){
$this->HT->query("DELETE FROM infoContents WHERE ic_sitecode='mct'");
$this->HT->query("DELETE FROM infoStructures WHERE is_sitecode='mct'");
}
function get_site_urls(){
$sql="select ic_url FROM infoContents WHERE ic_sitecode='mct' and ic_status=1 and ic_url is not null";
$query=$this->HT->query($sql);
return $query->result();
}
//1.从srms导入有用的信息到信息平台
//****************************************
//****************************************
// 【第3点根据信息内容建立结构数据建立结构的那个网站code需要替换不然会新建重复的结构】
//****************************************
//****************************************
function import_info()
{
$site_array = $this->config->item('site');
$site_arrays['mct'] = $site_array['mct'];//只导入mct
$site_array = $site_arrays;
foreach ($site_array as $key => $item)
{
//填充内容表原SRMS的结构是公用的现在需要先把内容导入之后在信息平台数据库建立缺少的结构
$sql = "DECLARE @LGC INT \n"
. "DECLARE @SiteID INT \n"
. "DECLARE @SiteCode VARCHAR(8) \n"
. "SET @LGC = ? \n"
. "SET @SiteID = ? \n"
. "SET @SiteCode = ? \n"
. " \n"
. "INSERT INTO infoContents \n"
. " ( \n"
. " ic_url, ic_url_title, ic_type, ic_title, ic_content, ic_summary, \n"
. " ic_seo_title, ic_seo_description, ic_seo_keywords, ic_show_bread_crumbs, \n"
. " ic_status, ic_template, ic_photo, ic_sitecode, ic_recommend_tours, \n"
. " ic_recommend_packages, ic_datetime, ic_ht_area_id, ic_ht_area_type, \n"
. " ic_ht_product_id, ic_ht_product_type, SRMS_SIC_Code, SRMS_SIIT_Code, \n"
. " SRMS_SIAP_Code,SRMS_SIIT_ID \n"
. " ) \n"
. "SELECT '', \n" //ic_url
. " '', \n" //ic_url_title
. " v_siac.SIIT_InfoServeType, \n" //ic_type
. " CONVERT(VARCHAR(255), v_siac.SICL_Title), \n"//ic_title
. " v_siac.SICL_Memo, \n"//ic_content
. " v_siac.SICL_Intro, \n"//ic_summary
. " '', \n"//ic_seo_title
. " '', \n"//ic_seo_description
. " CONVERT(VARCHAR(255), v_siac.SICL_Keyword), \n"//ic_seo_keywords
. " 1, \n"//ic_show_bread_crumbs
. " v_siac.SICL_Check, \n" //ic_status
. " '', \n"//ic_template
. " '', \n"//ic_photo
. " @SiteCode, \n" //ic_sitecode
. " '', \n" //ic_recommend_tours
. " '', \n"//ic_recommend_packages
. " v_siac.SICL_LastDate, \n" //ic_datetime
. " -1, \n"//ic_ht_area_id
. " '', \n"//ic_ht_area_type
. " -1, \n"//ic_ht_product_id
. " '', \n"//ic_ht_product_type
. " v_siac.SICL_SICCode, \n"//SRMS_SIC_Code
. " v_siac.SIIA_SIITCode, \n"//SRMS_SIIT_Code
. " v_siac.SIIA_SIAPCode, \n"//SRMS_SIAP_Code
. " v_siac.SIIT_ID \n"//SRMS_SIIT_ID
. "FROM srms.dbo.V_SRMS_INFO_New_CC v_siac \n"
. " INNER JOIN srms.dbo.SRMS_ResourceAllot SNA ON v_siac.SIIT_ID = SNA.SRA_ResID \n"
. "WHERE 1 = 1 \n"
. " AND (SNA.SRA_Code = 'IT') \n"
. " AND (SNA.SRA_SSIID = @SiteID) \n"
. " AND V_SIAC.SICL_LGC = @LGC \n"
. " AND V_SIAC.SIITL_LGC = @LGC \n"
. " AND V_SIAC.SIAPL_LGC = @LGC \n"
. " AND EXISTS ( \n"
. " SELECT SRA_ResID \n"
. " FROM srms.dbo.SRMS_ResourceAllot \n"
. " WHERE SRA_SSIID = @SiteID \n"
. " AND SRA_Code = 'I' \n"
. " AND SRA_ResID = V_SIAC.SICL_ID \n"
. " )";
$this->HT->query($sql, array($item['site_lgc'], $item['site_id'], $item['site_code']));
}
// 2.更新服务类型
//城市
$this->HT->query("UPDATE infoContents SET ic_type ='c_reason' WHERE ic_type= 'ISTC-TopReason' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_tips' WHERE ic_type='ISTC-TravelTips' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_nightlife' WHERE ic_type='ISTC-Nightlife' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_history' WHERE ic_type='ISTC-History' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_attraction' WHERE ic_type='ISTC-Attraction' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_kids' WHERE ic_type='ISTC-Kids' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_transport' WHERE ic_type='ISTC-Transport' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_facts' WHERE ic_type='ISTC-QuickFacts' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_food' WHERE ic_type= 'ISTC-Food' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_shopping' WHERE ic_type='ISTC-Shopping' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_toptodo' WHERE ic_type='ISTC-ToptoDo' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_map' WHERE ic_type='ISTC-Map' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_travel' WHERE ic_type='ISTC-TravelInfo' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_todo' WHERE ic_type='ISTC-ToDo' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_overview' WHERE ic_type='ISTC-Overview' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_weather' WHERE ic_type='ISTC-Weather' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_about' WHERE ic_type='ISTC-About' ");
$this->HT->query("UPDATE infoContents SET ic_type ='c_restaurant' WHERE ic_type='ISTC-Restaurant' ");
//省份
$this->HT->query("UPDATE infoContents SET ic_type ='p_popular_city' WHERE ic_type='ISTC-PopularCity' ");
//国家
$this->HT->query("UPDATE infoContents SET ic_type ='n_arts' WHERE ic_type='ISTC_CTArts' ");
$this->HT->query("UPDATE infoContents SET ic_type ='n_culture' WHERE ic_type='ISTC_CTCulture' ");
$this->HT->query("UPDATE infoContents SET ic_type ='n_overview' WHERE ic_type='ISTC_CTOverview' ");
$this->HT->query("UPDATE infoContents SET ic_type ='n_photos' WHERE ic_type='ISTC_CTPhotos' ");
$this->HT->query("UPDATE infoContents SET ic_type ='n_travel' WHERE ic_type='ISTC_CTTravel' ");
$this->HT->query("UPDATE infoContents SET ic_type ='n_national' WHERE ic_type='ISTC_CTNational' ");
//"3.根据信息内容建立结构数据 \n"
$sql = "INSERT INTO infoStructures \n"
. " ( \n"
. " is_parent_id, is_path, is_level, is_sort, is_sitecode, is_datetime, is_ic_id \n"
. " ) \n"
. "SELECT -1, \n" //is_parent_id
. " '', \n" //is_path
. " -1, \n" //is_level
. " -1, \n" //is_sort
. " ic.ic_sitecode, \n"//is_sitecode
. " GETDATE(), \n" //is_datetime
. " ic.ic_id \n" //is_ic_id
. "FROM infoContents ic WHERE ic.ic_sitecode='mct' ";
$this->HT->query($sql);
print_r($this->HT->queries);
}
//.....逐个查询和导入信息体
function import_xxoo()
{
$site_array = $this->config->item('site');
$site_arrays['mct'] = $site_array['mct'];//只导入mct
$site_array = $site_arrays;
foreach ($site_array as $key => $item)
{
//列出需要更新的记录
$sql = "SELECT is1.is_id, \n"
. " ic.ic_id, \n"
. " ic.ic_sitecode, \n"
. " ic.ic_url, \n"
. " ic.ic_url_title, \n"
. " ic.ic_type, \n"
. " ic.ic_ht_area_id, \n"
. " ic.ic_ht_area_type, \n"
. " ic.SRMS_SIC_Code, \n"
. " ic.SRMS_SIIT_Code, \n"
. " ic.SRMS_SIAP_Code, \n"
. " is1.is_path, \n"
. " sinit.SIIT_ParentID \n"
. "FROM infoStructures is1 \n"
. " INNER JOIN infoContents ic ON ic.ic_id = is1.is_ic_id \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_InfoType sinit ON sinit.SIIT_Code = ic.SRMS_SIIT_Code \n"
. "WHERE ic.ic_sitecode=? and ic.ic_ht_area_type='n' \n"
. "ORDER BY \n"
. " sinit.SIIT_ParentID ASC, sinit.SIIT_ID ASC "; //必须从低到高排序,这样获取的父结构才会有信息
$query = $this->HT->query($sql,array($item['site_code']));
//$this->import_area($query->result(),$item['site_code']); echo 'import_area';
$this->import_level($query->result(),$item['site_code']);echo 'import_level';
//$this->import_addon($query->result(),$item['site_code']);echo 'import_addon';
//$this->import_seo($query->result(),$item['site_code']);echo 'import_seo';
//$this->import_url_type($query->result(),$item['site_code']);echo 'import_url_type';
//$this->import_url($query->result(),$item['site_code']);echo 'import_url';
//$this->import_template($query->result());echo 'import_template';
//$this->import_cht_only();echo 'import_cht_only';
//$this->import_path($query->result());echo 'import_path';
//$this->import_weather();echo 'import_weather';
//$this->import_review();echo 'import_review';
//print_r($this->HT->queries);
//$this->import_test();echo 'import_test';
}
}
//2.导入区域信息和信息类型信息
function import_area($info_list,$site_code)
{
$site_array = $this->config->item('site');
$site_arrays['mct'] = $site_array['mct'];//只导入mct
$site_array = $site_arrays;
//更新翰特区域ID和区域类型 -begin
foreach ($info_list as $item)
{
$area_sql = "SELECT ( \n"
. " CASE \n"
. " WHEN siap.SIAP_SIATID = 1 THEN 'e' \n"
. " WHEN siap.SIAP_SIATID = 2 THEN 'p' \n"
. " WHEN siap.SIAP_SIATID = 3 THEN 'c' \n"
. " WHEN siap.SIAP_SIATID = 6 THEN 'n' \n"
. " WHEN siap.SIAP_SIATID = 7 THEN 't' \n"
. " ELSE CONVERT(VARCHAR(50), siap.SIAP_SIATID) \n" //未知区域,把语种数字存储起来
. " END \n"
. " ) AS SIAP_Type, \n"
. " siap.SIAP_OLDSN \n"
. "FROM srms.dbo.SRMS_Info_AreaPlacename siap \n"
. "WHERE siap.SIAP_Code = ?";
$area_query = $this->HT->query($area_sql, array($item->SRMS_SIAP_Code));
if ($area_query->num_rows() > 0)
{
$area_row = $area_query->row();
$SIAP_OLDSN = $area_row->SIAP_OLDSN;
$SIAP_Type = $area_row->SIAP_Type;
}
else
{
$SIAP_OLDSN = -1;
$SIAP_Type = '';
}
//更新翰特区域ID和区域类型 -end
//更新url类型和url名称 -begin
$url_sql = "SELECT sinitl.SIITL_Name, \n"
. " sinitl.SIITL_CustomURL \n"
. "FROM srms.dbo.SRMS_Info_New_InfoTypeLGC sinitl \n"
. "WHERE sinitl.SIITL_SIITCode = ? \n"
. " AND sinitl.SIITL_LGC = ? \n";
$url_query = $this->HT->query($url_sql, array($item->SRMS_SIIT_Code, $site_array[$item->ic_sitecode]['site_lgc']));
if ($url_query->num_rows() > 0)
{
$url_row = $url_query->row();
$SIITL_Name = $url_row->SIITL_Name;
$SIITL_CustomURL = $url_row->SIITL_CustomURL;
}
else
{
$SIITL_Name = '';
$SIITL_CustomURL = '';
}
//更新url类型和url名称 -end
//更新内容表 -begin
$set_sql = "UPDATE infoContents \n"
. "SET ic_ht_area_id = ?, \n"
. " ic_ht_area_type = ?, \n"
. " ic_url = ?, \n"
. " ic_url_title = ? \n"
. "WHERE ic_id = ? \n"
. " AND ic_sitecode=? ";
$this->HT->query($set_sql, array($SIAP_OLDSN, $SIAP_Type, $SIITL_CustomURL, $SIITL_Name, $item->ic_id,$site_code));
//更新内容表 -end
}
//添加区域根节点
$area_root_sql = "INSERT INTO infoContents \n"
. " ( \n"
. " ic_url_title, ic_type, ic_sitecode, ic_ht_area_id, ic_ht_area_type, \n"
. " ic_datetime \n"
. " ) \n"
. "SELECT DISTINCT 'new area','root',ic.ic_sitecode, ic.ic_ht_area_id, \n"
. " ic.ic_ht_area_type,GETDATE() \n"
. "FROM infoContents ic \n"
. "WHERE NOT EXISTS( \n"
. " SELECT TOP 1 1 \n"
. " FROM infoContents ic2 \n"
. " WHERE ic2.ic_ht_area_id = ic.ic_ht_area_id \n"
. " AND ic2.ic_ht_area_type = ic.ic_ht_area_type \n"
. " AND ic2.ic_sitecode = ic.ic_sitecode \n"
. " AND ic2.ic_type = 'root' \n"
. " ) \n"
. " AND ic.ic_sitecode=? \n"
. " AND ic.ic_ht_area_id IS NOT NULL";
$this->HT->query($area_root_sql,array($site_code));
$area_root_sql = "INSERT INTO infoStructures \n"
. " ( \n"
. " is_parent_id, is_path, is_level, is_sort, is_sitecode, is_datetime, is_ic_id,ISRUN \n"
. " ) \n"
. "SELECT 0, \n"//is_parent_id
. " '', \n"//is_path
. " 1, \n"//is_level
. " -1, \n"//is_sort
. " ic.ic_sitecode, \n"//is_sitecode
. " GETDATE(), \n"//is_datetime
. " ic.ic_id, \n"//is_ic_id
. " 1 \n"//ISRUN
. "FROM infoContents ic \n"
. "WHERE ic.ic_type = 'root' \n"
. " AND ic.ic_sitecode=? \n"
. " AND NOT EXISTS( \n"
. " SELECT TOP 1 1 \n"
. " FROM infoStructures is1 \n"
. " WHERE is1.is_ic_id = ic.ic_id \n"
. " )";
$this->HT->query($area_root_sql,array($site_code));
//更新区域主节点名称
$area_name_sql = "SELECT ic.ic_id, \n"
. " ic.ic_ht_area_id, \n"
. " ic.ic_sitecode, \n"
. " ic.ic_ht_area_type \n"
. "FROM infoContents ic \n"
. "WHERE ic.ic_type = 'root' \n"
. " AND ic.ic_sitecode=? ";
$query_area_name = $this->HT->query($area_name_sql,array($site_code));
foreach ($query_area_name->result() as $area_item)
{
switch ($area_item->ic_ht_area_type)
{
case 'n':
break;
case 'c':
$city_sql = "SELECT TOP 1 ci2.CII2_Name \n"
. "FROM CItyInfo2 ci2 \n"
. "WHERE ci2.CII2_LGC = ? \n"
. " AND ci2.CII2_CII_SN = ? ";
$city_query = $this->HT->query($city_sql, array($site_array[$area_item->ic_sitecode]['site_lgc'], $area_item->ic_ht_area_id));
if ($city_query->num_rows() > 0)
{
$city_row = $city_query->row();
$set_sql = "UPDATE infoContents SET ic_url_title = ? WHERE ic_id=? AND ic_sitecode=? ";
$this->HT->query($set_sql, array($city_row->CII2_Name, $area_item->ic_id,$site_code));
}
break;
case 'p':
$province_sql = "SELECT TOP 1 pi2.PRI2_Name \n"
. "FROM PRovinceInfo pi1 \n"
. " INNER JOIN PRovinceInfo2 pi2 ON pi2.PRI2_PRI_SN = pi1.PRI_SN \n"
. "WHERE pi1.PRI_Country = 1 \n"
. " AND pi2.PRI2_LGC = ? \n"
. " AND pi1.PRI_SN = ?";
$province_query = $this->HT->query($province_sql, array($site_array[$area_item->ic_sitecode]['site_lgc'], $area_item->ic_ht_area_id));
if ($province_query->num_rows() > 0)
{
$province_row = $province_query->row();
$set_sql = "UPDATE infoContents SET ic_url_title = ? WHERE ic_id=? AND ic_sitecode=? ";
$this->HT->query($set_sql, array($province_row->PRI2_Name, $area_item->ic_id,$site_code));
}
break;
default:
break;
}
}
}
//3.更新信息内容的区域、url名称、部分自定义URL在信息语种表中的、父级结构等。这个过程执行时间很长请修改\system\core\CodeIgniter.php 105行把300秒改为0即不限制
function import_level($info_list,$site_code)
{
//更新层次结构的同时需要先完成区域设置
foreach ($info_list as $item)
{
$parent_sql = "SELECT is1.is_id, \n"
. " is1.is_path, \n"
. " is1.is_level \n"
. "FROM infoStructures is1 \n"
. " INNER JOIN infoContents ic ON ic.ic_id = is1.is_ic_id \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_InfoType sinit ON sinit.SIIT_Code = ic.SRMS_SIIT_Code \n"
. "WHERE sinit.SIIT_ID = ? \n"
. " AND ic.ic_sitecode = ? \n"
. " AND ic.ic_ht_area_id = ? \n"
. " AND ic.ic_ht_area_type = ?";
$parent_query = $this->HT->query($parent_sql, array($item->SIIT_ParentID, $site_code, $item->ic_ht_area_id, $item->ic_ht_area_type));
if ($parent_query->num_rows() > 0)
{
$parent_row = $parent_query->row();
$set_sql = "UPDATE infoStructures \n"
. "SET is_parent_id = ?, "
. " is_path = ?, "
. " is_level = ?, "
. " ISRUN =1 "
. "WHERE is_id = ? \n"
. "AND is_sitecode= ? ";
$this->HT->query($set_sql, array($parent_row->is_id, $parent_row->is_path . $parent_row->is_id . ',', $parent_row->is_level + 1, $item->is_id,$site_code));
}
else
{//找不到父节点就链接到当前区域的根节点
//查询区域根节点
$area_root_sql = "SELECT is1.is_id, \n"
. " is1.is_path, \n"
. " is1.is_level \n"
. "FROM infoStructures is1 \n"
. " INNER JOIN infoContents ic ON ic.ic_id = is1.is_ic_id \n"
. "WHERE ic.ic_type = 'root' \n"
. " AND ic.ic_sitecode = ? \n"
. " AND ic.ic_ht_area_id = ? \n"
. " AND ic.ic_ht_area_type = ?";
$area_root_query = $this->HT->query($area_root_sql, array($site_code, $item->ic_ht_area_id, $item->ic_ht_area_type));
if ($area_root_query->num_rows() > 0)
{
$area_root_row = $area_root_query->row();
$my_parent_id = $area_root_row->is_id;
$my_path = $area_root_row->is_path . $my_parent_id . ',';
$my_level = $area_root_row->is_level + 1;
$set_sql = "UPDATE infoStructures \n"
. "SET is_parent_id = ? ,"
. " is_path = ?, "
. " is_level = ? , "
. " ISRUN =1 "
. "WHERE is_id = ? \n"
. "AND is_sitecode= ? ";
$this->HT->query($set_sql, array($my_parent_id, $my_path, $my_level, $item->is_id,$site_code));
}
}
}
}
//4.导入额外数据,图片
function import_addon($info_list,$site_code)
{
$site_array = $this->config->item('site');
//导入图片
foreach ($info_list as $item)
{
$pic_sql = "SELECT TOP 1 (pi1.PII_Location + pi1.PII_FileName) AS pic_path \n"
. "FROM SRMS.dbo.SRMS_Info_Add_ons siao \n"
. " INNER JOIN PictureInfo pi1 ON pi1.PII_SN = siao.SIAO_SonID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_ContentLGC sincl ON sincl.SICL_ID = \n"
. " siao.SIAO_FatherID \n"
. "WHERE siao.SIAO_FatherType = 2 \n"
. " AND siao.SIAO_SonType = 1 \n"
. " AND sincl.SICL_LGC = ? \n"
. " AND sincl.SICL_SICCode = ? ";
$pic_query = $this->HT->query($pic_sql, array($site_array[$item->ic_sitecode]['site_lgc'], $item->SRMS_SIC_Code));
if ($pic_query->num_rows() > 0)
{
$pic_row = $pic_query->row();
$set_sql = "UPDATE infoContents \n"
. "SET ic_photo = ? \n"
. "WHERE ic_id = ? \n"
. "AND ic_sitecode= ? ";
$this->HT->query($set_sql, array($pic_row->pic_path, $item->ic_id,$site_code));
}
}
//导入绑定的景点
$land_sql = "SELECT srbi.SRBI_ResID, \n"
. " srbi.SRBI_SRBID, \n"
. " srbi.SRBI_ResType \n"
. "FROM srms.dbo.SRMS_ResourceBind_Info srbi \n"
. "WHERE srbi.SRBI_ResType = '7'";
$land_query = $this->HT->query($land_sql);
foreach ($land_query->result() as $land_item)
{
$land_it_sql = "SELECT TOP 1 srbi.SRBI_ResID, \n"
. " srbi.SRBI_SRBID, \n"
. " srbi.SRBI_ResType \n"
. "FROM srms.dbo.SRMS_ResourceBind_Info srbi \n"
. "WHERE srbi.SRBI_ResType = 'IT' \n"
. " AND srbi.SRBI_SRBID = ? \n"
. " ORDER BY srbi.SRBI_ID DESC ";
$land_it_query = $this->HT->query($land_it_sql, array($land_item->SRBI_SRBID));
if ($land_it_query->num_rows() > 0)
{
$land_it_row = $land_it_query->row();
$set_sql = "UPDATE infoContents \n"
. "SET ic_ht_product_id = ?, \n"
. " ic_ht_product_type = 't' \n"
. "WHERE SRMS_SIIT_ID = ? \n"
. "AND ic_sitecode=? ";
$this->HT->query($set_sql, array($land_item->SRBI_ResID, $land_it_row->SRBI_ResID,$site_code));
}
}
}
//5.导入自定义seo信息
function import_seo($info_list,$site_code)
{
$site_array = $this->config->item('site');
//导入自定义信息seo标题
$seo_title_sql = "SELECT ssrci.SSRC_Value, \n"
. " ssrci.SSRC_SSIID, \n"
. " sincl.SICL_SICCode \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_ContentLGC sincl ON sincl.SICL_ID = \n"
. " ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-title' \n"
. " AND ssrci.SSRC_ResType = 'I' \n "
. " AND ssrci.SSRC_SSIID=? ";
$seo_title_query = $this->HT->query($seo_title_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_title_query->result() as $title_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_title = ? \n"
. "WHERE SRMS_SIC_Code = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($title_item->SSRC_Value, 0, 255), $title_item->SICL_SICCode, $site_code));
}
//导入自定义信息seo关键字
$seo_keywords_sql = "SELECT ssrci.SSRC_Value, \n"
. " ssrci.SSRC_SSIID, \n"
. " sincl.SICL_SICCode \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_ContentLGC sincl ON sincl.SICL_ID = \n"
. " ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-keywords' \n"
. " AND ssrci.SSRC_ResType = 'I' \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_keywords_query = $this->HT->query($seo_keywords_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_keywords_query->result() as $keywords_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_keywords = ? \n"
. "WHERE SRMS_SIC_Code = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($keywords_item->SSRC_Value, 0, 255), $keywords_item->SICL_SICCode, $site_code));
}
//导入自定义信息seo描述
$seo_description_sql = "SELECT ssrci.SSRC_Value, \n"
. " ssrci.SSRC_SSIID, \n"
. " sincl.SICL_SICCode \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_ContentLGC sincl ON sincl.SICL_ID = \n"
. " ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-description' \n"
. " AND ssrci.SSRC_ResType = 'I' \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_description_query = $this->HT->query($seo_description_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_description_query->result() as $description_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_description = ? \n"
. "WHERE SRMS_SIC_Code = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($description_item->SSRC_Value, 0, 255), $description_item->SICL_SICCode, $site_code));
}
//导入自定义信息类型seo标题
$seo_title_sql = "SELECT ssrci.SSRC_Value, \n"
. " ssrci.SSRC_SSIID, \n"
. " sinit.SIIT_Code \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_InfoType sinit ON sinit.SIIT_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-title' \n"
. " AND ssrci.SSRC_ResType = 'IT' \n"
. " AND ssrci.SSRC_SSCPID IN ('i-china-culture-info','i-china-guide-info') \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_title_query = $this->HT->query($seo_title_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_title_query->result() as $title_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_title = ? \n"
. "WHERE SRMS_SIIT_Code = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($title_item->SSRC_Value, 0, 255), $title_item->SIIT_Code, $site_code));
}
//导入自定义信息类型seo关键字
$seo_keywords_sql = "SELECT ssrci.SSRC_Value, \n"
. " ssrci.SSRC_SSIID, \n"
. " sinit.SIIT_Code \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_InfoType sinit ON sinit.SIIT_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-keywords' \n"
. " AND ssrci.SSRC_ResType = 'IT' \n"
. " AND ssrci.SSRC_SSCPID IN ('i-china-culture-info','i-china-guide-info') \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_keywords_query = $this->HT->query($seo_keywords_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_keywords_query->result() as $keywords_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_keywords = ? \n"
. "WHERE SRMS_SIIT_Code = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($keywords_item->SSRC_Value, 0, 255), $keywords_item->SIIT_Code, $site_code));
}
//导入自定义信息类型seo描述
$seo_description_sql = "SELECT ssrci.SSRC_Value, \n"
. " ssrci.SSRC_SSIID, \n"
. " sinit.SIIT_Code \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_New_InfoType sinit ON sinit.SIIT_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-description' \n"
. " AND ssrci.SSRC_ResType = 'IT' \n"
. " AND ssrci.SSRC_SSCPID IN ('i-china-culture-info','i-china-guide-info') \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_description_query = $this->HT->query($seo_description_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_description_query->result() as $description_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_description = ? \n"
. "WHERE SRMS_SIIT_Code = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($description_item->SSRC_Value, 0, 255), $description_item->SIIT_Code, $site_code));
}
//导入自定义城市seo标题
$seo_title_sql = "SELECT siap.SIAP_OLDSN, \n"
. " ssrci.SSRC_SSIID, \n"
. " ssrci.SSRC_Value \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_AreaPlacename siap ON siap.SIAP_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-title' \n"
. " AND ssrci.SSRC_ResType = 'K' \n "
. " AND ssrci.SSRC_SSCPID = 'i-city-index' \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_k_title_query = $this->HT->query($seo_title_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_k_title_query->result() as $title_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_title = ? \n"
. "WHERE ic_ht_area_type = 'c' \n"
. " AND ic_type = 'root' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($title_item->SSRC_Value, 0, 255), $title_item->SIAP_OLDSN, $site_code));
}
//导入自定义城市seo关键字
$seo_keywords_sql = "SELECT siap.SIAP_OLDSN, \n"
. " ssrci.SSRC_SSIID, \n"
. " ssrci.SSRC_Value \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_AreaPlacename siap ON siap.SIAP_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-keywords' \n"
. " AND ssrci.SSRC_ResType = 'K' \n "
. " AND ssrci.SSRC_SSCPID = 'i-city-index' \n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_k_keywords_query = $this->HT->query($seo_keywords_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_k_keywords_query->result() as $keywords_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_keywords = ? \n"
. "WHERE ic_ht_area_type = 'c' \n"
. " AND ic_type = 'root' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($keywords_item->SSRC_Value, 0, 255), $keywords_item->SIAP_OLDSN, $site_code));
}
//导入自定义城市seo描述
$seo_description_sql = "SELECT siap.SIAP_OLDSN, \n"
. " ssrci.SSRC_SSIID, \n"
. " ssrci.SSRC_Value \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_AreaPlacename siap ON siap.SIAP_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-description' \n"
. " AND ssrci.SSRC_ResType = 'K' \n "
. " AND ssrci.SSRC_SSCPID = 'i-city-index'\n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_k_description_query = $this->HT->query($seo_description_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_k_description_query->result() as $description_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_description = ? \n"
. "WHERE ic_ht_area_type = 'c' \n"
. " AND ic_type = 'root' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($description_item->SSRC_Value, 0, 255), $description_item->SIAP_OLDSN, $site_code));
}
//导入自定义省份seo标题
$seo_title_sql = "SELECT siap.SIAP_OLDSN, \n"
. " ssrci.SSRC_SSIID, \n"
. " ssrci.SSRC_Value \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_AreaPlacename siap ON siap.SIAP_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-title' \n"
. " AND ssrci.SSRC_ResType = 'P' \n "
. " AND ssrci.SSRC_SSCPID = 'i-area-index'\n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_p_title_query = $this->HT->query($seo_title_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_p_title_query->result() as $title_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_title = ? \n"
. "WHERE ic_ht_area_type = 'p' \n"
. " AND ic_type = 'root' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($title_item->SSRC_Value, 0, 255), $title_item->SIAP_OLDSN, $site_code));
}
//导入自定义省份seo关键字
$seo_keywords_sql = "SELECT siap.SIAP_OLDSN, \n"
. " ssrci.SSRC_SSIID, \n"
. " ssrci.SSRC_Value \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_AreaPlacename siap ON siap.SIAP_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-keywords' \n"
. " AND ssrci.SSRC_ResType = 'P' \n "
. " AND ssrci.SSRC_SSCPID = 'i-area-index'\n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_p_keywords_query = $this->HT->query($seo_keywords_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_p_keywords_query->result() as $keywords_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_keywords = ? \n"
. "WHERE ic_ht_area_type = 'p' \n"
. " AND ic_type = 'root' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($keywords_item->SSRC_Value, 0, 255), $keywords_item->SIAP_OLDSN, $site_code));
}
//导入自定义省份seo描述
$seo_description_sql = "SELECT siap.SIAP_OLDSN, \n"
. " ssrci.SSRC_SSIID, \n"
. " ssrci.SSRC_Value \n"
. "FROM srms.dbo.SRMS_SiteResource_CustomInfo ssrci \n"
. " INNER JOIN srms.dbo.SRMS_SiteCustomInfoType sscit ON sscit.SSCT_TypeCode = \n"
. " ssrci.SSRC_TypeID \n"
. " INNER JOIN srms.dbo.SRMS_Info_AreaPlacename siap ON siap.SIAP_ID = ssrci.SSRC_ResID \n"
. "WHERE ssrci.SSRC_TypeID = 'k-description' \n"
. " AND ssrci.SSRC_ResType = 'P' \n "
. " AND ssrci.SSRC_SSCPID = 'i-area-index'\n"
. " AND ssrci.SSRC_SSIID=? ";
$seo_p_description_query = $this->HT->query($seo_description_sql,array($site_array[$site_code]['site_id']));
foreach ($seo_p_description_query->result() as $description_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_seo_description = ? \n"
. "WHERE ic_ht_area_type = 'p' \n"
. " AND ic_type = 'root' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = ? ";
$this->HT->query($set_sql,
array(substr($description_item->SSRC_Value, 0, 255), $description_item->SIAP_OLDSN, $site_code));
}
}
//5.5 批量设置临时信息类型-景点详细页
function import_url_type($info_list,$site_code)
{
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_type = 'c_attraction_detail' \n"
. "WHERE ic_sitecode=? \n"
. "AND ic_id IN (SELECT ic.ic_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures is1 ON is1.is_ic_id = ic.ic_id \n"
. " AND is1.is_sitecode = ic.ic_sitecode \n"
. " WHERE is1.is_parent_id IN (SELECT is1.is_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures \n"
. " is1 ON is1.is_ic_id = \n"
. " ic.ic_id \n"
. " AND is1.is_sitecode = \n"
. " ic.ic_sitecode \n"
. " WHERE ic.ic_type = 'c_attraction'))";
$this->HT->query($set_all_sql,array($site_code));
//批量设置临时信息类型-地图详细页
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_type = 'c_map_detail' \n"
. "WHERE ic_sitecode=? \n"
. "AND ic_id IN (SELECT ic.ic_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures is1 ON is1.is_ic_id = ic.ic_id \n"
. " AND is1.is_sitecode = ic.ic_sitecode \n"
. " WHERE is1.is_parent_id IN (SELECT is1.is_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures \n"
. " is1 ON is1.is_ic_id = \n"
. " ic.ic_id \n"
. " AND is1.is_sitecode = \n"
. " ic.ic_sitecode \n"
. " WHERE ic.ic_type = 'c_map'))";
$this->HT->query($set_all_sql,array($site_code));
//批量设置临时信息类型-餐饮详细页
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_type = 'c_restaurant_detail' \n"
. "WHERE ic_sitecode=? \n"
. "AND ic_id IN (SELECT ic.ic_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures is1 ON is1.is_ic_id = ic.ic_id \n"
. " AND is1.is_sitecode = ic.ic_sitecode \n"
. " WHERE is1.is_parent_id IN (SELECT is1.is_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures \n"
. " is1 ON is1.is_ic_id = \n"
. " ic.ic_id \n"
. " AND is1.is_sitecode = \n"
. " ic.ic_sitecode \n"
. " WHERE ic.ic_type = 'c_restaurant'))";
$this->HT->query($set_all_sql,array($site_code));
//批量设置临时信息类型-食物详细页
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_type = 'c_food_detail' \n"
. "WHERE ic_sitecode=? \n"
. "AND ic_id IN (SELECT ic.ic_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures is1 ON is1.is_ic_id = ic.ic_id \n"
. " AND is1.is_sitecode = ic.ic_sitecode \n"
. " WHERE is1.is_parent_id IN (SELECT is1.is_id \n"
. " FROM infoContents ic \n"
. " INNER JOIN infoStructures \n"
. " is1 ON is1.is_ic_id = \n"
. " ic.ic_id \n"
. " AND is1.is_sitecode = \n"
. " ic.ic_sitecode \n"
. " WHERE ic.ic_type = 'c_food'))";
$this->HT->query($set_all_sql,array($site_code));
}
//6.导入URL自定义url和程序拼接的url
function import_url($info_list,$site_code)
{
$site_array = $this->config->item('site');
foreach ($info_list as $item)
{
$url = '';
switch ($item->ic_ht_area_type)// 区域类型
{
case 'n'://国家
switch ($item->ic_sitecode)//站点
{
case 'cht':
$url = "/travelguide/culture/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/china-info/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/travelguide/culture/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/guidedevoyage/culture/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-china/cultura/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/travelguide/culture/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/guidaturistica/cultura/[INFO_URL_NAME].htm";
break;
case 'mct':
$url="/culture-guide/[INFO_URL_NAME]/";
break;
default:
$url = '';
break;
}
break;
case 'p'://省份
switch ($item->ic_type)//信息类型
{
case 'root'://省份主页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[PROVINCE_NAME]/";
break;
case 'gm':
$url="/[PROVINCE_NAME]/";
break;
case 'jp':
$url="/[PROVINCE_NAME]/";
break;
case 'vc':
$url="/[PROVINCE_NAME]/";
break;
case 'vac':
$url="/guia-[PROVINCE_NAME]/";
break;
case 'ru':
$url="/[PROVINCE_NAME]/";
break;
case 'it':
$url="/[PROVINCE_NAME]/";
break;
default:
$url = '';
break;
}
break;
default://通用详细页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[PROVINCE_NAME]/[INFO_URL_NAME].htm";
break;
default:
$url = '';
break;
}
break;
}
if ($url != '')
{
$province_sql = "SELECT TOP 1 pi2.PRI2_Name \n"
. "FROM PRovinceInfo pi1 \n"
. " INNER JOIN PRovinceInfo2 pi2 ON pi2.PRI2_PRI_SN = pi1.PRI_SN \n"
. "WHERE pi1.PRI_Country = 1 \n"
. " AND pi2.PRI2_LGC = ? \n"
. " AND pi1.PRI_SN = ?";
$province_lgc=$site_array[$item->ic_sitecode]['site_lgc'];
//日语和俄语使用英文语种url
if($item->ic_sitecode=="jp" || $item->ic_sitecode=="ru")
{
$province_lgc=1;
}
$province_query = $this->HT->query($province_sql, array($province_lgc, $item->ic_ht_area_id));
if ($province_query->num_rows() > 0)
{
$province_row = $province_query->row();
$url = str_replace('[PROVINCE_NAME]', trim($province_row->PRI2_Name), $url);
}
}
break;
case 'c'://城市
switch ($item->ic_type)//信息类型
{
case 'root'://首页
switch ($item->ic_sitecode)//站点
{
case 'cht':
$url = "/[CITY_NAME]/";
break;
case 'gm':
$url="/[CITY_NAME]/";
break;
case 'jp':
$url="/[CITY_NAME]/";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/";
break;
case 'vac':
$url="/guia-[CITY_NAME]/";
break;
case 'ru':
$url="/[CITY_NAME]/";
break;
case 'it':
$url="/[CITY_NAME]/";
break;
case 'mct':
$url="/[CITY_NAME]-travel/";
break;
default:
$url = '';
break;
}
break;
case 'c_overview'://介绍overview travel-guide
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/[CITY_NAME]-travel-guide.htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-ueberblick/";
break;
case 'jp':
$url="/[CITY_NAME]/overview.htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-voyage-guide.htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/resumen/";
break;
case 'ru':
$url="/[CITY_NAME]/overview.htm";
break;
case 'it':
$url="/[CITY_NAME]/[CITY_NAME]-guida-turistica.htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-overview/";
break;
default:
$url = '';
break;
}
break;
case 'c_map'://地图列表
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/map.htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-landkarte/";
break;
case 'jp':
$url="/[CITY_NAME]/map.htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-carte.htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/mapa.htm";
break;
case 'ru':
$url="/[CITY_NAME]/map.htm";
break;
case 'it':
$url="/[CITY_NAME]/mappa.htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-map/";
break;
default:
$url = '';
break;
}
break;
case 'c_map_detail': //地图详细页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/map/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-landkarte/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[CITY_NAME]/map/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-carte/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/mapa/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[CITY_NAME]/map/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[CITY_NAME]/mappa/[INFO_URL_NAME].htm";
break;
default:
$url = '';
break;
}
break;
case 'c_attraction'://景点列表
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/attraction/";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-sehenswuerdigkeiten/";
break;
case 'jp':
$url="/[CITY_NAME]/attraction/";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-attractions/";
break;
case 'vac':
$url="/guia-[CITY_NAME]/atracciones/";
break;
case 'ru':
$url="/[CITY_NAME]/attraction/";
break;
case 'it':
$url="/[CITY_NAME]/attrazione/";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-attractions/";
break;
default:
$url = '';
break;
}
break;
case 'c_attraction_detail'://景点详细页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/attraction/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-sehenswuerdigkeiten/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[CITY_NAME]/attraction/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-attractions/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/atracciones/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[CITY_NAME]/attraction/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[CITY_NAME]/attrazione/[INFO_URL_NAME].htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-attractions/[INFO_URL_NAME]/";
break;
default:
$url = '';
break;
}
break;
case 'c_weather'://天气
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/weather.htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-wetter/";
break;
case 'jp':
$url="/[CITY_NAME]/weather.htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-climat/";
break;
case 'vac':
$url="/guia-[CITY_NAME]/clima.htm";
break;
case 'ru':
$url="/[CITY_NAME]/weather.htm";
break;
case 'it':
$url="/[CITY_NAME]/clima.htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-weather/";
break;
default:
$url = '';
break;
}
break;
case '天气-月份':
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/weather/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-wetter/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[CITY_NAME]/weather/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-climat/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/clima/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[CITY_NAME]/weather/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[CITY_NAME]/clima/[INFO_URL_NAME].htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-weather/[INFO_URL_NAME]/";
break;
default:
$url = '';
break;
}
break;
case 'c_restaurant'://餐饮列表
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/restaurants.htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-restaurant/";
break;
case 'jp':
$url="/[CITY_NAME]/restaurant.htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-restaurant/";
break;
case 'vac':
$url="/guia-[CITY_NAME]/restaurante/";
break;
case 'ru':
$url="/[CITY_NAME]/restaurants.htm";
break;
case 'it':
$url="/[CITY_NAME]/ristorante.htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-restaurants/";
break;
default:
$url = '';
break;
}
break;
case 'c_restaurant_detail'://餐饮详细页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/restaurants/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-restaurant/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[CITY_NAME]/restaurant/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-restaurant/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/restaurante/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[CITY_NAME]/restaurants/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[CITY_NAME]/ristorante/[INFO_URL_NAME].htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-restaurants/[INFO_URL_NAME]/";
break;
default:
$url = '';
break;
}
break;
case 'c_food'://食物列表
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/food-restaurant.htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-essen-trinken/";
break;
case 'jp':
$url="/[CITY_NAME]/food.htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-aliment/";
break;
case 'vac':
$url="/guia-[CITY_NAME]/alimentos-y-restaurantes.htm";
break;
case 'ru':
$url="/[CITY_NAME]/food-restaurant.htm";
break;
case 'it':
$url="/[CITY_NAME]/cibo.htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-food/";
break;
default:
$url = '';
break;
}
break;
case 'c_food_detail'://食物详细页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/food/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-essen-trinken/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[CITY_NAME]/food/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-aliment/[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/alimentos-y-restaurantes/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[CITY_NAME]/food-restaurant/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[CITY_NAME]/cibo/[INFO_URL_NAME].htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-food/[INFO_URL_NAME]/";
break;
default:
$url = '';
break;
}
break;
case 'c_transport'://交通
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/transportation.htm";
break;
case 'gm':
$url="/[CITY_NAME]/[CITY_NAME]-transport/";
break;
case 'jp':
$url="/[CITY_NAME]/transportation.htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-moyen-de-transport/";
break;
case 'vac':
$url="/guia-[CITY_NAME]/transporte.htm";
break;
case 'ru':
$url="/[CITY_NAME]/transportation.htm";
break;
case 'it':
$url="/[CITY_NAME]/trasporto.htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-transportation/";
break;
default:
$url = '';
break;
}
break;
case 'c_nightlife'://夜生活
switch ($item->ic_sitecode)
{
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-nightlife/";
break;
default:
$url = '';
break;
}
break;
case 'n_photos'://相册列表
switch ($item->ic_sitecode)
{
case 'mct':
$url="/[CITY_NAME]-travel/[CITY_NAME]-photos/";
break;
default:
$url = '';
break;
}
break;
default://通用详细页
switch ($item->ic_sitecode)
{
case 'cht':
$url = "/[CITY_NAME]/[INFO_URL_NAME].htm";
break;
case 'gm':
$url="/[CITY_NAME]/[INFO_URL_NAME].htm";
break;
case 'jp':
$url="/[CITY_NAME]/[INFO_URL_NAME].htm";
break;
case 'vc':
$url="/[CITY_NAME]-voyage/[CITY_NAME]-[INFO_URL_NAME].htm";
break;
case 'vac':
$url="/guia-[CITY_NAME]/[INFO_URL_NAME].htm";
break;
case 'ru':
$url="/[CITY_NAME]/[INFO_URL_NAME].htm";
break;
case 'it':
$url="/[CITY_NAME]/[INFO_URL_NAME].htm";
break;
case 'mct':
$url="/[CITY_NAME]-travel/[INFO_URL_NAME]/";
break;
default:
$url = '';
break;
}
break;
}
if ($url != '')
{
$city_sql = "SELECT TOP 1 ci2.CII2_Name \n"
. "FROM CItyInfo2 ci2 \n"
. "WHERE ci2.CII2_LGC = ? \n"
. " AND ci2.CII2_CII_SN = ? ";
$city_lgc=$site_array[$item->ic_sitecode]['site_lgc'];
//日语和俄语使用英文语种url
if($item->ic_sitecode=="jp" || $item->ic_sitecode=="ru")
{
$city_lgc=1;
}
$city_query = $this->HT->query($city_sql, array($city_lgc, $item->ic_ht_area_id));
if ($city_query->num_rows() > 0)
{
$city_row = $city_query->row();
$url = str_replace('[CITY_NAME]', $city_row->CII2_Name, $url);
}
}
break;
default:
$url = '';
break;
}
if ($url != '')
{
$url_title=$item->ic_url_title;
//日语和俄语使用英文语种url
if($item->ic_sitecode=="jp" || $item->ic_sitecode=="ru")
{
$srms_sinitl_sql = "SELECT TOP 1 sinitl.SIITL_Name \n"
. "FROM srms.dbo.SRMS_Info_New_InfoTypeLGC sinitl \n"
. "WHERE sinitl.SIITL_LGC = 1 \n"
. " AND sinitl.SIITL_SIITCode = ? ";
$srms_sinitl_query=$this->HT->query($srms_sinitl_sql,array($item->SRMS_SIIT_Code));
if ($srms_sinitl_query->num_rows() > 0)
{
$srms_sinitl_row = $srms_sinitl_query->row();
$url_title = $srms_sinitl_row->SIITL_Name;
}
else{
$url_title = $item->ic_url;
}
}
//转换大小写和空格变中划线
$url = str_replace('[INFO_URL_NAME]', trim($url_title), $url);
$url = str_replace(' ', ' ', $url);
$url = str_replace(' ', '-', $url);
$url = str_replace('//', '/', $url);
$url = str_replace('.htm.htm', '.htm', $url);
$set_sql = "UPDATE infoContents \n"
. "SET ic_url =N? \n"
. "WHERE ic_id = ? \n"
. " AND ic_sitecode=? ";
//. " AND (ic_url ='' \n"
//. " OR ic_url is null) ";
$this->HT->query($set_sql, array(mb_strtolower($url), $item->ic_id,$site_code));
}
}
}
//7.批量设置模板
function import_template($info_list)
{
//城市首页
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_template = 'city_info_index' \n"
. "WHERE ic_type = 'root' \n"
. " AND ic_ht_area_type = 'c'";
$this->HT->query($set_all_sql);
//省份首页
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_template = 'area_info_index' \n"
. "WHERE ic_type = 'root' \n"
. " AND ic_ht_area_type = 'p'";
$this->HT->query($set_all_sql);
//城市景点列表页
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_template = 'city_info_attractions_list' \n"
. "WHERE ic_type = 'c_attraction' \n"
. " AND ic_ht_area_type = 'c'";
$this->HT->query($set_all_sql);
//CHT专用小城市设置景点列表简化模板
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_template = 'city_info_s_attractions_list' \n"
. "WHERE ic_type = 'c_attraction' \n"
. " AND ic_ht_area_type = 'c' \n"
. " AND ic_ht_area_id NOT IN (SELECT ci2.CII2_CII_SN \n"
. " FROM CItyInfo2 ci2 \n"
. " WHERE ci2.CII2_Name IN ('北京', '上海', '天津', \n"
. " '重庆', '香港', '澳门', \n"
. " '洛阳', '郑州', '承德', \n"
. " '石家庄', '大同', \n"
. " '太原', '哈尔滨', \n"
. " '沈阳', '大连', \n"
. " '呼和浩特', '长春', \n"
. " '南京', '苏州', '无锡', \n"
. " '杭州', '宁波', '黄山', \n"
. " '合肥', '济南', '青岛', \n"
. " '南昌', '武汉', '长沙', \n"
. " '张家界', '广州', \n"
. " '深圳', '珠海', '厦门', \n"
. " '福州', '桂林', '南宁', \n"
. " '海口', '三亚', '成都', \n"
. " '贵阳', '昆明', '拉萨', \n"
. " '西安', '兰州', '银川', \n"
. " '乌鲁木齐', '烟台', \n"
. " '西宁') \n"
. " AND ci2.CII2_LGC = 2)";
$this->HT->query($set_all_sql);
//CHT专用小城市设置首页简化模板
$set_all_sql = "UPDATE infoContents \n"
. "SET ic_template = 'city_info_s_index' \n"
. "WHERE ic_type = 'root' \n"
. " AND ic_ht_area_type = 'c' \n"
. " AND ic_ht_area_id NOT IN (SELECT ci2.CII2_CII_SN \n"
. " FROM CItyInfo2 ci2 \n"
. " WHERE ci2.CII2_Name IN ('北京', '上海', '天津', \n"
. " '重庆', '香港', '澳门', \n"
. " '洛阳', '郑州', '承德', \n"
. " '石家庄', '大同', \n"
. " '太原', '哈尔滨', \n"
. " '沈阳', '大连', \n"
. " '呼和浩特', '长春', \n"
. " '南京', '苏州', '无锡', \n"
. " '杭州', '宁波', '黄山', \n"
. " '合肥', '济南', '青岛', \n"
. " '南昌', '武汉', '长沙', \n"
. " '张家界', '广州', \n"
. " '深圳', '珠海', '厦门', \n"
. " '福州', '桂林', '南宁', \n"
. " '海口', '三亚', '成都', \n"
. " '贵阳', '昆明', '拉萨', \n"
. " '西安', '兰州', '银川', \n"
. " '乌鲁木齐', '烟台', \n"
. " '西宁') \n"
. " AND ci2.CII2_LGC = 2)";
$this->HT->query($set_all_sql);
}
//8.当前节点路径没有包含本节点则加上去
function import_path($info_list)
{
foreach ($info_list as $item)
{
if (strpos(',' . $item->is_path, ',' . $item->is_id . ',') === false)
{
$set_sql = "UPDATE infoStructures \n"
. "SET is_path = is_path + CONVERT(VARCHAR(200), is_id) + ',' \n"
. "WHERE is_id = ?";
$this->HT->query($set_sql, array($item->is_id));
}
}
}
function import_cht_only()
{
$cht_sql = "SELECT ic.* \n"
. "FROM infoContents ic \n"
. "WHERE ic.ic_type = 'c_overview' \n"
. " AND ic.ic_sitecode = 'cht'";
$cht_query = $this->HT->query($cht_sql);
foreach ($cht_query->result() as $cht_item)
{
$set_sql = "UPDATE infoContents \n"
. "SET ic_content = ?, \n"
. " ic_summary = ?, \n"
. " ic_photo = ? \n"
. "WHERE ic_type = 'root' \n"
. " AND ic_ht_area_type = 'c' \n"
. " AND ic_ht_area_id = ? \n"
. " AND ic_sitecode = 'cht'";
$this->HT->query($set_sql, array($cht_item->ic_content, $cht_item->ic_summary, $cht_item->ic_photo, $cht_item->ic_ht_area_id));
}
}
//导入月份天气数据
function import_weather()
{
$this->SRMS = $this->load->database('SRMS', TRUE);
$weather_sql = "SELECT wd.C_ID, \n"
. " wd.W_ID, \n"
. " wd.W_Month, \n"
. " wd.W_Des, \n"
. " ( \n"
. " SELECT TOP 1 ci2.CII2_Name \n"
. " FROM tourmanager.dbo.cityInfo2 ci2 \n"
. " WHERE wd.c_id = ci2.CII2_CII_SN \n"
. " AND ci2.cii2_lgc = 1 \n"
. " ) AS city_name \n"
. "FROM Weather_Des wd \n"
. "ORDER BY \n"
. " wd.C_ID ASC, \n"
. " wd.W_Month ASC ";
$weather_query = $this->SRMS->query($weather_sql);
foreach ($weather_query->result() as $weather_item)
{
//查找城市的天气节点
$city_weather_sql = "SELECT TOP 1 is1.is_id, \n"
. " is_parent_id, \n"
. " is_path, \n"
. " is_level, \n"
. " is_ic_id, \n"
. " ic.ic_url, \n"
. " ic.ic_url_title, \n"
. " ic.ic_title, \n"
. " ic_sitecode \n"
. "FROM infoContents ic \n"
. " INNER JOIN infoStructures is1 ON is1.is_ic_id = ic.ic_id \n"
. " AND is1.is_sitecode = ic.ic_sitecode \n"
. "WHERE ic.ic_ht_area_type = 'c' \n"
. " AND ic.ic_ht_area_id = ? \n"
. " AND ic.ic_type = 'c_weather'";
$city_weather_query = $this->HT->query($city_weather_sql, array($weather_item->C_ID));
if ($city_weather_query->num_rows() > 0)
{
$city_weather_row = $city_weather_query->row();
$month_name = $this->get_month_name($weather_item->W_Month);
$ic_url = str_replace('/weather.htm', '/weather/', $city_weather_row->ic_url) . mb_strtolower($month_name) . '.htm';
$ic_url_title = $city_weather_row->ic_title . ' in ' . $month_name;
$ic_title = $ic_url_title;
$ic_content = $weather_item->W_Des . $this->get_temperature_table($weather_item->city_name, $weather_item->W_Month);
$ic_ht_area_id = $weather_item->C_ID;
$insert_content_sql = "INSERT INTO infoContents \n"
. " ( \n"
. " ic_url, ic_url_title, ic_title, ic_content, ic_status, ic_sitecode, \n"
. " ic_datetime, ic_ht_area_id, ic_ht_area_type \n"
. " ) \n"
. "VALUES \n"
. " ( \n"
. " ?, ?, ?, ?, 1, 'cht', \n"
. " getdate(), ?, 'c' \n"
. " )";
$this->HT->query($insert_content_sql, array($ic_url, $ic_url_title, $ic_title, $ic_content, $ic_ht_area_id));
$is_ic_id = $this->HT->insert_id();
$is_parent_id = $city_weather_row->is_id;
$is_path = $city_weather_row->is_path; //先插入父级路径稍后再插入本记录的id到路径中
$is_level = $city_weather_row->is_level + 1;
$insert_structure_sql = "INSERT INTO infoStructures \n"
. " ( \n"
. " is_parent_id, is_path, is_level, is_sort, is_sitecode, is_datetime, is_ic_id \n"
. " ) \n"
. "VALUES \n"
. " ( \n"
. " ?,?, ?, -1, 'cht', getdate(),? \n"
. " )";
$this->HT->query($insert_structure_sql, array($is_parent_id, $is_path, $is_level, $is_ic_id));
$is_id = $this->HT->insert_id();
$update_structure_sql = "UPDATE infoStructures \n"
. "SET is_path = ? \n"
. "WHERE is_id = ?";
$this->HT->query($update_structure_sql, array($is_path . $is_id . ',', $is_id));
}
}
}
//导入景点评论数
function import_review()
{
$attraction_sql = "SELECT ic.ic_id, \n"
. " ic.ic_ht_product_id \n"
. "FROM infoContents ic \n"
. "WHERE ic.ic_ht_product_type = 't'";
$attraction_query = $this->HT->query($attraction_sql);
foreach ($attraction_query->result() as $attraction_item)
{
$review_sql = "SELECT ISNULL(COUNT(*), 0) AS review_count \n"
. "FROM Eva_ServiceItemInfo \n"
. "WHERE ESI_ServiceType = '7' \n"
. " AND ESI_ServiceSN = ? ";
$review_query = $this->HT->query($review_sql, array($attraction_item->ic_ht_product_id));
add_meta($attraction_item->ic_id, 'meta_review_count', $review_query->row()->review_count);
$set_atrtaction_sql = "UPDATE infoStructures \n"
. "SET is_sort = ? \n"
. "WHERE is_ic_id = ?";
$this->HT->query($set_atrtaction_sql, array(-$review_query->row()->review_count, $attraction_item->ic_id));
}
}
//重新生成所有节点
function reset_all_path()
{
$sql = "SELECT is1.is_id \n"
. "FROM infoStructures is1 \n"
. "WHERE is1.is_parent_id = 0";
$query = $this->HT->query($sql);
foreach ($query->result() as $item)
{
$this->set_path($item->is_id, '');
}
}
//设置节点和子节点path
function set_path($is_id, $parent_path)
{
$path = $parent_path . $is_id . ',';
//设置自身节点path
$set_structure_sql = "UPDATE infoStructures \n"
. "SET is_path = ? \n"
. "WHERE is_id = ?";
$this->HT->query($set_structure_sql, array($path, $is_id));
//查询所有子节点
$sub_structure_sql = "SELECT is1.is_id \n"
. "FROM infoStructures is1 \n"
. "WHERE is1.is_parent_id = ? ";
$sub_structure_query = $this->HT->query($sub_structure_sql, array($is_id));
foreach ($sub_structure_query->result() as $structure_item)
{
$this->set_path($structure_item->is_id, $path);
}
}
//根据月份数字获取月份名称
function get_month_name($month_number)
{
switch ($month_number)
{
case 1:$month_name = 'January';
break;
case 2:$month_name = 'February';
break;
case 3:$month_name = 'March';
break;
case 4:$month_name = 'April';
break;
case 5:$month_name = 'May';
break;
case 6:$month_name = 'June';
break;
case 7:$month_name = 'July';
break;
case 8:$month_name = 'August';
break;
case 9:$month_name = 'September';
break;
case 10:$month_name = 'October';
break;
case 11:$month_name = 'November';
break;
case 12:$month_name = 'December';
break;
default:
$month_name = '';
break;
}
return $month_name;
}
//转换f符号
function format_f($fff)
{
return str_replace('f', '', $fff);
}
//转换c符号
function format_c($fff)
{
$fff_num = $this->format_f($fff);
if (is_numeric($fff_num))
{
return round(($fff_num - 32) * 5 / 9, 2);
}
return 'n/a';
}
//获取天气温度表格
function get_temperature_table($city_name, $month_number)
{
$temperature_table = '';
//往内容中添加气温数据表格,需要构造字符串并插入
$temperature_sql = "SELECT ywi.YWI_Month, \n"
. " ywi.YWI_Day, \n"
. " ywi.YWI_Avg_High, \n"
. " ywi.YWI_Avg_Low \n"
. "FROM YearWeatherInfo ywi \n"
. "WHERE ywi.YWI_CityName = ? \n"
. " AND ywi.YWI_Month = ? \n"
. "ORDER BY \n"
. " CONVERT(INT, ywi.YWI_Day) ASC ";
$temperature_query = $this->HT->query($temperature_sql, array($city_name, $month_number));
if ($temperature_query->num_rows() > 0)
{
$temperature_table = '<div class="clear"></div>';
$temperature_table .= "<h2>$city_name Average Daily Temperatures Based on Historical Data</h2>";
$temperature_table.=' <table width="100%" cellpadding="0" cellspacing="0" class="tableStyle1">'
. ' <tr>'
. ' <th width="125" scope="col">Date</th>'
. ' <th width="121" scope="col" colspan="2"><strong>Average High </strong></th>'
. '<th width="130" scope="col" colspan="2"><strong>Average Low </strong></th>'
. '</tr>';
foreach ($temperature_query->result() as $temperature_item)
{
$month_name = $this->get_month_name($temperature_item->YWI_Month);
$temperature_high_f = $this->format_f($temperature_item->YWI_Avg_High);
$temperature_high_c = $this->format_c($temperature_item->YWI_Avg_High);
$temperature_low_f = $this->format_f($temperature_item->YWI_Avg_Low);
$temperature_low_c = $this->format_c($temperature_item->YWI_Avg_Low);
$temperature_table.= " <tr>"
. "<td class='style1'>$month_name &nbsp; $temperature_item->YWI_Day </td>"
. "<td> $temperature_high_f &#176;F </td>"
. "<td> $temperature_high_c &#176;C</td>"
. "<td> $temperature_low_f &#176;F </td>"
. "<td> $temperature_low_c &#176;C</td>"
. "</tr>";
}
$temperature_table.='</table>';
}
return $temperature_table;
}
//打印数据看下效果
function import_test()
{
print_r($this->HT->queries);
}
//导入专题数据,
//$join_is_id 目标ID
//$other_is_id 源ID
function import_from_other_database($join_is_id,$other_is_id)
{
$sql="SELECT * FROM infoStructures_other is1 INNER JOIN infoContents_other ic ON ic.ic_id=is1.is_ic_id WHERE is1.is_parent_id=". $this->HT->escape($other_is_id);
$query = $this->HT->query($sql);
foreach ($query->result() as $item)
{
//新建内容
$this->InfoContents_model->add($item->ic_url, $item->ic_url_title, $item->ic_type, $item->ic_title, $item->ic_content, $item->ic_summary, $item->ic_seo_title, $item->ic_seo_description, $item->ic_seo_keywords,
$item->ic_show_bread_crumbs, $item->ic_status, $item->ic_template, $item->ic_photo, $item->ic_photo_width, $item->ic_photo_height, $item->ic_recommend_tours, $item->ic_recommend_packages,
$item->ic_ht_area_id, $item->ic_ht_area_type, $item->ic_ht_product_id, $item->ic_ht_product_type,$item->ic_author);
//新建树结构
$this->InfoStructures_model->add($join_is_id, $this->InfoContents_model->insert_id);
//递归插入
$this->import_from_other_database($this->InfoStructures_model->insert_id,$item->is_id);
}
}
//把overview的内容复制到城市首页,仅mct用到
public function update_root(){
$sql = "SELECT is1.is_parent_id,
ic.ic_content
FROM infoStructures is1
INNER JOIN infoContents ic ON ic.ic_id = is1.is_ic_id
WHERE ic.ic_sitecode=? AND ic_type='c_overview' ";
$query = $this->HT->query($sql,array('mct'));
foreach ($query->result() as $key => $v) {
$sql2="UPDATE infoContents SET ic_content = ? WHERE ic_id = (SELECT is_ic_id from infoStructures WHERE is_id=?) AND ic_sitecode='mct' ";
$query2 = $this->HT->query($sql2,array($v->ic_content,$v->is_parent_id));
}
echo 'update_root';
}
}