diff --git a/frontend/.env.development b/frontend/.env.development index 33af3dc8..75195ec9 100644 --- a/frontend/.env.development +++ b/frontend/.env.development @@ -7,12 +7,12 @@ VITE_APP_TITLE = '水电水利建设项目全过程环境管理信息平台' VITE_APP_PORT = 3000 VITE_APP_BASE_API = '/dev-api' # 本地环境 -# VITE_APP_BASE_URL = 'http://localhost:8093' +VITE_APP_BASE_URL = 'http://localhost:8093' # 测试环境 # VITE_APP_BASE_URL = 'http://172.16.21.142:8093' # VITE_APP_BASE_URL = 'http://172.16.21.142:8096' # 汤伟 -VITE_APP_BASE_URL = 'http://10.84.121.21:8093' +# VITE_APP_BASE_URL = 'http://10.84.121.21:8093' # VITE_APP_BASE_URL = 'http://192.168.1.162:8093' # 测试环境线上 @@ -23,8 +23,9 @@ VITE_APP_TEST_ONLINE_URL = 'https://211.99.26.225:12122' # 开发环境导入预览地址 VITE_APP_BASE_API_URL = 'http://10.84.121.21:8093' -## 开发环境预览 图片视频地址 -VITE_APP_PREVIEW_URL = 'https://211.99.26.225:12125' +## 开发环境 附件服务地址 +VITE_APP_ATTACHMENT_URL = 'https://211.99.26.225:12125' +attachment # 地图服务地址 VITE_APP_MAP_URL = 'https://211.99.26.225:18085' diff --git a/frontend/.env.production b/frontend/.env.production index f6db5aa8..c130c425 100644 --- a/frontend/.env.production +++ b/frontend/.env.production @@ -3,10 +3,17 @@ NODE_ENV='production' VITE_APP_TITLE = 'qgc-buji-web' VITE_APP_PORT = 3000 -VITE_APP_BASE_API = '/prod-api' +VITE_APP_BASE_API = '/' ## 生产环境API地址 VITE_APP_BASE_URL = 'http://localhost:8093' ## 生产环境导入预览地址 VITE_APP_BASE_API_URL = 'https://211.99.26.225:12130/prod-api' ## 生产环境预览 图片视频地址 VITE_APP_PREVIEW_URL = 'https://211.99.26.225:12125' + +## 开发环境 附件服务地址 +VITE_APP_ATTACHMENT_URL = 'https://211.99.26.225:12125' +attachment + +# 地图服务地址 +VITE_APP_MAP_URL = 'https://211.99.26.225:18085' \ No newline at end of file diff --git a/frontend/package.json b/frontend/package.json index 6dbb6db7..23b41752 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -37,6 +37,7 @@ "ol": "^10.8.0", "path-browserify": "^1.0.1", "path-to-regexp": "^6.2.0", + "pdfjs-dist": "^6.0.227", "pinia": "^2.0.12", "screenfull": "^6.0.0", "sortablejs": "^1.14.0", diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index 06b95b1e..8a571085 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -89,6 +89,9 @@ importers: path-to-regexp: specifier: ^6.2.0 version: 6.3.0 + pdfjs-dist: + specifier: ^6.0.227 + version: 6.0.227 pinia: specifier: ^2.0.12 version: 2.3.1(typescript@6.0.3)(vue@3.5.33(typescript@6.0.3)) @@ -595,6 +598,81 @@ packages: '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@napi-rs/canvas-android-arm64@1.0.0': + resolution: {integrity: sha512-3hNKJObUK7JsCF9aJlVCs1J0/KE/gGfZNeK8MO1ge6bB3aicr5walGme9t9No1f/oyk9GgvdAT/rjSdsx3gbIw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/canvas-darwin-arm64@1.0.0': + resolution: {integrity: sha512-ZIja19/BiGz2puhki+WUYSRriwFeFJ8Mi9eK3hZdSS85w4Y60cuEAJVhMCfKwswQkKkUtrnzdKMBuO7TupvexA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/canvas-darwin-x64@1.0.0': + resolution: {integrity: sha512-hImggWc82jqZVpEsFR9S7PE9OQYjq/H/D7vwCGB6X1jRH+UVBP1+1niJTPBOat1B154T6GKK7/kcFtoWgjgFzQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/canvas-linux-arm-gnueabihf@1.0.0': + resolution: {integrity: sha512-hlJRy6d+kWLKVOG/+1rEvNQVURZ0DxxRPJsLmEWwhwiXZUJc0BF5o9esALHSEP4CoJK4wChRtj3hnyBgVx2oWA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/canvas-linux-arm64-gnu@1.0.0': + resolution: {integrity: sha512-5Hru4T3RXkosRQafcjelv7AUzw9mXqmGYsxnzeDDOWveFCJyEPMSJltvGCM+jfH98seOCbfwm9KyFg6Jm5FhAA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@napi-rs/canvas-linux-arm64-musl@1.0.0': + resolution: {integrity: sha512-LTUl9jS8WsLSUGaxQZKQkxfluOJRpgvBuxxdM4pYcjib+di8AU4OzQc6+L6SzGMLcKc9H0RAjojRatBhTMqYdg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@napi-rs/canvas-linux-riscv64-gnu@1.0.0': + resolution: {integrity: sha512-Iz931SAZf+WVDzpjk52Q3ffW3zw0YflFwEZMgs036Wfu1kX/LrwT9wGjsuSqyduqefUkl91/vTdAjn8hQu5ezA==} + engines: {node: '>= 10'} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@napi-rs/canvas-linux-x64-gnu@1.0.0': + resolution: {integrity: sha512-pFEQ5eFK4JusgN1K6KkO9DKP/Hi1WMJOkF8Ch03/khTc4bFbCKkCCsJG4YcOMOW9bI4XbT2/eMAWxhO0xaWgPA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@napi-rs/canvas-linux-x64-musl@1.0.0': + resolution: {integrity: sha512-jnvr8NrLHiZ3NCiOKWqDbkI4Ah+QDrqtZ+sddPZBltEb1mQ2coSvCSJYfict+oAwcm0c970oTmVySpjKP/lnaA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@napi-rs/canvas-win32-arm64-msvc@1.0.0': + resolution: {integrity: sha512-y2j9/Gfd5joqiqxdP/L1smqjQ+uAx3C4N0EC7bDHrnZEEH8ToM/OC5p3uHvtj4Lq591aHj+ArL01UDLNwT5HgQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@napi-rs/canvas-win32-x64-msvc@1.0.0': + resolution: {integrity: sha512-qwdhh9N6Gge/hC4pL9S1tQp0iKwhSl/dYjg7+RGp9k26iRGRi5MqqUyKGOXIWli0zOcuy5Y2wIH/jk2ry6i/jA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/canvas@1.0.0': + resolution: {integrity: sha512-Jqxcy1XOIqj+lH9sl1GT+il6GR3uQv13vI2mrwubP3uT8Olak2ClDrK2RnxlQKjwv8BRr4b3ug0YR7c6hBX8wg==} + engines: {node: '>= 10'} + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -2864,6 +2942,10 @@ packages: resolution: {integrity: sha512-SuLdBvS42z33m8ejRbInMapQe8n0D3vN/Xd5fmWM3tufNgRQFBpaW2YVJxQZV4iPNqb0vEFvssMEo5w9c6BTIA==} hasBin: true + pdfjs-dist@6.0.227: + resolution: {integrity: sha512-/P6M4SXw+70waMVLUM7rdRtvo+dEzqE1t6W/zQNvBETo2MaRa5rrvCcAYdfWGiUzadTgM0lJmRApUrW0d9zgKg==} + engines: {node: '>=22.13.0 || >=24'} + picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -4323,6 +4405,54 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 + '@napi-rs/canvas-android-arm64@1.0.0': + optional: true + + '@napi-rs/canvas-darwin-arm64@1.0.0': + optional: true + + '@napi-rs/canvas-darwin-x64@1.0.0': + optional: true + + '@napi-rs/canvas-linux-arm-gnueabihf@1.0.0': + optional: true + + '@napi-rs/canvas-linux-arm64-gnu@1.0.0': + optional: true + + '@napi-rs/canvas-linux-arm64-musl@1.0.0': + optional: true + + '@napi-rs/canvas-linux-riscv64-gnu@1.0.0': + optional: true + + '@napi-rs/canvas-linux-x64-gnu@1.0.0': + optional: true + + '@napi-rs/canvas-linux-x64-musl@1.0.0': + optional: true + + '@napi-rs/canvas-win32-arm64-msvc@1.0.0': + optional: true + + '@napi-rs/canvas-win32-x64-msvc@1.0.0': + optional: true + + '@napi-rs/canvas@1.0.0': + optionalDependencies: + '@napi-rs/canvas-android-arm64': 1.0.0 + '@napi-rs/canvas-darwin-arm64': 1.0.0 + '@napi-rs/canvas-darwin-x64': 1.0.0 + '@napi-rs/canvas-linux-arm-gnueabihf': 1.0.0 + '@napi-rs/canvas-linux-arm64-gnu': 1.0.0 + '@napi-rs/canvas-linux-arm64-musl': 1.0.0 + '@napi-rs/canvas-linux-riscv64-gnu': 1.0.0 + '@napi-rs/canvas-linux-x64-gnu': 1.0.0 + '@napi-rs/canvas-linux-x64-musl': 1.0.0 + '@napi-rs/canvas-win32-arm64-msvc': 1.0.0 + '@napi-rs/canvas-win32-x64-msvc': 1.0.0 + optional: true + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -6817,6 +6947,10 @@ snapshots: dependencies: resolve-protobuf-schema: 2.1.0 + pdfjs-dist@6.0.227: + optionalDependencies: + '@napi-rs/canvas': 1.0.0 + picocolors@1.1.1: {} picomatch@2.3.2: {} diff --git a/frontend/src/api/mapModal/index.ts b/frontend/src/api/mapModal/index.ts index 2e80603d..9ab4235c 100644 --- a/frontend/src/api/mapModal/index.ts +++ b/frontend/src/api/mapModal/index.ts @@ -5,4 +5,60 @@ export function getStcdDetail(url: string, stcd: string) { method: 'get', params: { stcd } }); -} \ No newline at end of file +} +// 公共接口 - post +export function queryPostUrlList(url: string, data: any) { + return request({ + url: url, + method: 'post', + data + }); +} +// 公共接口 - 获取预览地址 +export function getIdUrl(params: any) { + return request({ + url: import.meta.env.VITE_APP_ATTACHMENT_URL + '/get', + method: 'get', + params + }); +} +// 全景影像 +export function getPanoramaList(data: any) { + return request({ + url: '/eq/msstbprpt/GetKendoList', + method: 'post', + data + }); +} +// 实时视频 +export function getVideoList(data: any) { + return request({ + url: '/vd/vmsstbprpt/GetKendoList', + method: 'post', + data + }); +} +// 实时视频单个查询 +export function getVideoDetail(data: any) { + return request({ + url: '/vd/GetKendoListCust', + method: 'post', + data + }); +} +// 实时视频 回放 +export function getVideoPlayDetail(data: any) { + return request({ + url: '/vd/runData/GetKendoListCust', + method: 'post', + data + }); +} +// 监测数据 - 电站 +export function getMonitorData(data: any) { + return request({ + url: '/eq/data/GetKendoListCust', + method: 'post', + data + }); +} diff --git a/frontend/src/api/select/index.ts b/frontend/src/api/select/index.ts index 58c0d500..ca812851 100644 --- a/frontend/src/api/select/index.ts +++ b/frontend/src/api/select/index.ts @@ -1,7 +1,7 @@ import request from '@/utils/request'; // 基地下拉列表 -export function getBaseDropdown(data:any) { +export function getBaseDropdown(data: any) { return request({ url: '/env/hydrobase/dropdown', method: 'get', @@ -9,7 +9,7 @@ export function getBaseDropdown(data:any) { }); } // 流域下拉列表 -export function getSelectForDropdown(data:any) { +export function getSelectForDropdown(data: any) { return request({ url: '/env/hbrv/selectForDropdown', method: 'get', @@ -17,7 +17,7 @@ export function getSelectForDropdown(data:any) { }); } //电站下拉列表 -export function getEngInfoDropdown(data:any) { +export function getEngInfoDropdown(data: any) { return request({ url: '/env/engInfo/dropdown', method: 'post', @@ -25,7 +25,7 @@ export function getEngInfoDropdown(data:any) { }); } // 重新验证并更新行数据 -export function revalidateAndUpdateRow(data:any) { +export function revalidateAndUpdateRow(data: any) { return request({ url: '/data/fishDraft/revalidateAndUpdateRow', method: 'post', @@ -33,7 +33,7 @@ export function revalidateAndUpdateRow(data:any) { }); } // 删除 行数据 -export function deleteRowById(data:any) { +export function deleteRowById(data: any) { return request({ url: '/data/fishDraft/deleteRowById', method: 'post', @@ -42,7 +42,7 @@ export function deleteRowById(data:any) { } //过鱼设施下拉列表 -export function getFpssDropdown(params:any) { +export function getFpssDropdown(params: any) { return request({ url: '/env/fpss/dropdown', method: 'get', @@ -57,7 +57,7 @@ export function getFishDictoryDropdown() { }); } // 类似鱼类名称下拉列表 -export function getSimilarFishDictoryDropdown(params:any) { +export function getSimilarFishDictoryDropdown(params: any) { return request({ url: '/env/fishDictory/similar', method: 'get', @@ -65,11 +65,11 @@ export function getSimilarFishDictoryDropdown(params:any) { }); } // 上传文件 -export function uploadFile(data:any) { +export function uploadFile(data: any) { return request({ - url: import.meta.env.VITE_APP_PREVIEW_URL + '/upload', + url: import.meta.env.VITE_APP_ATTACHMENT_URL + '/upload', method: 'post', data, - headers: { 'Content-Type': 'multipart/form-data' }, + headers: { 'Content-Type': 'multipart/form-data' } }); } diff --git a/frontend/src/components/BasicTable/index.vue b/frontend/src/components/BasicTable/index.vue index 16d1c5d3..bdbc74c1 100644 --- a/frontend/src/components/BasicTable/index.vue +++ b/frontend/src/components/BasicTable/index.vue @@ -1,8 +1,16 @@