From 513410f78ad95df02d02696f9f2cecc1cc4acba6 Mon Sep 17 00:00:00 2001 From: zy <82248909@qq.com> Date: Tue, 18 Nov 2025 18:14:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=B0=E7=9B=91=E6=8E=A7?= =?UTF-8?q?=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 5 +- pnpm-lock.yaml | 322 +++++++++++ public/camera/main_control_bg.png | Bin 0 -> 3248 bytes public/camera/step_down.png | Bin 0 -> 213 bytes public/camera/step_down_hover.png | Bin 0 -> 395 bytes public/camera/step_left.png | Bin 0 -> 198 bytes public/camera/step_left_hover.png | Bin 0 -> 372 bytes public/camera/step_right.png | Bin 0 -> 230 bytes public/camera/step_right_hover.png | Bin 0 -> 377 bytes public/camera/step_up.png | Bin 0 -> 223 bytes public/camera/step_up_hover.png | Bin 0 -> 372 bytes public/camera/video_ctrl.png | Bin 0 -> 9575 bytes public/camera/video_icon.png | Bin 0 -> 3068 bytes public/camera/videoback.jpg | Bin 0 -> 29994 bytes public/resource/img/cameras.jpg | Bin 0 -> 29994 bytes .../appmana/deploy/SurvDeviceDeploy.api.ts | 29 + src/views/appmana/liveCamra/MonitorModal.vue | 516 ++++++++++++++++++ src/views/appmana/liveCamra/index.vue | 131 +++-- src/views/appmana/liveCamra/index_bak.vue | 60 ++ .../maintainrecord/SurvMaintainRecord.data.ts | 10 +- .../maintainrecord/SurvMaintainRecordList.vue | 24 +- .../components/SurvMaintainRecordForm.vue | 58 +- .../appmana/survconfig/FSurvConfig.api.ts | 72 +++ .../appmana/survconfig/FSurvConfig.data.ts | 116 ++++ .../appmana/survconfig/FSurvConfigList.vue | 249 +++++++++ .../survconfig/components/FSurvConfigForm.vue | 196 +++++++ .../components/FSurvConfigModal.vue | 75 +++ 27 files changed, 1771 insertions(+), 92 deletions(-) create mode 100644 public/camera/main_control_bg.png create mode 100644 public/camera/step_down.png create mode 100644 public/camera/step_down_hover.png create mode 100644 public/camera/step_left.png create mode 100644 public/camera/step_left_hover.png create mode 100644 public/camera/step_right.png create mode 100644 public/camera/step_right_hover.png create mode 100644 public/camera/step_up.png create mode 100644 public/camera/step_up_hover.png create mode 100644 public/camera/video_ctrl.png create mode 100644 public/camera/video_icon.png create mode 100644 public/camera/videoback.jpg create mode 100644 public/resource/img/cameras.jpg create mode 100644 src/views/appmana/liveCamra/MonitorModal.vue create mode 100644 src/views/appmana/liveCamra/index_bak.vue create mode 100644 src/views/appmana/survconfig/FSurvConfig.api.ts create mode 100644 src/views/appmana/survconfig/FSurvConfig.data.ts create mode 100644 src/views/appmana/survconfig/FSurvConfigList.vue create mode 100644 src/views/appmana/survconfig/components/FSurvConfigForm.vue create mode 100644 src/views/appmana/survconfig/components/FSurvConfigModal.vue diff --git a/package.json b/package.json index 7b8c1a4..702f16a 100644 --- a/package.json +++ b/package.json @@ -92,7 +92,10 @@ "vxe-table": "4.1.0", "vxe-table-plugin-antd": "3.0.5", "xe-utils": "^3.3.1", - "xss": "^1.0.13" + "xss": "^1.0.13", + "video.js": "^8.21.1", + "videojs-contrib-hls": "^5.15.0", + "videojs-vtt.js": "^0.15.5" }, "devDependencies": { "@commitlint/cli": "^16.2.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d3cc77a..e0e299e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -150,6 +150,15 @@ importers: vditor: specifier: ^3.8.13 version: 3.8.13 + video.js: + specifier: ^8.21.1 + version: 8.23.4 + videojs-contrib-hls: + specifier: ^5.15.0 + version: 5.15.0 + videojs-vtt.js: + specifier: ^0.15.5 + version: 0.15.5 vue: specifier: ^3.2.33 version: 3.2.33 @@ -2015,6 +2024,19 @@ packages: resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@videojs/http-streaming@3.17.2': + resolution: {integrity: sha512-VBQ3W4wnKnVKb/limLdtSD2rAd5cmHN70xoMf4OmuDd0t2kfJX04G+sfw6u2j8oOm2BXYM9E1f4acHruqKnM1g==} + engines: {node: '>=8', npm: '>=5'} + peerDependencies: + video.js: ^8.19.0 + + '@videojs/vhs-utils@4.1.1': + resolution: {integrity: sha512-5iLX6sR2ownbv4Mtejw6Ax+naosGvoT9kY+gcuHzANyUZZ+4NpeNdKMUhb6ag0acYej1Y7cmr/F2+4PrggMiVA==} + engines: {node: '>=8', npm: '>=5'} + + '@videojs/xhr@2.7.0': + resolution: {integrity: sha512-giab+EVRanChIupZK7gXjHy90y3nncA2phIOyG3Ne5fvpiMJzvqYwiTOnEVW2S4CoYcuKJkomat7bMXA/UoUZQ==} + '@vitejs/plugin-legacy@2.0.0': resolution: {integrity: sha512-cuc45C4BQo2VlOsHZML4fc3MPfSjOEFeezHxr+WWlOOmi+muy1rz2snnFiePtyjVc1CYGTsnxk13cXpzQvMZaw==} engines: {node: '>=14.18.0'} @@ -2214,6 +2236,10 @@ packages: '@windicss/plugin-utils@1.8.7': resolution: {integrity: sha512-dfj95olNZyGFDPFMBvE5oq8hA5f0ooUJZjVdWlthS4ek4W1/xNOHDxB6ygWR8LE9zCOXZykApjt1LOhy9Ky2QA==} + '@xmldom/xmldom@0.8.11': + resolution: {integrity: sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==} + engines: {node: '>=10.0.0'} + '@zxcvbn-ts/core@2.0.1': resolution: {integrity: sha512-i3viYattwORK5liqS/d9WaIWSLki75oKVog5Elg9Ls9d8L6zKLwpAkj6PT/P4LZqJHIVRPnKjgajpP6SLerr6Q==} @@ -2263,6 +2289,12 @@ packages: resolution: {integrity: sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==} engines: {node: '>=0.8'} + aes-decrypter@1.0.3: + resolution: {integrity: sha512-rsx8pfx7wJsn+ziYbpJ8XA5c93hKAtBCrfydxJqJCMT+qfjipd/B5wC2xHtBcoxyvlqJcpeAo3K55t0lXOn9yQ==} + + aes-decrypter@4.0.2: + resolution: {integrity: sha512-lc+/9s6iJvuaRe5qDlMTpCFjnwpkeOXp8qP3oiZ5jsj1MRg+SBVUmmICrhxHvc8OELSmc+fEyyxAuppY6hrWzw==} + agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -3353,6 +3385,9 @@ packages: dom-serializer@1.4.1: resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} + dom-walk@0.1.2: + resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==} + domelementtype@1.3.1: resolution: {integrity: sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==} @@ -3527,6 +3562,10 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} + es5-shim@4.6.7: + resolution: {integrity: sha512-jg21/dmlrNQI7JyyA2w7n+yifSxBng0ZralnSfVZjoCawgNTCnS+yBCyVM9DL5itm7SUnDGgv7hcq2XCZX4iRQ==} + engines: {node: '>=0.4.0'} + esbuild-android-64@0.14.54: resolution: {integrity: sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==} engines: {node: '>=12'} @@ -4244,6 +4283,12 @@ packages: resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==} engines: {node: '>=6'} + global@4.3.2: + resolution: {integrity: sha512-/4AybdwIDU4HkCUbJkZdWpe4P6vuw/CUtu+0I1YlLIPe7OlUO7KNJ+q/rO70CW2/NW6Jc6I62++Hzsf5Alu6rQ==} + + global@4.4.0: + resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==} + globals@13.24.0: resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} @@ -4534,6 +4579,9 @@ packages: resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} engines: {node: '>=8'} + individual@2.0.0: + resolution: {integrity: sha512-pWt8hBCqJsUWI/HtcfWod7+N9SgAqyPEaF7JQjwzjn5vGrpg6aQ5qeAFQ7dx//UH4J1O+7xqew+gCeeFt6xN/g==} + inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. @@ -4676,6 +4724,9 @@ packages: resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} engines: {node: '>=12'} + is-function@1.0.2: + resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==} + is-generator-fn@2.1.0: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} @@ -5327,6 +5378,12 @@ packages: luxon@1.28.1: resolution: {integrity: sha512-gYHAa180mKrNIUJCbwpmD0aTu9kV0dREDrwNnuyFAsO1Wt0EVYSZelPnJlbj9HplzXX/YWXHFTL45kvZ53M0pw==} + m3u8-parser@2.1.0: + resolution: {integrity: sha512-WbEpQ2FUaNGbJ0YanSeyj9D9ruu4FUvz+ZvebIzI2bSME+PUwcPXO1kKXZkjcPUAFruDikoOI5fWQNIA6JCCOQ==} + + m3u8-parser@7.2.0: + resolution: {integrity: sha512-CRatFqpjVtMiMaKXxNvuI3I++vUumIXVVT/JpCpdU/FynV/ceVw1qpPyyBNindL+JlPMSesx+WX1QJaZEJSaMQ==} + magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} @@ -5455,6 +5512,9 @@ packages: resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} engines: {node: '>=4'} + min-document@2.19.2: + resolution: {integrity: sha512-8S5I8db/uZN8r9HSLFVWPdJCvYOejMcEC82VIzNUc6Zkklf/d1gg2psfE79/vyhWOj4+J8MtwmoOz3TmvaGu5A==} + min-indent@1.0.1: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} @@ -5506,6 +5566,10 @@ packages: engines: {node: '>=10'} hasBin: true + mpd-parser@1.3.1: + resolution: {integrity: sha512-1FuyEWI5k2HcmhS1HkKnUAQV7yFPfXPht2DnRRGtoiiAAW+ESTbtEXIDpRkwdU+XyrQuwrIym7UkoPKsZ0SyFw==} + hasBin: true + mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} @@ -5526,6 +5590,14 @@ packages: mute-stream@0.0.8: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + mux.js@4.3.2: + resolution: {integrity: sha512-g0q6DPdvb3yYcoK7ElBGobdSSrhY/RjPt19U7uUc733aqvc5bCS/aCvL9z+448y+IoCZnYDwyZfQBBXMSmGOaQ==} + + mux.js@7.1.0: + resolution: {integrity: sha512-NTxawK/BBELJrYsZThEulyUMDVlLizKdxyAsMuzoCD1eFj97BVaA8D/CvKsKu6FOLYkFojN5CbM9h++ZTZtknA==} + engines: {node: '>=8', npm: '>=5'} + hasBin: true + nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -5788,6 +5860,9 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} + parse-headers@2.0.6: + resolution: {integrity: sha512-Tz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==} + parse-json@2.2.0: resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==} engines: {node: '>=0.10.0'} @@ -5932,6 +6007,15 @@ packages: resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} engines: {node: '>= 6'} + pkcs7@0.2.3: + resolution: {integrity: sha512-kJRwmADEQUg+qJyRgWLtpEL9q9cFjZschejTEK3GRjKvnsU9G5WWoe/wKqRgbBoqWdVSeTUKP6vIA3Y72M3rWA==} + engines: {node: ^0.10, npm: ^1.4.6} + hasBin: true + + pkcs7@1.0.4: + resolution: {integrity: sha512-afRERtHn54AlwaF2/+LFszyAANTCggGilmcmILUzEjvs3XgFZT+xE6+QWQcAGmu4xajy+Xtj7acLOPdx5/eXWQ==} + hasBin: true + pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -6078,6 +6162,14 @@ packages: process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + + process@0.5.2: + resolution: {integrity: sha512-oNpcutj+nYX2FjdEW7PGltWhXulAnFlM0My/k48L90hARCOJtvBbQXc/6itV2jDvU5xAAtonP+r6wmQgCcbAUA==} + engines: {node: '>= 0.6.0'} + prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} @@ -6378,6 +6470,9 @@ packages: run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + rust-result@1.0.0: + resolution: {integrity: sha512-6cJzSBU+J/RJCF063onnQf0cDUOHs9uZI1oroSGnHOph+CQTIJ5Pp2hK5kEQq1+7yE/EEWfulSNXAQ2jikPthA==} + rxjs@6.6.7: resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} engines: {npm: '>=2.0.0'} @@ -6395,6 +6490,9 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + safe-json-parse@4.0.0: + resolution: {integrity: sha512-RjZPPHugjK0TOzFrLZ8inw44s9bKox99/0AZW9o/BEQVrJfhI+fIHMErnPyRa89/yRXUUr93q+tiN6zhoVV4wQ==} + safe-push-apply@1.0.0: resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} engines: {node: '>= 0.4'} @@ -7089,6 +7187,10 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsml@1.0.1: + resolution: {integrity: sha512-3KmepnH9SUsoOVtg013CRrL7c+AK7ECaquAsJdvu4288EDJuraqBlP4PDXT/rLEJ9YDn4jqLAzRJsnFPx+V6lg==} + deprecated: no longer maintained + tsutils@3.21.0: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} @@ -7270,6 +7372,9 @@ packages: resolution: {integrity: sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A==} engines: {node: '>= 4'} + url-toolkit@2.2.5: + resolution: {integrity: sha512-mtN6xk+Nac+oyJ/PrI7tzfmomRVNFIWKUbG8jdYFt52hxbiReFAXIjYskvu64/dvuW71IcB7lV8l0HvZMac6Jg==} + use@3.1.1: resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} engines: {node: '>=0.10.0'} @@ -7309,6 +7414,40 @@ packages: vditor@3.8.13: resolution: {integrity: sha512-vp6OF1n9wIduKtLvvTYtn+7Gr1Az6MqDIEBpLzik+PTQ208YjrcQ+Ba4AHXMMvJgDtbYP3PdY8OixWKecFzo2A==} + video.js@6.13.0: + resolution: {integrity: sha512-36/JR/GhPQSZj0o+GNbhcEYv/b0SkV9SQsjlodAnzMQYN0TA7VhmqrKPYMCi1NGRYu7S9W3OaFCFoUxkYfSVlg==} + + video.js@8.23.4: + resolution: {integrity: sha512-qI0VTlYmKzEqRsz1Nppdfcaww4RSxZAq77z2oNSl3cNg2h6do5C8Ffl0KqWQ1OpD8desWXsCrde7tKJ9gGTEyQ==} + + videojs-contrib-hls@5.15.0: + resolution: {integrity: sha512-18zbMYZ0XRBKTPEayA9bFTWWrqhT9b4G8+zf0czJLD7Epe5PcK1I/3dflTHQeQ5rwlWir+/XnFU3sMg/B2MMcw==} + engines: {node: '>= 0.10.12'} + + videojs-contrib-media-sources@4.7.2: + resolution: {integrity: sha512-e6iCHWBFuV05EGo7v+pS9iepObXnJ9joms467gzi8ZjpKVb3ifha9M0Ja24Rd8JfvYpzjltsgDVtGFDvIg4hQQ==} + + videojs-contrib-quality-levels@4.1.0: + resolution: {integrity: sha512-TfrXJJg1Bv4t6TOCMEVMwF/CoS8iENYsWNKip8zfhB5kTcegiFYezEA0eHAJPU64ZC8NQbxQgOwAsYU8VXbOWA==} + engines: {node: '>=16', npm: '>=8'} + peerDependencies: + video.js: ^8 + + videojs-font@2.1.0: + resolution: {integrity: sha512-zFqWpLrXf1q8NtYx5qtZhMC6SLUFScDmR6j+UGPogobxR21lvXShhnzcNNMdOxJUuFLiToJ/BPpFUQwX4xhpvA==} + + videojs-font@4.2.0: + resolution: {integrity: sha512-YPq+wiKoGy2/M7ccjmlvwi58z2xsykkkfNMyIg4xb7EZQQNwB71hcSsB3o75CqQV7/y5lXkXhI/rsGAS7jfEmQ==} + + videojs-ie8@1.1.2: + resolution: {integrity: sha512-0Zb2T4MLkpfZbeGMK/Z93b8Lrepr+rLFoHgQV1CoDeFqXvH7b+Vsd/VHoILGxQrgCSHFQ7mAODR6oyMjuiD4/g==} + + videojs-vtt.js@0.12.6: + resolution: {integrity: sha512-XFXeGBQiljnElMhwCcZst0RDbZn2n8LU7ZScXryd3a00OaZsHAjdZu/7/RdSr7Z1jHphd45FnOvOQkGK4YrWCQ==} + + videojs-vtt.js@0.15.5: + resolution: {integrity: sha512-yZbBxvA7QMYn15Lr/ZfhhLPrNpI/RmCSCqgIff57GC2gIrV5YfyzLfLyZMj0NnZSAz8syB4N0nHXpZg9MyrMOQ==} + vite-plugin-compression@0.5.1: resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==} peerDependencies: @@ -7572,6 +7711,9 @@ packages: resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==} engines: {node: '>=10.4'} + webwackify@0.1.6: + resolution: {integrity: sha512-pGcw1T3HpNnM/UTRQqqRkkkzythSLts05mB+7Gr00B+0VbL0m39dFL5g20rSIEUt9Wrpw+/8k+snxRlUFHhcqA==} + whatwg-encoding@1.0.5: resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==} @@ -7724,6 +7866,9 @@ packages: xe-utils@3.3.1: resolution: {integrity: sha512-OdQgl9WPV9dK3/djneFPrGX8z1M4neX+VOkzra5oONjoNsCKQhwdiut99WlxceNMQ5vXDv4EQ/wKA2fux3Gdug==} + xhr@2.4.0: + resolution: {integrity: sha512-TUbBsdAuJbX8olk9hsDwGK8P1ri1XlV+PdEWkYw+HQQbpkiBR8PLgD1F3kQDPBs9l4Px34hP9rCYAZOCCAENbw==} + xlsx@0.17.5: resolution: {integrity: sha512-lXNU0TuYsvElzvtI6O7WIVb9Zar1XYw7Xb3VAx2wn8N/n0whBYrCnHMxtFyIiUU1Wjf09WzmLALDfBO5PqTb1g==} engines: {node: '>=0.8'} @@ -9810,6 +9955,28 @@ snapshots: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 + '@videojs/http-streaming@3.17.2(video.js@8.23.4)': + dependencies: + '@babel/runtime': 7.28.4 + '@videojs/vhs-utils': 4.1.1 + aes-decrypter: 4.0.2 + global: 4.4.0 + m3u8-parser: 7.2.0 + mpd-parser: 1.3.1 + mux.js: 7.1.0 + video.js: 8.23.4 + + '@videojs/vhs-utils@4.1.1': + dependencies: + '@babel/runtime': 7.28.4 + global: 4.4.0 + + '@videojs/xhr@2.7.0': + dependencies: + '@babel/runtime': 7.28.4 + global: 4.4.0 + is-function: 1.0.2 + '@vitejs/plugin-legacy@2.0.0(terser@5.44.1)(vite@3.0.2(less@4.1.2)(sass@1.66.1)(terser@5.44.1))': dependencies: '@babel/standalone': 7.28.5 @@ -10101,6 +10268,8 @@ snapshots: transitivePeerDependencies: - supports-color + '@xmldom/xmldom@0.8.11': {} + '@zxcvbn-ts/core@2.0.1': dependencies: fastest-levenshtein: 1.0.12 @@ -10140,6 +10309,17 @@ snapshots: adler-32@1.3.1: {} + aes-decrypter@1.0.3: + dependencies: + pkcs7: 0.2.3 + + aes-decrypter@4.0.2: + dependencies: + '@babel/runtime': 7.28.4 + '@videojs/vhs-utils': 4.1.1 + global: 4.4.0 + pkcs7: 1.0.4 + agent-base@6.0.2: dependencies: debug: 4.4.3(supports-color@9.4.0) @@ -11379,6 +11559,8 @@ snapshots: domhandler: 4.3.1 entities: 2.2.0 + dom-walk@0.1.2: {} + domelementtype@1.3.1: {} domelementtype@2.3.0: {} @@ -11615,6 +11797,8 @@ snapshots: is-date-object: 1.1.0 is-symbol: 1.1.1 + es5-shim@4.6.7: {} + esbuild-android-64@0.14.54: optional: true @@ -12411,6 +12595,16 @@ snapshots: kind-of: 6.0.3 which: 1.3.1 + global@4.3.2: + dependencies: + min-document: 2.19.2 + process: 0.5.2 + + global@4.4.0: + dependencies: + min-document: 2.19.2 + process: 0.11.10 + globals@13.24.0: dependencies: type-fest: 0.20.2 @@ -12774,6 +12968,8 @@ snapshots: indent-string@4.0.0: {} + individual@2.0.0: {} + inflight@1.0.6: dependencies: once: 1.4.0 @@ -12937,6 +13133,8 @@ snapshots: is-fullwidth-code-point@4.0.0: {} + is-function@1.0.2: {} + is-generator-fn@2.1.0: {} is-generator-function@1.1.2: @@ -13816,6 +14014,14 @@ snapshots: luxon@1.28.1: {} + m3u8-parser@2.1.0: {} + + m3u8-parser@7.2.0: + dependencies: + '@babel/runtime': 7.28.4 + '@videojs/vhs-utils': 4.1.1 + global: 4.4.0 + magic-string@0.25.9: dependencies: sourcemap-codec: 1.4.8 @@ -13967,6 +14173,10 @@ snapshots: mimic-response@1.0.1: {} + min-document@2.19.2: + dependencies: + dom-walk: 0.1.2 + min-indent@1.0.1: {} minimatch@10.1.1: @@ -14013,6 +14223,13 @@ snapshots: bin-build: 3.0.0 bin-wrapper: bin-wrapper-china@0.1.0 + mpd-parser@1.3.1: + dependencies: + '@babel/runtime': 7.28.4 + '@videojs/vhs-utils': 4.1.1 + '@xmldom/xmldom': 0.8.11 + global: 4.4.0 + mri@1.2.0: {} ms@2.0.0: {} @@ -14031,6 +14248,13 @@ snapshots: mute-stream@0.0.8: {} + mux.js@4.3.2: {} + + mux.js@7.1.0: + dependencies: + '@babel/runtime': 7.28.4 + global: 4.4.0 + nanoid@3.3.11: {} nanomatch@1.2.13: @@ -14311,6 +14535,8 @@ snapshots: dependencies: callsites: 3.1.0 + parse-headers@2.0.6: {} + parse-json@2.2.0: dependencies: error-ex: 1.3.4 @@ -14416,6 +14642,12 @@ snapshots: pirates@4.0.7: {} + pkcs7@0.2.3: {} + + pkcs7@1.0.4: + dependencies: + '@babel/runtime': 7.28.4 + pkg-dir@4.2.0: dependencies: find-up: 4.1.0 @@ -14553,6 +14785,10 @@ snapshots: process-nextick-args@2.0.1: {} + process@0.11.10: {} + + process@0.5.2: {} + prompts@2.4.2: dependencies: kleur: 3.0.3 @@ -14865,6 +15101,10 @@ snapshots: dependencies: queue-microtask: 1.2.3 + rust-result@1.0.0: + dependencies: + individual: 2.0.0 + rxjs@6.6.7: dependencies: tslib: 1.14.1 @@ -14885,6 +15125,10 @@ snapshots: safe-buffer@5.2.1: {} + safe-json-parse@4.0.0: + dependencies: + rust-result: 1.0.0 + safe-push-apply@1.0.0: dependencies: es-errors: 1.3.0 @@ -15676,6 +15920,8 @@ snapshots: tslib@2.8.1: {} + tsml@1.0.1: {} + tsutils@3.21.0(typescript@4.6.3): dependencies: tslib: 1.14.1 @@ -15852,6 +16098,8 @@ snapshots: url-to-options@1.0.1: {} + url-toolkit@2.2.5: {} + use@3.1.1: {} util-deprecate@1.0.2: {} @@ -15885,6 +16133,71 @@ snapshots: dependencies: diff-match-patch: 1.0.5 + video.js@6.13.0: + dependencies: + babel-runtime: 6.26.0 + global: 4.3.2 + safe-json-parse: 4.0.0 + tsml: 1.0.1 + videojs-font: 2.1.0 + videojs-ie8: 1.1.2 + videojs-vtt.js: 0.12.6 + xhr: 2.4.0 + + video.js@8.23.4: + dependencies: + '@babel/runtime': 7.28.4 + '@videojs/http-streaming': 3.17.2(video.js@8.23.4) + '@videojs/vhs-utils': 4.1.1 + '@videojs/xhr': 2.7.0 + aes-decrypter: 4.0.2 + global: 4.4.0 + m3u8-parser: 7.2.0 + mpd-parser: 1.3.1 + mux.js: 7.1.0 + videojs-contrib-quality-levels: 4.1.0(video.js@8.23.4) + videojs-font: 4.2.0 + videojs-vtt.js: 0.15.5 + + videojs-contrib-hls@5.15.0: + dependencies: + aes-decrypter: 1.0.3 + global: 4.4.0 + m3u8-parser: 2.1.0 + mux.js: 4.3.2 + url-toolkit: 2.2.5 + video.js: 6.13.0 + videojs-contrib-media-sources: 4.7.2 + webwackify: 0.1.6 + + videojs-contrib-media-sources@4.7.2: + dependencies: + global: 4.4.0 + mux.js: 4.3.2 + video.js: 6.13.0 + webwackify: 0.1.6 + + videojs-contrib-quality-levels@4.1.0(video.js@8.23.4): + dependencies: + global: 4.4.0 + video.js: 8.23.4 + + videojs-font@2.1.0: {} + + videojs-font@4.2.0: {} + + videojs-ie8@1.1.2: + dependencies: + es5-shim: 4.6.7 + + videojs-vtt.js@0.12.6: + dependencies: + global: 4.4.0 + + videojs-vtt.js@0.15.5: + dependencies: + global: 4.4.0 + vite-plugin-compression@0.5.1(vite@3.0.2(less@4.1.2)(sass@1.66.1)(terser@5.44.1)): dependencies: chalk: 4.1.2 @@ -16235,6 +16548,8 @@ snapshots: webidl-conversions@6.1.0: {} + webwackify@0.1.6: {} + whatwg-encoding@1.0.5: dependencies: iconv-lite: 0.4.24 @@ -16466,6 +16781,13 @@ snapshots: xe-utils@3.3.1: {} + xhr@2.4.0: + dependencies: + global: 4.3.2 + is-function: 1.0.2 + parse-headers: 2.0.6 + xtend: 4.0.2 + xlsx@0.17.5: dependencies: adler-32: 1.2.0 diff --git a/public/camera/main_control_bg.png b/public/camera/main_control_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..190e37b2229df4fc2567fbf7f8b6086572689177 GIT binary patch literal 3248 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 literal 0 HcmV?d00001 diff --git a/public/camera/step_down.png b/public/camera/step_down.png new file mode 100644 index 0000000000000000000000000000000000000000..1b61c6cfa189b468b1a2ee311bbc46b66d9f84aa GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaN3?zjj6;1;wg8-ipSN8&+yo#o}ju{LLY|XuM z03GxeOkh~>7;a)cP zy^Ar*=Ze&#OMw#Zo-U3d5|@(`7N{l&GfaFb;I~d`Lc-2ShG!hHOkO|t888$}l!{75 zykm7XWn5Y_U&_I&J@Oxh=~t#O+dhUf}YX52)srr;B5V#`&caPfj|l zz~gdMiqUAc;lKa(y$wfBUb!Np7Fd|^U7PcA(`|WHdBz!A?esa#9oEjh+>u|zRC207 zvwg+#6xPMz+RA&x=kkiSae3({uq@T_EZLUo9VF4tZ1H%qt#_WwrlW`7?OUyWV)@;m zPRnU`^ICtsdJwoNr_4HQ?VIJ#pYu za&?OZ)_6R4WtsFj@u&7`�A=zZM9@z2v)OE7*Cu{s^D)1_29EUiOcNFjNjG@@?76o-U#$1gQu&X%Q~loCIAWpoihLc literal 0 HcmV?d00001 diff --git a/public/camera/step_left.png b/public/camera/step_left.png new file mode 100644 index 0000000000000000000000000000000000000000..3c61bcc723b94e5a0981b4761cef5b31a7306423 GIT binary patch literal 198 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaN3?zjj6;1;wg8-ipSN8&+=FYjzy>qh)>noZj z)_2U{jla)GqaV{^%PdLn^-si6(nYqI=KgFND3bW%JG&2`2{nmKXvW;y*yGX zqHE2b_>-++KnV*^7sn8Z%gG4}(gtD*g)QrpJzv;4PuelvVG+yeyUZSJ?|I!G6~vl4 qJo>5Rz45`sU!8B>u(4$^Fih0v+k5-ww#7g*7(8A5T-G@yGywqju|bXi literal 0 HcmV?d00001 diff --git a/public/camera/step_left_hover.png b/public/camera/step_left_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..628bebe7f6480dde247adb3a44c6e614598e14a8 GIT binary patch literal 372 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaAxd!-zxVjhkF#Knr5LMKhnE(wG zD+%%oW)O8WDYpxj$`lkJz_W@I_oaG?oyux(>%UE6?7Kt zTzt1?Q?0eC&x6Ygwvbi}L;F>IuuHe{n3WUCQ9o$d{D+ zR?T6ldV;3lx@+r%syMB$Pk5&ibbg0R29K`Q$I7=|l277;`i?wT=2^lMny^ literal 0 HcmV?d00001 diff --git a/public/camera/step_right.png b/public/camera/step_right.png new file mode 100644 index 0000000000000000000000000000000000000000..f7061e856794c92fb8bae4e53509092ab4f6596f GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaA*$4Q9xVjhkXz7~eSG1Ma_c!;< z$uDoOYMz{!RZ`b6gMooX*TABwZ$1M9M|1DorrtR%z4Mrv*_=ItfZT?znO1i0`N|u= z0*w+X3GxeO_~df1-1ZpP538?HO0|=B#C+2DZn+*P>*DF+7@~1LIbnf(!t?Z_dI!~y zG{&~g?X{6q3rd|)cya>=C+DVQQE@TB1A6CxWku_+-m=$a49 zg^0om!SqWFr%Lb6326J;(qR2+*YD1ZCt*Ksy9Si4i}1+HR{5P#sotp8S*PBcEmYw@ z(IiznyIA0`c)@B@eujC@eNo-se}h#7(qE_R>$uzQ((3;w&{A|H=C!CmTf_5g)w$|S zE9WTr)y_&>6O{Wld49~s*8v|MZ!wUcYv=r%_jG(Idw~MCdk;%1FVI5_p00i_>zopr E0K)=|%K!iX literal 0 HcmV?d00001 diff --git a/public/camera/step_up.png b/public/camera/step_up.png new file mode 100644 index 0000000000000000000000000000000000000000..9c69bc8aeaaad0d061331f41b21256b834a3796e GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaA83*`;xVjhku(ERT@Cqhnl`}E2 zS=)QYr5BVp^f&j+E3fa%D{FOf4{Yw46BwRi@9f*uGsnTjFSJVK9Z)-eNswPKgXxBU zA^-UDij$q+eVG04T(mV4P|C;C#W6(Vd~$-ss)lCab_;uZYreuYMh=BxaXLl{g<@=F zb#;C@k9Z`2LUv*X+@Wo~?ePt)r_!FMr@5RcDBOJD<{Y0BX&ViBN*Ne_v@kWazTEj6 PXfA`NtDnm{r-UW|+t5mT literal 0 HcmV?d00001 diff --git a/public/camera/step_up_hover.png b/public/camera/step_up_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..92b01db3549b089d2a2eee5aeb319e44fc264b3b GIT binary patch literal 372 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 literal 0 HcmV?d00001 diff --git a/public/camera/video_icon.png b/public/camera/video_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..65d3b594860b64e794d131645010ea092616f5dd GIT binary patch literal 3068 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 { return defHttp.post({ url: Api.getYsToken }, { isTransformResponse: false }); } +/** + * 获取token + * @param params + * @param isUpdate + */ +export const getCamList = () => { + return defHttp.post({ url: Api.getCamraInfo }, { isTransformResponse: false }); +} + /** * 获取球阀状态 @@ -134,3 +146,20 @@ export const deviceInit = (params, handleSuccess) => { * @param params */ export const getDeviceData = (params) => defHttp.get({ url: Api.getDeviceData, params }, { isTransformResponse: false }); + + +/** + * 摄像头控制开始 + * @param params + */ +export const cameraStart = (params) => { + return defHttp.post({ url: Api.cameraStartApi, params }, { isTransformResponse: false }); +} + +/** + * 摄像头控制结束 + * @param params + */ +export const cameraStop = (params) => { + return defHttp.post({ url: Api.cameraStopApi, params }, { isTransformResponse: false }); +} diff --git a/src/views/appmana/liveCamra/MonitorModal.vue b/src/views/appmana/liveCamra/MonitorModal.vue new file mode 100644 index 0000000..122c0e6 --- /dev/null +++ b/src/views/appmana/liveCamra/MonitorModal.vue @@ -0,0 +1,516 @@ + + + + + diff --git a/src/views/appmana/liveCamra/index.vue b/src/views/appmana/liveCamra/index.vue index d28b6e6..2e0c2e2 100644 --- a/src/views/appmana/liveCamra/index.vue +++ b/src/views/appmana/liveCamra/index.vue @@ -1,62 +1,91 @@ - - - - \ No newline at end of file + + diff --git a/src/views/appmana/liveCamra/index_bak.vue b/src/views/appmana/liveCamra/index_bak.vue new file mode 100644 index 0000000..5455ed5 --- /dev/null +++ b/src/views/appmana/liveCamra/index_bak.vue @@ -0,0 +1,60 @@ + + + + diff --git a/src/views/appmana/maintainrecord/SurvMaintainRecord.data.ts b/src/views/appmana/maintainrecord/SurvMaintainRecord.data.ts index a8246ef..84adc67 100644 --- a/src/views/appmana/maintainrecord/SurvMaintainRecord.data.ts +++ b/src/views/appmana/maintainrecord/SurvMaintainRecord.data.ts @@ -10,7 +10,7 @@ export const columns: BasicColumn[] = [ dataIndex: 'stationName' }, { - title: '运维项', + title: '监测情况', align: "center", dataIndex: 'maintainData1' }, @@ -20,7 +20,7 @@ export const columns: BasicColumn[] = [ // dataIndex: 'omName' // }, { - title: '运维时间', + title: '维护时间', align: "center", dataIndex: 'maintainTime' }, @@ -30,7 +30,7 @@ export const columns: BasicColumn[] = [ dataIndex: 'maintainNote' }, { - title: '运维人员', + title: '负责人', align: "center", dataIndex: 'maintainPerson' }, @@ -53,7 +53,7 @@ export const formSchema: FormSchema[] = [ component: 'Input', }, { - label: '运维时间', + label: '维护时间', field: 'maintainTime', component: 'Input', }, @@ -63,7 +63,7 @@ export const formSchema: FormSchema[] = [ component: 'Input', }, { - label: '运维人员', + label: '负责人', field: 'maintainPerson', component: 'Input', }, diff --git a/src/views/appmana/maintainrecord/SurvMaintainRecordList.vue b/src/views/appmana/maintainrecord/SurvMaintainRecordList.vue index ae88fee..68d19b9 100644 --- a/src/views/appmana/maintainrecord/SurvMaintainRecordList.vue +++ b/src/views/appmana/maintainrecord/SurvMaintainRecordList.vue @@ -19,15 +19,15 @@ - + @@ -145,7 +145,7 @@ import { getStationList } from '../station/SurvStationInfo.api'; registerModal.value.disableSubmit = false; registerModal.value.add(); } - + /** * 编辑事件 */ @@ -153,7 +153,7 @@ import { getStationList } from '../station/SurvStationInfo.api'; registerModal.value.disableSubmit = false; registerModal.value.edit(record); } - + /** * 详情 */ @@ -161,28 +161,28 @@ import { getStationList } from '../station/SurvStationInfo.api'; registerModal.value.disableSubmit = true; registerModal.value.edit(record); } - + /** * 删除事件 */ async function handleDelete(record) { await deleteOne({ id: record.id }, handleSuccess); } - + /** * 批量删除事件 */ async function batchHandleDelete() { await batchDelete({ ids: selectedRowKeys.value }, handleSuccess); } - + /** * 成功回调 */ function handleSuccess() { (selectedRowKeys.value = []) && reload(); } - + /** * 操作栏 */ @@ -194,7 +194,7 @@ import { getStationList } from '../station/SurvStationInfo.api'; }, ]; } - + /** * 下拉操作栏 */ @@ -219,7 +219,7 @@ import { getStationList } from '../station/SurvStationInfo.api'; function searchQuery() { reload(); } - + /** * 重置 */ @@ -229,7 +229,7 @@ import { getStationList } from '../station/SurvStationInfo.api'; //刷新数据 reload(); } - + diff --git a/src/views/appmana/maintainrecord/components/SurvMaintainRecordForm.vue b/src/views/appmana/maintainrecord/components/SurvMaintainRecordForm.vue index 83c682d..d4bbd58 100644 --- a/src/views/appmana/maintainrecord/components/SurvMaintainRecordForm.vue +++ b/src/views/appmana/maintainrecord/components/SurvMaintainRecordForm.vue @@ -18,8 +18,23 @@ - - + + + + + + + + + + + + + + + + + - + @@ -47,11 +62,7 @@ - - - - - + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 查询 + 重置 + + + + + +
+ + + + + + + + + + + + + + + + + + + + diff --git a/src/views/appmana/survconfig/components/FSurvConfigForm.vue b/src/views/appmana/survconfig/components/FSurvConfigForm.vue new file mode 100644 index 0000000..bb94c84 --- /dev/null +++ b/src/views/appmana/survconfig/components/FSurvConfigForm.vue @@ -0,0 +1,196 @@ + + + + + diff --git a/src/views/appmana/survconfig/components/FSurvConfigModal.vue b/src/views/appmana/survconfig/components/FSurvConfigModal.vue new file mode 100644 index 0000000..e351801 --- /dev/null +++ b/src/views/appmana/survconfig/components/FSurvConfigModal.vue @@ -0,0 +1,75 @@ + + + + +