_package("bjmap.main");

bjmap.main.params=function(){
	
	var userUrl=DCI.getUserLocation();
	var baseUrl=userUrl+"/main.html?"
	
	var isNull=function(value){
		return !value&&value!=0;
	}
	
	//提取请求参数 
	var params=DCI.getQueryObject();
	
	//获取请求模块
	var request=params.request;
	//地图搜索调用
	if(request=="search"){
		var stype=params.stype;
		if(stype=="poi"){
			var point=new DCI.Pojo.POI();
			point.x=params.x;
			point.y=params.y;
			point.name=params.name;
			point.address=params.address;
			point.tel=params.tel;
			poi.search('','',point);
		}else{
			if(isNull(params.keyword)){return;}
			poi.search(params.keyword);
		}
	//周边搜索
	}else if(request=="near"){
		if(params.x&&params.y){
			var point=new DCI.Pojo.POI(params.x,params.y);
			point.x=params.x;
			point.y=params.y;
			point.name=params.name||"中心点";
			poi.nearByPoint(point,params.keyword,params.range);
		}else if(params.name){
			poi.near(params.name,params.keyword,params.range);
		}else {
			//http://www.beijingmap.gov.cn/main.html?request=near&x=116.3905790&y=39.9931250&keyword=银行&range=1000;
			return; 
		}
	//公交搜索
	}else if(request=="bus"){
		var bustype=params.type;
		if(isNull(bustype)){return;}
		//公交换乘
		if(bustype=="transfer"){
			if(params.startName&&params.endName){
				nav.poi(2,params.startName,params.endName);	
			}else{
				var point=new DCI.Pojo.POI();
				point.x=params.x;
				point.y=params.y;
				point.name=params.name;
				
				if(params.startName){
					nav.poi(2,params.startName,point);
				}else if(params.endName){
					nav.poi(2,point,params.endName);
				}else if(params.startName==""){
					nav.poi(2,"",point);
				}else if(params.endName==""){
					nav.poi(2,point,"");
				}else{
					var point1=new DCI.Pojo.POI();
					point1.x=params.x1;
					point1.y=params.y1;
					point1.name=params.name1;
					
					var point2=new DCI.Pojo.POI();
					point2.x=params.x2;
					point2.y=params.y2;
					point2.name=params.name2;
					
					nav.poi(2,point1,point2);
				}
			}				
		//线路名称		
		}else if(bustype=="line"){
			if(isNull(params.lineName)){return;}
			bus.line(params.lineName);
		//站点查询
		}else if(bustype=="station"){
			if(isNull(params.stationName)){return;}
			bus.station(params.stationName);		
		}else{
			return;
		}	
	//导航查询
	}else if(request=="navigation"){
		
			if(params.startName&&params.endName){
				nav.poi(1,params.startName,params.endName);	
			}else{				
				var point=new DCI.Pojo.POI();
				point.x=params.x;
				point.y=params.y;
				point.name=params.name;
				
				if(params.startName){
					nav.poi(1,params.startName,point);
				}else if(params.endName){
					nav.poi(1,point,params.endName);
				}else if(params.startName==""){
					nav.poi(1,"",point);
				}else if(params.endName==""){
					nav.poi(1,point,"");
				}else{
					var point1=new DCI.Pojo.POI();
					point1.x=params.x1;
					point1.y=params.y1;
					point1.name=params.name1;
					
					var point2=new DCI.Pojo.POI();
					point2.x=params.x2;
					point2.y=params.y2;
					point2.name=params.name2;
					
					nav.poi(1,point1,point2);
				}
			}
	}else if(request=="module"){
		var name=params.name;
		switch(name){
			case 'bus':
				module.changeModule('bus');
				break;
			case 'nav':
				module.changeModule('navigation');
				break;
			case 'keyword':
				module.changeModule('search');
				break;
			case 'near':
				module.changeModule('near');
				break;			
		}
	}
	
	/**
	 * @type 关键字查询
	 * @param {string} keyword 关键字查询
	 */
	this.keyword=function(keyword){
		var parmas={
			request:"search",
			keyword:keyword
		};	
		return send(parmas);			
	}
	
	/**
	 * @type 周边搜索
	 * @param {string} cenName 中心点名称
	 * 		  {string} keyword 关键字名称
	 *        {number} range 范围
	 */
	this.near=function(cenName,keyword,range){
		range=range||1000;
		var params={
			request:"near",
			name:cenName,
			keyword:keyword,
			range:range
		};	
		return send(params);				
	}
	
	
	/**
	 * @tyep 线路查询
	 * @param {string} lineName 线路名称
	 */
	this.line=function(lineName){
		var params={
			request:"bus",
			type:"line",
			lineName:lineName
		};	
		return send(params);
	}
	
	
	/**
	 * @type 站点查询
	 * @param {string} stationName 站点名称
	 */
	this.station=function(stationName){	
		var params={
			request:"bus",
			type:"station",
			stationName:stationName
		};	
		return send(params);	
	}
	
	
	/**
	 * @type 换乘
	 * @param {string} startName 起点名称
	 * 		  {string} endName 终点名称 
	 */
	this.transfer=function(startName,endName){
		var params={
			request:"bus",
			type:"transfer",
			startName:startName,
			endName:endName
		};
		return send(params);
	}
	
	
	
	/**
	 * @type 导航
	 * @param {string} startName 导航起点
	 *        {string} endName 导航终点
	 */
	this.navigation=function(startName,endName){
		var params={
			request:"navigation",
			startName:startName,
			endName:endName
		};
		return send(params);
	}
	
	
	/**
	 * @type 发送参数
	 * @param {object} params 常量对象
	 */
	function send(params){
		var str_params=DCI.encode(params);
		return baseUrl+str_params;
	}	
};
