Compare commits
2 Commits
f4e11d5c33
...
a7b5eb355f
| Author | SHA1 | Date |
|---|---|---|
|
|
a7b5eb355f | |
|
|
73cfe3908f |
|
|
@ -1,10 +1,10 @@
|
||||||
# 页面标题
|
# 页面标题
|
||||||
VUE_APP_TITLE = 博诺思管理系统
|
VUE_APP_TITLE = 智慧工地
|
||||||
|
|
||||||
# 开发环境配置
|
# 开发环境配置
|
||||||
ENV = 'development'
|
ENV = 'development'
|
||||||
|
|
||||||
# 博诺思管理系统/开发环境
|
# 智慧工地/开发环境
|
||||||
VUE_APP_BASE_API = '/dev-api'
|
VUE_APP_BASE_API = '/dev-api'
|
||||||
|
|
||||||
# 路由懒加载
|
# 路由懒加载
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
# 页面标题
|
# 页面标题
|
||||||
VUE_APP_TITLE = 博诺思管理系统
|
VUE_APP_TITLE = 智慧工地
|
||||||
|
|
||||||
# 生产环境配置
|
# 生产环境配置
|
||||||
ENV = 'production'
|
ENV = 'production'
|
||||||
|
|
||||||
# 博诺思管理系统/生产环境
|
# 智慧工地/生产环境
|
||||||
VUE_APP_BASE_API = '/prod-api'
|
VUE_APP_BASE_API = '/prod-api'
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
# 页面标题
|
# 页面标题
|
||||||
VUE_APP_TITLE = 博诺思管理系统
|
VUE_APP_TITLE = 智慧工地
|
||||||
|
|
||||||
NODE_ENV = production
|
NODE_ENV = production
|
||||||
|
|
||||||
# 测试环境配置
|
# 测试环境配置
|
||||||
ENV = 'staging'
|
ENV = 'staging'
|
||||||
|
|
||||||
# 博诺思管理系统/测试环境
|
# 智慧工地/测试环境
|
||||||
VUE_APP_BASE_API = '/stage-api'
|
VUE_APP_BASE_API = '/stage-api'
|
||||||
|
|
|
||||||
|
|
@ -5407,9 +5407,10 @@
|
||||||
},
|
},
|
||||||
"node_modules/core-js": {
|
"node_modules/core-js": {
|
||||||
"version": "3.25.3",
|
"version": "3.25.3",
|
||||||
"resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.25.3.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/core-js/-/core-js-3.25.3.tgz",
|
||||||
"integrity": "sha512-y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ==",
|
"integrity": "sha512-y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ==",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
|
"license": "MIT",
|
||||||
"funding": {
|
"funding": {
|
||||||
"type": "opencollective",
|
"type": "opencollective",
|
||||||
"url": "https://opencollective.com/core-js"
|
"url": "https://opencollective.com/core-js"
|
||||||
|
|
@ -5913,8 +5914,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/decompress-response": {
|
"node_modules/decompress-response": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/decompress-response/-/decompress-response-6.0.0.tgz",
|
||||||
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
|
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"mimic-response": "^3.1.0"
|
"mimic-response": "^3.1.0"
|
||||||
},
|
},
|
||||||
|
|
@ -6844,8 +6846,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/es6-promise": {
|
"node_modules/es6-promise": {
|
||||||
"version": "4.2.8",
|
"version": "4.2.8",
|
||||||
"resolved": "https://registry.npmmirror.com/es6-promise/-/es6-promise-4.2.8.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/es6-promise/-/es6-promise-4.2.8.tgz",
|
||||||
"integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w=="
|
"integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/escalade": {
|
"node_modules/escalade": {
|
||||||
"version": "3.2.0",
|
"version": "3.2.0",
|
||||||
|
|
@ -7880,8 +7883,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/flv.js": {
|
"node_modules/flv.js": {
|
||||||
"version": "1.6.2",
|
"version": "1.6.2",
|
||||||
"resolved": "https://registry.npmmirror.com/flv.js/-/flv.js-1.6.2.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/flv.js/-/flv.js-1.6.2.tgz",
|
||||||
"integrity": "sha512-xre4gUbX1MPtgQRKj2pxJENp/RnaHaxYvy3YToVVCrSmAWUu85b9mug6pTXF6zakUjNP2lFWZ1rkSX7gxhB/2A==",
|
"integrity": "sha512-xre4gUbX1MPtgQRKj2pxJENp/RnaHaxYvy3YToVVCrSmAWUu85b9mug6pTXF6zakUjNP2lFWZ1rkSX7gxhB/2A==",
|
||||||
|
"license": "Apache-2.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"es6-promise": "^4.2.8",
|
"es6-promise": "^4.2.8",
|
||||||
"webworkify-webpack": "^2.1.5"
|
"webworkify-webpack": "^2.1.5"
|
||||||
|
|
@ -9960,8 +9964,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/js-binary-schema-parser": {
|
"node_modules/js-binary-schema-parser": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmmirror.com/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz",
|
||||||
"integrity": "sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg=="
|
"integrity": "sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/js-cookie": {
|
"node_modules/js-cookie": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
|
|
@ -10946,8 +10951,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/mimic-response": {
|
"node_modules/mimic-response": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-3.1.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/mimic-response/-/mimic-response-3.1.0.tgz",
|
||||||
"integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
|
"integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
|
||||||
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=10"
|
"node": ">=10"
|
||||||
},
|
},
|
||||||
|
|
@ -12135,8 +12141,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/parenthesis": {
|
"node_modules/parenthesis": {
|
||||||
"version": "3.1.8",
|
"version": "3.1.8",
|
||||||
"resolved": "https://registry.npmmirror.com/parenthesis/-/parenthesis-3.1.8.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/parenthesis/-/parenthesis-3.1.8.tgz",
|
||||||
"integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw=="
|
"integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/parse-asn1": {
|
"node_modules/parse-asn1": {
|
||||||
"version": "5.1.7",
|
"version": "5.1.7",
|
||||||
|
|
@ -14849,7 +14856,7 @@
|
||||||
},
|
},
|
||||||
"node_modules/simple-concat": {
|
"node_modules/simple-concat": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/simple-concat/-/simple-concat-1.0.1.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/simple-concat/-/simple-concat-1.0.1.tgz",
|
||||||
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
|
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
|
@ -14864,11 +14871,12 @@
|
||||||
"type": "consulting",
|
"type": "consulting",
|
||||||
"url": "https://feross.org/support"
|
"url": "https://feross.org/support"
|
||||||
}
|
}
|
||||||
]
|
],
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/simple-get": {
|
"node_modules/simple-get": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/simple-get/-/simple-get-4.0.1.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/simple-get/-/simple-get-4.0.1.tgz",
|
||||||
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
|
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
|
@ -14884,6 +14892,7 @@
|
||||||
"url": "https://feross.org/support"
|
"url": "https://feross.org/support"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"decompress-response": "^6.0.0",
|
"decompress-response": "^6.0.0",
|
||||||
"once": "^1.3.1",
|
"once": "^1.3.1",
|
||||||
|
|
@ -15461,8 +15470,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/string-split-by": {
|
"node_modules/string-split-by": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/string-split-by/-/string-split-by-1.0.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/string-split-by/-/string-split-by-1.0.0.tgz",
|
||||||
"integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==",
|
"integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"parenthesis": "^3.1.5"
|
"parenthesis": "^3.1.5"
|
||||||
}
|
}
|
||||||
|
|
@ -17535,8 +17545,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/vue-qr": {
|
"node_modules/vue-qr": {
|
||||||
"version": "4.0.9",
|
"version": "4.0.9",
|
||||||
"resolved": "https://registry.npmmirror.com/vue-qr/-/vue-qr-4.0.9.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/vue-qr/-/vue-qr-4.0.9.tgz",
|
||||||
"integrity": "sha512-pAISV94T0MNEYA3NGjykUpsXRE2QfaNxlu9ZhEL6CERgqNc21hJYuP3hRVzAWfBQlgO18DPmZTbrFerJC3+Ikw==",
|
"integrity": "sha512-pAISV94T0MNEYA3NGjykUpsXRE2QfaNxlu9ZhEL6CERgqNc21hJYuP3hRVzAWfBQlgO18DPmZTbrFerJC3+Ikw==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"glob": "^8.0.1",
|
"glob": "^8.0.1",
|
||||||
"js-binary-schema-parser": "^2.0.2",
|
"js-binary-schema-parser": "^2.0.2",
|
||||||
|
|
@ -17546,17 +17557,19 @@
|
||||||
},
|
},
|
||||||
"node_modules/vue-qr/node_modules/brace-expansion": {
|
"node_modules/vue-qr/node_modules/brace-expansion": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
||||||
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"balanced-match": "^1.0.0"
|
"balanced-match": "^1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/vue-qr/node_modules/glob": {
|
"node_modules/vue-qr/node_modules/glob": {
|
||||||
"version": "8.1.0",
|
"version": "8.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/glob/-/glob-8.1.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/glob/-/glob-8.1.0.tgz",
|
||||||
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
|
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
|
||||||
"deprecated": "Glob versions prior to v9 are no longer supported",
|
"deprecated": "Glob versions prior to v9 are no longer supported",
|
||||||
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"fs.realpath": "^1.0.0",
|
"fs.realpath": "^1.0.0",
|
||||||
"inflight": "^1.0.4",
|
"inflight": "^1.0.4",
|
||||||
|
|
@ -17573,8 +17586,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/vue-qr/node_modules/minimatch": {
|
"node_modules/vue-qr/node_modules/minimatch": {
|
||||||
"version": "5.1.6",
|
"version": "5.1.6",
|
||||||
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.6.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/minimatch/-/minimatch-5.1.6.tgz",
|
||||||
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
||||||
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"brace-expansion": "^2.0.1"
|
"brace-expansion": "^2.0.1"
|
||||||
},
|
},
|
||||||
|
|
@ -18759,8 +18773,9 @@
|
||||||
},
|
},
|
||||||
"node_modules/webworkify-webpack": {
|
"node_modules/webworkify-webpack": {
|
||||||
"version": "2.1.5",
|
"version": "2.1.5",
|
||||||
"resolved": "https://registry.npmmirror.com/webworkify-webpack/-/webworkify-webpack-2.1.5.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/webworkify-webpack/-/webworkify-webpack-2.1.5.tgz",
|
||||||
"integrity": "sha512-2akF8FIyUvbiBBdD+RoHpoTbHMQF2HwjcxfDvgztAX5YwbZNyrtfUMgvfgFVsgDhDPVTlkbb5vyasqDHfIDPQw=="
|
"integrity": "sha512-2akF8FIyUvbiBBdD+RoHpoTbHMQF2HwjcxfDvgztAX5YwbZNyrtfUMgvfgFVsgDhDPVTlkbb5vyasqDHfIDPQw==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/which": {
|
"node_modules/which": {
|
||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
|
|
@ -23227,7 +23242,7 @@
|
||||||
},
|
},
|
||||||
"core-js": {
|
"core-js": {
|
||||||
"version": "3.25.3",
|
"version": "3.25.3",
|
||||||
"resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.25.3.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/core-js/-/core-js-3.25.3.tgz",
|
||||||
"integrity": "sha512-y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ=="
|
"integrity": "sha512-y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ=="
|
||||||
},
|
},
|
||||||
"core-js-compat": {
|
"core-js-compat": {
|
||||||
|
|
@ -23619,7 +23634,7 @@
|
||||||
},
|
},
|
||||||
"decompress-response": {
|
"decompress-response": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/decompress-response/-/decompress-response-6.0.0.tgz",
|
||||||
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
|
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"mimic-response": "^3.1.0"
|
"mimic-response": "^3.1.0"
|
||||||
|
|
@ -24379,7 +24394,7 @@
|
||||||
},
|
},
|
||||||
"es6-promise": {
|
"es6-promise": {
|
||||||
"version": "4.2.8",
|
"version": "4.2.8",
|
||||||
"resolved": "https://registry.npmmirror.com/es6-promise/-/es6-promise-4.2.8.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/es6-promise/-/es6-promise-4.2.8.tgz",
|
||||||
"integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w=="
|
"integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w=="
|
||||||
},
|
},
|
||||||
"escalade": {
|
"escalade": {
|
||||||
|
|
@ -25190,7 +25205,7 @@
|
||||||
},
|
},
|
||||||
"flv.js": {
|
"flv.js": {
|
||||||
"version": "1.6.2",
|
"version": "1.6.2",
|
||||||
"resolved": "https://registry.npmmirror.com/flv.js/-/flv.js-1.6.2.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/flv.js/-/flv.js-1.6.2.tgz",
|
||||||
"integrity": "sha512-xre4gUbX1MPtgQRKj2pxJENp/RnaHaxYvy3YToVVCrSmAWUu85b9mug6pTXF6zakUjNP2lFWZ1rkSX7gxhB/2A==",
|
"integrity": "sha512-xre4gUbX1MPtgQRKj2pxJENp/RnaHaxYvy3YToVVCrSmAWUu85b9mug6pTXF6zakUjNP2lFWZ1rkSX7gxhB/2A==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"es6-promise": "^4.2.8",
|
"es6-promise": "^4.2.8",
|
||||||
|
|
@ -26721,7 +26736,7 @@
|
||||||
},
|
},
|
||||||
"js-binary-schema-parser": {
|
"js-binary-schema-parser": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmmirror.com/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz",
|
||||||
"integrity": "sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg=="
|
"integrity": "sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg=="
|
||||||
},
|
},
|
||||||
"js-cookie": {
|
"js-cookie": {
|
||||||
|
|
@ -27498,7 +27513,7 @@
|
||||||
},
|
},
|
||||||
"mimic-response": {
|
"mimic-response": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-3.1.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/mimic-response/-/mimic-response-3.1.0.tgz",
|
||||||
"integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ=="
|
"integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ=="
|
||||||
},
|
},
|
||||||
"mini-css-extract-plugin": {
|
"mini-css-extract-plugin": {
|
||||||
|
|
@ -28436,7 +28451,7 @@
|
||||||
},
|
},
|
||||||
"parenthesis": {
|
"parenthesis": {
|
||||||
"version": "3.1.8",
|
"version": "3.1.8",
|
||||||
"resolved": "https://registry.npmmirror.com/parenthesis/-/parenthesis-3.1.8.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/parenthesis/-/parenthesis-3.1.8.tgz",
|
||||||
"integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw=="
|
"integrity": "sha512-KF/U8tk54BgQewkJPvB4s/US3VQY68BRDpH638+7O/n58TpnwiwnOtGIOsT2/i+M78s61BBpeC83STB88d8sqw=="
|
||||||
},
|
},
|
||||||
"parse-asn1": {
|
"parse-asn1": {
|
||||||
|
|
@ -30651,12 +30666,12 @@
|
||||||
},
|
},
|
||||||
"simple-concat": {
|
"simple-concat": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/simple-concat/-/simple-concat-1.0.1.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/simple-concat/-/simple-concat-1.0.1.tgz",
|
||||||
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q=="
|
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q=="
|
||||||
},
|
},
|
||||||
"simple-get": {
|
"simple-get": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/simple-get/-/simple-get-4.0.1.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/simple-get/-/simple-get-4.0.1.tgz",
|
||||||
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
|
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"decompress-response": "^6.0.0",
|
"decompress-response": "^6.0.0",
|
||||||
|
|
@ -31158,7 +31173,7 @@
|
||||||
},
|
},
|
||||||
"string-split-by": {
|
"string-split-by": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/string-split-by/-/string-split-by-1.0.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/string-split-by/-/string-split-by-1.0.0.tgz",
|
||||||
"integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==",
|
"integrity": "sha512-KaJKY+hfpzNyet/emP81PJA9hTVSfxNLS9SFTWxdCnnW1/zOOwiV248+EfoX7IQFcBaOp4G5YE6xTJMF+pLg6A==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"parenthesis": "^3.1.5"
|
"parenthesis": "^3.1.5"
|
||||||
|
|
@ -32793,7 +32808,7 @@
|
||||||
},
|
},
|
||||||
"vue-qr": {
|
"vue-qr": {
|
||||||
"version": "4.0.9",
|
"version": "4.0.9",
|
||||||
"resolved": "https://registry.npmmirror.com/vue-qr/-/vue-qr-4.0.9.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/vue-qr/-/vue-qr-4.0.9.tgz",
|
||||||
"integrity": "sha512-pAISV94T0MNEYA3NGjykUpsXRE2QfaNxlu9ZhEL6CERgqNc21hJYuP3hRVzAWfBQlgO18DPmZTbrFerJC3+Ikw==",
|
"integrity": "sha512-pAISV94T0MNEYA3NGjykUpsXRE2QfaNxlu9ZhEL6CERgqNc21hJYuP3hRVzAWfBQlgO18DPmZTbrFerJC3+Ikw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"glob": "^8.0.1",
|
"glob": "^8.0.1",
|
||||||
|
|
@ -32804,7 +32819,7 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"brace-expansion": {
|
"brace-expansion": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
||||||
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"balanced-match": "^1.0.0"
|
"balanced-match": "^1.0.0"
|
||||||
|
|
@ -32812,7 +32827,7 @@
|
||||||
},
|
},
|
||||||
"glob": {
|
"glob": {
|
||||||
"version": "8.1.0",
|
"version": "8.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/glob/-/glob-8.1.0.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/glob/-/glob-8.1.0.tgz",
|
||||||
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
|
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"fs.realpath": "^1.0.0",
|
"fs.realpath": "^1.0.0",
|
||||||
|
|
@ -32824,7 +32839,7 @@
|
||||||
},
|
},
|
||||||
"minimatch": {
|
"minimatch": {
|
||||||
"version": "5.1.6",
|
"version": "5.1.6",
|
||||||
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.6.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/minimatch/-/minimatch-5.1.6.tgz",
|
||||||
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"brace-expansion": "^2.0.1"
|
"brace-expansion": "^2.0.1"
|
||||||
|
|
@ -33790,7 +33805,7 @@
|
||||||
},
|
},
|
||||||
"webworkify-webpack": {
|
"webworkify-webpack": {
|
||||||
"version": "2.1.5",
|
"version": "2.1.5",
|
||||||
"resolved": "https://registry.npmmirror.com/webworkify-webpack/-/webworkify-webpack-2.1.5.tgz",
|
"resolved": "https://repo.huaweicloud.com/repository/npm/webworkify-webpack/-/webworkify-webpack-2.1.5.tgz",
|
||||||
"integrity": "sha512-2akF8FIyUvbiBBdD+RoHpoTbHMQF2HwjcxfDvgztAX5YwbZNyrtfUMgvfgFVsgDhDPVTlkbb5vyasqDHfIDPQw=="
|
"integrity": "sha512-2akF8FIyUvbiBBdD+RoHpoTbHMQF2HwjcxfDvgztAX5YwbZNyrtfUMgvfgFVsgDhDPVTlkbb5vyasqDHfIDPQw=="
|
||||||
},
|
},
|
||||||
"which": {
|
"which": {
|
||||||
|
|
|
||||||
184
package.json
184
package.json
|
|
@ -1,95 +1,95 @@
|
||||||
{
|
{
|
||||||
"name": "bonus",
|
"name": "bonus",
|
||||||
"version": "3.6.4",
|
"version": "3.6.4",
|
||||||
"description": "博诺思管理系统",
|
"description": "智慧工地",
|
||||||
"author": "博诺思",
|
"author": "博诺思",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vue-cli-service serve",
|
"dev": "vue-cli-service serve",
|
||||||
"build:prod": "vue-cli-service build",
|
"build:prod": "vue-cli-service build",
|
||||||
"build:stage": "vue-cli-service build --mode staging",
|
"build:stage": "vue-cli-service build --mode staging",
|
||||||
"preview": "node build/index.js --preview",
|
"preview": "node build/index.js --preview",
|
||||||
"lint": "eslint --ext .js,.vue src"
|
"lint": "eslint --ext .js,.vue src"
|
||||||
},
|
},
|
||||||
"husky": {
|
"husky": {
|
||||||
"hooks": {
|
"hooks": {
|
||||||
"pre-commit": "lint-staged"
|
"pre-commit": "lint-staged"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lint-staged": {
|
"lint-staged": {
|
||||||
"src/**/*.{js,vue}": [
|
"src/**/*.{js,vue}": [
|
||||||
"eslint --fix",
|
"eslint --fix",
|
||||||
"git add"
|
"git add"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"vue",
|
||||||
|
"admin",
|
||||||
|
"dashboard",
|
||||||
|
"element-ui",
|
||||||
|
"boilerplate",
|
||||||
|
"admin-template",
|
||||||
|
"management-system"
|
||||||
|
],
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "http://192.168.0.56:3000/bonus/Bonus-Cloud.git"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@riophae/vue-treeselect": "0.4.0",
|
||||||
|
"axios": "0.24.0",
|
||||||
|
"clipboard": "2.0.8",
|
||||||
|
"core-js": "3.25.3",
|
||||||
|
"crypto-js": "^4.2.0",
|
||||||
|
"echarts": "5.4.0",
|
||||||
|
"element-ui": "2.15.14",
|
||||||
|
"file-saver": "2.0.5",
|
||||||
|
"flv.js": "^1.6.2",
|
||||||
|
"fuse.js": "6.4.3",
|
||||||
|
"highlight.js": "9.18.5",
|
||||||
|
"js-beautify": "1.13.0",
|
||||||
|
"js-cookie": "3.0.1",
|
||||||
|
"jsencrypt": "3.0.0-rc.1",
|
||||||
|
"nprogress": "0.2.0",
|
||||||
|
"quill": "1.3.7",
|
||||||
|
"screenfull": "5.0.2",
|
||||||
|
"sm-crypto": "^0.3.13",
|
||||||
|
"sortablejs": "1.10.2",
|
||||||
|
"vue": "2.6.12",
|
||||||
|
"vue-count-to": "1.0.13",
|
||||||
|
"vue-cropper": "0.5.5",
|
||||||
|
"vue-meta": "2.4.0",
|
||||||
|
"vue-qr": "^4.0.9",
|
||||||
|
"vue-router": "3.4.9",
|
||||||
|
"vuedraggable": "2.24.3",
|
||||||
|
"vuex": "3.6.0",
|
||||||
|
"webstomp-client": "^1.2.6"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@vue/cli-plugin-babel": "4.4.6",
|
||||||
|
"@vue/cli-plugin-eslint": "4.4.6",
|
||||||
|
"@vue/cli-service": "4.4.6",
|
||||||
|
"babel-eslint": "10.1.0",
|
||||||
|
"babel-plugin-dynamic-import-node": "2.3.3",
|
||||||
|
"chalk": "4.1.0",
|
||||||
|
"compression-webpack-plugin": "6.1.2",
|
||||||
|
"connect": "3.6.6",
|
||||||
|
"eslint": "7.15.0",
|
||||||
|
"eslint-plugin-vue": "7.2.0",
|
||||||
|
"lint-staged": "10.5.3",
|
||||||
|
"runjs": "4.4.2",
|
||||||
|
"sass": "1.32.13",
|
||||||
|
"sass-loader": "10.1.1",
|
||||||
|
"script-ext-html-webpack-plugin": "2.1.5",
|
||||||
|
"svg-sprite-loader": "5.1.1",
|
||||||
|
"vue-template-compiler": "2.6.12"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8.9",
|
||||||
|
"npm": ">= 3.0.0"
|
||||||
|
},
|
||||||
|
"browserslist": [
|
||||||
|
"> 1%",
|
||||||
|
"last 2 versions"
|
||||||
]
|
]
|
||||||
},
|
|
||||||
"keywords": [
|
|
||||||
"vue",
|
|
||||||
"admin",
|
|
||||||
"dashboard",
|
|
||||||
"element-ui",
|
|
||||||
"boilerplate",
|
|
||||||
"admin-template",
|
|
||||||
"management-system"
|
|
||||||
],
|
|
||||||
"repository": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "http://192.168.0.56:3000/bonus/Bonus-Cloud.git"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"@riophae/vue-treeselect": "0.4.0",
|
|
||||||
"axios": "0.24.0",
|
|
||||||
"clipboard": "2.0.8",
|
|
||||||
"core-js": "3.25.3",
|
|
||||||
"crypto-js": "^4.2.0",
|
|
||||||
"echarts": "5.4.0",
|
|
||||||
"element-ui": "2.15.14",
|
|
||||||
"file-saver": "2.0.5",
|
|
||||||
"flv.js": "^1.6.2",
|
|
||||||
"fuse.js": "6.4.3",
|
|
||||||
"highlight.js": "9.18.5",
|
|
||||||
"js-beautify": "1.13.0",
|
|
||||||
"js-cookie": "3.0.1",
|
|
||||||
"jsencrypt": "3.0.0-rc.1",
|
|
||||||
"nprogress": "0.2.0",
|
|
||||||
"quill": "1.3.7",
|
|
||||||
"screenfull": "5.0.2",
|
|
||||||
"sm-crypto": "^0.3.13",
|
|
||||||
"sortablejs": "1.10.2",
|
|
||||||
"vue": "2.6.12",
|
|
||||||
"vue-count-to": "1.0.13",
|
|
||||||
"vue-cropper": "0.5.5",
|
|
||||||
"vue-meta": "2.4.0",
|
|
||||||
"vue-qr": "^4.0.9",
|
|
||||||
"vue-router": "3.4.9",
|
|
||||||
"vuedraggable": "2.24.3",
|
|
||||||
"vuex": "3.6.0",
|
|
||||||
"webstomp-client": "^1.2.6"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@vue/cli-plugin-babel": "4.4.6",
|
|
||||||
"@vue/cli-plugin-eslint": "4.4.6",
|
|
||||||
"@vue/cli-service": "4.4.6",
|
|
||||||
"babel-eslint": "10.1.0",
|
|
||||||
"babel-plugin-dynamic-import-node": "2.3.3",
|
|
||||||
"chalk": "4.1.0",
|
|
||||||
"compression-webpack-plugin": "6.1.2",
|
|
||||||
"connect": "3.6.6",
|
|
||||||
"eslint": "7.15.0",
|
|
||||||
"eslint-plugin-vue": "7.2.0",
|
|
||||||
"lint-staged": "10.5.3",
|
|
||||||
"runjs": "4.4.2",
|
|
||||||
"sass": "1.32.13",
|
|
||||||
"sass-loader": "10.1.1",
|
|
||||||
"script-ext-html-webpack-plugin": "2.1.5",
|
|
||||||
"svg-sprite-loader": "5.1.1",
|
|
||||||
"vue-template-compiler": "2.6.12"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=8.9",
|
|
||||||
"npm": ">= 3.0.0"
|
|
||||||
},
|
|
||||||
"browserslist": [
|
|
||||||
"> 1%",
|
|
||||||
"last 2 versions"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.2 KiB |
|
|
@ -33,12 +33,7 @@
|
||||||
style="width: 240px"
|
style="width: 240px"
|
||||||
:placeholder="`请选择${item.f_label}`"
|
:placeholder="`请选择${item.f_label}`"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option v-for="(sel, v) in item.f_selList" :key="v" :label="sel.label" :value="sel.value" />
|
||||||
v-for="(sel, v) in item.f_selList"
|
|
||||||
:key="v"
|
|
||||||
:label="sel.label"
|
|
||||||
:value="sel.value"
|
|
||||||
/>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
<el-cascader
|
<el-cascader
|
||||||
v-if="item.f_type === 'selCasAdd'"
|
v-if="item.f_type === 'selCasAdd'"
|
||||||
|
|
@ -47,14 +42,7 @@
|
||||||
:props="item.optionProps"
|
:props="item.optionProps"
|
||||||
:show-all-levels="false"
|
:show-all-levels="false"
|
||||||
clearable
|
clearable
|
||||||
@change="
|
@change="handleCasAdd($event, item.f_model, cascaderFunc, extraTableProp)"
|
||||||
handleCasAdd(
|
|
||||||
$event,
|
|
||||||
item.f_model,
|
|
||||||
cascaderFunc,
|
|
||||||
extraTableProp,
|
|
||||||
)
|
|
||||||
"
|
|
||||||
style="width: 240px"
|
style="width: 240px"
|
||||||
/>
|
/>
|
||||||
<el-cascader
|
<el-cascader
|
||||||
|
|
@ -93,29 +81,13 @@
|
||||||
></el-input-number>
|
></el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="showBtnCrews">
|
<el-form-item v-if="showBtnCrews">
|
||||||
<el-button
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" v-if="showSearchBtn"
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
size="mini"
|
|
||||||
@click="handleQuery"
|
|
||||||
v-if="showSearchBtn"
|
|
||||||
>查询</el-button
|
>查询</el-button
|
||||||
>
|
>
|
||||||
<el-button
|
<el-button type="success" icon="el-icon-edit" size="mini" @click="handleFill" v-if="!showSearchBtn"
|
||||||
type="success"
|
|
||||||
icon="el-icon-edit"
|
|
||||||
size="mini"
|
|
||||||
@click="handleFill"
|
|
||||||
v-if="!showSearchBtn"
|
|
||||||
>填充</el-button
|
>填充</el-button
|
||||||
>
|
>
|
||||||
<el-button
|
<el-button type="warning" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||||
type="warning"
|
|
||||||
icon="el-icon-refresh"
|
|
||||||
size="mini"
|
|
||||||
@click="resetQuery"
|
|
||||||
>重置</el-button
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<!-- 按钮集群 -->
|
<!-- 按钮集群 -->
|
||||||
|
|
@ -145,21 +117,13 @@
|
||||||
@selection-change="handleSelectionChange"
|
@selection-change="handleSelectionChange"
|
||||||
>
|
>
|
||||||
>
|
>
|
||||||
<el-table-column
|
<el-table-column type="selection" width="45" align="center" v-if="showSel" :selectable="selectable" />
|
||||||
type="selection"
|
|
||||||
width="45"
|
|
||||||
align="center"
|
|
||||||
v-if="showSel"
|
|
||||||
:selectable="selectable"
|
|
||||||
/>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
width="55"
|
width="55"
|
||||||
align="center"
|
align="center"
|
||||||
label="序号"
|
label="序号"
|
||||||
type="index"
|
type="index"
|
||||||
:index="
|
:index="indexContinuation(queryParams.pageNum, queryParams.pageSize)"
|
||||||
indexContinuation(queryParams.pageNum, queryParams.pageSize)
|
|
||||||
"
|
|
||||||
v-if="showIndex"
|
v-if="showIndex"
|
||||||
/>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|
@ -184,8 +148,9 @@
|
||||||
<el-table-column
|
<el-table-column
|
||||||
align="center"
|
align="center"
|
||||||
label="操作"
|
label="操作"
|
||||||
v-if="handleShow && showOperation"
|
|
||||||
:min-width="dynamicWidth"
|
:min-width="dynamicWidth"
|
||||||
|
:show-overflow-tooltip="false"
|
||||||
|
v-if="handleShow && showOperation"
|
||||||
>
|
>
|
||||||
<template slot-scope="{ row }">
|
<template slot-scope="{ row }">
|
||||||
<div class="optionDivRef">
|
<div class="optionDivRef">
|
||||||
|
|
@ -491,8 +456,7 @@ export default {
|
||||||
},
|
},
|
||||||
/** 动态设置操作列的列宽 */
|
/** 动态设置操作列的列宽 */
|
||||||
getOperatorWidth() {
|
getOperatorWidth() {
|
||||||
const operatorColumn =
|
const operatorColumn = document.getElementsByClassName('optionDivRef')
|
||||||
document.getElementsByClassName('optionDivRef')
|
|
||||||
|
|
||||||
// 默认宽度
|
// 默认宽度
|
||||||
let width = 100
|
let width = 100
|
||||||
|
|
@ -507,12 +471,9 @@ export default {
|
||||||
width = width > item.offsetWidth ? width : item.offsetWidth
|
width = width > item.offsetWidth ? width : item.offsetWidth
|
||||||
const buttons = item.getElementsByClassName('el-button')
|
const buttons = item.getElementsByClassName('el-button')
|
||||||
buttonCount = buttons.length
|
buttonCount = buttons.length
|
||||||
buttonCount =
|
buttonCount = buttonCount > buttons.length ? buttonCount : buttons.length
|
||||||
buttonCount > buttons.length
|
|
||||||
? buttonCount
|
|
||||||
: buttons.length
|
|
||||||
})
|
})
|
||||||
return width
|
return width + 10
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,9 @@
|
||||||
|
<template>
|
||||||
|
<div class="app-container"> 属性配置 </div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style></style>
|
||||||
|
|
@ -0,0 +1,182 @@
|
||||||
|
<template>
|
||||||
|
<!-- 新增修改弹框 -->
|
||||||
|
<div>
|
||||||
|
<el-form label-width="auto" :model="addOrEditForm" :rules="addOrEditFormRef" ref="addOrEditFormRef">
|
||||||
|
<!-- <TitleTip :titleText="`基本信息`" /> -->
|
||||||
|
<el-form-item label="所属工程:" prop="projectName">
|
||||||
|
<el-input v-model="addOrEditForm.projectName" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="设备类型:" prop="ownerUnit">
|
||||||
|
<!-- <el-input v-model="addOrEditForm.ownerUnit" clearable /> -->
|
||||||
|
|
||||||
|
<el-select v-model="addOrEditForm.ownerUnit" clearable filterable>
|
||||||
|
<el-option v-for="type in typeList" :key="type.id" :label="type.label" :value="type.id" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- <el-form-item label="计划开工日期:" prop="planStartTime">
|
||||||
|
<el-date-picker
|
||||||
|
type="date"
|
||||||
|
style="width: 100%"
|
||||||
|
placeholder="选择日期"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
v-model="addOrEditForm.planStartTime"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="计划竣工日期:" prop="planEndTime">
|
||||||
|
<el-date-picker
|
||||||
|
type="date"
|
||||||
|
style="width: 100%"
|
||||||
|
placeholder="选择日期"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
v-model="addOrEditForm.planEndTime"
|
||||||
|
/>
|
||||||
|
</el-form-item> -->
|
||||||
|
|
||||||
|
<!-- <TitleTip :titleText="`其他信息`" /> -->
|
||||||
|
<el-form-item label="设备名称:">
|
||||||
|
<el-input v-model="addOrEditForm.address" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="设备编码:">
|
||||||
|
<el-input v-model="addOrEditForm.projectAmount" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="设备级联编码:">
|
||||||
|
<el-input v-model="addOrEditForm.projectManager" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="设备状态:">
|
||||||
|
<el-input
|
||||||
|
clearable
|
||||||
|
type="textarea"
|
||||||
|
:autosize="{ minRows: 3, maxRows: 10 }"
|
||||||
|
v-model="addOrEditForm.projectScale"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="设备信号:">
|
||||||
|
<el-input v-model="addOrEditForm.projectAmount" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="监测区域:">
|
||||||
|
<el-input v-model="addOrEditForm.projectAmount" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="所属边代:">
|
||||||
|
<el-input v-model="addOrEditForm.projectAmount" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item class="handle">
|
||||||
|
<el-button> 取消 </el-button>
|
||||||
|
<el-button type="primary" @click="onSubmitForm"> 保存 </el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { addProjectAPI } from '@/api/project-manage/index.js'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
const validatePlanStartTime = (rule, value, callback) => {
|
||||||
|
if (!value) {
|
||||||
|
return callback(new Error('请选择计划开工日期'))
|
||||||
|
}
|
||||||
|
const endTime = this.addOrEditForm.planEndTime
|
||||||
|
if (endTime && new Date(value) >= new Date(endTime)) {
|
||||||
|
return callback(new Error('计划开工日期必须小于计划竣工日期'))
|
||||||
|
}
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
const validatePlanEndTime = (rule, value, callback) => {
|
||||||
|
if (!value) {
|
||||||
|
return callback(new Error('请选择计划竣工日期'))
|
||||||
|
}
|
||||||
|
const endTime = this.addOrEditForm.planStartTime
|
||||||
|
if (endTime && new Date(value) <= new Date(endTime)) {
|
||||||
|
return callback(new Error('计划竣工日期必须大于计划开工日期'))
|
||||||
|
}
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
// 新增或修改接口
|
||||||
|
addOrEditForm: {
|
||||||
|
projectName: '', // 项目名称
|
||||||
|
ownerUnit: '', // 业主单位
|
||||||
|
planStartTime: '', //计划开工日期
|
||||||
|
planEndTime: '', // 计划竣工日期
|
||||||
|
address: '', // 项目地址
|
||||||
|
projectAmount: '', // 项目金额
|
||||||
|
projectManager: '', // 项目负责任人
|
||||||
|
projectScale: '', // 工程规格
|
||||||
|
},
|
||||||
|
addOrEditFormRef: {
|
||||||
|
projectName: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '项目名称',
|
||||||
|
trigger: 'blur',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
min: 1,
|
||||||
|
max: 30,
|
||||||
|
message: '长度在 1 到 30 个字符',
|
||||||
|
trigger: 'blur',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
ownerUnit: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请输入业主单位',
|
||||||
|
trigger: 'blur',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
min: 1,
|
||||||
|
max: 20,
|
||||||
|
message: '长度在 1 到 20 个字符',
|
||||||
|
trigger: 'blur',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
planStartTime: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择计划开工日期',
|
||||||
|
trigger: 'change',
|
||||||
|
},
|
||||||
|
{ validator: validatePlanStartTime, trigger: 'change' },
|
||||||
|
],
|
||||||
|
planEndTime: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择计划竣工日期',
|
||||||
|
trigger: 'change',
|
||||||
|
},
|
||||||
|
{ validator: validatePlanEndTime, trigger: 'change' },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
handleClose() {
|
||||||
|
this.$refs.addOrEditFormRef.resetFields()
|
||||||
|
// this.$emit('update:formDialogVisible', false)
|
||||||
|
},
|
||||||
|
// 表单提交
|
||||||
|
onSubmitForm() {
|
||||||
|
this.$refs.addOrEditFormRef.validate(async (valid) => {
|
||||||
|
if (valid) {
|
||||||
|
const res = await addProjectAPI(this.addOrEditForm)
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$modal.msgSuccess('新增成功')
|
||||||
|
}
|
||||||
|
// this.$emit('update:formDialogVisible', false)
|
||||||
|
this.$emit('onCloseDialog')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
async mounted() {},
|
||||||
|
watch: {},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped></style>
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-descriptions :column="2" border>
|
||||||
|
<el-descriptions-item label="项目名称"></el-descriptions-item>
|
||||||
|
<el-descriptions-item label="业主单位"></el-descriptions-item>
|
||||||
|
<el-descriptions-item label="项目地址">苏州市</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="项目金额(万元)">
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item
|
||||||
|
label="计划开工日期"
|
||||||
|
:contentStyle="{ 'text-align': 'right' }"
|
||||||
|
>江苏省苏州市吴中区吴中大道 1188 号</el-descriptions-item
|
||||||
|
>
|
||||||
|
<el-descriptions-item label="计划竣工日期"
|
||||||
|
>苏州市</el-descriptions-item
|
||||||
|
>
|
||||||
|
<el-descriptions-item label="计划竣工日期"
|
||||||
|
>项目负责人</el-descriptions-item
|
||||||
|
>
|
||||||
|
<el-descriptions-item label="计划竣工日期"
|
||||||
|
>项目规模</el-descriptions-item
|
||||||
|
>
|
||||||
|
</el-descriptions>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style></style>
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
export const formLabel = [
|
||||||
|
{ f_label: '搜索关键词', f_model: 'proName', f_type: 'ipt', isShow: false },
|
||||||
|
{ f_label: '设备状态', f_model: 'relUser', f_type: 'sel', isShow: false },
|
||||||
|
{ f_label: '设备启用', f_model: 'relUser', f_type: 'sel', isShow: false },
|
||||||
|
]
|
||||||
|
export const columnsList = [
|
||||||
|
{ t_props: 'projectName', t_label: '所属工程' },
|
||||||
|
{ t_props: 'address', t_label: '设备类型' },
|
||||||
|
{ t_props: 'planStartTime', t_label: '设备编码' },
|
||||||
|
{ t_props: 'planEndTime', t_label: '设备名称' },
|
||||||
|
{ t_props: 'ownerUnit', t_label: '设备级联编码' },
|
||||||
|
{ t_props: 'projectStatus', t_label: '设备状态', t_slot: 'status' },
|
||||||
|
{ t_props: 'auditStatus', t_label: '设备信号' },
|
||||||
|
{ t_props: 'auditStatus', t_label: '所属边带' },
|
||||||
|
{ t_props: 'auditStatus', t_label: '监测区域' },
|
||||||
|
{ t_props: 'auditStatus', t_label: '备注' },
|
||||||
|
{ t_props: 'auditStatus', t_label: '操作' },
|
||||||
|
]
|
||||||
|
|
||||||
|
export const dialogConfig = {
|
||||||
|
outerWidth: '50%',
|
||||||
|
outerTitle: '设备新增',
|
||||||
|
outerVisible: false,
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,88 @@
|
||||||
|
<template>
|
||||||
|
<!-- 感知设备 ---- 设备管理 -->
|
||||||
|
<div class="app-container">
|
||||||
|
<TableModel :formLabel="formLabel" :columnsList="columnsList" :request-api="getProjectListAPI">
|
||||||
|
<template slot="btn">
|
||||||
|
<el-button size="mini" type="primary" icon="el-icon-download" @click="handleExport()"> 导出 </el-button>
|
||||||
|
<el-button size="mini" type="primary" icon="el-icon-plus" @click="handleAddData()"> 新增 </el-button>
|
||||||
|
</template>
|
||||||
|
<template slot="handle" slot-scope="{ data }">
|
||||||
|
<el-button size="mini" type="primary" @click="handleEditData(data)" icon="el-icon-edit">
|
||||||
|
修改
|
||||||
|
</el-button>
|
||||||
|
<el-button size="mini" type="success" @click="handleDetails(data)" icon="el-icon-info">
|
||||||
|
详情
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
size="mini"
|
||||||
|
type="danger"
|
||||||
|
icon="el-icon-delete"
|
||||||
|
@click="handleDeleteData(data.id, deleteWarningApi)"
|
||||||
|
>
|
||||||
|
删除
|
||||||
|
</el-button>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template slot="status" slot-scope="{ data }">
|
||||||
|
<el-tag size="mini">状态 </el-tag>
|
||||||
|
</template>
|
||||||
|
</TableModel>
|
||||||
|
|
||||||
|
<DialogModel :dialogConfig="dialogConfig" @closeDialogOuter="closeDialogOuter">
|
||||||
|
<template slot="outerContent">
|
||||||
|
<AddEditForm @onCloseDialog="closeDialogOuter" v-if="dialogType === 1 || dialogType === 2" />
|
||||||
|
<ProjectDetails v-else />
|
||||||
|
</template>
|
||||||
|
</DialogModel>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import TableModel from '@/components/TableModel'
|
||||||
|
import DialogModel from '@/components/DialogModel'
|
||||||
|
import AddEditForm from './components/add-edit-form'
|
||||||
|
import ProjectDetails from './components/project-details'
|
||||||
|
import { formLabel, columnsList, dialogConfig } from './config'
|
||||||
|
import { getProjectListAPI } from '@/api/project-manage/index.js'
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
TableModel,
|
||||||
|
DialogModel,
|
||||||
|
AddEditForm,
|
||||||
|
ProjectDetails,
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
formLabel,
|
||||||
|
columnsList,
|
||||||
|
dialogConfig,
|
||||||
|
getProjectListAPI,
|
||||||
|
dialogType: 1,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleExport() {
|
||||||
|
console.log('导出')
|
||||||
|
},
|
||||||
|
handleAddData() {
|
||||||
|
console.log('新增')
|
||||||
|
this.dialogType = 1
|
||||||
|
this.dialogConfig.outerTitle = '设备新增'
|
||||||
|
this.dialogConfig.outerVisible = true
|
||||||
|
},
|
||||||
|
handleDetails() {},
|
||||||
|
handleEditData() {
|
||||||
|
this.dialogType = 2
|
||||||
|
this.dialogConfig.outerTitle = '设备修改'
|
||||||
|
this.dialogConfig.outerVisible = true
|
||||||
|
},
|
||||||
|
handleDeleteData() {},
|
||||||
|
/** 关闭外侧弹框 */
|
||||||
|
closeDialogOuter() {
|
||||||
|
this.dialogConfig.outerVisible = false
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style></style>
|
||||||
|
|
@ -1,84 +1,117 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<el-input
|
||||||
<el-input v-model="listQuery.ip" placeholder="请输入IP地址"
|
v-model="listQuery.ip"
|
||||||
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
placeholder="请输入IP地址"
|
||||||
@keyup.enter.native="handleFilter"
|
style="width: 200px"
|
||||||
/>
|
class="filter-item ml-20"
|
||||||
<el-date-picker
|
:maxlength="30"
|
||||||
v-model="rangeDate"
|
@keyup.enter.native="handleFilter"
|
||||||
style="width: 300px"
|
/>
|
||||||
class="filter-item ml-20"
|
<el-date-picker
|
||||||
value-format="yyyy-MM-dd"
|
v-model="rangeDate"
|
||||||
type="daterange"
|
style="width: 300px"
|
||||||
range-separator="至"
|
class="filter-item ml-20"
|
||||||
start-placeholder="开始日期"
|
value-format="yyyy-MM-dd"
|
||||||
end-placeholder="结束日期"
|
type="daterange"
|
||||||
/>
|
range-separator="至"
|
||||||
<el-select v-model="listQuery.grade" placeholder="请选择异常等级" style="width: 200px" class="filter-item ml-20">
|
start-placeholder="开始日期"
|
||||||
<el-option v-for="item in Object.keys(levelList)" :key="item" :value="levelList[item]" :label="levelList[item]" />
|
end-placeholder="结束日期"
|
||||||
</el-select>
|
/>
|
||||||
<!-- <el-input v-model="listQuery.errType" placeholder="请输入异常类型"
|
<el-select
|
||||||
|
v-model="listQuery.grade"
|
||||||
|
placeholder="请选择异常等级"
|
||||||
|
style="width: 200px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in Object.keys(levelList)"
|
||||||
|
:key="item"
|
||||||
|
:value="levelList[item]"
|
||||||
|
:label="levelList[item]"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input v-model="listQuery.errType" placeholder="请输入异常类型"
|
||||||
style="width: 200px" class="filter-item" :maxlength="30"
|
style="width: 200px" class="filter-item" :maxlength="30"
|
||||||
@keyup.enter.native="handleFilter"
|
@keyup.enter.native="handleFilter"
|
||||||
/> -->
|
/> -->
|
||||||
<el-select v-model="listQuery.errType" placeholder="请选择异常类型" style="width: 200px" class="filter-item ml-20">
|
<el-select
|
||||||
<el-option v-for="item in Object.keys(typeList)" :key="item" :value="typeList[item]" :label="typeList[item]" />
|
v-model="listQuery.errType"
|
||||||
</el-select>
|
placeholder="请选择异常类型"
|
||||||
|
style="width: 200px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in Object.keys(typeList)"
|
||||||
|
:key="item"
|
||||||
|
:value="typeList[item]"
|
||||||
|
:label="typeList[item]"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
|
||||||
<el-select v-model="listQuery.logSort" clearable filterable style="width: 200px" class="filter-item ml-20" placeholder="请选择" >
|
<el-select
|
||||||
<el-option v-for="item in timeList" :key="item.id" :label="item.name" :value="item.id" />
|
v-model="listQuery.logSort"
|
||||||
</el-select>
|
clearable
|
||||||
<el-select v-model="listQuery.logDesc" clearable filterable style="width: 200px" class="filter-item ml-20" placeholder="请选择" >
|
filterable
|
||||||
<el-option v-for="item in sortList" :key="item.id" :label="item.name" :value="item.id" />
|
style="width: 200px"
|
||||||
</el-select>
|
class="filter-item ml-20"
|
||||||
<el-button style="margin-left: 20px" class="filter-item" type="primary" @click="handleFilter">
|
placeholder="请选择"
|
||||||
查询
|
>
|
||||||
</el-button>
|
<el-option v-for="item in timeList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
<el-button style="margin-left: 20px" class="filter-item" @click="resetFilter">
|
</el-select>
|
||||||
重置
|
<el-select
|
||||||
</el-button>
|
v-model="listQuery.logDesc"
|
||||||
<el-button @click="handleBackups" class="filter-item" style="margin-left: 20px" type="warning">
|
clearable
|
||||||
备份
|
filterable
|
||||||
</el-button>
|
style="width: 200px"
|
||||||
</div>
|
class="filter-item ml-20"
|
||||||
|
placeholder="请选择"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in sortList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
|
</el-select>
|
||||||
|
<el-button style="margin-left: 20px" class="filter-item" type="primary" @click="handleFilter">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
<el-button style="margin-left: 20px" class="filter-item" @click="resetFilter"> 重置 </el-button>
|
||||||
|
<el-button @click="handleBackups" class="filter-item" style="margin-left: 20px" type="warning">
|
||||||
|
备份
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-table
|
<el-table
|
||||||
:key="tableKey"
|
:key="tableKey"
|
||||||
v-loading="listLoading"
|
v-loading="listLoading"
|
||||||
:data="list"
|
:data="list"
|
||||||
border
|
border
|
||||||
fit
|
fit
|
||||||
highlight-current-row
|
highlight-current-row
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
:max-height="tableHeight"
|
:max-height="tableHeight"
|
||||||
>
|
>
|
||||||
<el-table-column label="序号" align="center" width="80" type="index">
|
<el-table-column label="序号" align="center" width="80" type="index">
|
||||||
<template scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ (listQuery.pageNum - 1) * listQuery.pageSize + scope.$index + 1 }}</span>
|
<span>{{ (listQuery.pageNum - 1) * listQuery.pageSize + scope.$index + 1 }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作人" align="center" prop="operaUserName">
|
<el-table-column label="操作人" align="center" prop="operaUserName">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ scope.row.operaUserName||'/' }}</span>
|
<span>{{ scope.row.operaUserName || '/' }}</span>
|
||||||
</template>
|
</template>
|
||||||
|
</el-table-column>
|
||||||
</el-table-column>
|
<el-table-column label="操作时间" align="center" prop="operTime" width="180" />
|
||||||
<el-table-column label="操作时间" align="center" prop="operTime" width="180"/>
|
<el-table-column label="IP地址" align="center" prop="ip" />
|
||||||
<el-table-column label="IP地址" align="center" prop="ip"/>
|
<el-table-column label="操作模块" align="center" prop="model">
|
||||||
<el-table-column label="操作模块" align="center" prop="model" >
|
<template slot-scope="scope">
|
||||||
<template slot-scope="scope">
|
<span>{{ scope.row.model || '/' }}</span>
|
||||||
<span>{{ scope.row.model||'/' }}</span>
|
</template>
|
||||||
</template>
|
</el-table-column>
|
||||||
|
<el-table-column label="异常类型" align="center" prop="errType" />
|
||||||
</el-table-column>
|
<el-table-column label="异常原因" align="center" prop="operateDetail" />
|
||||||
<el-table-column label="异常类型" align="center" prop="errType" />
|
<el-table-column label="异常等级" align="center" prop="grade" />
|
||||||
<el-table-column label="异常原因" align="center" prop="operateDetail"/>
|
<!-- <el-table-column label="事件结果" align="center" prop="failureReason"/> -->
|
||||||
<el-table-column label="异常等级" align="center" prop="grade"/>
|
<el-table-column label="操作类型" align="center" prop="operType" />
|
||||||
<!-- <el-table-column label="事件结果" align="center" prop="failureReason"/> -->
|
<!--
|
||||||
<el-table-column label="操作类型" align="center" prop="operType" />
|
|
||||||
<!--
|
|
||||||
<el-table-column label="操作详情" align="center" prop="operateDetail" />
|
<el-table-column label="操作详情" align="center" prop="operateDetail" />
|
||||||
|
|
||||||
<el-table-column label="操作结果" align="center" prop="errLevel">
|
<el-table-column label="操作结果" align="center" prop="errLevel">
|
||||||
|
|
@ -88,18 +121,18 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作参数" align="center" prop="params" />
|
<el-table-column label="操作参数" align="center" prop="params" />
|
||||||
<el-table-column label="操作方法" align="center" prop="method" /> -->
|
<el-table-column label="操作方法" align="center" prop="method" /> -->
|
||||||
<el-table-column label="操作路径" align="center" prop="operUri" />
|
<el-table-column label="操作路径" align="center" prop="operUri" />
|
||||||
<!-- <el-table-column label="执行时间(ms)" align="center" prop="times" /> -->
|
<!-- <el-table-column label="执行时间(ms)" align="center" prop="times" /> -->
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination
|
<pagination
|
||||||
v-show="total > 0"
|
v-show="total > 0"
|
||||||
:total="total"
|
:total="total"
|
||||||
:page.sync="listQuery.pageNum"
|
:page.sync="listQuery.pageNum"
|
||||||
:limit.sync="listQuery.pageSize"
|
:limit.sync="listQuery.pageSize"
|
||||||
@pagination="getList"
|
@pagination="getList"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
@ -108,133 +141,138 @@ import Pagination from '@/components/Pagination'
|
||||||
import _ from 'lodash/fp'
|
import _ from 'lodash/fp'
|
||||||
import { downloadFile } from '@/utils/download'
|
import { downloadFile } from '@/utils/download'
|
||||||
|
|
||||||
import { getErrLogs,downloadErrLogs } from '@/api/system/log'
|
import { getErrLogs, downloadErrLogs } from '@/api/system/log'
|
||||||
|
|
||||||
|
|
||||||
const levelList = {
|
const levelList = {
|
||||||
1:'高',
|
1: '高',
|
||||||
2:'中',
|
2: '中',
|
||||||
3:'低'
|
3: '低',
|
||||||
};
|
}
|
||||||
const typeList = {
|
const typeList = {
|
||||||
1:'越权访问',
|
1: '越权访问',
|
||||||
2:'IP异常',
|
2: 'IP异常',
|
||||||
// 3:'删除',
|
// 3:'删除',
|
||||||
// 4:'查询',
|
// 4:'查询',
|
||||||
// 5:'导出',
|
// 5:'导出',
|
||||||
// 6:'下载',
|
// 6:'下载',
|
||||||
// 7:'备份',
|
// 7:'备份',
|
||||||
// 8:'登录',
|
// 8:'登录',
|
||||||
// 9:'登出'
|
// 9:'登出'
|
||||||
};
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: { Pagination },
|
components: { Pagination },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
tableKey: 0,
|
tableKey: 0,
|
||||||
list: [],
|
list: [],
|
||||||
levelList: levelList,
|
levelList: levelList,
|
||||||
total: 0,
|
total: 0,
|
||||||
listLoading: false,
|
listLoading: false,
|
||||||
tableHeight: 650,
|
tableHeight: 650,
|
||||||
typeList: typeList,
|
typeList: typeList,
|
||||||
timeList:[{id:1,name:'时间'},{id:2,name:'操作人'},{id:4,name:'ip'},{id:5,name:'异常等级'}],
|
timeList: [
|
||||||
sortList:[{id:1,name:'倒序'},{id:2,name:'升序'}],
|
{ id: 1, name: '时间' },
|
||||||
listQuery: {
|
{ id: 2, name: '操作人' },
|
||||||
pageNum: 1,
|
{ id: 4, name: 'ip' },
|
||||||
pageSize: 10,
|
{ id: 5, name: '异常等级' },
|
||||||
errType: '',
|
],
|
||||||
ip: '',
|
sortList: [
|
||||||
errLevel: '',
|
{ id: 1, name: '倒序' },
|
||||||
operTime:'',
|
{ id: 2, name: '升序' },
|
||||||
// logSort:1,
|
],
|
||||||
logDesc:1,
|
listQuery: {
|
||||||
},
|
pageNum: 1,
|
||||||
rangeDate:[],
|
pageSize: 10,
|
||||||
}
|
errType: '',
|
||||||
},
|
ip: '',
|
||||||
created() {
|
errLevel: '',
|
||||||
// this.getList()
|
operTime: '',
|
||||||
// this.getOperate()
|
// logSort:1,
|
||||||
},
|
logDesc: 1,
|
||||||
mounted() {
|
},
|
||||||
this.listQuery.operTime = this.getCurrentDate()+' - '+this.getCurrentDate();
|
rangeDate: [],
|
||||||
this.rangeDate = [this.getCurrentDate(),this.getCurrentDate()]
|
}
|
||||||
this.getList()
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getStatus(val) {
|
|
||||||
return this.levelList[val]
|
|
||||||
},
|
},
|
||||||
//获取下拉数据
|
created() {
|
||||||
getOperate(){
|
// this.getList()
|
||||||
// getOperateList().then((response) => {
|
// this.getOperate()
|
||||||
// this.typeList = response.data
|
|
||||||
// })
|
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
this.listQuery.operTime = this.getCurrentDate() + ' - ' + this.getCurrentDate()
|
||||||
|
this.rangeDate = [this.getCurrentDate(), this.getCurrentDate()]
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getStatus(val) {
|
||||||
|
return this.levelList[val]
|
||||||
|
},
|
||||||
|
//获取下拉数据
|
||||||
|
getOperate() {
|
||||||
|
// getOperateList().then((response) => {
|
||||||
|
// this.typeList = response.data
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
|
||||||
getList() {
|
getList() {
|
||||||
this.listLoading = true
|
this.listLoading = true
|
||||||
if(this.rangeDate && this.rangeDate.length>0){
|
if (this.rangeDate && this.rangeDate.length > 0) {
|
||||||
this.listQuery.operTime = this.rangeDate[0]+' - '+this.rangeDate[1];
|
this.listQuery.operTime = this.rangeDate[0] + ' - ' + this.rangeDate[1]
|
||||||
}
|
}
|
||||||
getErrLogs(this.listQuery).then((response) => {
|
getErrLogs(this.listQuery).then((response) => {
|
||||||
this.list = response.rows.map(item => {
|
this.list = response.rows.map((item) => {
|
||||||
return item
|
return item
|
||||||
})
|
})
|
||||||
this.total = response.total
|
this.total = response.total
|
||||||
})
|
})
|
||||||
setTimeout(()=>{
|
setTimeout(() => {
|
||||||
this.listLoading = false
|
this.listLoading = false
|
||||||
},500)
|
}, 500)
|
||||||
|
},
|
||||||
|
// 查询
|
||||||
|
handleFilter() {
|
||||||
|
this.listQuery.pageNum = 1
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
//重置
|
||||||
|
resetFilter() {
|
||||||
|
this.listQuery = {
|
||||||
|
pageNum: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
errType: '',
|
||||||
|
ip: '',
|
||||||
|
grade: '',
|
||||||
|
// logSort:1,
|
||||||
|
logDesc: 1,
|
||||||
|
}
|
||||||
|
this.rangeDate = [this.getCurrentDate(), this.getCurrentDate()]
|
||||||
|
this.handleFilter()
|
||||||
|
},
|
||||||
|
// 备份
|
||||||
|
handleBackups() {
|
||||||
|
downloadErrLogs().then((res) => {
|
||||||
|
downloadFile({ fileName: '异常日志.sql', fileData: res, fileType: 'text/html;charset=UTF-8' })
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//导出
|
||||||
|
handleExport() {
|
||||||
|
// exportCarDetail().then(res => {
|
||||||
|
// downloadFile({ fileName: '设备详情.xlsx', fileData: res, fileType: 'application/vnd.ms-excel;charset=utf-8' })
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
getCurrentDate() {
|
||||||
|
let now = new Date()
|
||||||
|
let year = now.getFullYear()
|
||||||
|
let month = now.getMonth() + 1
|
||||||
|
if (month < 10) {
|
||||||
|
month = '0' + month
|
||||||
|
}
|
||||||
|
let day = now.getDate()
|
||||||
|
if (day < 10) {
|
||||||
|
day = '0' + day
|
||||||
|
}
|
||||||
|
return year + '-' + month + '-' + day
|
||||||
|
},
|
||||||
},
|
},
|
||||||
// 查询
|
|
||||||
handleFilter() {
|
|
||||||
this.listQuery.pageNum = 1
|
|
||||||
this.getList()
|
|
||||||
},
|
|
||||||
//重置
|
|
||||||
resetFilter() {
|
|
||||||
this.listQuery={
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
errType: '',
|
|
||||||
ip: '',
|
|
||||||
grade: '',
|
|
||||||
// logSort:1,
|
|
||||||
logDesc:1,
|
|
||||||
};
|
|
||||||
this.rangeDate=[this.getCurrentDate(),this.getCurrentDate()]
|
|
||||||
this.handleFilter()
|
|
||||||
},
|
|
||||||
// 备份
|
|
||||||
handleBackups() {
|
|
||||||
downloadErrLogs().then(res => {
|
|
||||||
downloadFile({ fileName: '异常日志.sql', fileData: res, fileType: 'text/html;charset=UTF-8'})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
//导出
|
|
||||||
handleExport(){
|
|
||||||
|
|
||||||
// exportCarDetail().then(res => {
|
|
||||||
// downloadFile({ fileName: '设备详情.xlsx', fileData: res, fileType: 'application/vnd.ms-excel;charset=utf-8' })
|
|
||||||
// })
|
|
||||||
},
|
|
||||||
getCurrentDate() {
|
|
||||||
let now = new Date();
|
|
||||||
let year = now.getFullYear();
|
|
||||||
let month = now.getMonth() + 1;
|
|
||||||
if(month<10){
|
|
||||||
month = '0'+month
|
|
||||||
}
|
|
||||||
let day = now.getDate();
|
|
||||||
if(day<10){
|
|
||||||
day = '0'+day
|
|
||||||
}
|
|
||||||
return year + "-" + month + "-" + day;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -1,231 +1,276 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
<el-input v-model="listQuery.operaUserName" placeholder="请输入操作人"
|
<el-input
|
||||||
style="width: 200px" class="filter-item" :maxlength="30"
|
v-model="listQuery.operaUserName"
|
||||||
@keyup.enter.native="handleFilter"
|
placeholder="请输入操作人"
|
||||||
/>
|
style="width: 200px"
|
||||||
<el-input v-model="listQuery.ip" placeholder="请输入IP地址"
|
class="filter-item"
|
||||||
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
:maxlength="30"
|
||||||
@keyup.enter.native="handleFilter"
|
@keyup.enter.native="handleFilter"
|
||||||
/>
|
/>
|
||||||
<el-date-picker
|
<el-input
|
||||||
v-model="rangeDate"
|
v-model="listQuery.ip"
|
||||||
style="width: 300px"
|
placeholder="请输入IP地址"
|
||||||
class="filter-item ml-20"
|
style="width: 200px"
|
||||||
value-format="yyyy-MM-dd"
|
class="filter-item ml-20"
|
||||||
type="daterange"
|
:maxlength="30"
|
||||||
range-separator="至"
|
@keyup.enter.native="handleFilter"
|
||||||
start-placeholder="开始日期"
|
/>
|
||||||
end-placeholder="结束日期"
|
<el-date-picker
|
||||||
/>
|
v-model="rangeDate"
|
||||||
<!-- <el-input v-model="listQuery.content" placeholder="请输入操作内容"
|
style="width: 300px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
type="daterange"
|
||||||
|
range-separator="至"
|
||||||
|
start-placeholder="开始日期"
|
||||||
|
end-placeholder="结束日期"
|
||||||
|
/>
|
||||||
|
<!-- <el-input v-model="listQuery.content" placeholder="请输入操作内容"
|
||||||
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
||||||
@keyup.enter.native="handleFilter"
|
@keyup.enter.native="handleFilter"
|
||||||
/> -->
|
/> -->
|
||||||
<el-select v-model="listQuery.result" placeholder="请选择事件结果" style="width: 200px" class="filter-item ml-20">
|
<el-select
|
||||||
<el-option v-for="item in Object.keys(outcomeList)" :key="item" :value="outcomeList[item]" :label="outcomeList[item]" />
|
v-model="listQuery.result"
|
||||||
</el-select>
|
placeholder="请选择事件结果"
|
||||||
<el-select v-model="listQuery.operType" placeholder="请选择操作类型" style="width: 200px" class="filter-item ml-20">
|
style="width: 200px"
|
||||||
<el-option v-for="item in Object.keys(operateList)" :key="item" :value="operateList[item]" :label="operateList[item]" />
|
class="filter-item ml-20"
|
||||||
</el-select>
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in Object.keys(outcomeList)"
|
||||||
|
:key="item"
|
||||||
|
:value="outcomeList[item]"
|
||||||
|
:label="outcomeList[item]"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<el-select
|
||||||
|
v-model="listQuery.operType"
|
||||||
|
placeholder="请选择操作类型"
|
||||||
|
style="width: 200px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in Object.keys(operateList)"
|
||||||
|
:key="item"
|
||||||
|
:value="operateList[item]"
|
||||||
|
:label="operateList[item]"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
|
||||||
<el-select v-model="listQuery.logSort" clearable filterable style="width: 200px" class="filter-item ml-20" placeholder="请选择" >
|
<el-select
|
||||||
<el-option v-for="item in timeList" :key="item.id" :label="item.name" :value="item.id" />
|
v-model="listQuery.logSort"
|
||||||
</el-select>
|
clearable
|
||||||
<el-select v-model="listQuery.logDesc" clearable filterable style="width: 200px" class="filter-item ml-20" placeholder="请选择" >
|
filterable
|
||||||
<el-option v-for="item in sortList" :key="item.id" :label="item.name" :value="item.id" />
|
style="width: 200px"
|
||||||
</el-select>
|
class="filter-item ml-20"
|
||||||
<el-button style="margin-left: 20px" class="filter-item" type="primary" @click="handleFilter">
|
placeholder="请选择"
|
||||||
查询
|
>
|
||||||
</el-button>
|
<el-option v-for="item in timeList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
<el-button style="margin-left: 20px" class="filter-item" @click="resetFilter">
|
</el-select>
|
||||||
重置
|
<el-select
|
||||||
</el-button>
|
v-model="listQuery.logDesc"
|
||||||
<el-button @click="handleBackups" class="filter-item" style="margin-left: 20px" type="warning">
|
clearable
|
||||||
备份
|
filterable
|
||||||
</el-button>
|
style="width: 200px"
|
||||||
</div>
|
class="filter-item ml-20"
|
||||||
|
placeholder="请选择"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in sortList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
|
</el-select>
|
||||||
|
<el-button style="margin-left: 20px" class="filter-item" type="primary" @click="handleFilter">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
<el-button style="margin-left: 20px" class="filter-item" @click="resetFilter"> 重置 </el-button>
|
||||||
|
<el-button @click="handleBackups" class="filter-item" style="margin-left: 20px" type="warning">
|
||||||
|
备份
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-table
|
<el-table
|
||||||
:key="tableKey"
|
:key="tableKey"
|
||||||
v-loading="listLoading"
|
v-loading="listLoading"
|
||||||
:data="list"
|
:data="list"
|
||||||
border
|
border
|
||||||
fit
|
fit
|
||||||
highlight-current-row
|
highlight-current-row
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
:max-height="tableHeight"
|
:max-height="tableHeight"
|
||||||
>
|
>
|
||||||
<el-table-column label="序号" align="center" width="80" type="index">
|
<el-table-column label="序号" align="center" width="80" type="index">
|
||||||
<template scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ (listQuery.pageNum - 1) * listQuery.pageSize + scope.$index + 1 }}</span>
|
<span>{{ (listQuery.pageNum - 1) * listQuery.pageSize + scope.$index + 1 }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作人" align="center" prop="operaUserName" />
|
<el-table-column label="操作人" align="center" prop="operaUserName" />
|
||||||
<el-table-column label="操作时间" align="center" prop="operTime" />
|
<el-table-column label="操作时间" align="center" prop="operTime" />
|
||||||
<el-table-column label="IP地址" align="center" prop="ip" />
|
<el-table-column label="IP地址" align="center" prop="ip" />
|
||||||
<el-table-column label="操作模块" align="center" prop="model" />
|
<el-table-column label="操作模块" align="center" prop="model" />
|
||||||
<el-table-column label="操作类型" align="center" prop="operType" />
|
<el-table-column label="操作类型" align="center" prop="operType" />
|
||||||
<el-table-column label="操作详情" align="center" prop="operateDetail" />
|
<el-table-column label="操作详情" align="center" prop="operateDetail" />
|
||||||
<el-table-column label="操作结果" align="center" prop="result">
|
<el-table-column label="操作结果" align="center" prop="result">
|
||||||
<template slot-scope="{ row }">
|
<template slot-scope="{ row }">
|
||||||
{{ row.result}}
|
{{ row.result }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作参数" align="center" prop="params" />
|
<el-table-column label="操作参数" align="center" prop="params" />
|
||||||
<el-table-column label="操作方法" align="center" prop="method" />
|
<el-table-column label="操作方法" align="center" prop="method" />
|
||||||
<el-table-column label="操作路径" align="center" prop="operUri" />
|
<el-table-column label="操作路径" align="center" prop="operUri" />
|
||||||
<el-table-column label="执行时间(ms)" align="center" prop="times" />
|
<el-table-column label="执行时间(ms)" align="center" prop="times" />
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination
|
<pagination
|
||||||
v-show="total > 0"
|
v-show="total > 0"
|
||||||
:total="total"
|
:total="total"
|
||||||
:page.sync="listQuery.pageNum"
|
:page.sync="listQuery.pageNum"
|
||||||
:limit.sync="listQuery.pageSize"
|
:limit.sync="listQuery.pageSize"
|
||||||
@pagination="getList"
|
@pagination="getList"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Pagination from '@/components/Pagination'
|
import Pagination from '@/components/Pagination'
|
||||||
|
|
||||||
import _ from 'lodash/fp'
|
import _ from 'lodash/fp'
|
||||||
import { downloadFile } from '@/utils/download'
|
import { downloadFile } from '@/utils/download'
|
||||||
|
|
||||||
import { getYwLogs,downloadYwLogs } from '@/api/system/log'
|
import { getYwLogs, downloadYwLogs } from '@/api/system/log'
|
||||||
|
|
||||||
|
const outcomeList = {
|
||||||
|
1: '成功',
|
||||||
|
2: '失败',
|
||||||
|
}
|
||||||
|
const operateList = {
|
||||||
|
1: '新增',
|
||||||
|
2: '修改',
|
||||||
|
3: '删除',
|
||||||
|
4: '查询',
|
||||||
|
5: '导出',
|
||||||
|
6: '下载',
|
||||||
|
7: '备份',
|
||||||
|
8: '登录',
|
||||||
|
9: '登出',
|
||||||
|
}
|
||||||
|
|
||||||
const outcomeList = {
|
export default {
|
||||||
1:'成功',
|
|
||||||
2:'失败'
|
|
||||||
};
|
|
||||||
const operateList = {
|
|
||||||
1:'新增',
|
|
||||||
2:'修改',
|
|
||||||
3:'删除',
|
|
||||||
4:'查询',
|
|
||||||
5:'导出',
|
|
||||||
6:'下载',
|
|
||||||
7:'备份',
|
|
||||||
8:'登录',
|
|
||||||
9:'登出'
|
|
||||||
};
|
|
||||||
|
|
||||||
export default {
|
|
||||||
components: { Pagination },
|
components: { Pagination },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
tableKey: 0,
|
tableKey: 0,
|
||||||
list: [],
|
list: [],
|
||||||
outcomeList: outcomeList,
|
outcomeList: outcomeList,
|
||||||
total: 0,
|
total: 0,
|
||||||
listLoading: false,
|
listLoading: false,
|
||||||
tableHeight: 650,
|
tableHeight: 650,
|
||||||
operateList: operateList,
|
operateList: operateList,
|
||||||
timeList:[{id:1,name:'时间'},{id:2,name:'操作人'},{id:3,name:'操作模块'},{id:4,name:'ip'},],
|
timeList: [
|
||||||
sortList:[{id:1,name:'倒序'},{id:2,name:'升序'}],
|
{ id: 1, name: '时间' },
|
||||||
listQuery: {
|
{ id: 2, name: '操作人' },
|
||||||
pageNum: 1,
|
{ id: 3, name: '操作模块' },
|
||||||
pageSize: 10,
|
{ id: 4, name: 'ip' },
|
||||||
operaUserName: '',
|
],
|
||||||
ip: '',
|
sortList: [
|
||||||
content:'',
|
{ id: 1, name: '倒序' },
|
||||||
result: '',
|
{ id: 2, name: '升序' },
|
||||||
operTime:'',
|
],
|
||||||
operType: '',
|
listQuery: {
|
||||||
logSort:1,
|
pageNum: 1,
|
||||||
logDesc:1,
|
pageSize: 10,
|
||||||
},
|
operaUserName: '',
|
||||||
rangeDate:[],
|
ip: '',
|
||||||
}
|
content: '',
|
||||||
|
result: '',
|
||||||
|
operTime: '',
|
||||||
|
operType: '',
|
||||||
|
logSort: 1,
|
||||||
|
logDesc: 1,
|
||||||
|
},
|
||||||
|
rangeDate: [],
|
||||||
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
// this.getList()
|
// this.getList()
|
||||||
// this.getOperate()
|
// this.getOperate()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.listQuery.operTime = this.getCurrentDate()+' - '+this.getCurrentDate();
|
this.listQuery.operTime = this.getCurrentDate() + ' - ' + this.getCurrentDate()
|
||||||
this.rangeDate = [this.getCurrentDate(),this.getCurrentDate()]
|
this.rangeDate = [this.getCurrentDate(), this.getCurrentDate()]
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getStatus(val) {
|
getStatus(val) {
|
||||||
return this.outcomeList[val]
|
return this.outcomeList[val]
|
||||||
},
|
},
|
||||||
//获取下拉数据
|
//获取下拉数据
|
||||||
getOperate(){
|
getOperate() {
|
||||||
// getOperateList().then((response) => {
|
// getOperateList().then((response) => {
|
||||||
// this.operateList = response.data
|
// this.operateList = response.data
|
||||||
// })
|
// })
|
||||||
},
|
},
|
||||||
|
|
||||||
getList() {
|
getList() {
|
||||||
this.listLoading = true
|
this.listLoading = true
|
||||||
if(this.rangeDate && this.rangeDate.length>0){
|
if (this.rangeDate && this.rangeDate.length > 0) {
|
||||||
this.listQuery.operTime = this.rangeDate[0]+' - '+this.rangeDate[1];
|
this.listQuery.operTime = this.rangeDate[0] + ' - ' + this.rangeDate[1]
|
||||||
}
|
}
|
||||||
getYwLogs(this.listQuery).then((response) => {
|
getYwLogs(this.listQuery).then((response) => {
|
||||||
this.list = response.rows.map(item => {
|
this.list = response.rows.map((item) => {
|
||||||
return item
|
return item
|
||||||
})
|
})
|
||||||
this.total = response.total
|
this.total = response.total
|
||||||
})
|
})
|
||||||
setTimeout(()=>{
|
setTimeout(() => {
|
||||||
this.listLoading = false
|
this.listLoading = false
|
||||||
},500)
|
}, 500)
|
||||||
},
|
},
|
||||||
// 查询
|
// 查询
|
||||||
handleFilter() {
|
handleFilter() {
|
||||||
this.listQuery.pageNum = 1
|
this.listQuery.pageNum = 1
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
//重置
|
//重置
|
||||||
resetFilter() {
|
resetFilter() {
|
||||||
this.listQuery={
|
this.listQuery = {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
operaUserName: '',
|
operaUserName: '',
|
||||||
ip: '',
|
ip: '',
|
||||||
|
|
||||||
content:'',
|
content: '',
|
||||||
result: '',
|
result: '',
|
||||||
operType: '',
|
operType: '',
|
||||||
logSort:1,
|
logSort: 1,
|
||||||
logDesc:1,
|
logDesc: 1,
|
||||||
};
|
}
|
||||||
this.rangeDate=[this.getCurrentDate(),this.getCurrentDate()]
|
this.rangeDate = [this.getCurrentDate(), this.getCurrentDate()]
|
||||||
this.handleFilter()
|
this.handleFilter()
|
||||||
},
|
},
|
||||||
// 备份
|
// 备份
|
||||||
handleBackups() {
|
handleBackups() {
|
||||||
downloadYwLogs().then(res => {
|
downloadYwLogs().then((res) => {
|
||||||
downloadFile({ fileName: '业务日志.sql', fileData: res, fileType: 'text/html;charset=UTF-8'})
|
downloadFile({ fileName: '业务日志.sql', fileData: res, fileType: 'text/html;charset=UTF-8' })
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
//导出
|
//导出
|
||||||
handleExport(){
|
handleExport() {
|
||||||
|
// exportCarDetail().then(res => {
|
||||||
// exportCarDetail().then(res => {
|
// downloadFile({ fileName: '设备详情.xlsx', fileData: res, fileType: 'application/vnd.ms-excel;charset=utf-8' })
|
||||||
// downloadFile({ fileName: '设备详情.xlsx', fileData: res, fileType: 'application/vnd.ms-excel;charset=utf-8' })
|
// })
|
||||||
// })
|
},
|
||||||
},
|
getCurrentDate() {
|
||||||
getCurrentDate() {
|
let now = new Date()
|
||||||
let now = new Date();
|
let year = now.getFullYear()
|
||||||
let year = now.getFullYear();
|
let month = now.getMonth() + 1
|
||||||
let month = now.getMonth() + 1;
|
if (month < 10) {
|
||||||
if(month<10){
|
month = '0' + month
|
||||||
month = '0'+month
|
}
|
||||||
}
|
let day = now.getDate()
|
||||||
let day = now.getDate();
|
if (day < 10) {
|
||||||
if(day<10){
|
day = '0' + day
|
||||||
day = '0'+day
|
}
|
||||||
}
|
return year + '-' + month + '-' + day
|
||||||
return year + "-" + month + "-" + day;
|
},
|
||||||
}
|
},
|
||||||
|
}
|
||||||
}
|
</script>
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
|
||||||
|
|
@ -1,92 +1,122 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
<el-input v-model="listQuery.operaUserName" placeholder="请输入操作人"
|
<el-input
|
||||||
style="width: 200px" class="filter-item" :maxlength="30"
|
v-model="listQuery.operaUserName"
|
||||||
@keyup.enter.native="handleFilter"
|
placeholder="请输入操作人"
|
||||||
/>
|
style="width: 200px"
|
||||||
<el-input v-model="listQuery.ip" placeholder="请输入IP地址"
|
class="filter-item"
|
||||||
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
:maxlength="30"
|
||||||
@keyup.enter.native="handleFilter"
|
@keyup.enter.native="handleFilter"
|
||||||
/>
|
/>
|
||||||
<el-date-picker
|
<el-input
|
||||||
v-model="rangeDate"
|
v-model="listQuery.ip"
|
||||||
style="width: 300px"
|
placeholder="请输入IP地址"
|
||||||
class="filter-item ml-20"
|
style="width: 200px"
|
||||||
value-format="yyyy-MM-dd"
|
class="filter-item ml-20"
|
||||||
type="daterange"
|
:maxlength="30"
|
||||||
range-separator="至"
|
@keyup.enter.native="handleFilter"
|
||||||
start-placeholder="开始日期"
|
/>
|
||||||
end-placeholder="结束日期"
|
<el-date-picker
|
||||||
/>
|
v-model="rangeDate"
|
||||||
<!-- <el-input v-model="listQuery.content" placeholder="请输入操作内容"
|
style="width: 300px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
type="daterange"
|
||||||
|
range-separator="至"
|
||||||
|
start-placeholder="开始日期"
|
||||||
|
end-placeholder="结束日期"
|
||||||
|
/>
|
||||||
|
<!-- <el-input v-model="listQuery.content" placeholder="请输入操作内容"
|
||||||
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
style="width: 200px" class="filter-item ml-20" :maxlength="30"
|
||||||
@keyup.enter.native="handleFilter"
|
@keyup.enter.native="handleFilter"
|
||||||
/>
|
/>
|
||||||
<el-select v-model="listQuery.result" placeholder="请选择事件结果" style="width: 200px" class="filter-item ml-20">
|
<el-select v-model="listQuery.result" placeholder="请选择事件结果" style="width: 200px" class="filter-item ml-20">
|
||||||
<el-option v-for="item in Object.keys(outcomeList)" :key="item" :value="outcomeList[item]" :label="outcomeList[item]" />
|
<el-option v-for="item in Object.keys(outcomeList)" :key="item" :value="outcomeList[item]" :label="outcomeList[item]" />
|
||||||
</el-select>-->
|
</el-select>-->
|
||||||
<el-select v-model="listQuery.operType" placeholder="请选择操作类型" style="width: 200px" class="filter-item ml-20">
|
<el-select
|
||||||
<el-option v-for="item in Object.keys(operateList)" :key="item" :value="operateList[item]" :label="operateList[item]" />
|
v-model="listQuery.operType"
|
||||||
</el-select>
|
placeholder="请选择操作类型"
|
||||||
|
style="width: 200px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in Object.keys(operateList)"
|
||||||
|
:key="item"
|
||||||
|
:value="operateList[item]"
|
||||||
|
:label="operateList[item]"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
|
||||||
<el-select v-model="listQuery.logSort" clearable filterable style="width: 200px" class="filter-item ml-20" placeholder="请选择" >
|
<el-select
|
||||||
<el-option v-for="item in timeList" :key="item.id" :label="item.name" :value="item.id" />
|
v-model="listQuery.logSort"
|
||||||
</el-select>
|
clearable
|
||||||
<el-select v-model="listQuery.logDesc" clearable filterable style="width: 200px" class="filter-item ml-20" placeholder="请选择" >
|
filterable
|
||||||
<el-option v-for="item in sortList" :key="item.id" :label="item.name" :value="item.id" />
|
style="width: 200px"
|
||||||
</el-select>
|
class="filter-item ml-20"
|
||||||
<el-button style="margin-left: 20px" class="filter-item" type="primary" @click="handleFilter">
|
placeholder="请选择"
|
||||||
查询
|
>
|
||||||
</el-button>
|
<el-option v-for="item in timeList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
<el-button style="margin-left: 20px" class="filter-item" @click="resetFilter">
|
</el-select>
|
||||||
重置
|
<el-select
|
||||||
</el-button>
|
v-model="listQuery.logDesc"
|
||||||
<el-button @click="handleBackups" class="filter-item" style="margin-left: 20px" type="warning">
|
clearable
|
||||||
备份
|
filterable
|
||||||
</el-button>
|
style="width: 200px"
|
||||||
|
class="filter-item ml-20"
|
||||||
|
placeholder="请选择"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in sortList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
|
</el-select>
|
||||||
|
<el-button style="margin-left: 20px" class="filter-item" type="primary" @click="handleFilter">
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
<el-button style="margin-left: 20px" class="filter-item" @click="resetFilter"> 重置 </el-button>
|
||||||
|
<el-button @click="handleBackups" class="filter-item" style="margin-left: 20px" type="warning">
|
||||||
|
备份
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<el-table
|
||||||
|
:key="tableKey"
|
||||||
|
v-loading="listLoading"
|
||||||
|
:data="list"
|
||||||
|
border
|
||||||
|
fit
|
||||||
|
highlight-current-row
|
||||||
|
style="width: 100%"
|
||||||
|
:max-height="tableHeight"
|
||||||
|
>
|
||||||
|
<el-table-column label="序号" align="center" width="80" type="index">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ (listQuery.pageNum - 1) * listQuery.pageSize + scope.$index + 1 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作人" align="center" prop="operaUserName" />
|
||||||
|
<el-table-column label="操作时间" align="center" prop="operTime" />
|
||||||
|
<el-table-column label="IP地址" align="center" prop="ip" />
|
||||||
|
<el-table-column label="操作模块" align="center" prop="model" />
|
||||||
|
<el-table-column label="操作类型" align="center" prop="operType" />
|
||||||
|
<el-table-column label="操作详情" align="center" prop="operateDetail" />
|
||||||
|
<el-table-column label="操作结果" align="center" prop="result">
|
||||||
|
<template slot-scope="{ row }">
|
||||||
|
{{ row.result }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作参数" align="center" prop="params" />
|
||||||
|
<el-table-column label="操作方法" align="center" prop="method" />
|
||||||
|
<el-table-column label="操作路径" align="center" prop="operUri" />
|
||||||
|
<el-table-column label="执行时间(ms)" align="center" prop="times" />
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<pagination
|
||||||
|
v-show="total > 0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="listQuery.pageNum"
|
||||||
|
:limit.sync="listQuery.pageSize"
|
||||||
|
@pagination="getList"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-table
|
|
||||||
:key="tableKey"
|
|
||||||
v-loading="listLoading"
|
|
||||||
:data="list"
|
|
||||||
border
|
|
||||||
fit
|
|
||||||
highlight-current-row
|
|
||||||
style="width: 100%"
|
|
||||||
:max-height="tableHeight"
|
|
||||||
>
|
|
||||||
<el-table-column label="序号" align="center" width="80" type="index">
|
|
||||||
<template scope="scope">
|
|
||||||
<span>{{ (listQuery.pageNum - 1) * listQuery.pageSize + scope.$index + 1 }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作人" align="center" prop="operaUserName" />
|
|
||||||
<el-table-column label="操作时间" align="center" prop="operTime" />
|
|
||||||
<el-table-column label="IP地址" align="center" prop="ip" />
|
|
||||||
<el-table-column label="操作模块" align="center" prop="model" />
|
|
||||||
<el-table-column label="操作类型" align="center" prop="operType" />
|
|
||||||
<el-table-column label="操作详情" align="center" prop="operateDetail" />
|
|
||||||
<el-table-column label="操作结果" align="center" prop="result">
|
|
||||||
<template slot-scope="{ row }">
|
|
||||||
{{ row.result }}
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作参数" align="center" prop="params" />
|
|
||||||
<el-table-column label="操作方法" align="center" prop="method" />
|
|
||||||
<el-table-column label="操作路径" align="center" prop="operUri" />
|
|
||||||
<el-table-column label="执行时间(ms)" align="center" prop="times" />
|
|
||||||
</el-table>
|
|
||||||
|
|
||||||
<pagination
|
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="listQuery.pageNum"
|
|
||||||
:limit.sync="listQuery.pageSize"
|
|
||||||
@pagination="getList"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
@ -95,138 +125,143 @@ import Pagination from '@/components/Pagination'
|
||||||
import _ from 'lodash/fp'
|
import _ from 'lodash/fp'
|
||||||
import { downloadFile } from '@/utils/download'
|
import { downloadFile } from '@/utils/download'
|
||||||
|
|
||||||
import { getSysLogs,downloadSysLogs } from '@/api/system/log'
|
import { getSysLogs, downloadSysLogs } from '@/api/system/log'
|
||||||
|
|
||||||
|
|
||||||
const outcomeList = {
|
const outcomeList = {
|
||||||
1:'成功',
|
1: '成功',
|
||||||
2:'失败'
|
2: '失败',
|
||||||
};
|
}
|
||||||
const operateList = {
|
const operateList = {
|
||||||
1:'新增',
|
1: '新增',
|
||||||
2:'修改',
|
2: '修改',
|
||||||
3:'删除',
|
3: '删除',
|
||||||
4:'查询',
|
4: '查询',
|
||||||
5:'导出',
|
5: '导出',
|
||||||
6:'下载',
|
6: '下载',
|
||||||
7:'备份',
|
7: '备份',
|
||||||
8:'登录',
|
8: '登录',
|
||||||
9:'登出'
|
9: '登出',
|
||||||
};
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: { Pagination },
|
components: { Pagination },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
tableKey: 0,
|
tableKey: 0,
|
||||||
list: [],
|
list: [],
|
||||||
outcomeList: outcomeList,
|
outcomeList: outcomeList,
|
||||||
total: 0,
|
total: 0,
|
||||||
listLoading: false,
|
listLoading: false,
|
||||||
tableHeight: 650,
|
tableHeight: 650,
|
||||||
operateList: operateList,
|
operateList: operateList,
|
||||||
timeList:[{id:1,name:'时间'},{id:2,name:'操作人'},{id:3,name:'操作模块'},{id:4,name:'ip'},{id:5,name:'操作类型'},],
|
timeList: [
|
||||||
sortList:[{id:1,name:'倒序'},{id:2,name:'升序'}],
|
{ id: 1, name: '时间' },
|
||||||
listQuery: {
|
{ id: 2, name: '操作人' },
|
||||||
pageNum: 1,
|
{ id: 3, name: '操作模块' },
|
||||||
pageSize: 10,
|
{ id: 4, name: 'ip' },
|
||||||
operaUserName: '',
|
{ id: 5, name: '操作类型' },
|
||||||
ip: '',
|
],
|
||||||
content:'',
|
sortList: [
|
||||||
result: '',
|
{ id: 1, name: '倒序' },
|
||||||
operTime:'',
|
{ id: 2, name: '升序' },
|
||||||
operaType: '',
|
],
|
||||||
logSort:1,
|
listQuery: {
|
||||||
logDesc:1,
|
pageNum: 1,
|
||||||
},
|
pageSize: 10,
|
||||||
rangeDate:[],
|
operaUserName: '',
|
||||||
}
|
ip: '',
|
||||||
},
|
content: '',
|
||||||
created() {
|
result: '',
|
||||||
// this.getList()
|
operTime: '',
|
||||||
// this.getOperate()
|
operaType: '',
|
||||||
},
|
logSort: 1,
|
||||||
mounted() {
|
logDesc: 1,
|
||||||
this.listQuery.operTime = this.getCurrentDate()+' - '+this.getCurrentDate();
|
},
|
||||||
this.rangeDate = [this.getCurrentDate(),this.getCurrentDate()]
|
rangeDate: [],
|
||||||
this.getList()
|
}
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getStatus(val) {
|
|
||||||
return this.outcomeList[val]
|
|
||||||
},
|
},
|
||||||
//获取下拉数据
|
created() {
|
||||||
getOperate(){
|
// this.getList()
|
||||||
// getOperateList().then((response) => {
|
// this.getOperate()
|
||||||
// this.operateList = response.data
|
|
||||||
// })
|
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
this.listQuery.operTime = this.getCurrentDate() + ' - ' + this.getCurrentDate()
|
||||||
|
this.rangeDate = [this.getCurrentDate(), this.getCurrentDate()]
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getStatus(val) {
|
||||||
|
return this.outcomeList[val]
|
||||||
|
},
|
||||||
|
//获取下拉数据
|
||||||
|
getOperate() {
|
||||||
|
// getOperateList().then((response) => {
|
||||||
|
// this.operateList = response.data
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
|
||||||
getList() {
|
getList() {
|
||||||
this.listLoading = true
|
this.listLoading = true
|
||||||
if(this.rangeDate && this.rangeDate.length>0){
|
if (this.rangeDate && this.rangeDate.length > 0) {
|
||||||
this.listQuery.operTime = this.rangeDate[0]+' - '+this.rangeDate[1];
|
this.listQuery.operTime = this.rangeDate[0] + ' - ' + this.rangeDate[1]
|
||||||
}
|
}
|
||||||
getSysLogs(this.listQuery).then((response) => {
|
getSysLogs(this.listQuery).then((response) => {
|
||||||
this.list = response.rows.map(item => {
|
this.list = response.rows.map((item) => {
|
||||||
return item
|
return item
|
||||||
})
|
})
|
||||||
this.total = response.total
|
this.total = response.total
|
||||||
})
|
})
|
||||||
setTimeout(()=>{
|
setTimeout(() => {
|
||||||
this.listLoading = false
|
this.listLoading = false
|
||||||
},500)
|
}, 500)
|
||||||
},
|
},
|
||||||
// 查询
|
// 查询
|
||||||
handleFilter() {
|
handleFilter() {
|
||||||
this.listQuery.pageNum = 1
|
this.listQuery.pageNum = 1
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
//重置
|
//重置
|
||||||
resetFilter() {
|
resetFilter() {
|
||||||
this.listQuery={
|
this.listQuery = {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
operaUserName: '',
|
operaUserName: '',
|
||||||
ip: '',
|
ip: '',
|
||||||
|
|
||||||
content:'',
|
content: '',
|
||||||
result: '',
|
result: '',
|
||||||
operateType: '',
|
operateType: '',
|
||||||
logSort:1,
|
logSort: 1,
|
||||||
logDesc:1,
|
logDesc: 1,
|
||||||
};
|
}
|
||||||
this.rangeDate=[this.getCurrentDate(),this.getCurrentDate()]
|
this.rangeDate = [this.getCurrentDate(), this.getCurrentDate()]
|
||||||
this.handleFilter()
|
this.handleFilter()
|
||||||
|
},
|
||||||
|
// 备份
|
||||||
|
handleBackups() {
|
||||||
|
downloadSysLogs().then((res) => {
|
||||||
|
downloadFile({ fileName: '系统日志.sql', fileData: res, fileType: 'text/html;charset=UTF-8' })
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//导出
|
||||||
|
handleExport() {
|
||||||
|
// exportCarDetail().then(res => {
|
||||||
|
// downloadFile({ fileName: '设备详情.xlsx', fileData: res, fileType: 'application/vnd.ms-excel;charset=utf-8' })
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
getCurrentDate() {
|
||||||
|
let now = new Date()
|
||||||
|
let year = now.getFullYear()
|
||||||
|
let month = now.getMonth() + 1
|
||||||
|
if (month < 10) {
|
||||||
|
month = '0' + month
|
||||||
|
}
|
||||||
|
let day = now.getDate()
|
||||||
|
if (day < 10) {
|
||||||
|
day = '0' + day
|
||||||
|
}
|
||||||
|
return year + '-' + month + '-' + day
|
||||||
|
},
|
||||||
},
|
},
|
||||||
// 备份
|
|
||||||
handleBackups() {
|
|
||||||
downloadSysLogs().then(res => {
|
|
||||||
downloadFile({ fileName: '系统日志.sql', fileData: res, fileType: 'text/html;charset=UTF-8' })
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
//导出
|
|
||||||
handleExport(){
|
|
||||||
|
|
||||||
// exportCarDetail().then(res => {
|
|
||||||
// downloadFile({ fileName: '设备详情.xlsx', fileData: res, fileType: 'application/vnd.ms-excel;charset=utf-8' })
|
|
||||||
// })
|
|
||||||
},
|
|
||||||
getCurrentDate() {
|
|
||||||
let now = new Date();
|
|
||||||
let year = now.getFullYear();
|
|
||||||
let month = now.getMonth() + 1;
|
|
||||||
if(month<10){
|
|
||||||
month = '0'+month
|
|
||||||
}
|
|
||||||
let day = now.getDate();
|
|
||||||
if(day<10){
|
|
||||||
day = '0'+day
|
|
||||||
}
|
|
||||||
return year + "-" + month + "-" + day;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue