02_datasetService.html 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  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. <div class='panel'>
  45. <div class='input-group'>
  46. <span class='input-group-addon' data-i18n ="resources.text_dataset"></span>
  47. <select id='datasetsSelect' class='form-control'></select>
  48. </div>
  49. </div>
  50. <input type="button" class="btn btn-default" data-i18n ="[value]resources.btn_query"
  51. onclick="datasetsPrint()"/>
  52. </div>
  53. </div>
  54. <div id="map"></div>
  55. <script type="text/javascript" include="bootstrap" src="../js/include-web.js"></script>
  56. <script type="text/javascript" src="../../dist/leaflet/include-leaflet.js"></script>
  57. <script type="text/javascript">
  58. let host = window.isLocal ? window.server : "https://iserver.supermap.io";
  59. let map, infoWin,datasourcesSelect,datasetsSelect,datasourceName,
  60. baseUrl = host + "/iserver/services/map-world/rest/maps/World",
  61. url = host + "/iserver/services/data-world/rest/data";
  62. map = L.map('map', {
  63. preferCanvas: true,
  64. crs: L.CRS.EPSG4326,
  65. center: {lon: 0, lat: 0},
  66. maxZoom: 18,
  67. zoom: 2
  68. });
  69. L.supermap.tiledMapLayer(baseUrl).addTo(map);
  70. dataSetService();
  71. function dataSetService() {
  72. L.supermap.datasourceService(url).getDatasources(function (serviceResult) {
  73. datasourcesSelect = document.getElementById("datasourcesSelect");
  74. const datasourceNames = serviceResult.result.datasourceNames;
  75. for (let i = 0, len = datasourceNames.length; i < len; i++) {
  76. datasourcesSelect.options[i] = new Option(datasourceNames[i], datasourceNames[i]);
  77. }
  78. datasourceName = datasourcesSelect.value;
  79. datasetsService(datasourceName)
  80. })
  81. }
  82. //数据集信息
  83. function datasetsService(datasourceName){
  84. L.supermap.datasetService(url).getDatasets(datasourceName,function (serviceResult) {
  85. const datasetNames = serviceResult.result.datasetNames;
  86. datasetsSelect = document.getElementById("datasetsSelect");
  87. for (let i = 0,len = datasetNames.length; i < len; i++) {
  88. datasetsSelect.options[i] = new Option(datasetNames[i], datasetNames[i]);
  89. }
  90. });
  91. }
  92. function datasetsPrint(){
  93. const datasetName = datasetsSelect.value;
  94. L.supermap.datasetService(url).getDataset(datasourceName,datasetName,function (serviceResult) {
  95. let innerHTML = "(" + resources.text_datasetInfoPrint + ")" + "<br><br>";
  96. innerHTML += "dataSourceName:" + JSON.stringify(serviceResult.result.datasetInfo.dataSourceName, null, 2) + "<br>";
  97. innerHTML += "description:" + JSON.stringify(serviceResult.result.datasetInfo.description, null, 2) + "<br>";
  98. innerHTML += "isFileCache:" + JSON.stringify(serviceResult.result.datasetInfo.isFileCache, null, 2) + "<br>";
  99. innerHTML += "name:" + JSON.stringify(serviceResult.result.datasetInfo.name, null, 2) + "<br>";
  100. innerHTML += "prjCoordSys:" + "(...)" + "<br>";
  101. infoWin = L.popup({maxWidth: 420})
  102. .setLatLng(map.getCenter())
  103. .setContent(innerHTML)
  104. .openOn(map);
  105. });
  106. }
  107. </script>
  108. </body>
  109. </html>