fix: 左下角

main
@0Melon0 1 year ago
parent 7b91c9096c
commit bf1584f43d

@ -1,5 +1,12 @@
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
]
}
presets: ['@vue/cli-plugin-babel/preset'],
plugins: [
[
'component',
{
libraryName: 'element-ui',
styleLibraryName: 'theme-chalk',
},
],
],
};

129
package-lock.json generated

@ -10,6 +10,8 @@
"dependencies": {
"core-js": "^3.8.3",
"dayjs": "^1.11.10",
"echarts": "^5.5.0",
"element-ui": "^2.15.14",
"vue": "^2.6.14",
"vue-router": "^3.5.1",
"vuex": "^3.6.2"
@ -23,6 +25,7 @@
"@vue/cli-plugin-vuex": "~5.0.0",
"@vue/cli-service": "~5.0.0",
"autoprefixer": "^10.4.17",
"babel-plugin-component": "^1.1.1",
"eslint": "^7.32.0",
"eslint-plugin-vue": "^8.0.3",
"postcss": "^8.4.35",
@ -3658,6 +3661,14 @@
"lodash": "^4.17.14"
}
},
"node_modules/async-validator": {
"version": "1.8.5",
"resolved": "https://registry.npmjs.org/async-validator/-/async-validator-1.8.5.tgz",
"integrity": "sha512-tXBM+1m056MAX0E8TL2iCjg8WvSyXu0Zc8LNtYqrVeyoL3+esHRZ4SieE9fKQyyU09uONjnMEjrNBMqT0mbvmA==",
"dependencies": {
"babel-runtime": "6.x"
}
},
"node_modules/at-least-node": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
@ -3704,6 +3715,11 @@
"postcss": "^8.1.0"
}
},
"node_modules/babel-helper-vue-jsx-merge-props": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-2.0.3.tgz",
"integrity": "sha512-gsLiKK7Qrb7zYJNgiXKpXblxbV5ffSwR0f5whkPAaBAR4fhi6bwRZxX9wBlIc5M/v8CCkXUbXZL4N/nSE97cqg=="
},
"node_modules/babel-loader": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz",
@ -3737,6 +3753,36 @@
"node": ">=8.9.0"
}
},
"node_modules/babel-plugin-component": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/babel-plugin-component/-/babel-plugin-component-1.1.1.tgz",
"integrity": "sha512-WUw887kJf2GH80Ng/ZMctKZ511iamHNqPhd9uKo14yzisvV7Wt1EckIrb8oq/uCz3B3PpAW7Xfl7AkTLDYT6ag==",
"dev": true,
"dependencies": {
"@babel/helper-module-imports": "7.0.0-beta.35"
}
},
"node_modules/babel-plugin-component/node_modules/@babel/helper-module-imports": {
"version": "7.0.0-beta.35",
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.35.tgz",
"integrity": "sha512-vaC1KyIZSuyWb3Lj277fX0pxivyHwuDU4xZsofqgYAbkDxNieMg2vuhzP5AgMweMY7fCQUMTi+BgPqTLjkxXFg==",
"dev": true,
"dependencies": {
"@babel/types": "7.0.0-beta.35",
"lodash": "^4.2.0"
}
},
"node_modules/babel-plugin-component/node_modules/@babel/types": {
"version": "7.0.0-beta.35",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.35.tgz",
"integrity": "sha512-y9XT11CozHDgjWcTdxmhSj13rJVXpa5ZXwjjOiTedjaM0ba5ItqdS02t31EhPl7HtOWxsZkYCCUNrSfrOisA6w==",
"dev": true,
"dependencies": {
"esutils": "^2.0.2",
"lodash": "^4.2.0",
"to-fast-properties": "^2.0.0"
}
},
"node_modules/babel-plugin-dynamic-import-node": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
@ -3785,6 +3831,27 @@
"@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
}
},
"node_modules/babel-runtime": {
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
"integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==",
"dependencies": {
"core-js": "^2.4.0",
"regenerator-runtime": "^0.11.0"
}
},
"node_modules/babel-runtime/node_modules/core-js": {
"version": "2.6.12",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
"deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.",
"hasInstallScript": true
},
"node_modules/babel-runtime/node_modules/regenerator-runtime": {
"version": "0.11.1",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
},
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@ -4997,7 +5064,6 @@
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
"integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
@ -5379,6 +5445,20 @@
"node": ">=6.0.0"
}
},
"node_modules/echarts": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/echarts/-/echarts-5.5.0.tgz",
"integrity": "sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw==",
"dependencies": {
"tslib": "2.3.0",
"zrender": "5.5.0"
}
},
"node_modules/echarts/node_modules/tslib": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
"integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
},
"node_modules/ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
@ -5391,6 +5471,22 @@
"integrity": "sha512-yDYeobbTEe4TNooEzOQO6xFqg9XnAkVy2Lod1C1B2it8u47JNLYvl9nLDWBamqUakWB8Jc1hhS1uHUNYTNQdfw==",
"dev": true
},
"node_modules/element-ui": {
"version": "2.15.14",
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.14.tgz",
"integrity": "sha512-2v9fHL0ZGINotOlRIAJD5YuVB8V7WKxrE9Qy7dXhRipa035+kF7WuU/z+tEmLVPBcJ0zt8mOu1DKpWcVzBK8IA==",
"dependencies": {
"async-validator": "~1.8.1",
"babel-helper-vue-jsx-merge-props": "^2.0.0",
"deepmerge": "^1.2.0",
"normalize-wheel": "^1.0.1",
"resize-observer-polyfill": "^1.5.0",
"throttle-debounce": "^1.0.1"
},
"peerDependencies": {
"vue": "^2.5.17"
}
},
"node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@ -8470,6 +8566,11 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/normalize-wheel": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/normalize-wheel/-/normalize-wheel-1.0.1.tgz",
"integrity": "sha512-1OnlAPZ3zgrk8B91HyRj+eVv+kS5u+Z0SCsak6Xil/kmgEia50ga7zfkumayonZrImffAxPU/5WcyGhzetHNPA=="
},
"node_modules/npm-run-path": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
@ -10099,6 +10200,11 @@
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
"dev": true
},
"node_modules/resize-observer-polyfill": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
"integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg=="
},
"node_modules/resolve": {
"version": "1.22.8",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
@ -11276,6 +11382,14 @@
"url": "https://opencollective.com/webpack"
}
},
"node_modules/throttle-debounce": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-1.1.0.tgz",
"integrity": "sha512-XH8UiPCQcWNuk2LYePibW/4qL97+ZQ1AN3FNXwZRBNPPowo/NRU5fAlDCSNBJIYCKbioZfuYtMhG4quqoJhVzg==",
"engines": {
"node": ">=4"
}
},
"node_modules/thunky": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
@ -12524,6 +12638,19 @@
"resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
"dev": true
},
"node_modules/zrender": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/zrender/-/zrender-5.5.0.tgz",
"integrity": "sha512-O3MilSi/9mwoovx77m6ROZM7sXShR/O/JIanvzTwjN3FORfLSr81PsUGd7jlaYOeds9d8tw82oP44+3YucVo+w==",
"dependencies": {
"tslib": "2.3.0"
}
},
"node_modules/zrender/node_modules/tslib": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
"integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
}
}
}

@ -10,6 +10,8 @@
"dependencies": {
"core-js": "^3.8.3",
"dayjs": "^1.11.10",
"echarts": "^5.5.0",
"element-ui": "^2.15.14",
"vue": "^2.6.14",
"vue-router": "^3.5.1",
"vuex": "^3.6.2"
@ -23,6 +25,7 @@
"@vue/cli-plugin-vuex": "~5.0.0",
"@vue/cli-service": "~5.0.0",
"autoprefixer": "^10.4.17",
"babel-plugin-component": "^1.1.1",
"eslint": "^7.32.0",
"eslint-plugin-vue": "^8.0.3",
"postcss": "^8.4.35",

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.4 KiB

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="38" height="136" viewBox="0 0 38 136"><g><g><g><path d="M13.368,28.328L13.368,33.512C13.368,35.992000000000004,13.208,39.272,11.528,41.608000000000004C11.8,41.751999999999995,12.28,42.135999999999996,12.488,42.3775C14.296,39.896,14.552,36.168,14.552,33.512L14.552,29.448L23.880000000000003,29.448L23.880000000000003,40.760000000000005C23.880000000000003,41.032,23.768,41.128,23.48,41.144C23.208,41.16,22.216,41.176,21.176000000000002,41.128C21.352,41.432,21.528,41.96,21.576,42.263999999999996C23.016,42.263999999999996,23.880000000000003,42.248000000000005,24.375999999999998,42.056C24.887999999999998,41.864000000000004,25.08,41.512,25.08,40.760000000000005L25.08,28.328L13.368,28.328ZM18.472,29.768L18.472,31.16L15.608,31.16L15.608,32.12L18.472,32.12L18.472,33.688L15.208,33.688L15.208,34.68L23.048000000000002,34.68L23.048000000000002,33.688L19.624000000000002,33.688L19.624000000000002,32.12L22.648,32.12L22.648,31.16L19.624000000000002,31.16L19.624000000000002,29.768L18.472,29.768ZM15.992,36.024L15.992,41.128L17.096,41.128L17.096,40.232L22.216,40.232L22.216,36.024L15.992,36.024ZM17.096,37L21.096,37L21.096,39.272L17.096,39.272L17.096,37Z" fill="#C0D3E1" fill-opacity="1"/></g></g><g><g><g transform="matrix(-1,0,0,1,76,0)"><path d="M38,68L76,54L76,14L38,0L38,68Z" fill="#190057" fill-opacity="1"/></g></g></g><g><g><g transform="matrix(-1,0,0,1,76,0)"><path d="M38,136L76,122L76,54L38,68L38,136Z" fill="#380AAA" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="7" viewBox="0 0 20 7"><g transform="matrix(-1,0,0,1,40,0)"><g><path d="M27.3574,0L23.73051,0L20,3.5L20.000017643,3.5L23.73053,7L27.35742,7L23.62691,3.5L23.62689,3.5L27.3574,0Z" fill-rule="evenodd" fill="#52BBF2" fill-opacity="1"/></g><g><path d="M33.6786513923645,0L30.0517613923645,0L26.321251392364502,3.5L26.3212690353645,3.5L30.051781392364504,7L33.6786713923645,7L29.9481613923645,3.5L29.9481413923645,3.5L33.6786513923645,0Z" fill-rule="evenodd" fill="#5DC8F6" fill-opacity="1"/></g><g><path d="M39.999902784729,0L36.373012784729006,0L32.642502784729004,3.5L32.642520427729,3.5L36.373032784729006,7L39.999922784729,7L36.269412784729006,3.5L36.26939278472901,3.5L39.999902784729,0Z" fill-rule="evenodd" fill="#20ECE9" fill-opacity="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 883 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="38" height="136" viewBox="0 0 38 136"><g><g><g><path d="M13.368,28.328L13.368,33.512C13.368,35.992000000000004,13.208,39.272,11.528,41.608000000000004C11.8,41.751999999999995,12.28,42.135999999999996,12.488,42.3775C14.296,39.896,14.552,36.168,14.552,33.512L14.552,29.448L23.880000000000003,29.448L23.880000000000003,40.760000000000005C23.880000000000003,41.032,23.768,41.128,23.48,41.144C23.208,41.16,22.216,41.176,21.176000000000002,41.128C21.352,41.432,21.528,41.96,21.576,42.263999999999996C23.016,42.263999999999996,23.880000000000003,42.248000000000005,24.375999999999998,42.056C24.887999999999998,41.864000000000004,25.08,41.512,25.08,40.760000000000005L25.08,28.328L13.368,28.328ZM18.472,29.768L18.472,31.16L15.608,31.16L15.608,32.12L18.472,32.12L18.472,33.688L15.208,33.688L15.208,34.68L23.048000000000002,34.68L23.048000000000002,33.688L19.624000000000002,33.688L19.624000000000002,32.12L22.648,32.12L22.648,31.16L19.624000000000002,31.16L19.624000000000002,29.768L18.472,29.768ZM15.992,36.024L15.992,41.128L17.096,41.128L17.096,40.232L22.216,40.232L22.216,36.024L15.992,36.024ZM17.096,37L21.096,37L21.096,39.272L17.096,39.272L17.096,37Z" fill="#C0D3E1" fill-opacity="1"/></g></g><g><g><g transform="matrix(-1,0,0,1,76,0)"><path d="M38,68L76,54L76,14L38,0L38,68Z" fill="#380AAA" fill-opacity="1"/></g></g></g><g><g><g transform="matrix(-1,0,0,1,76,0)"><path d="M38,136L76,122L76,54L38,68L38,136Z" fill="#190057" fill-opacity="1"/></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Before

Width:  |  Height:  |  Size: 976 B

After

Width:  |  Height:  |  Size: 976 B

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="1268.30029296875" height="434.0546875" viewBox="0 0 1268.30029296875 434.0546875"><defs><linearGradient x1="6.661338147750939e-16" y1="0.5" x2="1.017080545425415" y2="0.5000399947166443" id="master_svg0_555_29651"><stop offset="0%" stop-color="#5D49AF" stop-opacity="1"/><stop offset="100%" stop-color="#7E65E5" stop-opacity="0"/></linearGradient><linearGradient x1="6.661338147750939e-16" y1="0.5" x2="1.017080545425415" y2="0.5000399947166443" id="master_svg1_555_29651"><stop offset="0%" stop-color="#5D49AF" stop-opacity="1"/><stop offset="100%" stop-color="#7E65E5" stop-opacity="0"/></linearGradient><linearGradient x1="1" y1="62.8095703125" x2="1" y2="62.8095703125" gradientUnits="userSpaceOnUse" id="master_svg2_201_00003"><stop offset="0%" stop-color="#FFFFFF" stop-opacity="0"/><stop offset="50%" stop-color="#FFFFFF" stop-opacity="1"/><stop offset="100%" stop-color="#FFFFFF" stop-opacity="0"/></linearGradient><linearGradient x1="1261.64453125" y1="62.8095703125" x2="1261.64453125" y2="62.8095703125" gradientUnits="userSpaceOnUse" id="master_svg3_201_00003"><stop offset="0%" stop-color="#FFFFFF" stop-opacity="0"/><stop offset="50%" stop-color="#FFFFFF" stop-opacity="1"/><stop offset="100%" stop-color="#FFFFFF" stop-opacity="0"/></linearGradient><filter id="master_svg4_600_05906" filterUnits="objectBoundingBox" color-interpolation-filters="sRGB" x="0" y="0" width="1263" height="427.8908386230469"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur in="BackgroundImage" stdDeviation="2.5"/><feComposite in2="SourceAlpha" operator="in" result="effect1_foregroundBlur"/><feBlend mode="normal" in="SourceGraphic" in2="effect1_foregroundBlur" result="shape"/></filter><linearGradient x1="0.012568394653499126" y1="0.2873583436012268" x2="0.9811341762542725" y2="1" id="master_svg5_201_02516"><stop offset="0%" stop-color="#8C64E2" stop-opacity="1"/><stop offset="10.360609740018845%" stop-color="#8C64E2" stop-opacity="0"/><stop offset="47.14285731315613%" stop-color="#8C64E2" stop-opacity="0"/><stop offset="73.57142567634583%" stop-color="#8C64E2" stop-opacity="0.699999988079071"/><stop offset="85.00000238418579%" stop-color="#8C64E2" stop-opacity="0.2199999988079071"/><stop offset="100%" stop-color="#8C64E2" stop-opacity="0"/></linearGradient></defs><g><g><path d="M540.60205078125,1.5L1030.7210507812501,1.5L1037.79005078125,5.33186L547.67108078125,5.33186L540.60205078125,1.5Z" fill="url(#master_svg0_555_29651)" fill-opacity="1"/></g><g><path d="M1049.572265625,1.5L1249.861265625,1.5L1256.930265625,5.33186L1056.641295625,5.33186L1049.572265625,1.5Z" fill="url(#master_svg1_555_29651)" fill-opacity="1"/></g><g><path d="M1172.10205078125,431.5L1195.66545078125,431.5L1195.66545078125,434.05457L1172.10205078125,434.05457L1172.10205078125,431.5ZM1200.37815078125,431.5L1214.51625078125,431.5L1214.51625078125,434.05457L1200.37815078125,434.05457L1200.37815078125,431.5ZM1231.01065078125,431.5L1219.22895078125,431.5L1219.22895078125,434.05457L1231.01065078125,434.05457L1231.01065078125,431.5Z" fill-rule="evenodd" fill="#8C64E2" fill-opacity="0.8392156958580017"/></g><g><path d="M12.78173828125,423.00410578125L12.78173828125,416.61767578125L24.56343828125,423.00410578125L12.78173828125,423.00410578125Z" fill="#8C64E2" fill-opacity="0.8392156958580017"/></g><g><path d="M1249.8627546875,423.00410578125L1249.8627546875,416.61767578125L1238.0810546875,423.00410578125L1249.8627546875,423.00410578125Z" fill="#8C64E2" fill-opacity="0.8392156958580017"/></g><g transform="matrix(0,1,-1,0,63.8095703125,61.8095703125)"><line x1="1" y1="62.3095703125" x2="367.5810852050781" y2="62.3095703125" stroke="url(#master_svg2_201_00003)" fill-opacity="0" fill="none" stroke-width="1"/></g><g transform="matrix(0,1,-1,0,1324.4541015625,-1198.8349609375)"><line x1="1261.64453125" y1="62.3095703125" x2="1628.2256164550781" y2="62.3095703125" stroke="url(#master_svg3_201_00003)" fill-opacity="0" fill="none" stroke-width="1"/></g><g filter="url(#master_svg4_600_05906)"><path d="M3.80029296875,1.5L531.62129296875,1.5L548.11529296875,11.7183L1266.80029296875,11.7183L1266.80029296875,429.391L3.80029296875,429.391L3.80029296875,1.5Z" fill="#01152A" fill-opacity="0.4000000059604645"/><path d="M2.30029296875,0L2.30029296875,430.891L1268.30029296875,430.891L1268.30029296875,10.21829L548.54229296875,10.21829L532.04829296875,0L2.30029296875,0ZM5.30029296875,427.891L1265.30029296875,427.891L1265.30029296875,13.2183L547.68829296875,13.2183L531.19429296875,3L5.30029296875,3L5.30029296875,427.891Z" fill-rule="evenodd" fill="url(#master_svg5_201_02516)" fill-opacity="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="136.002197265625" height="106" viewBox="0 0 136.002197265625 106"><defs><linearGradient x1="0.5" y1="-3.0616171314629196e-17" x2="0.5" y2="1" id="master_svg0_185_29425"><stop offset="0%" stop-color="#006DAB" stop-opacity="0.30000001192092896"/><stop offset="100%" stop-color="#00669F" stop-opacity="1"/></linearGradient></defs><g><path d="" fill="#2D126F" fill-opacity="0"/><path d="M0,0L135.856,0L136.002,100.633L127.002,106L8.0022,106L0.00219727,100.633L0,1L0,0ZM134.858,1L135.001,100.065L126.727,105L8.30656,105L1.00219,100.1L1.00002,1L134.858,1Z" fill-rule="evenodd" fill="url(#master_svg0_185_29425)" fill-opacity="1"/></g></svg>

After

Width:  |  Height:  |  Size: 750 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="138" height="108" viewBox="0 0 138 108"><g><g><path d="M2,2L9,2L9,0L0,0L0,9L2,9L2,2Z" fill-rule="evenodd" fill="#5D49AF" fill-opacity="1"/></g><g transform="matrix(1,0,0,-1,0,214)"><path d="M10.30437,108L19,108L19,106L9.69563,106L0,112.50466L0,119.0759L2,119.0759L2,113.57128L6.05712,110.84942L10.30437,108Z" fill-rule="evenodd" fill="#5D49AF" fill-opacity="1"/></g><g transform="matrix(-1,0,0,-1,274,214)"><path d="M146.30437,108L155,108L155,106L145.69563,106L136,112.50466L136,119.0759L138,119.0759L138,113.57128L142.05712,110.84942L146.30437,108Z" fill-rule="evenodd" fill="#5D49AF" fill-opacity="1"/></g><g transform="matrix(-1,0,0,1,274,0)"><path d="M138,2L145,2L145,0L136,0L136,9L138,9L138,2Z" fill-rule="evenodd" fill="#5D49AF" fill-opacity="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 883 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="136" height="9" viewBox="0 0 136 9"><defs><linearGradient x1="-2.032271242567371e-14" y1="0.9999873042106628" x2="0.9840425848960876" y2="0.9999790191650391" id="master_svg0_117_8516"><stop offset="0%" stop-color="#006DAB" stop-opacity="0"/><stop offset="51.5625%" stop-color="#006DAB" stop-opacity="1"/><stop offset="100%" stop-color="#006DAB" stop-opacity="0"/></linearGradient></defs><g><g transform="matrix(0,1,-1,0,9,-9)"><path d="M13.5,6.39488e-16L17.397109999999998,6.75L9.602886,6.75L13.5,6.39488e-16Z" fill="#006DAB" fill-opacity="1"/></g><g><rect x="4" y="4" width="128" height="1" rx="0" fill="url(#master_svg0_117_8516)" fill-opacity="1"/></g><g transform="matrix(0,1,1,0,127,-127)"><path d="M131.5,6.39488e-16L135.39711,6.75L127.602886,6.75L131.5,6.39488e-16Z" fill="#006DAB" fill-opacity="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 937 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.0 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.1 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

@ -1,9 +1,68 @@
<template>
<div class="w-[51.29vh]"></div>
<div class="w-[51.29vh] h-[40.09vh] bgBottomLeftBox mt-[2.68vh] relative">
<div class="w-[12.4vh] h-[5.07vh] ml-[1.85vh] flex justify-between items-center">
<img src="@/assets/svg/Monitor/BottomLeft/Triangle.svg" />
<span class="text-[2.03vh] youshe leading-none">手术量统计</span>
</div>
<div class="w-[42.96vh] h-[27.12vh] ml-[2.96vh] my-[3.7vh] border border-orange-500" ref="echartsContainer"></div>
<div class="absolute right-0 top-1/2 -translate-y-1/2 w-[3.51vh] h-[12.6vh] bgWeekBox">
<div class="h-[6.3vh] leading-[6.3vh] text-center text-[#C0D3E1]"></div>
<div class="h-[6.3vh] leading-[6.3vh] text-center text-[#C0D3E1]"></div>
</div>
</div>
</template>
<script>
export default {};
import * as echarts from 'echarts';
export default {
data() {
return {
chartOptions: {
grid: {
left: '0%',
right: '0%',
top: '0%',
bottom: '10%',
},
xAxis: {
type: 'category',
data: ['择期手术', '急诊手术', '日间手术', '门诊手术'],
},
yAxis: {
type: 'value',
},
series: [
{
data: [87, 108, 50, 92],
type: 'bar',
barWidth: '10%',
},
],
},
};
},
mounted() {
const echartsContainer = this.$refs.echartsContainer;
const chartLeft = echarts.init(echartsContainer);
chartLeft.setOption(this.chartOptions);
},
};
</script>
<style></style>
<style>
.bgBottomLeftBox {
background-image: url('@/assets/svg/Monitor/BottomLeft/Box.svg');
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
.bgWeekBox {
background-image: url('@/assets/svg/Monitor/BottomLeft/WeekActive.svg');
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
.bgMonthBox {
background-image: url('@/assets/svg/Monitor/BottomLeft/MonthActive.svg');
}
</style>

@ -3,7 +3,7 @@
<section class="flex justify-between">
<template v-for="(item, index) in overviewData">
<div class="w-[12.96vh] h-[14.81vh] bgTopLeftItemBox bg-contain bg-no-repeat pl-[1.48vh] py-[0.92vh]" :key="index">
<img src="@/assets/svg/Monitor/TriangleBlue.svg" />
<img src="@/assets/svg/Monitor/TopLeft/TriangleBlue.svg" />
<p class="tracking-[0.27vh] text-[1.48vh] leading-none mt-[2vh] mb-[2vh] opacity-80">{{ item['itemName'] }}</p>
<p class="">
<span class="text-[4.25vh] youshe text-[#733FF3] leading-none">{{ item['itemVal'] }}</span>
@ -15,7 +15,7 @@
<div class="w-[45.18vh] h-[14.81vh] bgTopLeftItemBoxPurple bg-contain bg-no-repeat mt-[3.7vh] px-[2.96vh] py-[2.4vh] flex justify-between items-center">
<section>
<div class="flex">
<img src="@/assets/svg/Monitor/TrianglePurple.svg" />
<img src="@/assets/svg/Monitor/TopLeft/TrianglePurple.svg" />
<span class="youshe text-[1.75vh] ml-[1.11vh] opacity-80">总人数</span>
</div>
<p class="text-[#B53FDF] text-[4.07vh] mt-[1.4vh] youshe leading-none">350</p>
@ -24,7 +24,7 @@
<template v-for="(item, index) in peopleData">
<div class="w-[25.55vh] h-[4.07vh] peopleItemBox px-[2.22vh] flex justify-between items-center" :class="!index && 'mb-[1.85vh]'" :key="index">
<div class="flex items-end">
<img src="@/assets/svg/Monitor/PointPurple.svg" />
<img src="@/assets/svg/Monitor/TopLeft/PointPurple.svg" />
<span class="text-[1.48vh] opacity-80 ml-[0.74vh]">{{ item['itemName'] }}</span>
</div>
<div class="flex items-center">
@ -76,13 +76,13 @@ export default {
<style>
.bgTopLeftBox {
background-image: url('@/assets/svg/Monitor/TopLeftBox.svg');
background-image: url('@/assets/svg/Monitor/TopLeft/Box.svg');
}
.bgTopLeftItemBox {
background-image: url('@/assets/svg/Monitor/TopLeftItemBox.svg');
background-image: url('@/assets/svg/Monitor/TopLeft/ItemBox.svg');
}
.bgTopLeftItemBoxPurple {
background-image: url('@/assets/svg/Monitor/TopLeftItemBoxPurple.svg');
background-image: url('@/assets/svg/Monitor/TopLeft/ItemBoxPurple.svg');
}
.peopleItemBox {
background: linear-gradient(271deg, rgba(85, 255, 212, 0.045) 2%, rgba(35, 150, 121, 0.066) 99%);

@ -1,9 +1,89 @@
<template>
<div class="w-[116.94vh]"></div>
<div class="w-[116.94vh] h-[39.62vh] bgTopRightBox bg-contain bg-center bg-no-repeat p-[2.96vh] box-border">
<el-carousel direction="vertical" :autoplay="false" :interval="5000" indicatorPosition="none">
<el-carousel-item v-for="item in 3" :key="item">
<section>
<template v-for="(item1, index) in 21">
<div v-if="index % 3" class="w-[12.59vh] h-[9.81vh] ItemBox relative" :key="index">
<p class="absolute w-[10.74vh] h-[2.77vh] leading--[2.77vh] text-[1.85vh] left-[0.92vh] top-[0.74vh] text-center youshe PBg">
OR-{{ String(index + 1).padStart(3, '0') }}
</p>
<div class="absolute w-[8.51vh] h-[2.77vh] left-[2.03vh] bottom-[1.48vh] flex justify-between items-end">
<img src="@/assets/svg/Monitor/TopRight/OpingIcon.svg" />
<span class="text-[1.85vh] text-[#B53FDF] youshe">手术中</span>
</div>
</div>
<div v-else-if="index % 5" class="w-[12.59vh] h-[9.81vh] ItemBox relative" :key="index">
<p class="absolute w-[10.74vh] h-[2.77vh] leading--[2.77vh] text-[1.85vh] left-[0.92vh] top-[0.74vh] text-center youshe PBg">
OR-{{ String(index + 1).padStart(3, '0') }}
</p>
<div class="absolute w-[10.27vh] h-[2.77vh] left-[1.2vh] bottom-[1.48vh] flex justify-between items-end">
<img src="@/assets/svg/Monitor/TopRight/OpendIcon.svg" />
<span class="text-[1.85vh] text-[#946FEC] youshe">麻醉结束</span>
</div>
</div>
<div v-else class="w-[12.59vh] h-[9.81vh] ItemBox relative" :key="index">
<p class="absolute w-[10.74vh] h-[2.77vh] leading--[2.77vh] text-[1.85vh] left-[0.92vh] top-[0.74vh] text-center youshe PBg">
OR-{{ String(index + 1).padStart(3, '0') }}
</p>
<div class="absolute w-[8.51vh] h-[2.77vh] left-[2.03vh] bottom-[1.48vh] flex justify-between items-end">
<img src="@/assets/svg/Monitor/TopRight/OpWaitIcon.svg" />
<span class="text-[1.85vh] text-[#0CFFFF] youshe">空置中</span>
</div>
</div>
</template>
</section>
</el-carousel-item>
</el-carousel>
</div>
</template>
<script>
export default {};
import { Carousel, CarouselItem } from 'element-ui';
export default {
components: {
'el-carousel': Carousel,
'el-carousel-item': CarouselItem,
},
};
</script>
<style></style>
<style lang="scss" scoped>
.bgTopRightBox {
background-image: url('@/assets/svg/Monitor/TopRight/Box.svg');
:deep(.el-carousel) {
height: 39.62vh;
.el-carousel__container {
height: 39.62vh;
.el-carousel__item {
section {
display: grid;
grid-template-columns: repeat(7, minmax(12.59vh, 1fr));
gap: 3.7vh;
grid-row-gap: 1.85vh;
}
}
}
}
}
.ItemBox {
background-image: url('@/assets/svg/Monitor/TopRight/ItemBox.svg'), url('@/assets/svg/Monitor/TopRight/ItemBoxBorder.svg');
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
.PBg {
background: linear-gradient(90deg, rgba(0, 147, 255, 0) 0%, rgba(0, 147, 255, 0.37) 44%, rgba(0, 147, 255, 0) 99%);
position: relative;
&::after {
content: '';
display: block;
width: 100%;
height: 1px;
position: absolute;
bottom: 0;
left: 0;
background: linear-gradient(90deg, rgba(0, 147, 255, 0) 0%, #0093ff 49%, rgba(0, 147, 255, 0) 99%);
}
}
</style>

Loading…
Cancel
Save