网站
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 

157 rindas
6.1 KiB

  1. /**
  2. * Created by Administrator on 2021/4/5.
  3. */
  4. define(['jquery', "template", "Tools", "paging", 'dateTime', 'swiper'], function ($, template, Tools) {
  5. //数据存储
  6. var module = {
  7. data: {
  8. propertyList:'',
  9. phone: '',
  10. leader: '',
  11. map: '', // 地图图层
  12. },
  13. };
  14. var tools = new Tools();
  15. module.init = function (page) {
  16. tools.doGet(zjdzdxxGet+getQueryVariable('id'), {translate_dict: 1}, module.assetDetail , true);
  17. tools.doGet(webList, {}, module.webList , true);
  18. // var map = new BMapGL.Map('container'); // 创建Map实例
  19. // map.centerAndZoom(new BMapGL.Point(116.320938,39.950026), 18); // 初始化地图,设置中心点坐标和地图级别
  20. // map.enableScrollWheelZoom(false); // 开启鼠标滚轮缩放
  21. };
  22. module.useContent = function (data) {
  23. if (data.code == 200) {
  24. module.data.phone = data.data.phone;
  25. module.data.leader = data.data.leader;
  26. var propertyDetailData = template('propertyDetailData', module.data);
  27. $("#propertyDetailContent").html(propertyDetailData);
  28. setTimeout(() => {
  29. initMap(data.data);
  30. }, 500);
  31. }
  32. }
  33. initMap = function (dept) {
  34. document.getElementById("container").innerHTML = "";
  35. // 定义地图投影
  36. let projection = new ol.proj.Projection({
  37. code: "EPSG:3857",
  38. units: "degrees",
  39. });
  40. // 定义地图图层
  41. let aerial = new ol.layer.Tile({
  42. source: new ol.source.XYZ({
  43. url: "http://t{0-7}.tianditu.com/img_w/wmts?" +
  44. "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
  45. "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=cc4aba6e967096098249efa069733067",
  46. }),
  47. isGroup: true,
  48. name: "卫星影像图",
  49. });
  50. let yingxzi = new ol.layer.Tile({
  51. source: new ol.source.XYZ({
  52. url: "http://t{0-7}.tianditu.com/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=cc4aba6e967096098249efa069733067",
  53. }),
  54. isGroup: true,
  55. name: "天地图文字标注--卫星影像图",
  56. });
  57. //加载地图
  58. module.data.map = new ol.Map({
  59. controls: ol.control.defaults({attribution: false, zoom: false, rotate: false}).extend([]),
  60. layers: [aerial, yingxzi],
  61. projection: projection,
  62. target: "container",
  63. view: new ol.View({
  64. center: ol.proj.fromLonLat([dept.lng, dept.lat]), // 地图中心坐标
  65. zoom: 16,
  66. minZoom: 1, //地图缩小限制
  67. maxZoom: 18, //地图放大限制
  68. }),
  69. /*interactions: ol.interaction.defaults({
  70. doubleClickZoom: false, // 双击放大地图
  71. // mouseWheelZoom: false, // 鼠标滚轮放大地图
  72. // shiftDragZoom: false, // shift + 鼠标左键拖拽 放大地图
  73. })*/
  74. });
  75. if (module.data.propertyDetail && module.data.propertyDetail.theGeomJson) {
  76. const homesteadDetail = new ol.layer.Vector({
  77. source: new ol.source.Vector({
  78. features: new ol.format.GeoJSON().readFeatures(module.data.propertyDetail.theGeomJson),
  79. }),
  80. name: 'homesteadDetail',
  81. style: new ol.style.Style({
  82. fill: new ol.style.Fill({
  83. //矢量图层填充颜色,以及透明度
  84. color: "rgba(22, 233, 15, 0.3)",
  85. }),
  86. stroke: new ol.style.Stroke({
  87. //边界样式
  88. color: "#16E90F",
  89. width: 2,
  90. }),
  91. })
  92. });
  93. module.data.map.addLayer(homesteadDetail);
  94. module.data.map.getView().setCenter(ol.extent.getCenter(homesteadDetail.getSource().getExtent()));
  95. }
  96. }
  97. module.webList = function (data) {
  98. if (data.code == 200) {
  99. var content = data.data;
  100. module.data.webList = content;
  101. var webData = template('webData', module.data);
  102. $("#webContent").html(webData);
  103. var titData = template('titData', module.data);
  104. $("#titContent").html(titData);
  105. }
  106. }
  107. module.assetDetail = function(data){
  108. if (data.code == 200) {
  109. var content = data.data;
  110. module.data.propertyDetail = content;
  111. tools.doGet(attachmentList, {
  112. tableId:content.id,
  113. tableName: 't_homestead_zjdzdxx',
  114. bizPath: 'home'
  115. }, module.attachmentDetail , true);
  116. tools.doGet(treeselectSecond+content.deptId, {}, module.useContent , true);
  117. // var propertyDetailData = template('propertyDetailData', module.data);
  118. // $("#propertyDetailContent").html(propertyDetailData);
  119. // $('#dialog').css('display','block');
  120. }
  121. }
  122. module.attachmentDetail = function(data){
  123. if (data.code == 200) {
  124. var content = data.rows;
  125. var attachmentList = [];
  126. content.map(res=>{
  127. if (res.fileName.indexOf('png')>-1||res.fileName.indexOf('jpg')>-1){
  128. attachmentList.push(res);
  129. }
  130. })
  131. module.data.attachment = attachmentList;
  132. var propertyDetailData = template('propertyDetailData', module.data);
  133. $("#propertyDetailContent").html(propertyDetailData);
  134. $('#dialog').css('display','block');
  135. }
  136. }
  137. //获取地址栏参数
  138. function getQueryVariable(variable){
  139. var query = window.location.search.substring(1);
  140. var vars = query.split("&");
  141. for (var i=0;i<vars.length;i++) {
  142. var pair = vars[i].split("=");
  143. if(pair[0] == variable){return pair[1];}
  144. }
  145. return(false);
  146. }
  147. return module;
  148. });