| | |
| | | |
| | | |
| | | |
| | | //å页æ¥è¯¢å
æ°æ® => æ ¹æ®å®ä½åæ¥è¯¢è¡¨å |
| | | export function publish_selectMetasByPage(params) { |
| | | return request.get('/publish/selectMetasByPage', { params: params }); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | const en = { |
| | | common: { |
| | | preview: 'preview', |
| | | publish: "Publish", |
| | | releaseTime: 'Release time', |
| | | rublisher: 'Publisher', |
| | | publishAddress: 'Publishing address', |
| | | increase: 'increase', |
| | | bak: 'Bak', |
| | | domCode: 'DomCode', |
| | |
| | | const zh = { |
| | | common: { |
| | | preview: 'é¢è§', |
| | | publish: "åå¸", |
| | | releaseTime: 'å叿¶é´', |
| | | rublisher: 'åå¸äººå', |
| | | publishAddress: 'åå¸å°å', |
| | | increase: 'æ·»å ', |
| | | bak: '夿³¨', |
| | | domCode: 'ç¼ç ', |
¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | <template> |
| | | <div |
| | | id="mapdiv" |
| | | class="previewBox" |
| | | ></div> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | data() { |
| | | return { |
| | | levelArray: [ |
| | | 0, 40000000, 20000000, 10000000, 5000000, 2000000, 1000000, 500000, |
| | | 250000, 200000, 100000, 50000, 17000, 9000, 5000, 2000, 1000, 500, 200, |
| | | 100, 50, 25, 10, 0, |
| | | ], |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.init3DMap(); |
| | | }, |
| | | methods: { |
| | | init3DMap() { |
| | | //å°å¾åå§å |
| | | window.sg = new SmartEarth.SGWorld("mapdiv", { |
| | | url: SmartEarthRootUrl + "Workers/image/earth.jpg", |
| | | licenseServer: window.sceneConfig.licenseServer, |
| | | }); |
| | | |
| | | window.Viewer = window.sg._Viewer; |
| | | |
| | | // Viewer.camera.flyTo({ |
| | | // destination: Cesium.Cartesian3.fromDegrees(110, 33, 8000000), |
| | | // }); |
| | | |
| | | Viewer.imageryLayers.addImageryProvider( |
| | | new Cesium.UrlTemplateImageryProvider({ |
| | | url: gaoDeBaseUrl[1].url, |
| | | maximumLevel: 18 |
| | | }) |
| | | ); |
| | | |
| | | Viewer._enableInfoOrSelection = false; |
| | | //æ¾ç¤ºfps |
| | | Viewer.scene.debugShowFramesPerSecond = false; |
| | | //å¯¼èªæ§ä»¶ |
| | | window.sg.navControl("nav", false); |
| | | //æ¯ä¾å°º |
| | | window.sg.navControl("scale", false); |
| | | //å¼å¯æ·±åº¦æ£æµ |
| | | // sg.Analysis.depthTestAgainstTerrain(true) |
| | | Viewer.scene.globe.depthTestAgainstTerrain = true; |
| | | |
| | | var option = { |
| | | url: window.sceneConfig.SGUrl, |
| | | layerName: window.sceneConfig.mptName, |
| | | requestVertexNormals: true, |
| | | }; |
| | | sg.Creator.sfsterrainprovider("", option, "", true, ""); |
| | | |
| | | window.elevationTool = new SmartEarth.ElevationTool(window.sg); |
| | | elevationTool.setContourColor("#F1D487"); |
| | | if (this.$store.state.previewLayer) { |
| | | var res = this.$store.state.previewLayer; |
| | | if (res.layer.indexOf('.png')) { |
| | | console.log(res.layer) |
| | | var wkt = this.$wkt.parse(res.geom); |
| | | var height = this.getHeight(wkt.coordinates[2]) |
| | | console.log(wkt) |
| | | window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider( |
| | | new Cesium.UrlTemplateImageryProvider({ |
| | | url: res.layer, |
| | | maximumLevel: 18 |
| | | }) |
| | | |
| | | ); |
| | | debugger |
| | | Viewer.camera.flyTo({ |
| | | destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], height), |
| | | }); |
| | | } |
| | | } |
| | | }, |
| | | getHeight(level) { |
| | | if (level > 0 && level < 23) { |
| | | return this.levelArray[level] |
| | | } |
| | | return this.levelArray[this.levelArray.length - 1] |
| | | }, |
| | | |
| | | }, |
| | | |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | .previewBox { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | </style> |
| | |
| | | catModelInfo: null, |
| | | showPopBoxFlag: false, |
| | | pickoption: null, |
| | | previewLayer: null |
| | | }, |
| | | mutations: { |
| | | //è·åæéåé |
| | |
| | | }, |
| | | |
| | | ], |
| | | }, |
| | | }, { |
| | | name: 'æ¬å°æå¡', |
| | | sourceType: 'localmap', |
| | | id: 3, |
| | | isShow: true, |
| | | list: [ |
| | | { |
| | | name: "å°å¾", |
| | | image: require("../../assets/img/imageLayer/gdmap_map.jpg"), |
| | | urls: "http://{host}/LFData/2d/tiles/vec/{z}/{x}/{y}.png", |
| | | }, |
| | | { |
| | | name: "å½±å", |
| | | image: require("../../assets/img/imageLayer/gdmap_image.jpg"), |
| | | urls: "http://{host}/LFData/2d/tiles/img/{z}/{x}/{y}.png", |
| | | }, |
| | | |
| | | ], |
| | | } |
| | | |
| | | ], |
| | | }; |
| | |
| | | zIndex: -1 |
| | | }); |
| | | window.map.addLayer(window.olBaseMapLayer); |
| | | } else if (mapCollection.sourceType === "localmap") { |
| | | var ulr = map.urls; |
| | | ulr = ulr.replace("{host}", iisHost) |
| | | console.log(ulr) |
| | | window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider( |
| | | new Cesium.UrlTemplateImageryProvider({ |
| | | url: ulr, |
| | | maximumLevel: this.data.maximumLevel, |
| | | }) |
| | | ); |
| | | |
| | | window.olBaseMapLayer = new TileLayer({ |
| | | title: "é«å¾·å°å¾", |
| | | source: new XYZ({ |
| | | url: ulr, |
| | | wrapX: false |
| | | }), |
| | | zIndex: -1 |
| | | }); |
| | | window.map.addLayer(window.olBaseMapLayer); |
| | | } |
| | | Viewer.imageryLayers.lowerToBottom(window.BaseMapLayer);//å°å¾å±ç§»å°æåºå± |
| | | |
| | | Viewer.imageryLayers.raise(window.BaseMapLayer);//å°å¾å±ä¸ç§»ä¸å± |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | }, |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | // æ·»å æ°æ® |
| | | addData() { |
| | | if (this.data.urls && this.data.sourceType) { |
| | |
| | | ></i></el-input> |
| | | </el-form-item> |
| | | <el-form-item style="float:right"> |
| | | <!-- åå¸ --> |
| | | <el-button |
| | | type="success" |
| | | size="small" |
| | | icon="el-icon-s-promotion" |
| | | >{{$t('common.publish')}}</el-button> |
| | | <!-- éç½® --> |
| | | <el-button |
| | | type="info" |
| | | size="small" |
| | |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="layer" |
| | | :label="$t('common.publishAddress')" |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="uname" |
| | | :label="$t('dataManage.vmobj.createonuser')" |
| | | :label="$t('common.releaseTime')" |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="createTime" |
| | | :label="$t('dataManage.vmobj.createontime')" |
| | | :label="$t('common.rublisher')" |
| | | :formatter="formatData" |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | min-width="150" |
| | | :label="$t('common.operate')" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | v-if="scope.row.layer" |
| | | size="small" |
| | | type="success" |
| | | plain |
| | | @click="setPreviewLayer(scope.row)" |
| | | >{{$t('common.preview')}} |
| | | |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <div |
| | |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="listData.pageIndex" |
| | | :page-sizes="[10, 20, 50, 100]" |
| | | :page-sizes="[100, 200, 500, 1000]" |
| | | :page-size="listData.pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="listData.count" |
| | |
| | | </el-pagination> |
| | | </div> |
| | | </div> |
| | | <!-- å°åé¢è§ --> |
| | | <el-dialog |
| | | :title="$t('common.preview')" |
| | | :visible.sync="dialogVisible" |
| | | width="70%" |
| | | :before-close="handleClose" |
| | | top="13vh" |
| | | > |
| | | <div style="width:100%;height:65vh"> |
| | | <mapview v-if="showMapView"></mapview> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import mapview from '../../components/preview_map.vue' |
| | | import MyBread from "../../components/MyBread.vue" |
| | | import { selectdepTab, selectdirTab, meta_selectVerByDirid } from '../../api/api.js' |
| | | import { selectdepTab, selectdirTab, meta_selectVerByDirid, publish_selectMetasByPage } from '../../api/api.js' |
| | | |
| | | export default { |
| | | components: { MyBread }, |
| | | components: { MyBread, mapview }, |
| | | data() { |
| | | return { |
| | | active: 'first', |
| | |
| | | }, |
| | | listData: { |
| | | pageIndex: 1, |
| | | pageSize: 10, |
| | | pageSize: 100, |
| | | count: 0 |
| | | }, |
| | | multipleSelection: [], |
| | |
| | | dirOption: [], |
| | | verOption: [], |
| | | typeOption: [{ |
| | | value: 't1', |
| | | label: 'å
¨é¨' |
| | | }, { |
| | | value: 't2', |
| | | value: 'DOM', |
| | | label: '影忰æ®(.tif, .img)' |
| | | }, { |
| | | value: 't3', |
| | | value: 'MPT', |
| | | label: 'åºæ¯æ°æ®(.mpt)' |
| | | }, { |
| | | value: 't4', |
| | | value: '3DML', |
| | | label: 'ä¸ç»´æ¨¡å(.3dml)' |
| | | }, { |
| | | value: 't5', |
| | | value: 'BIM', |
| | | label: 'ä¸ç»´æ¨¡å(.fbx, .ifc, .rvt)' |
| | | }], |
| | | defaultProps: { |
| | |
| | | checkStrictly: true, |
| | | emitPath: false, |
| | | }, |
| | | dialogVisible: false, |
| | | showMapView: false, |
| | | |
| | | } |
| | | }, |
| | | methods: { |
| | | //é¢è§å¼¹çªæå¼ |
| | | setPreviewLayer(res) { |
| | | this.$store.state.previewLayer = res; |
| | | this.dialogVisible = true; |
| | | this.showMapView = true; |
| | | |
| | | }, |
| | | |
| | | //é¢è§å¼¹çªå
³é |
| | | handleClose() { |
| | | this.dialogVisible = false; |
| | | this.showMapView = false; |
| | | |
| | | |
| | | }, |
| | | // è·åå¤ééä¸ç对象 |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val |
| | |
| | | } else { |
| | | return row.sizes + " MB" |
| | | } |
| | | }, |
| | | //æ ¼å¼åå°å |
| | | formatLayer(row, column) { |
| | | let data = row.layer |
| | | if (data == null) { |
| | | return data |
| | | } |
| | | |
| | | return data.replace("{host}", iisHost) |
| | | }, |
| | | //æ ¼å¼åæ¶é´ |
| | | formatData(row, column) { |
| | |
| | | } |
| | | this.listData = { |
| | | pageIndex: 1, |
| | | pageSize: 10, |
| | | pageSize: 100, |
| | | count: 0 |
| | | } |
| | | this.formInline.type = this.typeOption[0].value; |
| | |
| | | return |
| | | } |
| | | this.dirOption = this.treeData(data.result); |
| | | this.formInline.dirid = this.dirOption[0].id; |
| | | this.formInline.dirid = this.dirOption[0].code; |
| | | this.formInline.dirName = this.dirOption[0].name; |
| | | this.getVerList() |
| | | }, |
| | |
| | | }, |
| | | //åä½åè¡¨åæ¢ |
| | | handleDepChange(data, node, nodeData) { |
| | | this.formInline.depid = data.id |
| | | this.formInline.depid = data.code |
| | | this.formInline.depName = data.name |
| | | this.getTableData(); |
| | | }, |
| | | //åä½åè¡¨åæ¢ |
| | | //ç®å½åè¡¨åæ¢ |
| | | handleDirChange(data, node, nodeData) { |
| | | this.formInline.dirid = data.id |
| | | |
| | | this.formInline.dirid = data.code |
| | | this.formInline.dirName = data.name |
| | | this.getVerList() |
| | | }, |
| | | //è·åTableè¡¨æ ¼æ°æ® |
| | | getTableData() { |
| | | async getTableData() { |
| | | this.listData.depcode = this.formInline.depid; |
| | | this.listData.dircode = this.formInline.dirid; |
| | | this.listData.name = this.formInline.name; |
| | | this.listData.type = this.formInline.type; |
| | | this.listData.verid = this.formInline.verid; |
| | | const data = await publish_selectMetasByPage(this.listData) |
| | | if (data.code != 200) { |
| | | |
| | | } |
| | | var that = this |
| | | var val = data.result.filter((res) => { |
| | | if (res.createTime) { |
| | | res.createTime = that.format(res.createTime); |
| | | } |
| | | if (res.layer) { |
| | | res.layer = res.layer.replace("{host}", iisHost); |
| | | } |
| | | return res |
| | | }) |
| | | this.tableData = val; |
| | | this.listData.count = data.count; |
| | | }, |
| | | //æ ¼å¼åæ¶é´ |
| | | format(shijianchuo) { |
| | | //shijianchuoæ¯æ´æ°ï¼å¦åè¦parseIntè½¬æ¢ |
| | | var time = new Date(shijianchuo); |
| | | var y = time.getFullYear(); |
| | | var m = time.getMonth() + 1; |
| | | var d = time.getDate(); |
| | | var h = time.getHours(); |
| | | var mm = time.getMinutes(); |
| | | var s = time.getSeconds(); |
| | | return ( |
| | | y + |
| | | '-' + |
| | | this.add0(m) + |
| | | '-' + |
| | | this.add0(d) + |
| | | ' ' + |
| | | h + |
| | | ':' + |
| | | mm + |
| | | ':' + |
| | | s |
| | | ); |
| | | }, |
| | | //æ ¼å¼åæ¶é´ |
| | | add0(m) { |
| | | return m < 10 ? '0' + m : m; |
| | | }, |
| | | //è·ååä½å表 |
| | | async getDepTreeList() { |
| | |
| | | return |
| | | } |
| | | this.depOption = this.treeData(data.result); |
| | | this.formInline.depid = this.depOption[0].id |
| | | this.formInline.depid = this.depOption[0].code |
| | | this.formInline.depName = this.depOption[0].name |
| | | }, |
| | | //æ åè¡¨çæ |