gis.map.boat.js 41 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217
  1. gis.script.firstrefresh=true;
  2. gis.script.cbstatusverify=!true;
  3. gis.script.pitchonMarkers='gzkMarkersLayer';
  4. gis.script.djszboat;
  5. gis.script.cbpointInfo=[];
  6. //gis.script.cbHsDataInfo=[];
  7. gis.script.cbdataInfostatistics={};
  8. gis.script.cbtemp={};
  9. gis.script.boatonLayer={};
  10. gis.script.boatrefreshInfo={};
  11. gis.script.initrefreshcount=3;
  12. /*
  13. * 初始化船舶绘画图层(boatdanger0绿色船舶图层/boatdanger1红色船舶图层)
  14. */
  15. gis.script.initboatonLayer=function(){
  16. gis.script.boatonLayer.boatdanger0 = new SuperMap.Layer.Vector("boatdanger0Layer");
  17. gis.script.boatonLayer.boatdanger0.styleMap = new SuperMap.StyleMap({
  18. "default":new SuperMap.Style({
  19. fillColor:"#00FF00",
  20. strokeColor:"#00FF00",
  21. fillOpacity: 0.6,
  22. strokeColor:"#303030",
  23. strokeDashstyle:"solid",
  24. strokeOpacity:0.7,
  25. strokeWidth:1,
  26. graphicZIndex:1
  27. }),
  28. "select":{
  29. /*
  30. strokeColor: "#304DBE",
  31. strokeWidth: 2,
  32. pointerEvents: "visiblePainted",
  33. fillColor: "#304DBE",
  34. fillOpacity: 0.5,
  35. graphicZIndex:2
  36. */
  37. strokeColor: "#ffff00",
  38. strokeWidth: 2,
  39. strokeDashstyle:"solid",
  40. //strokeOpacity:0.8,
  41. fillColor: "#a4a5a7",
  42. fillOpacity: 0.5,
  43. graphicZIndex:2
  44. }
  45. });
  46. gis.script.boatonLayer.boatdanger1 = new SuperMap.Layer.Vector("boatdanger1Layer");
  47. gis.script.boatonLayer.boatdanger1.styleMap = new SuperMap.StyleMap({
  48. "default":new SuperMap.Style({
  49. fillColor:"#FF0000",
  50. strokeColor:"#FF0000",
  51. fillOpacity: 0.6,
  52. strokeColor:"#303030",
  53. strokeDashstyle:"solid",
  54. strokeOpacity:0.7,
  55. strokeWidth:1,
  56. graphicZIndex:1
  57. }),
  58. "select":{
  59. strokeColor: "#ffff00",
  60. strokeWidth: 2,
  61. strokeDashstyle:"solid",
  62. //strokeOpacity:0.8,
  63. fillColor: "#a4a5a7",
  64. fillOpacity: 0.5,
  65. graphicZIndex:2
  66. }
  67. });
  68. }
  69. /*
  70. * 读取船舶动态数据,包括临时表的船舶空间数据(findData)以及海事的船舶数据(findHsData),此数据是系统预加载数据,会定时更新。
  71. */
  72. gis.script.loadcbdataService=function(phase){
  73. if(layerUserControl&&typeof(layerUserControl)!='undefined'){
  74. if(typeof(layerUserControl.boatonLayers)!='undefined'){
  75. //alert(layerUserControl.boatonLayers);
  76. gis.script.exeInterval=(layerUserControl.boatonLayers==true);
  77. //alert(gis.script.exeInterval);
  78. if(layerUserControl.boatonLayers==false){
  79. return;
  80. }
  81. }
  82. }
  83. gis.script.jsonAjax({url:contextPath+"/zygl/cbmapinfo.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({})},
  84. function(data){
  85. //gis.script.treecbinfoshowinit({phase:phase});return;
  86. if(data&&data.findData&&data.findData.length){
  87. if(data&&data.findHsData&&data.findHsData.length){
  88. gis.script.showDrawAllboat(data.findHsData);
  89. }
  90. if(phase==gis.script.phase.init||phase==gis.script.phase.refresh){
  91. gis.script.disposeCbpointInfo(phase,data.findData);
  92. }
  93. }else if(phase==gis.script.phase.init){
  94. gis.script.initrefreshcount=gis.script.initrefreshcount-1;
  95. if(gis.script.initrefreshcount>0){
  96. window.setTimeout(function(){
  97. gis.script.loadcbdataService(phase);
  98. },2000);
  99. }else{
  100. gis.script.treecbinfoshowinit({phase:gis.script.phase.init});
  101. }
  102. }
  103. /*
  104. if(data&&data.findData&&data.findData.length
  105. &&data.findHsData&&data.findHsData.length){
  106. if(phase==gis.script.phase.init){
  107. gis.script.showDrawAllboat(data.findHsData);
  108. gis.script.disposeCbpointInfo(phase,data.findData);
  109. }
  110. if(phase==gis.script.phase.refresh){
  111. //gis.script.showDrawAllboat(data.findHsData);
  112. gis.script.disposeCbpointInfo(phase,data.findData);
  113. }
  114. if(phase==gis.script.phase.cbrefresh){
  115. gis.script.showDrawAllboat(data.findHsData);
  116. }
  117. //console.log("1.>gis.script.boatrefreshInfo>",gis.script.boatrefreshInfo[413764588]);
  118. }else if(phase==gis.script.phase.init){
  119. gis.script.initrefreshcount=gis.script.initrefreshcount-1;
  120. if(gis.script.initrefreshcount>0){
  121. window.setTimeout(function(){
  122. gis.script.loadcbdataService(phase);
  123. },2000);
  124. }
  125. }
  126. */
  127. });
  128. }
  129. /*
  130. * 处理临时表的船舶空间数据
  131. */
  132. gis.script.disposeCbpointInfo=function(phase,data){
  133. gis.script.cbdataInfostatistics={};
  134. //console.log('>1>data:',data);
  135. if(data&&data.length){
  136. for(var i=0;i<data.length;i++){
  137. var obj=data[i];
  138. if(obj){
  139. if(gis.script.isNotBlank(obj.szgk)){
  140. var cbp={arrt:obj};
  141. if(gis.script.isNum(obj.szgq)){
  142. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK","V"+obj.szgk,cbp);
  143. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ","V"+obj.szgq,cbp);
  144. if(cbp.arrt.status&&cbp.arrt.status==5){
  145. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK_STATUS","V"+obj.szgk,cbp);
  146. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ_STATUS","V"+obj.szgq,cbp);
  147. if(cbp.arrt.danger&&cbp.arrt.danger==1){
  148. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK_DANGER","V"+obj.szgk,cbp);
  149. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ_DANGER","V"+obj.szgq,cbp);
  150. }
  151. }
  152. if(gis.script.isNum(obj.szbw)){
  153. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_BW","V"+obj.szbw,cbp);
  154. if(cbp.arrt.status&&cbp.arrt.status==5){
  155. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_BW_STATUS","V"+obj.szbw,cbp);
  156. if(cbp.arrt.danger&&cbp.arrt.danger==1){
  157. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_BW_DANGER","V"+obj.szbw,cbp);
  158. }
  159. }
  160. }
  161. if(gis.script.isNum(obj.ssjyr)){
  162. cbp.arrt.cbshowinjyr=true;
  163. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR","V"+obj.ssjyr,cbp);
  164. if(cbp.arrt.status&&cbp.arrt.status==5){
  165. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_STATUS","V"+obj.ssjyr,cbp);
  166. if(cbp.arrt.danger&&cbp.arrt.danger==1){
  167. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_DANGER","V"+obj.ssjyr,cbp);
  168. }
  169. }
  170. }
  171. }
  172. }
  173. }
  174. }
  175. //console.log('>1>gis.script.cbdataInfostatistics:',gis.script.cbdataInfostatistics);
  176. //gis.script.treecbinfoshowinit({phase:phase});
  177. }
  178. gis.script.treecbinfoshowinit({phase:phase});
  179. }
  180. gis.script.loadcbdataService_client=function(phase){
  181. //var phase=gis.script.phase.init;
  182. gis.script.jsonAjax({url:contextPath+"/zygl/cbmapinfo.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({})},
  183. function(data){
  184. //alert(JSON.stringify(data));
  185. if(data){
  186. //console.log("data",data);
  187. if(data.findHsData&&data.findHsData.length){
  188. gis.script.loadConfigXmlGQService_client("gqsjServices",phase,data.findHsData);
  189. }
  190. }
  191. });
  192. }
  193. gis.script.loadConfigXmlGQService_client = function(servicename,phase,objdata){
  194. var dataServices=gisConfigBean.dataconfig;
  195. if(dataServices){
  196. //console.log('dataServices',dataServices);
  197. var originaldata = gisConfigBean.dataconfig[servicename];
  198. var data=jQuery.extend(true, {}, originaldata);
  199. if(data.Model&&data.Model[gis.script.modelid]){
  200. var model=data.Model[gis.script.modelid];
  201. data.datasetNames=data.datasetNames.split(",");
  202. data.fields=data.fields.split(",");
  203. data.cachedata=model.cachedata||data.cachedata;
  204. data.zoom=model.zoom||data.zoom;
  205. data.treelocationHighlight=model.treelocationHighlight||"false";
  206. data.url=data.url||defdataUrl;
  207. data.phase=phase;
  208. //alert(data.attributeFilter);
  209. gis.script.loadServicexmlGQlocation_client(data,objdata);
  210. }
  211. }
  212. }
  213. gis.script.loadServicexmlGQlocation_client = function(o,datao){
  214. var featureParam = new SuperMap.REST.FilterParameter({
  215. //name: o.name,
  216. fields:o.fields,
  217. attributeFilter:o.attributeFilter
  218. });
  219. var featuresBySQLParams=new SuperMap.REST.GetFeaturesBySQLParameters({
  220. //toIndex:65536,
  221. toIndex:-1,
  222. queryParameter:featureParam,
  223. datasetNames:o.datasetNames
  224. });
  225. var featuresBySQLService = new SuperMap.REST.GetFeaturesBySQLService(o.url, {
  226. eventListeners: {
  227. "processCompleted":function(e){
  228. gis.script.cbdataInfostatistics={};
  229. var result=e.result;
  230. var features=result.features;
  231. var multiPolygon;
  232. if(features&&features.length){
  233. //console.log('features',features);
  234. var multiPolygonArray=[];
  235. for(var ik=0;ik<features.length;ik++){
  236. var feature=features[ik];
  237. //console.log('feature', feature);
  238. if(feature.geometry.components&&feature.geometry.components.length){
  239. for(var i=0;i<feature.geometry.components.length;i++){
  240. multiPolygonArray.push(feature.geometry.components[i]);
  241. }
  242. }
  243. }
  244. /*
  245. if(multiPolygonArray&&multiPolygonArray.length){
  246. multiPolygon = new SuperMap.Geometry.MultiPolygon(multiPolygonArray);
  247. var pobjArray=[];
  248. for(var jk=0;datao.length&&jk<datao.length;jk++){
  249. var pobj=datao[jk];
  250. var point = new SuperMap.Geometry.Point(pobj.lon,pobj.lat);
  251. if(multiPolygon.intersects(point)){
  252. console.log('datao.'+jk,pobj);
  253. pobjArray.push(pobj);
  254. }
  255. }
  256. alert(pobjArray.length);
  257. }
  258. */
  259. /*
  260. var operateArray=[];
  261. for(var jk=0;datao.length&&jk<datao.length;jk++){
  262. operateArray.push(gis.script.drawFillMarkerToMultiPolygon(null,datao[jk]));
  263. }
  264. console.log('operateArray',operateArray);
  265. //var overlayServiceByDatasets = new SuperMap.REST.OverlayAnalystService("http://localhost:8090/iserver/services/spatialanalyst-sample/restjsr/spatialanalyst");
  266. var overlayServiceByDatasets = new SuperMap.REST.OverlayAnalystService("http://10.1.30.116:8090/iserver/services/spatialanalyst-sample/restjsr/spatialanalyst");
  267. var dsOverlayAnalystParameters = new SuperMap.REST.GeometryOverlayAnalystParameters({
  268. operateGeometry: new SuperMap.Geometry.MultiPolygon(operateArray),
  269. sourceGeometry: new SuperMap.Geometry.MultiPolygon(multiPolygonArray),
  270. operation: SuperMap.REST.OverlayOperationType.INTERSECT
  271. });
  272. console.log('dsOverlayAnalystParameters',dsOverlayAnalystParameters);
  273. overlayServiceByDatasets.events.on({"processCompleted": function(e){
  274. console.log('e',e);
  275. },
  276. "processFailed": gis.script.sqlProcessFailed});
  277. overlayServiceByDatasets.processAsync(dsOverlayAnalystParameters);
  278. */
  279. }
  280. },
  281. "processFailed": gis.script.sqlProcessFailed
  282. }
  283. });
  284. featuresBySQLService.processAsync(featuresBySQLParams);
  285. }
  286. gis.script.loadcbdataService2=function(phase){
  287. gis.script.jsonAjax({url:contextPath+"/zygl/cbinfo.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({})},
  288. function(data){
  289. //alert(JSON.stringify(data));
  290. if(data&&data.length){
  291. delete gis.script.cbpointInfo;
  292. gis.script.cbpointInfo=[];
  293. //gis.script.loadboatLayer2(boatLayer,data);
  294. gis.script.loadboatLayer(data);
  295. gis.script.loadConfigXmlGQService("gqsjServices",phase,data);
  296. gis.script.showDrawAllboat();
  297. }
  298. });
  299. }
  300. gis.script.loadConfigXmlGQService = function(servicename,phase,objdata){
  301. //alert(treeNode.treeNodeType+"--"+objdata.id);
  302. var dataServices=gisConfigBean.dataconfig;
  303. if(dataServices){
  304. //gis.script.consolelog('dataServices',dataServices);
  305. var originaldata = gisConfigBean.dataconfig[servicename];
  306. var data=jQuery.extend(true, {}, originaldata);
  307. if(data.Model&&data.Model[gis.script.modelid]){
  308. var model=data.Model[gis.script.modelid];
  309. data.datasetNames=data.datasetNames.split(",");
  310. data.fields=data.fields.split(",");
  311. data.cachedata=model.cachedata||data.cachedata;
  312. data.zoom=model.zoom||data.zoom;
  313. data.treelocationHighlight=model.treelocationHighlight||"false";
  314. data.url=data.url||defdataUrl;
  315. data.phase=phase;
  316. //alert(data.attributeFilter);
  317. gis.script.loadServicexmlGQlocation(data,objdata);
  318. }
  319. }
  320. }
  321. //var firstrefresh=true;
  322. gis.script.loadServicexmlGQlocation = function(o,datao){
  323. var featureParam = new SuperMap.REST.FilterParameter({
  324. //name: o.name,
  325. fields:o.fields,
  326. attributeFilter:o.attributeFilter
  327. });
  328. var featuresBySQLParams=new SuperMap.REST.GetFeaturesBySQLParameters({
  329. //toIndex:65536,
  330. toIndex:-1,
  331. queryParameter:featureParam,
  332. datasetNames:o.datasetNames
  333. });
  334. var featuresBySQLService = new SuperMap.REST.GetFeaturesBySQLService(o.url, {
  335. eventListeners: {
  336. "processCompleted":function(e){
  337. gis.script.cbdataInfostatistics={};
  338. var result=e.result;
  339. var features=result.features;
  340. if(features&&features.length){
  341. //alert(features.length);
  342. //alert(gis.script.cbpointInfo.length);
  343. //var feature = features[0];
  344. var statusGQcode=[];
  345. var statusGQcb=[];
  346. for(var kk=0;kk<gis.script.cbpointInfo.length;kk++){
  347. var cbp=gis.script.cbpointInfo[kk];
  348. for(var ik=0;ik<features.length;ik++){
  349. var feature=features[ik];
  350. if(cbp&&feature){
  351. var keygk="GK_BASIC_JSJY_GK_GK";
  352. var keygq="GK_BASIC_JSJY_GK_GQ";
  353. if(feature.geometry.intersects(cbp)){
  354. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK","V"+feature.attributes.szgk,cbp);
  355. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ","V"+feature.attributes.gqdm,cbp);
  356. if(cbp.arrt){
  357. cbp.arrt.gzdgqfeature=true;
  358. if(cbp.arrt.status&&cbp.arrt.status==5){
  359. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK_STATUS","V"+feature.attributes.szgk,cbp);
  360. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ_STATUS","V"+feature.attributes.gqdm,cbp);
  361. //console.log('>@@>:',gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GQ_STATUS"]["V"+feature.attributes.gqdm]);
  362. if(gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GQ_STATUS"]
  363. &&gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GQ_STATUS"]["V"+feature.attributes.gqdm]
  364. &&gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GQ_STATUS"]["V"+feature.attributes.gqdm].length==1){
  365. statusGQcode.push(feature.attributes.gqdm);
  366. }
  367. statusGQcb.push(cbp);
  368. }
  369. if(cbp.arrt.danger&&cbp.arrt.danger==1){
  370. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK_DANGER","V"+feature.attributes.szgk,cbp);
  371. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ_DANGER","V"+feature.attributes.gqdm,cbp);
  372. }
  373. }
  374. break;
  375. }
  376. }
  377. }
  378. }
  379. //alert();
  380. if(gis.script.cbstatusverify){
  381. gis.script.cbstatusverifyService("bwsjServices",o,statusGQcode,statusGQcb);
  382. }else{
  383. gis.script.treecbinfoshowinit(o);
  384. }
  385. }
  386. //console.log('>1>gis.script.cbpointInfo:',gis.script.cbpointInfo);
  387. //console.log('>1>gis.script.cbdataInfostatistics:',gis.script.cbdataInfostatistics);
  388. //gis.script.loadConfigXmlBWService("bwsjServices",{id:"759DF99526FD4F7F934EF2DEC3C6CFF3",code:'32100104'});
  389. },
  390. "processFailed": gis.script.sqlProcessFailed
  391. }
  392. });
  393. featuresBySQLService.processAsync(featuresBySQLParams);
  394. }
  395. gis.script.treecbinfoshowinit= function(o){
  396. if(o.phase){
  397. if(o.phase==gis.script.phase.init){
  398. //gis.tree.initcbtree();
  399. //刷新
  400. //gis.script.setBoatInterval();
  401. var iframepage=document.getElementById("treecbdtdiviframe");
  402. if(iframepage&&iframepage.contentWindow){
  403. iframepage.contentWindow.gis.tree.initcbtree();
  404. }
  405. //刷新
  406. if(gis.script.firstrefresh){
  407. gis.script.firstrefresh=false;
  408. gis.script.setBoatInterval();
  409. }
  410. }else if(o.phase==gis.script.phase.refresh){
  411. gis.script.refreshTree();
  412. }
  413. }
  414. }
  415. gis.script.cbstatusverifyService= function(servicename,o,statusGQcode,statusGQcb){
  416. //var identifier=true;
  417. var dataServices=gisConfigBean.dataconfig;
  418. if(dataServices){
  419. //gis.script.consolelog('dataServices',dataServices);
  420. var originaldata = gisConfigBean.dataconfig[servicename];
  421. var data=jQuery.extend(true, {}, originaldata);
  422. if(data.Model&&data.Model[gis.script.modelid]){
  423. var model=data.Model[gis.script.modelid];
  424. data.datasetNames=data.datasetNames.split(",");
  425. data.fields=data.fields.split(",");
  426. data.cachedata=model.cachedata||data.cachedata;
  427. data.zoom=model.zoom||data.zoom;
  428. data.treelocationHighlight=model.treelocationHighlight||"false";
  429. data.url=data.url||defdataUrl;
  430. gis.script.jsonAjax({url:contextPath+"/zygl/findjyrbwids.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({ids:statusGQcode})},
  431. function(ajaxdata){
  432. //alert(ajaxdata.length);
  433. if(ajaxdata&&ajaxdata.length){
  434. var coid=[];
  435. var cbObj={};
  436. //alert(gis.script.isNotBlank());alert(gis.script.isNotBlank(0));alert(gis.script.isNotBlank(""));
  437. for(var i=0;i<ajaxdata.length;i++){
  438. var cbobj=ajaxdata[i];
  439. //alert(JSON.stringify(cbobj));
  440. if(gis.script.isNotBlank(cbobj.ICODE)){
  441. coid.push(cbobj.ICODE);
  442. cbObj['V'+cbobj.ICODE]=cbobj;
  443. }
  444. }
  445. data.attributeFilter="ID in ("+coid.join(",")+")";
  446. gis.script.cbstatusverifyServicexmlBWlocation(data,statusGQcb,o);
  447. }else{
  448. gis.script.treecbinfoshowinit(o);
  449. }
  450. });
  451. }
  452. }
  453. }
  454. gis.script.cbstatusverifyServicexmlBWlocation = function(o,statusGQcb,odate){
  455. var featureParam = new SuperMap.REST.FilterParameter({
  456. //name: o.name,
  457. fields:o.fields,
  458. attributeFilter:o.attributeFilter
  459. });
  460. var featuresBySQLParams=new SuperMap.REST.GetFeaturesBySQLParameters({
  461. //toIndex:65536,
  462. toIndex:-1,
  463. queryParameter:featureParam,
  464. datasetNames:o.datasetNames
  465. });
  466. var featuresBySQLService = new SuperMap.REST.GetFeaturesBySQLService(o.url, {
  467. eventListeners: {
  468. "processCompleted":function(e){
  469. delete gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GK_STATUS"];
  470. delete gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GQ_STATUS"];
  471. gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GK_STATUS"]={};
  472. gis.script.cbdataInfostatistics["GK_BASIC_JSJY_GK_GQ_STATUS"]={};
  473. var result=e.result;
  474. var features=result.features;
  475. //console.log('>1>features:',features);
  476. if(features&&features.length){
  477. for(var ik=0;ik<features.length;ik++){
  478. var feature=features[ik];
  479. for(var kk=0;kk<statusGQcb.length;kk++){
  480. var cbp=statusGQcb[kk];
  481. if(cbp&&feature){
  482. //alert(feature.geometry.intersects(cbp))
  483. if(feature.geometry.intersects(cbp)){
  484. statusGQcb[kk]=null;
  485. //console.log('>1>features:',1);
  486. if(cbp.arrt){
  487. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GK_STATUS","V"+feature.attributes.szgkbm,cbp);
  488. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_GK_GQ_STATUS","V"+feature.attributes.szgqbm,cbp);
  489. }
  490. }
  491. }
  492. }
  493. }
  494. //console.log('>33>gis.script.cbdataInfostatistics:',gis.script.cbdataInfostatistics);
  495. }
  496. gis.script.treecbinfoshowinit(odate);
  497. },
  498. "processFailed": gis.script.sqlProcessFailed
  499. }
  500. });
  501. featuresBySQLService.processAsync(featuresBySQLParams);
  502. }
  503. gis.script.loadConfigXmlBWService = function(servicename,treeNode){
  504. var treeObj = gis.script.getcbZTreeObj();
  505. if(!treeObj){
  506. return;
  507. }
  508. gis.script.treeiframeupdatecb(treeObj,treeNode.children,treeNode);
  509. //console.log('treeNode',treeNode);
  510. gis.script.treeiframeaddcbtotreeApi(treeObj,treeNode,'GK_BASIC_JSJY_GK_GQ','V'+treeNode.code);
  511. }
  512. gis.script.loadConfigXmlBWService2 = function(servicename,objdata){
  513. //alert(objdata.id);
  514. //gis.script.cbtemp
  515. //alert(objdata.id+"--"+objdata.code+"--"+objdata.name);
  516. if(objdata.code&&gis.script.cbdataInfostatistics['GK_BASIC_JSJY_GK_GQ']&&
  517. gis.script.cbdataInfostatistics['GK_BASIC_JSJY_GK_GQ']['V'+objdata.code]){
  518. if(gis.script.cbdataInfostatistics['GK_BASIC_JSJY_GK_GQ']['V'+objdata.code].length>0&&!gis.script.cbtemp['V'+objdata.code])
  519. gis.script.cbtemp['V'+objdata.code]=true;
  520. var dataServices=gisConfigBean.dataconfig;
  521. if(dataServices){
  522. //gis.script.consolelog('dataServices',dataServices);
  523. var originaldata = gisConfigBean.dataconfig[servicename];
  524. var data=jQuery.extend(true, {}, originaldata);
  525. if(data.Model&&data.Model[gis.script.modelid]){
  526. var model=data.Model[gis.script.modelid];
  527. data.datasetNames=data.datasetNames.split(",");
  528. data.fields=data.fields.split(",");
  529. data.cachedata=model.cachedata||data.cachedata;
  530. data.zoom=model.zoom||data.zoom;
  531. data.treelocationHighlight=model.treelocationHighlight||"false";
  532. data.url=data.url||defdataUrl;
  533. data.code=objdata.code;
  534. //gis.script.loadServicexmlBWlocation();
  535. //alert(objdata.id);
  536. gis.script.jsonAjax({url:contextPath+"/zygl/findjyrbw.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({id:objdata.id})},
  537. function(ajaxdata){
  538. //
  539. //return;
  540. //console.log('ajaxdata',ajaxdata);
  541. if(ajaxdata&&ajaxdata.length){
  542. var coid=[];
  543. var cbObj={};
  544. for(var i=0;i<ajaxdata.length;i++){
  545. var cbobj=ajaxdata[i];
  546. //alert(JSON.stringify(cbobj));
  547. if(gis.script.isNotBlank(cbobj.ICODE)){
  548. coid.push(cbobj.ICODE);
  549. cbObj['V'+cbobj.ICODE]=cbobj;
  550. }
  551. }
  552. //console.log('>2>cbObj:',cbObj);
  553. //console.log('>2>gis.script.cbdataInfostatistics:',gis.script.cbdataInfostatistics);
  554. data.attributeFilter="ID in ("+coid.join(",")+")";
  555. gis.script.loadServicexmlBWlocation(data,ajaxdata,cbObj,objdata);
  556. }else{
  557. //var treeObj = $.fn.zTree.getZTreeObj("tree");
  558. var treeObj = gis.script.getcbZTreeObj();
  559. gis.script.treeiframeaddcbtotreeApi(treeObj,objdata,'GK_BASIC_JSJY_GK_GQ','V'+data.code);
  560. }
  561. });
  562. }
  563. }
  564. }
  565. }
  566. gis.script.loadServicexmlBWlocation = function(o,datao,cbObj,treeNode){
  567. var treeObj = gis.script.getcbZTreeObj();
  568. if(!treeObj){
  569. return;
  570. }
  571. var featureParam = new SuperMap.REST.FilterParameter({
  572. //name: o.name,
  573. fields:o.fields,
  574. attributeFilter:o.attributeFilter
  575. });
  576. var featuresBySQLParams=new SuperMap.REST.GetFeaturesBySQLParameters({
  577. //toIndex:65536,
  578. toIndex:-1,
  579. queryParameter:featureParam,
  580. datasetNames:o.datasetNames
  581. });
  582. //var treeObj = $.fn.zTree.getZTreeObj("tree");
  583. var featuresBySQLService = new SuperMap.REST.GetFeaturesBySQLService(o.url, {
  584. eventListeners: {
  585. "processCompleted":function(e){
  586. var result=e.result;
  587. //console.log('..>>',result);
  588. var features=result.features;
  589. if(features&&features.length){
  590. var cbin=gis.script.cbdataInfostatistics['GK_BASIC_JSJY_GK_GQ']['V'+o.code];
  591. for(var kk=0;kk<cbin.length;kk++){
  592. var cbp=cbin[kk];
  593. for(var ik=0;ik<features.length;ik++){
  594. var feature=features[ik];
  595. if(cbp&&feature){
  596. //alert(feature.geometry.intersects(cbp))
  597. if(feature.geometry.intersects(cbp)){
  598. //alert(feature.attributes.mc+"--"+feature.attributes.id);
  599. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_BW","V"+feature.attributes.id,cbp);
  600. if(cbp.arrt){
  601. if(cbp.arrt.status&&cbp.arrt.status==5){
  602. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_BW_STATUS","V"+feature.attributes.id,cbp);
  603. }
  604. if(cbp.arrt.danger&&cbp.arrt.danger==1){
  605. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_BW_DANGER","V"+feature.attributes.id,cbp);
  606. }
  607. }
  608. if(cbObj){
  609. var jyrObj=cbObj["V"+feature.attributes.id];
  610. if(jyrObj){
  611. //alert(jyrObj);//jyrcode JYRCODE
  612. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR","V"+jyrObj.JYRCODE,cbp);
  613. if(cbp.arrt){
  614. cbp.arrt.cbshowinjyr=true;
  615. if(cbp.arrt.status&&cbp.arrt.status==5){
  616. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_STATUS","V"+jyrObj.JYRCODE,cbp);
  617. }
  618. if(cbp.arrt.danger&&cbp.arrt.danger==1){
  619. gis.script.initcbdataInfostatistics("GK_BASIC_JSJY_JYR_DANGER","V"+jyrObj.JYRCODE,cbp);
  620. }
  621. }
  622. }
  623. }
  624. //treeObj.addNodes(treeNode, {id:"xxxx"+feature.attributes.id, name:"new node",isParent:false,open:false,treeNodeType:"HS_AIS",pId:"",type:""});
  625. //gis.tree.addcbtotreeApi(treeObj,treeNode,'GK_BASIC_JSJY_GK_GQ','V'+o.code);
  626. break;
  627. }
  628. }
  629. }
  630. }
  631. //alert();
  632. //gis.tree.updatecb(treeObj,treeNode.children,treeNode);
  633. gis.script.treeiframeupdatecb(treeObj,treeNode.children,treeNode);
  634. //gis.tree.addcbtotreeApi(treeObj,treeNode,'GK_BASIC_JSJY_GK_GQ','V'+o.code);
  635. }
  636. //gis.tree.addcbtotreeApi(treeObj,treeNode,'GK_BASIC_JSJY_GK_GQ','V'+o.code);
  637. gis.script.treeiframeaddcbtotreeApi(treeObj,treeNode,'GK_BASIC_JSJY_GK_GQ','V'+o.code);
  638. //console.log('>3>gis.script.cbpointInfo:',gis.script.cbpointInfo);
  639. //console.log('>3>gis.script.cbdataInfostatistics:',gis.script.cbdataInfostatistics);
  640. },
  641. "processFailed": gis.script.sqlProcessFailed
  642. }
  643. });
  644. featuresBySQLService.processAsync(featuresBySQLParams);
  645. }
  646. //gis.tree.getZTreeObj
  647. gis.script.getcbZTreeObj= function(){
  648. var iframeObj=document.getElementById("treecbdtdiviframe")
  649. if(iframeObj&&iframeObj.contentWindow){
  650. return iframeObj.contentWindow.gis.tree.getZTreeObj();
  651. }
  652. }
  653. gis.script.treeiframeupdatecb= function(treeObj,children,treeNode){
  654. var iframeObj=document.getElementById("treecbdtdiviframe")
  655. if(iframeObj&&iframeObj.contentWindow){
  656. iframeObj.contentWindow.gis.tree.updatecb(treeObj,children,treeNode);
  657. }
  658. }
  659. gis.script.treeiframeaddcbtotreeApi= function(treeObj,treeNode,key,vkey){
  660. var iframeObj=document.getElementById("treecbdtdiviframe")
  661. if(iframeObj&&iframeObj.contentWindow){
  662. iframeObj.contentWindow.gis.tree.addcbtotreeApi(treeObj,treeNode,key,vkey);
  663. }
  664. }
  665. gis.script.initcbdataInfostatistics=function(key,id,cbp){
  666. var info=gis.script.cbdataInfostatistics[key];
  667. if(!info){
  668. gis.script.cbdataInfostatistics[key]={};
  669. info=gis.script.cbdataInfostatistics[key];
  670. }
  671. var subinfo=info[id];
  672. if(!subinfo){
  673. info[id]=[];
  674. subinfo=info[id];
  675. }
  676. subinfo.push(cbp);
  677. }
  678. gis.script.loadboatLayer=function(o){
  679. gis.script.cbpointInfo=[];
  680. for(var layername in gis.script.boatonLayer){
  681. if(gis.script.boatonLayer[layername]){
  682. gis.script.boatonLayer[layername].removeAllFeatures();
  683. }
  684. }
  685. if(o&&o.length){
  686. for(var i=0;i<o.length;i++){
  687. var obj=o[i];
  688. //console.log('..objobjobj>>',obj.callsign);
  689. //alert(obj.callsign);
  690. var point= new SuperMap.Geometry.Point(obj.lon,obj.lat);
  691. point.arrt=obj;
  692. gis.script.cbpointInfo.push(point);
  693. //var danger=obj.danger||'Nvl'
  694. //gis.script.drawFillMarker(gis.script.boatonLayer["boatdanger"+obj.danger],obj);
  695. }
  696. }
  697. }
  698. gis.script.showDrawAllboat=function(dataList){
  699. //gis.script.boatonLayer
  700. //console.log("dataList",dataList);
  701. //gis.script.cbHsDataInfo=dataList;
  702. if(dataList&&dataList.length){
  703. if(gis.script.boatonLayer){
  704. for(var nl in gis.script.boatonLayer){
  705. var nlLayer=gis.script.boatonLayer[nl];
  706. if(nlLayer){
  707. nlLayer.removeAllFeatures();
  708. }
  709. }
  710. }
  711. if(gis.script.markersLayers[gis.script.pitchonMarkers]){
  712. gis.script.markersLayers[gis.script.pitchonMarkers].clearMarkers();
  713. }
  714. /*
  715. for(var i=0;i<gis.script.cbpointInfo.length;i++){
  716. var obj=gis.script.cbpointInfo[i];
  717. if(obj&&obj.arrt){
  718. var danger=obj.arrt.danger||'Nvl'
  719. gis.script.drawFillMarker(gis.script.boatonLayer["boatdanger"+obj.arrt.danger],obj.arrt);
  720. }
  721. }
  722. */
  723. //gis.script.cbdataInfostatistics
  724. //alert(dataList);
  725. gis.script.boatrefreshInfo={}
  726. for(var i=0;i<dataList.length;i++){
  727. var obj=dataList[i];
  728. //console.log('..objobjobj>>',obj);
  729. if(obj.mmsi){
  730. gis.script.boatrefreshInfo[obj.mmsi]=obj;
  731. if(obj&&gis.script.isNum(obj.danger)){
  732. gis.script.drawFillMarker(gis.script.boatonLayer["boatdanger"+obj.danger],obj);
  733. }
  734. }
  735. }
  736. if(gis.script.djszboat&&gis.script.djszboat.attributes&&gis.script.djszboat.attributes.onMMSI){
  737. var cbobj=gis.script.boatrefreshInfo[gis.script.djszboat.attributes.onMMSI];
  738. if(cbobj){
  739. gis.script.djszboat.attributes.shipLON=cbobj.lon;
  740. gis.script.djszboat.attributes.shipLAT=cbobj.lat;
  741. gis.script.pitchon(gis.script.djszboat,gis.script.pitchonMarkers);
  742. }
  743. }
  744. }
  745. }
  746. gis.script.loadboatLayer2=function(layer,o){
  747. if(layer&&
  748. o&&o.length){
  749. for(var i=0;i<o.length;i++){
  750. var obj=o[i];
  751. //console.log('..objobjobj>>',obj.callsign);
  752. //alert(obj.callsign);
  753. var point= new SuperMap.Geometry.Point(obj.lon,obj.lat);
  754. point.arrt=obj;
  755. gis.script.cbpointInfo.push(point);
  756. var danger=obj.danger||'Nvl'
  757. gis.script.drawFillMarker(gis.script.boatonLayer["boatdanger"+obj.danger],obj);
  758. /*
  759. var pointFeature = new SuperMap.Feature.Vector(point);
  760. pointFeature.style={
  761. fillColor:"red",
  762. strokeColor:"yellow",
  763. pointRadius:7
  764. };
  765. pointFeature.attributes.onSelectOpenPopkey="openPop_Boat";
  766. pointFeature.attributes.onID=obj.callsign;
  767. //console.log('..obj>>',obj.callsign);
  768. layer.addFeatures(pointFeature);
  769. */
  770. /*
  771. var geoText = new SuperMap.Geometry.GeoText(obj.lon,obj.lat,"中华人民共和国");
  772. var geotextFeature = new SuperMap.Feature.Vector(geoText);
  773. layer.addFeatures(geotextFeature);
  774. */
  775. //break;
  776. }
  777. }
  778. /*
  779. */
  780. }
  781. /*
  782. * 点击船舶时调用,切换船的选中状态,并弹出船舶信息框
  783. */
  784. gis.script.openPop_Boat=function(feature,e){
  785. //console.log('..>>',feature);
  786. gis.script.djszboat=feature;
  787. boatLayer.removeAllFeatures();
  788. if(gis.script.markersLayers[gis.script.pitchonMarkers]){
  789. /*
  790. gis.script.markersLayers[feature,gis.script.pitchonMarkers].destroy();
  791. delete gis.script.markersLayers[feature,gis.script.pitchonMarkers];
  792. */
  793. gis.script.markersLayers[gis.script.pitchonMarkers].clearMarkers();
  794. }
  795. gis.script.pitchon(feature,gis.script.pitchonMarkers);
  796. if(e){
  797. gis.script.openPop_BoatMain(feature,e);
  798. }
  799. }
  800. gis.script.openPop_Boat2=function(feature,runPop){
  801. //console.log('..>>',feature);
  802. gis.script.djszboat=feature;
  803. boatLayer.removeAllFeatures();
  804. if(gis.script.markersLayers[gis.script.pitchonMarkers]){
  805. /*
  806. gis.script.markersLayers[feature,gis.script.pitchonMarkers].destroy();
  807. delete gis.script.markersLayers[feature,gis.script.pitchonMarkers];
  808. */
  809. gis.script.markersLayers[gis.script.pitchonMarkers].clearMarkers();
  810. }
  811. gis.script.pitchon(feature,gis.script.pitchonMarkers);
  812. //console.log('..>>',feature.attributes.onID);
  813. if(!gis.script.isNotBlank(runPop)||runPop){
  814. //alert(runPop);
  815. gis.script.openPop_BoatMain(feature);
  816. }
  817. }
  818. gis.script.openPop_Boat2=function(feature){
  819. alert(feature.attributes.onMMSI+"<<");return;
  820. }
  821. /*
  822. * 船舶信息框
  823. */
  824. gis.script.openPop_BoatMain=function(feature,e){
  825. //alert(feature.attributes.onID+"--"+feature.attributes.onMMSI+"--"+feature.attributes.onCname);return;
  826. var hsname=feature.attributes.onCname||feature.attributes.onID;
  827. if(gis.script.isBlank(hsname)){
  828. hsname=feature.attributes.onMMSI;
  829. }
  830. feature.attributes.labelfieldid="hsname";
  831. feature.attributes.hsname=hsname;
  832. /*
  833. var centerLon=feature.lon;
  834. var centerLat=feature.lat;
  835. var centerLonLatObj={lon:centerLon,lat:centerLat};
  836. var popup = gis.anchored.popupHtml(centerLonLatObj,{width:500,height:254},"<div class='titleClass'></div>",e);
  837. gis.anchored.addPopup(map,popup,feature);return;
  838. */
  839. //feature.attributes.onMMSI='413827016';
  840. //feature.attributes.onID='HUA LUN 898';
  841. gis.script.jsonAjax({url:contextPath+"/cbdt/findCB.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({name:feature.attributes.onID,mmsi:feature.attributes.onMMSI})},
  842. function(data){
  843. if(data&&data.success&&data.message){
  844. var centerLon=feature.lon;
  845. var centerLat=feature.lat;
  846. if(!(gis.script.isNum(centerLon)&&gis.script.isNum(centerLat))){
  847. if(feature.geometry){
  848. var centerLonLat=feature.geometry.getBounds().getCenterLonLat();
  849. centerLon=centerLonLat.lon;
  850. centerLat=centerLonLat.lat;
  851. }
  852. }
  853. var centerLonLatObj={lon:centerLon,lat:centerLat};
  854. //var popup = gis.anchored.popupHtml(feature.geometry.getBounds().getCenterLonLat(),{width:450,height:350},data.message);
  855. var popup = gis.anchored.popupHtml(centerLonLatObj,{width:500,height:254},data.message,e);
  856. gis.anchored.addPopup(map,popup,feature);
  857. }
  858. });
  859. }
  860. gis.script.openPop_BoatMain2=function(feature){
  861. //alert(feature.attributes.onMMSI);return;
  862. //alert(feature.attributes.onID+"--"+feature.attributes.onMMSI);return;
  863. //gis.script.jsonAjax({url:contextPath+"/zygl/queryJYR.html",async:true,data:{id:"B1EB395F30494062B9F102053B9A49B8"}},//feature.attributes.onMMSI
  864. gis.script.jsonAjax({url:contextPath+"/zygl/boatHsname.html",contentType:'application/json;charset=utf-8',async:true,data:JSON.stringify({mmsi:feature.attributes.onMMSI})},
  865. function(ajaxdata){
  866. //console.log('..>>',ajaxdata);
  867. var hsname=feature.attributes.onID;
  868. if(ajaxdata&&ajaxdata.length){
  869. var hsobj=ajaxdata[0];
  870. if(hsobj&&hsobj.HS_NAME&&gis.script.isNotBlank(hsobj.HS_NAME)){
  871. hsname=hsname+"("+hsobj.HS_NAME+")";
  872. }
  873. }
  874. //alert(hsname);
  875. feature.attributes.labelfieldid="hsname";
  876. feature.attributes.hsname=hsname;
  877. gis.script.jsonAjax({url:contextPath+"/cbdt/queryCB.html",async:true,data:{name:feature.attributes.onID,mmsi:feature.attributes.onMMSI}},
  878. function(data){
  879. if(data&&data.message){
  880. var centerLon=feature.lon;
  881. var centerLat=feature.lat;
  882. if(!(gis.script.isNum(centerLon)&&gis.script.isNum(centerLat))){
  883. if(feature.geometry){
  884. var centerLonLat=feature.geometry.getBounds().getCenterLonLat();
  885. centerLon=centerLonLat.lon;
  886. centerLat=centerLonLat.lat;
  887. }
  888. }
  889. var centerLonLatObj={lon:centerLon,lat:centerLat};
  890. //var popup = gis.anchored.popupHtml(feature.geometry.getBounds().getCenterLonLat(),{width:450,height:350},data.message);
  891. var popup = gis.anchored.popupHtml(centerLonLatObj,{width:500,height:254},data.message);
  892. gis.anchored.addPopup(map,popup,feature);
  893. }
  894. });
  895. });
  896. }
  897. /*
  898. * 船的选中状态
  899. */
  900. gis.script.markselectzoom={z7:25,z9:50,z10:95,z11:200,z12:200,z13:200}
  901. gis.script.pitchon = function(feature,marktypename) {
  902. if(feature&&marktypename){
  903. var pngw=30;
  904. var pngh=30;
  905. var zoom=map.getZoom();
  906. var isrc=contextPath+'/theme/images/gis/gzk.png';
  907. if(zoom>=7){
  908. var ikk=gis.script.markselectzoom["z"+zoom];
  909. if(ikk){
  910. pngw=ikk;
  911. pngh=ikk;
  912. isrc=contextPath+'/theme/images/gis/gzk'+zoom+'.png';
  913. }
  914. }
  915. var centerLon=feature.lon;
  916. var centerLat=feature.lat;
  917. if(feature.attributes){
  918. centerLon=feature.attributes.shipLON||feature.lon;
  919. centerLat=feature.attributes.shipLAT||feature.lat;
  920. }
  921. if(!(gis.script.isNum(centerLon)&&gis.script.isNum(centerLat))){
  922. if(feature.geometry){
  923. var centerLonLat=feature.geometry.getBounds().getCenterLonLat();
  924. centerLon=centerLonLat.lon;
  925. centerLat=centerLonLat.lat;
  926. }
  927. }
  928. var item={type:marktypename+zoom,marktypename:marktypename,defshow:"true",lon:centerLon,lat:centerLat,w:pngw,h:pngh,functionName:"openPop_BoatMain"};
  929. //console.log("item",item)
  930. item.src=isrc;
  931. item.feature=feature;
  932. gis.script.addMarker(item);
  933. /*
  934. var centerLonLat=feature.geometry.getBounds().getCenterLonLat();
  935. var item={type:marktypename+"_1",marktypename:marktypename+"_1",defshow:"true",lon:centerLonLat.lon+0.05,lat:centerLonLat.lat+0.05,w:21,h:25,functionName:"x1"};
  936. item.src=contextPath+'/theme/images/gis/gzk.png';
  937. gis.script.addMarker(item);
  938. */
  939. }
  940. }
  941. gis.script.loadtestMarkersLayerdata2 = function() {
  942. var data=[{type:"1",functionName:"showMarkerInfo",lon:lon+0.15,lat:lat+0.15,w:21,h:25},
  943. {type:"2",functionName:"showMarkerInfo",lon:lon+0.25,lat:lat+0.25,w:21,h:25},
  944. {type:"1",functionName:"showMarkerInfo",lon:lon+0.35,lat:lat+0.35,w:21,h:25}];
  945. $.each(data, function(i, item){
  946. //alert(i+","+JSON.stringify(item));
  947. //alert(contextPath);
  948. item.src=contextPath+'/images/markerbig_select.png';
  949. gis.script.addMarker(item);
  950. });
  951. gis.script.loadtestSql2();
  952. }
  953. gis.script.testArraydel = function() {
  954. var tarray=[0,1,2,3,4,5,6,7,8,9];
  955. gis.script.consolelog("tarray",tarray);
  956. for (var i=0;i<tarray.length;i++){
  957. var o=tarray[i];
  958. if(o%2==0){
  959. delete tarray[i];
  960. }
  961. }
  962. gis.script.consolelog("tarray",tarray);
  963. for (var i=0;i<tarray.length;i++){
  964. var o=tarray[i];
  965. if(o){
  966. alert(o);
  967. }
  968. }
  969. }
  970. /*
  971. * 寻找船舶,并且定位
  972. */
  973. gis.script.cbsslistSubmit = function() {
  974. gis.script.exeloadcbdataService=false;
  975. try{
  976. var cbsstextObj=document.getElementById("cbsstext");
  977. if(cbsstextObj){
  978. var cbsstext=cbsstextObj.value;
  979. if(gis.script.isNotBlank(cbsstext)){
  980. //alert(gis.script.cbHsDataInfo.length);
  981. if(gis.script.boatrefreshInfo){
  982. for(var jj in gis.script.boatrefreshInfo){
  983. var cbnode=gis.script.boatrefreshInfo[jj];
  984. //console.log(cbnode.name,cbnode);//break;//100701729 SUGANYU13003
  985. //{"hscname":"东海救111","mmsi":"413116000","name":"DONG HAI JIU 111"}
  986. if(cbnode&&!gis.script.isBlank(cbnode.mmsi)&&(
  987. (cbnode.mmsi.indexOf(cbsstext)>=0)||
  988. (!gis.script.isBlank(cbnode.name)&&cbnode.name.indexOf(cbsstext)>=0)||
  989. (!gis.script.isBlank(cbnode.hscname)&&cbnode.hscname.indexOf(cbsstext)>=0)
  990. )){
  991. if(gis.script.isNum(cbnode.lon)&&gis.script.isNum(cbnode.lat)){
  992. var info={};
  993. info.lon=cbnode.lon;
  994. info.lat=cbnode.lat;
  995. info.zoomSize=10;
  996. gis.script.setMapCenter(info);
  997. }
  998. //.attributes.onMMSI
  999. cbnode.attributes=cbnode.attributes||{};
  1000. cbnode.attributes.onMMSI=cbnode.mmsi;
  1001. cbnode.attributes.onID=cbnode.name||'';
  1002. cbnode.attributes.onCname=cbnode.hscname||cbnode.name||'';
  1003. //console.log(cbsstext,cbnode);
  1004. gis.script.openPop_Boat(cbnode);
  1005. break;
  1006. }
  1007. }
  1008. /*
  1009. var cbnode=gis.script.cbHsDataInfo[99];
  1010. */
  1011. }
  1012. }
  1013. }
  1014. }catch(e){
  1015. //alert(e.message);
  1016. }
  1017. window.setTimeout(function(){
  1018. gis.script.exeloadcbdataService=true;
  1019. },5000);
  1020. return false;
  1021. }
  1022. $(document).ready(function() {
  1023. });