map-function.js 7.23 KB
var PublicFunctions = function () {
	var PubFun = {
			/** 初始化线路标题与ID */
			setTiteText : function(lineId) {
				// 根据线路ID获取线路名称
				MapGetAjaxData.getIdLineName(lineId,function(data) {
					// 定义线路名称
					var lineNameV = data.name;
					$('.portlet-title .caption').text(lineNameV);
				});
			},
			setSectionFormValue : function(Section) {
				$('#isRoadeSpeedInput').val(Section.isRoadeSpeed);
				// 路段ID
				$('#sectionIdInput').val(Section.sectionId);
				// 路段路由ID
				$('#sectionRouteIdInput').val(Section.sectionrouteId);
				// 线路ID
				$('#sectionRouteLineInput').val(Section.sectionrouteLine);
				// 线路编码
				$('#lineCodeInput').val(Section.sectionrouteLineCode);
				// 折线坐标集合
				$('#bsectionVectorInput').val(Section.sectionBsectionVector);
				// 路段名称
				$('#sectionNameInput').val(Section.sectionName);
				// 路段编码
				$('#sectionCodeInput').val(Section.sectionCode);
				// 路段序号
				$('#sectionrouteCodeSelect').val(Section.sectionrouteCode);
				// 路段方向
				$('#directionsSection').val(Section.sectionrouteDirections);
				// 道路编码
				$('#roadCodingCodInput').val(Section.sectionRoadCoding);
				// 道路限速
				$('#speedLimitInput').val(Section.sectionSpeedLimet);
				// 路段长度
				$('#sectionDistanceInput').val(Section.sectionDistance);
				// 时长
				$('#sectionTimeInput').val(Section.sectionTime);
				// 版本号
				$('#versionsInput').val(Section.versions);
				// 是否撤销
				$('#destroySelect').val(0);
				// 描述/说明
				$('#descriptionsTextarea').val(Section.descriptions);
			},
			setFormValue : function(editStationParmas) {
				// 站点ID
				$('#stationIdInput').val(editStationParmas.stationId);
				// 站点路由ID
				$('#stationRouteIdInput').val(editStationParmas.stationRouteId);
				// 站点路由线路Id
				$('#stationRouteLineInput').val(editStationParmas.stationRouteLine);
				// 线路编码
				$('#lineCodeInput').val(editStationParmas.stationRouteLineCode);
				// 百度坐标点图形集合 
				$('#bPolygonGridInput').val(editStationParmas.stationBPolygonGrid);
				// 获取站点名称元素设值
				$('#zdmcInput').val(editStationParmas.stationStationName);
				// 获取站点路由名称元素设值
				$('#stationNameInput').val(editStationParmas.stationRouteStationName);
				// 获取站点编码元素设值
				$('#stationCodInput').val(editStationParmas.stationStationCod);
				// 行业编码
				$('#industryCodeInput').val(editStationParmas.industryCode);
				// 获取站点类型元素设值
				// $('#stationMarkSelect').val(editStationParmas.stationRouteStationMark);
				// 获取站点方向元素设值
				$('#stationdirSelect').val(editStationParmas.stationRouteDirections);
				// 获取站点道路编码元素设值
				$('#roadCodingCodInput').val(editStationParmas.stationRoadCoding);
				// 百度地图经纬度坐标中心点
				$('#bJwpointsInput').val(editStationParmas.stationBJwpoints);
				if(editStationParmas.stationShapesType=='r') {
					// 获取图形类型元素,并添加值
					$('#shapesTypeSelect').val('圆形');
				}else if(editStationParmas.stationShapesType=='d'){
					$('#radiusGroup').hide();
					$('#shapesTypeSelect').val('多边形');
				}
				// 获取半径元素,并添加值
				$('#radiusInput').val(editStationParmas.stationRadius);
				// 是否撤销
				$('#destroySelect').val(editStationParmas.stationDestroy);
				// 到站时间
				$('#toTimeInput').val(editStationParmas.stationRouteToTime);
				// 到站距离
				$('#distancesInput').val(editStationParmas.stationRouteDistances);
				// 线路版本号
				$('#versionsInput').val(editStationParmas.stationRouteVersions);
				// 描述/说明
				$('#descriptionsTextarea').val(editStationParmas.stationRouteDescriptions);
			},
			/** 在地图上画出线路走向  @param:<Line.id:线路Id;0:上行;data:路段数据> */
			linePanlThree : function(lineId,data,direction) {
				/** 获取站点路由信息 @param:<Line.id:线路Id;0:上行> @return:<resultdata:站点路由数据> */
				$get('/stationroute/getStationRouteCacheCenterPoints',{lineId:lineId,direction:direction},function(resultdata) {
					WorldsBMapLine.clearMarkAndOverlays();
					var polyline_center;
					// 如果站点路由数据不为空
					if(resultdata.length>0) {
						var ceter_index = Math.floor(resultdata.length / 2);
				  		var ceterPointsStr = resultdata[ceter_index].bJwpoints;
				  		var ceterPointsArray = ceterPointsStr.split(' ');
		  				polyline_center = new BMap.Point(ceterPointsArray[0],ceterPointsArray[1]);
						// 遍历站点路由数据
			  			for(var s = 0 ; s<resultdata.length;s++) {
			  				// 中心点坐标字符串
			  				var bJwpointsStr = resultdata[s].bJwpoints;
			  				var stationName = resultdata[s].stationName;
			  				// 起个中心点坐标字符串
			  				var bJwpointsArray = bJwpointsStr.split(' ');
			  				// 设置中心点
			  				var point_center = new BMap.Point(bJwpointsArray[0],bJwpointsArray[1]);
			  				/** 在地图上画点 @param:<point_center:中心坐标点> */
			  				WorldsBMapLine.drawingUpStationPoint(point_center,stationName,s+1);
			  			}
			  		}
					// 路段数据长度
					var dataLen = data.length;
					// 如果大于零
					if(dataLen>0) {
						// 编辑路段数据
						for(var d= 0; d<dataLen;d++){
							// 地图折线坐标点集合
							var polylineArray = [];
							// 获取路段折线坐标字符串
							var sectionBsectionVectorStr = data[d].sectionBsectionVector;
							if(sectionBsectionVectorStr==null) 
								continue;
							// 切割段折线坐标字符串
							var tempStr = sectionBsectionVectorStr.substring(11,sectionBsectionVectorStr.length-1);
							// 分割折线坐标字符串
							var lineArray = tempStr.split(',');
							for(var i = 0;i<lineArray.length;i++) {
								polylineArray.push(new BMap.Point(lineArray[i].split(' ')[0],lineArray[i].split(' ')[1]));
							}
							/** 在地图上画出线路走向 @param:<polylineArray:地图折线坐标点集合;resultdata:站点路由数据> */
							WorldsBMapLine.drawingUpline01(polylineArray,polyline_center,data[d]);
						}
					}
					/** 画出所有切面切点(切路段的点) */
					WorldsBMapLine.batchPaintingPoint();
				});	
			},
			// 方向代码转名称.
			dirdmToName : function(value){
				var srStr = '';
				if(value=='0')
					srStr = '上行';
				else if(value=='1')
					srStr = '下行';
				return srStr;
			},
			// 图形编辑完成
			editAChangeCssRemoveDisabled : function() {
				$('#section').removeClass('btn disabled');
				$('#station').removeClass('btn disabled');
				$('.btn-circle').removeClass('disabled');
				$('.radio').removeClass('disabled');
				$('.radioclass').removeClass('disabled');
			},
			// 图形编辑中
			addAChangeCssAddDisabled : function() {
				$('#section').addClass('btn disabled');
				$('#station').addClass('btn disabled');
				$('.btn-circle').addClass('disabled');
				$('.radio').addClass('disabled');
				$('.radioclass').addClass('disabled');
			},
	}
	return PubFun ;
}();