02_datasourceService.html 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <!--********************************************************************
  2. * Copyright© 2000 - 2021 SuperMap Software Co.Ltd. All rights reserved.
  3. *********************************************************************-->
  4. <!DOCTYPE html>
  5. <html>
  6. <head>
  7. <meta charset="UTF-8">
  8. <title data-i18n="resources.title_DatasourceInfo"></title>
  9. <style>
  10. body {
  11. margin: 0;
  12. overflow: hidden;
  13. background: #fff;
  14. width: 100%;
  15. height: 100%
  16. }
  17. #map {
  18. position: absolute;
  19. width: 100%;
  20. height: 100%;
  21. }
  22. #toolbar {
  23. position: absolute;
  24. top: 50px;
  25. right: 10px;
  26. width: 300px;
  27. text-align: center;
  28. z-index: 500;
  29. border-radius: 4px;
  30. }
  31. </style>
  32. </head>
  33. <body>
  34. <div id="toolbar" class="panel panel-primary">
  35. <div class='panel-heading'>
  36. <h5 class='panel-title text-center' data-i18n="resources.title_DatasourceInfo"></h5></div>
  37. <div class='panel-body content'>
  38. <div class='panel'>
  39. <div class='input-group'>
  40. <span class='input-group-addon' data-i18n ="resources.text_Datasources"></span>
  41. <select id='datasourcesSelect' class='form-control'></select>
  42. </div>
  43. </div>
  44. <input type="button" class="btn btn-default" data-i18n ="[value]resources.btn_query"
  45. onclick="datasourcesPrint()"/>
  46. </div>
  47. </div>
  48. <div id="map"></div>
  49. <script type="text/javascript" include="bootstrap" src="../js/include-web.js"></script>
  50. <script type="text/javascript" src="../../dist/leaflet/include-leaflet.js"></script>
  51. <script type="text/javascript">
  52. let host = window.isLocal ? window.server : "https://iserver.supermap.io";
  53. let map, infoWin,datasourcesSelect,
  54. baseUrl = host + "/iserver/services/map-world/rest/maps/World",
  55. url = host + "/iserver/services/data-world/rest/data";
  56. map = L.map('map', {
  57. preferCanvas: true,
  58. crs: L.CRS.EPSG4326,
  59. center: {lon: 0, lat: 0},
  60. maxZoom: 18,
  61. zoom: 2
  62. });
  63. L.supermap.tiledMapLayer(baseUrl).addTo(map);
  64. dataSourcesService();
  65. function dataSourcesService() {
  66. L.supermap.datasourceService(url).getDatasources( function (serviceResult) {
  67. datasourcesSelect = document.getElementById("datasourcesSelect");
  68. const datasourceNames = serviceResult.result.datasourceNames;
  69. for (let i = 0, len = datasourceNames.length; i < len; i++) {
  70. datasourcesSelect.options[i] = new Option(datasourceNames[i], datasourceNames[i]);
  71. }
  72. });
  73. }
  74. //打印数据源信息
  75. function datasourcesPrint(){
  76. const datasourceName = datasourcesSelect.value;
  77. L.supermap.datasourceService(url).getDatasource(datasourceName, function (serviceResult) {
  78. let innerHTML = "(" + resources.text_datasourceInfoPrint + ")" + "<br><br>";
  79. innerHTML += "coordUnit:" + JSON.stringify(serviceResult.result.datasourceInfo.coordUnit, null, 2) + "<br>";
  80. innerHTML += "description:" + JSON.stringify(serviceResult.result.datasourceInfo.description, null, 2) + "<br>";
  81. innerHTML += "distanceUnit:" + JSON.stringify(serviceResult.result.datasourceInfo.distanceUnit, null, 2) + "<br>";
  82. innerHTML += "engineType:" + JSON.stringify(serviceResult.result.datasourceInfo.engineType, null, 2) + "<br>";
  83. innerHTML += "name:" + JSON.stringify(serviceResult.result.datasourceInfo.name, null, 2) + "<br>";
  84. innerHTML += "prjCoordSys:" + "(...)" + "<br>";
  85. infoWin = L.popup({maxWidth: 420})
  86. .setLatLng(map.getCenter())
  87. .setContent(innerHTML)
  88. .openOn(map);
  89. });
  90. }
  91. </script>
  92. </body>
  93. </html>