月球大数据地理空间分析展示平台-【前端】-月球2期前端
WX
2023-07-21 bf48462e6ce0e0baa899c1c64c24c05290dc77fd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
import { getToken } from "@/utils/auth";
const server = {
  addTreeData(treeNode, checked) {
    console.log(treeNode, checked);
    let _data = earthCtrl.ProjectTree.getObject(treeNode.id);
    let pID = 0;
    console.log(_data);
    if (_data) {
      earthCtrl.ProjectTree.setVisibility(treeNode.id, treeNode.checked);
      return;
    } else {
      // _data = _getTreeData(treeNode.id);
      // if (_data) {
      //   _data.item &&
      //     _data.item.setVisibility &&
      //     _data.item.setVisibility(treeNode.checked);
      //   _data.item &&
      //     _data.item.setVisible &&
      //     _data.item.setVisible(treeNode.checked);
      //   _data.item &&
      //     _data.item.show !== undefined &&
      //     (_data.item.show = treeNode.checked);
      //   if (_data.datatype === "particle") {
      //     _data.item.forEach((item) => {
      //       item.show = treeNode.checked;
      //     });
      //   }
      //   return;
      // }
    }
    //       comment on table lf.sys_res is '资源表';
    // comment on column lf.sys_res.id is '主键ID';
    // comment on column lf.sys_res.pid is '父ID:0-根节点';
    // comment on column lf.sys_res.cn_name is '中文名称';
    // comment on column lf.sys_res.en_name is '英文名称';
    // comment on column lf.sys_res.type is '类型:1-图层组,2-普通图层,3-代理图层';
    // comment on column lf.sys_res.status is '状态:-1-废弃,0-停用,1-启用';
    // comment on column lf.sys_res.category is '类型:0-URL,1-TMS,2-WMTS,3-WFS,4-Tileset';
    // comment on column lf.sys_res.firm is '厂商:0-其他,1-GisServer,2-GeoServer,3-数简';
    // comment on column lf.sys_res.url is '服务地址';
    // comment on column lf.sys_res.test is '测试地址';
    // comment on column lf.sys_res.proxy is '代理地址';
    // comment on column lf.sys_res.descr is '描述';
    // comment on column lf.sys_res.depid is '单位编码';
    // comment on column lf.sys_res.dirid is '项目编码';
    // comment on column lf.sys_res.img is '缩略图';
    // comment on column lf.sys_res.level is '层级:0-根节点';
    // comment on column lf.sys_res.sort is '排序';
    // comment on column lf.sys_res.create_user is '创建人ID';
    // comment on column lf.sys_res.create_time is '创建时间';
    // comment on column lf.sys_res.update_user is '更新人ID';
    // comment on column lf.sys_res.update_time is '更新时间';
    // comment on column lf.sys_res.bak is '备注';
    //     代理:/proxy/{token}/4
    // 地址:http://192.168.20.83:8088/MoonServer + proxy.replace("{token}", token)
    // order_num -> sort
    // serve_type -> category
 
    switch (treeNode.type) {
      case 1:
        treeNode.useUrl = treeNode.url;
        break;
      case 2:
        treeNode.useUrl = treeNode.url;
        break;
      case 3:
        var token = getToken();
        treeNode.useUrl = BASE_URL + treeNode.proxy.replace("{token}", token);
        break;
    }
    if (treeNode.firm == 2) {
      this.addGeoServer(treeNode);
    } else {
      this.addGisServer(treeNode);
    }
  },
  addGisServer(treeNode) {
    console.log(treeNode);
    // 0-URL,1-TMS,2-WMTS,3-WFS,4-Tileset';
    switch (treeNode.category) {
      case 1:
        this.AddTmsLayer(treeNode.useUrl);
        break;
      case 2:
        this.AddWmtesLayer(treeNode.useUrl);
        break;
      case 3:
        break;
      case 4:
        break;
    }
  },
  addGeoServer(treeNode) {
    // 0-URL,1-TMS,2-WMTS,3-WFS,4-Tileset';
    switch (treeNode.category) {
      case 1:
        break;
      case 2:
        this.AddGeoWmsLayer(treeNode.useUrl);
        break;
      case 3:
        break;
      case 4:
        break;
    }
  },
  //添加geoserver服务wms服务
  AddGeoWmsLayer(url) {
    window.layerWMS = new SmartEarth.Cesium.WebMapServiceImageryProvider({
      // url: "http://192.168.22.198:8090/geoserver/moon/wms",
      url: url,
      layers: "moon:lunar_place_nane",
      parameters: {
        transparent: true,
        format: "image/png",
        srs: "EPSG:4490",
        styles: "",
      },
      tileWidth: 512,
      tileHeight: 512,
    });
    layerWMS.name = "Wms_Layer";
 
    Viewer[s].imageryLayers.addImageryProvider(window.layerWMS);
  },
  //添加GisServer服务TMS切片服务
  AddTmsLayer(url) {
    // var urlTemplateImageryProvider = new SmartEarth.Cesium.UrlTemplateImageryProvider({
    //   url: url + "/{z}/{x}/{y}.png"
    // });
    // Viewer.imageryLayers.addImageryProvider(urlTemplateImageryProvider);
    earthCtrl.Creator.createUrlTemplateImageryProvider(
      "tms服务",
      {
        url: Cesium.buildModuleUrl(url + "/{z}/{x}/{reverseY}.png"),
      },
      "0",
      undefined,
      true,
      ""
    );
  },
  AddWmtesLayer(url) {
    var urlTemplateImageryProvider = earthCtrl.factory.createImageryLayer({
      sourceType: "wmts",
      url: url,
      layer: "",
      format: "image/png",
      tileMatrixSetID: "GoogleCRS84Quad01",
      tileMatrixLabels: [
        "0",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6",
        "7",
        "8",
        "9",
        "10",
        "11",
        "12",
        "13",
        "14",
        "15",
        "16",
        "17",
        "18",
      ],
      style: "",
      tilingScheme: new Cesium.GeographicTilingScheme({
        ellipsoid: Cesium.Ellipsoid.MOON,
      }),
    });
  },
};
export default server;