Compare commits
	
		
			71 Commits
		
	
	
		
			hello-rout
			...
			feature-co
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 64b50ab534 | |||
| 8d1f4e5a1c | |||
| a6f2ec63ef | |||
| f5aa4c956e | |||
| 4359aa959b | |||
| 0162afc8c9 | |||
| 36037fcb8c | |||
| 9d05842069 | |||
| a7f05c10c3 | |||
| f7da18f679 | |||
| d997be1cb2 | |||
| d5ba739ce5 | |||
| 5f829dba7a | |||
| c568da745f | |||
| 1f988323d4 | |||
| c1ba8fee05 | |||
| 1bed3b3bc4 | |||
| 0067999831 | |||
| 8786ca207c | |||
| bc24e4f041 | |||
| aaf25460a4 | |||
| 905d22abc6 | |||
| 7d7b9523c6 | |||
| 8d805b007a | |||
| e602271ebe | |||
| 3ab267754c | |||
| 8d72241618 | |||
| dcab19a765 | |||
| d995251d7b | |||
| 4ecbc2e630 | |||
| 9a82496769 | |||
| 327ffcc235 | |||
| c623db8a72 | |||
| aa20111600 | |||
| 922fb4ca4a | |||
| 3eadf4a27a | |||
| b4029677cf | |||
| 82edc407db | |||
| 0b79a94bda | |||
| c3ebdbf7c9 | |||
| 75c0ed90ca | |||
| 1064fce554 | |||
| 3b1fbf611e | |||
| 1c25e18d0f | |||
| 47c5327c54 | |||
| c96aad3b0d | |||
| 7e3af7a1e8 | |||
| 1eae5068fe | |||
| e16afd1696 | |||
| b0b7fa69f6 | |||
| 787f7dc5f8 | |||
| a8c505a63d | |||
| 6b0879721f | |||
| 3279363409 | |||
| 53093875eb | |||
| 3b648e5640 | |||
| e6b25bf487 | |||
| 0c48486913 | |||
| ef4874962e | |||
| 8219016b9d | |||
| e091e2aa32 | |||
| 234a3d9861 | |||
| 5f174b312c | |||
| 5dcff64bf5 | |||
| 5c72437e2d | |||
| a39c174cf4 | |||
| c469cb139f | |||
| 4e189eb2ab | |||
| 4cb90a5925 | |||
| 7c9e1a682b | |||
| e5f066dc3b | 
							
								
								
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						| @@ -49,3 +49,8 @@ test/ | |||||||
| hs_err_pid* | hs_err_pid* | ||||||
| replay_pid* | replay_pid* | ||||||
|  |  | ||||||
|  | node_modules/ | ||||||
|  | node_modules | ||||||
|  |  | ||||||
|  | target/ | ||||||
|  | target | ||||||
|   | |||||||
| Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB | 
| Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB | 
| Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB | 
| Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB | 
							
								
								
									
										760
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,760 @@ | |||||||
|  | { | ||||||
|  |   "name": "vue-learning", | ||||||
|  |   "lockfileVersion": 2, | ||||||
|  |   "requires": true, | ||||||
|  |   "packages": { | ||||||
|  |     "": { | ||||||
|  |       "dependencies": { | ||||||
|  |         "element-plus": "^2.2.26" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@babel/parser": { | ||||||
|  |       "version": "7.20.5", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.20.5.tgz", | ||||||
|  |       "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", | ||||||
|  |       "peer": true, | ||||||
|  |       "bin": { | ||||||
|  |         "parser": "bin/babel-parser.js" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=6.0.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@ctrl/tinycolor": { | ||||||
|  |       "version": "3.5.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.5.0.tgz", | ||||||
|  |       "integrity": "sha512-tlJpwF40DEQcfR/QF+wNMVyGMaO9FQp6Z1Wahj4Gk3CJQYHwA2xVG7iKDFdW6zuxZY9XWOpGcfNCTsX4McOsOg==", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=10" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@element-plus/icons-vue": { | ||||||
|  |       "version": "2.0.10", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz", | ||||||
|  |       "integrity": "sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==", | ||||||
|  |       "peerDependencies": { | ||||||
|  |         "vue": "^3.2.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@floating-ui/core": { | ||||||
|  |       "version": "1.0.4", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@floating-ui/core/-/core-1.0.4.tgz", | ||||||
|  |       "integrity": "sha512-FPFLbg2b06MIw1dqk2SOEMAMX3xlrreGjcui5OTxfBDtaKTmh0kioOVjT8gcfl58juawL/yF+S+gnq8aUYQx/Q==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/@floating-ui/dom": { | ||||||
|  |       "version": "1.0.10", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.0.10.tgz", | ||||||
|  |       "integrity": "sha512-ZRe5ZmtGYCd82zrjWnnMW8hN5H1otedLh0Ur6rRo6f0exbEe6IlkVvo1RO7tgiMvbF0Df8hkhdm50VcVYqwP6g==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "@floating-ui/core": "^1.0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@popperjs/core": { | ||||||
|  |       "name": "@sxzz/popperjs-es", | ||||||
|  |       "version": "2.11.7", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz", | ||||||
|  |       "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/@types/lodash": { | ||||||
|  |       "version": "4.14.191", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.191.tgz", | ||||||
|  |       "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/@types/lodash-es": { | ||||||
|  |       "version": "4.17.6", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.6.tgz", | ||||||
|  |       "integrity": "sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "@types/lodash": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@types/web-bluetooth": { | ||||||
|  |       "version": "0.0.16", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", | ||||||
|  |       "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/compiler-core": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@babel/parser": "^7.16.4", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "estree-walker": "^2.0.2", | ||||||
|  |         "source-map": "^0.6.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/compiler-dom": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/compiler-core": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/compiler-sfc": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@babel/parser": "^7.16.4", | ||||||
|  |         "@vue/compiler-core": "3.2.45", | ||||||
|  |         "@vue/compiler-dom": "3.2.45", | ||||||
|  |         "@vue/compiler-ssr": "3.2.45", | ||||||
|  |         "@vue/reactivity-transform": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "estree-walker": "^2.0.2", | ||||||
|  |         "magic-string": "^0.25.7", | ||||||
|  |         "postcss": "^8.1.10", | ||||||
|  |         "source-map": "^0.6.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/compiler-ssr": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/compiler-dom": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/reactivity": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/reactivity-transform": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@babel/parser": "^7.16.4", | ||||||
|  |         "@vue/compiler-core": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "estree-walker": "^2.0.2", | ||||||
|  |         "magic-string": "^0.25.7" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/runtime-core": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/reactivity": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/runtime-dom": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/runtime-core": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "csstype": "^2.6.8" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/server-renderer": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/compiler-ssr": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       }, | ||||||
|  |       "peerDependencies": { | ||||||
|  |         "vue": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vue/shared": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vueuse/core": { | ||||||
|  |       "version": "9.6.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vueuse/core/-/core-9.6.0.tgz", | ||||||
|  |       "integrity": "sha512-qGUcjKQXHgN+jqXEgpeZGoxdCbIDCdVPz3QiF1uyecVGbMuM63o96I1GjYx5zskKgRI0FKSNsVWM7rwrRMTf6A==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "@types/web-bluetooth": "^0.0.16", | ||||||
|  |         "@vueuse/metadata": "9.6.0", | ||||||
|  |         "@vueuse/shared": "9.6.0", | ||||||
|  |         "vue-demi": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vueuse/core/node_modules/vue-demi": { | ||||||
|  |       "version": "0.13.11", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz", | ||||||
|  |       "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", | ||||||
|  |       "hasInstallScript": true, | ||||||
|  |       "bin": { | ||||||
|  |         "vue-demi-fix": "bin/vue-demi-fix.js", | ||||||
|  |         "vue-demi-switch": "bin/vue-demi-switch.js" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=12" | ||||||
|  |       }, | ||||||
|  |       "peerDependencies": { | ||||||
|  |         "@vue/composition-api": "^1.0.0-rc.1", | ||||||
|  |         "vue": "^3.0.0-0 || ^2.6.0" | ||||||
|  |       }, | ||||||
|  |       "peerDependenciesMeta": { | ||||||
|  |         "@vue/composition-api": { | ||||||
|  |           "optional": true | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vueuse/metadata": { | ||||||
|  |       "version": "9.6.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.6.0.tgz", | ||||||
|  |       "integrity": "sha512-sIC8R+kWkIdpi5X2z2Gk8TRYzmczDwHRhEFfCu2P+XW2JdPoXrziqsGpDDsN7ykBx4ilwieS7JUIweVGhvZ93w==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vueuse/shared": { | ||||||
|  |       "version": "9.6.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.6.0.tgz", | ||||||
|  |       "integrity": "sha512-/eDchxYYhkHnFyrb00t90UfjCx94kRHxc7J1GtBCqCG4HyPMX+krV9XJgVtWIsAMaxKVU4fC8NSUviG1JkwhUQ==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "vue-demi": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@vueuse/shared/node_modules/vue-demi": { | ||||||
|  |       "version": "0.13.11", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz", | ||||||
|  |       "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", | ||||||
|  |       "hasInstallScript": true, | ||||||
|  |       "bin": { | ||||||
|  |         "vue-demi-fix": "bin/vue-demi-fix.js", | ||||||
|  |         "vue-demi-switch": "bin/vue-demi-switch.js" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=12" | ||||||
|  |       }, | ||||||
|  |       "peerDependencies": { | ||||||
|  |         "@vue/composition-api": "^1.0.0-rc.1", | ||||||
|  |         "vue": "^3.0.0-0 || ^2.6.0" | ||||||
|  |       }, | ||||||
|  |       "peerDependenciesMeta": { | ||||||
|  |         "@vue/composition-api": { | ||||||
|  |           "optional": true | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/async-validator": { | ||||||
|  |       "version": "4.2.5", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz", | ||||||
|  |       "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/csstype": { | ||||||
|  |       "version": "2.6.21", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz", | ||||||
|  |       "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "node_modules/dayjs": { | ||||||
|  |       "version": "1.11.7", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz", | ||||||
|  |       "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/element-plus": { | ||||||
|  |       "version": "2.2.26", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.26.tgz", | ||||||
|  |       "integrity": "sha512-O/rdY5m9DkclpVg8r3GynyqCunm7MxSR142xSsjrZA77bi7bcwA3SIy6SPEDqHi5R4KqgkGYgKSp4Q4e3irbYg==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "@ctrl/tinycolor": "^3.4.1", | ||||||
|  |         "@element-plus/icons-vue": "^2.0.6", | ||||||
|  |         "@floating-ui/dom": "^1.0.1", | ||||||
|  |         "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", | ||||||
|  |         "@types/lodash": "^4.14.182", | ||||||
|  |         "@types/lodash-es": "^4.17.6", | ||||||
|  |         "@vueuse/core": "^9.1.0", | ||||||
|  |         "async-validator": "^4.2.5", | ||||||
|  |         "dayjs": "^1.11.3", | ||||||
|  |         "escape-html": "^1.0.3", | ||||||
|  |         "lodash": "^4.17.21", | ||||||
|  |         "lodash-es": "^4.17.21", | ||||||
|  |         "lodash-unified": "^1.0.2", | ||||||
|  |         "memoize-one": "^6.0.0", | ||||||
|  |         "normalize-wheel-es": "^1.2.0" | ||||||
|  |       }, | ||||||
|  |       "peerDependencies": { | ||||||
|  |         "vue": "^3.2.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/escape-html": { | ||||||
|  |       "version": "1.0.3", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz", | ||||||
|  |       "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/estree-walker": { | ||||||
|  |       "version": "2.0.2", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", | ||||||
|  |       "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "node_modules/lodash": { | ||||||
|  |       "version": "4.17.21", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", | ||||||
|  |       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/lodash-es": { | ||||||
|  |       "version": "4.17.21", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz", | ||||||
|  |       "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/lodash-unified": { | ||||||
|  |       "version": "1.0.3", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz", | ||||||
|  |       "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", | ||||||
|  |       "peerDependencies": { | ||||||
|  |         "@types/lodash-es": "*", | ||||||
|  |         "lodash": "*", | ||||||
|  |         "lodash-es": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/magic-string": { | ||||||
|  |       "version": "0.25.9", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz", | ||||||
|  |       "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "sourcemap-codec": "^1.4.8" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/memoize-one": { | ||||||
|  |       "version": "6.0.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz", | ||||||
|  |       "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/nanoid": { | ||||||
|  |       "version": "3.3.4", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz", | ||||||
|  |       "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", | ||||||
|  |       "peer": true, | ||||||
|  |       "bin": { | ||||||
|  |         "nanoid": "bin/nanoid.cjs" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/normalize-wheel-es": { | ||||||
|  |       "version": "1.2.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", | ||||||
|  |       "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" | ||||||
|  |     }, | ||||||
|  |     "node_modules/picocolors": { | ||||||
|  |       "version": "1.0.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", | ||||||
|  |       "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "node_modules/postcss": { | ||||||
|  |       "version": "8.4.20", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.20.tgz", | ||||||
|  |       "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "nanoid": "^3.3.4", | ||||||
|  |         "picocolors": "^1.0.0", | ||||||
|  |         "source-map-js": "^1.0.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": "^10 || ^12 || >=14" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/source-map": { | ||||||
|  |       "version": "0.6.1", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", | ||||||
|  |       "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", | ||||||
|  |       "peer": true, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=0.10.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/source-map-js": { | ||||||
|  |       "version": "1.0.2", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", | ||||||
|  |       "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", | ||||||
|  |       "peer": true, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=0.10.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/sourcemap-codec": { | ||||||
|  |       "version": "1.4.8", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", | ||||||
|  |       "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", | ||||||
|  |       "deprecated": "Please use @jridgewell/sourcemap-codec instead", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "node_modules/vue": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", | ||||||
|  |       "peer": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "@vue/compiler-dom": "3.2.45", | ||||||
|  |         "@vue/compiler-sfc": "3.2.45", | ||||||
|  |         "@vue/runtime-dom": "3.2.45", | ||||||
|  |         "@vue/server-renderer": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  |   "dependencies": { | ||||||
|  |     "@babel/parser": { | ||||||
|  |       "version": "7.20.5", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.20.5.tgz", | ||||||
|  |       "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "@ctrl/tinycolor": { | ||||||
|  |       "version": "3.5.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.5.0.tgz", | ||||||
|  |       "integrity": "sha512-tlJpwF40DEQcfR/QF+wNMVyGMaO9FQp6Z1Wahj4Gk3CJQYHwA2xVG7iKDFdW6zuxZY9XWOpGcfNCTsX4McOsOg==" | ||||||
|  |     }, | ||||||
|  |     "@element-plus/icons-vue": { | ||||||
|  |       "version": "2.0.10", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz", | ||||||
|  |       "integrity": "sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==", | ||||||
|  |       "requires": {} | ||||||
|  |     }, | ||||||
|  |     "@floating-ui/core": { | ||||||
|  |       "version": "1.0.4", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@floating-ui/core/-/core-1.0.4.tgz", | ||||||
|  |       "integrity": "sha512-FPFLbg2b06MIw1dqk2SOEMAMX3xlrreGjcui5OTxfBDtaKTmh0kioOVjT8gcfl58juawL/yF+S+gnq8aUYQx/Q==" | ||||||
|  |     }, | ||||||
|  |     "@floating-ui/dom": { | ||||||
|  |       "version": "1.0.10", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.0.10.tgz", | ||||||
|  |       "integrity": "sha512-ZRe5ZmtGYCd82zrjWnnMW8hN5H1otedLh0Ur6rRo6f0exbEe6IlkVvo1RO7tgiMvbF0Df8hkhdm50VcVYqwP6g==", | ||||||
|  |       "requires": { | ||||||
|  |         "@floating-ui/core": "^1.0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@popperjs/core": { | ||||||
|  |       "version": "npm:@sxzz/popperjs-es@2.11.7", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz", | ||||||
|  |       "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==" | ||||||
|  |     }, | ||||||
|  |     "@types/lodash": { | ||||||
|  |       "version": "4.14.191", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.191.tgz", | ||||||
|  |       "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==" | ||||||
|  |     }, | ||||||
|  |     "@types/lodash-es": { | ||||||
|  |       "version": "4.17.6", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.6.tgz", | ||||||
|  |       "integrity": "sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==", | ||||||
|  |       "requires": { | ||||||
|  |         "@types/lodash": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@types/web-bluetooth": { | ||||||
|  |       "version": "0.0.16", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", | ||||||
|  |       "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==" | ||||||
|  |     }, | ||||||
|  |     "@vue/compiler-core": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@babel/parser": "^7.16.4", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "estree-walker": "^2.0.2", | ||||||
|  |         "source-map": "^0.6.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/compiler-dom": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/compiler-core": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/compiler-sfc": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@babel/parser": "^7.16.4", | ||||||
|  |         "@vue/compiler-core": "3.2.45", | ||||||
|  |         "@vue/compiler-dom": "3.2.45", | ||||||
|  |         "@vue/compiler-ssr": "3.2.45", | ||||||
|  |         "@vue/reactivity-transform": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "estree-walker": "^2.0.2", | ||||||
|  |         "magic-string": "^0.25.7", | ||||||
|  |         "postcss": "^8.1.10", | ||||||
|  |         "source-map": "^0.6.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/compiler-ssr": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/compiler-dom": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/reactivity": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/reactivity-transform": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@babel/parser": "^7.16.4", | ||||||
|  |         "@vue/compiler-core": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "estree-walker": "^2.0.2", | ||||||
|  |         "magic-string": "^0.25.7" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/runtime-core": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/reactivity": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/runtime-dom": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/runtime-core": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45", | ||||||
|  |         "csstype": "^2.6.8" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/server-renderer": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/compiler-ssr": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vue/shared": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "@vueuse/core": { | ||||||
|  |       "version": "9.6.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vueuse/core/-/core-9.6.0.tgz", | ||||||
|  |       "integrity": "sha512-qGUcjKQXHgN+jqXEgpeZGoxdCbIDCdVPz3QiF1uyecVGbMuM63o96I1GjYx5zskKgRI0FKSNsVWM7rwrRMTf6A==", | ||||||
|  |       "requires": { | ||||||
|  |         "@types/web-bluetooth": "^0.0.16", | ||||||
|  |         "@vueuse/metadata": "9.6.0", | ||||||
|  |         "@vueuse/shared": "9.6.0", | ||||||
|  |         "vue-demi": "*" | ||||||
|  |       }, | ||||||
|  |       "dependencies": { | ||||||
|  |         "vue-demi": { | ||||||
|  |           "version": "0.13.11", | ||||||
|  |           "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz", | ||||||
|  |           "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", | ||||||
|  |           "requires": {} | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "@vueuse/metadata": { | ||||||
|  |       "version": "9.6.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.6.0.tgz", | ||||||
|  |       "integrity": "sha512-sIC8R+kWkIdpi5X2z2Gk8TRYzmczDwHRhEFfCu2P+XW2JdPoXrziqsGpDDsN7ykBx4ilwieS7JUIweVGhvZ93w==" | ||||||
|  |     }, | ||||||
|  |     "@vueuse/shared": { | ||||||
|  |       "version": "9.6.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.6.0.tgz", | ||||||
|  |       "integrity": "sha512-/eDchxYYhkHnFyrb00t90UfjCx94kRHxc7J1GtBCqCG4HyPMX+krV9XJgVtWIsAMaxKVU4fC8NSUviG1JkwhUQ==", | ||||||
|  |       "requires": { | ||||||
|  |         "vue-demi": "*" | ||||||
|  |       }, | ||||||
|  |       "dependencies": { | ||||||
|  |         "vue-demi": { | ||||||
|  |           "version": "0.13.11", | ||||||
|  |           "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz", | ||||||
|  |           "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", | ||||||
|  |           "requires": {} | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "async-validator": { | ||||||
|  |       "version": "4.2.5", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz", | ||||||
|  |       "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" | ||||||
|  |     }, | ||||||
|  |     "csstype": { | ||||||
|  |       "version": "2.6.21", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz", | ||||||
|  |       "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "dayjs": { | ||||||
|  |       "version": "1.11.7", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz", | ||||||
|  |       "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" | ||||||
|  |     }, | ||||||
|  |     "element-plus": { | ||||||
|  |       "version": "2.2.26", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.26.tgz", | ||||||
|  |       "integrity": "sha512-O/rdY5m9DkclpVg8r3GynyqCunm7MxSR142xSsjrZA77bi7bcwA3SIy6SPEDqHi5R4KqgkGYgKSp4Q4e3irbYg==", | ||||||
|  |       "requires": { | ||||||
|  |         "@ctrl/tinycolor": "^3.4.1", | ||||||
|  |         "@element-plus/icons-vue": "^2.0.6", | ||||||
|  |         "@floating-ui/dom": "^1.0.1", | ||||||
|  |         "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", | ||||||
|  |         "@types/lodash": "^4.14.182", | ||||||
|  |         "@types/lodash-es": "^4.17.6", | ||||||
|  |         "@vueuse/core": "^9.1.0", | ||||||
|  |         "async-validator": "^4.2.5", | ||||||
|  |         "dayjs": "^1.11.3", | ||||||
|  |         "escape-html": "^1.0.3", | ||||||
|  |         "lodash": "^4.17.21", | ||||||
|  |         "lodash-es": "^4.17.21", | ||||||
|  |         "lodash-unified": "^1.0.2", | ||||||
|  |         "memoize-one": "^6.0.0", | ||||||
|  |         "normalize-wheel-es": "^1.2.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "escape-html": { | ||||||
|  |       "version": "1.0.3", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz", | ||||||
|  |       "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" | ||||||
|  |     }, | ||||||
|  |     "estree-walker": { | ||||||
|  |       "version": "2.0.2", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", | ||||||
|  |       "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "lodash": { | ||||||
|  |       "version": "4.17.21", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", | ||||||
|  |       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" | ||||||
|  |     }, | ||||||
|  |     "lodash-es": { | ||||||
|  |       "version": "4.17.21", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz", | ||||||
|  |       "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" | ||||||
|  |     }, | ||||||
|  |     "lodash-unified": { | ||||||
|  |       "version": "1.0.3", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz", | ||||||
|  |       "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", | ||||||
|  |       "requires": {} | ||||||
|  |     }, | ||||||
|  |     "magic-string": { | ||||||
|  |       "version": "0.25.9", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz", | ||||||
|  |       "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "sourcemap-codec": "^1.4.8" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "memoize-one": { | ||||||
|  |       "version": "6.0.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz", | ||||||
|  |       "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" | ||||||
|  |     }, | ||||||
|  |     "nanoid": { | ||||||
|  |       "version": "3.3.4", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz", | ||||||
|  |       "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "normalize-wheel-es": { | ||||||
|  |       "version": "1.2.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", | ||||||
|  |       "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" | ||||||
|  |     }, | ||||||
|  |     "picocolors": { | ||||||
|  |       "version": "1.0.0", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", | ||||||
|  |       "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "postcss": { | ||||||
|  |       "version": "8.4.20", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.20.tgz", | ||||||
|  |       "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "nanoid": "^3.3.4", | ||||||
|  |         "picocolors": "^1.0.0", | ||||||
|  |         "source-map-js": "^1.0.2" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "source-map": { | ||||||
|  |       "version": "0.6.1", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", | ||||||
|  |       "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "source-map-js": { | ||||||
|  |       "version": "1.0.2", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", | ||||||
|  |       "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "sourcemap-codec": { | ||||||
|  |       "version": "1.4.8", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", | ||||||
|  |       "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", | ||||||
|  |       "peer": true | ||||||
|  |     }, | ||||||
|  |     "vue": { | ||||||
|  |       "version": "3.2.45", | ||||||
|  |       "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz", | ||||||
|  |       "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", | ||||||
|  |       "peer": true, | ||||||
|  |       "requires": { | ||||||
|  |         "@vue/compiler-dom": "3.2.45", | ||||||
|  |         "@vue/compiler-sfc": "3.2.45", | ||||||
|  |         "@vue/runtime-dom": "3.2.45", | ||||||
|  |         "@vue/server-renderer": "3.2.45", | ||||||
|  |         "@vue/shared": "3.2.45" | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										5
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | { | ||||||
|  |   "dependencies": { | ||||||
|  |     "element-plus": "^2.2.26" | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										4
									
								
								企业级管理系统/java/AdminSys/.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,4 @@ | |||||||
|  | { | ||||||
|  |     "java.configuration.updateBuildConfiguration": "automatic", | ||||||
|  |     "java.compile.nullAnalysis.mode": "automatic" | ||||||
|  | } | ||||||
							
								
								
									
										112
									
								
								企业级管理系统/java/AdminSys/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,112 @@ | |||||||
|  | <project xmlns="http://maven.apache.org/POM/4.0.0" | ||||||
|  |   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||||
|  |   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> | ||||||
|  |   <modelVersion>4.0.0</modelVersion> | ||||||
|  |   <groupId>com.cpic.xim</groupId> | ||||||
|  |   <artifactId>admin-system</artifactId> | ||||||
|  |   <packaging>war</packaging> | ||||||
|  |   <version>1.0-SNAPSHOT</version> | ||||||
|  |   <name>AdminSys Maven Webapp</name> | ||||||
|  |   <url>http://maven.apache.org</url> | ||||||
|  |  | ||||||
|  |   <dependencies> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>junit</groupId> | ||||||
|  |       <artifactId>junit</artifactId> | ||||||
|  |       <version>4.13.2</version> | ||||||
|  |       <scope>test</scope> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>org.springframework</groupId> | ||||||
|  |       <artifactId>spring-webmvc</artifactId> | ||||||
|  |       <version>5.3.24</version> | ||||||
|  |     </dependency> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>com.oracle</groupId> | ||||||
|  |       <artifactId>ojdbc8</artifactId> | ||||||
|  |       <version>19.3.0.0.0</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>javax.servlet</groupId> | ||||||
|  |       <artifactId>javax.servlet-api</artifactId> | ||||||
|  |       <version>4.0.1</version> | ||||||
|  |       <scope>provided</scope> | ||||||
|  |     </dependency> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>javax.validation</groupId> | ||||||
|  |       <artifactId>validation-api</artifactId> | ||||||
|  |       <version>2.0.1.Final</version> | ||||||
|  |     </dependency> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>org.hibernate</groupId> | ||||||
|  |       <artifactId>hibernate-validator</artifactId> | ||||||
|  |       <version>7.0.1.Final</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- jackson --> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>com.fasterxml.jackson.core</groupId> | ||||||
|  |       <artifactId>jackson-databind</artifactId> | ||||||
|  |       <version>2.13.4</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>com.fasterxml.jackson.core</groupId> | ||||||
|  |       <artifactId>jackson-core</artifactId> | ||||||
|  |       <version>2.13.4</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>com.fasterxml.jackson.core</groupId> | ||||||
|  |       <artifactId>jackson-annotations</artifactId> | ||||||
|  |       <version>2.13.4</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/commons-io/commons-io --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>commons-io</groupId> | ||||||
|  |       <artifactId>commons-io</artifactId> | ||||||
|  |       <version>2.11.0</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>commons-fileupload</groupId> | ||||||
|  |       <artifactId>commons-fileupload</artifactId> | ||||||
|  |       <version>1.4</version> | ||||||
|  |     </dependency> | ||||||
|  |     <!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api --> | ||||||
|  |     <dependency> | ||||||
|  |       <groupId>javax.annotation</groupId> | ||||||
|  |       <artifactId>javax.annotation-api</artifactId> | ||||||
|  |       <version>1.3.2</version> | ||||||
|  |     </dependency> | ||||||
|  |   </dependencies> | ||||||
|  |  | ||||||
|  |   <build> | ||||||
|  |     <finalName>admin-system</finalName> | ||||||
|  |     <plugins> | ||||||
|  |       <plugin> | ||||||
|  |         <groupId>org.apache.maven.plugins</groupId> | ||||||
|  |         <artifactId>maven-war-plugin</artifactId> | ||||||
|  |         <version>3.2.2</version> | ||||||
|  |       </plugin> | ||||||
|  |       <plugin> | ||||||
|  |         <groupId>org.apache.maven.plugins</groupId> | ||||||
|  |         <artifactId>maven-surefire-plugin</artifactId> | ||||||
|  |         <version>3.0.0-M6</version> | ||||||
|  |         <configuration> | ||||||
|  |           <skipTests>true</skipTests> | ||||||
|  |         </configuration> | ||||||
|  |       </plugin> | ||||||
|  |     </plugins> | ||||||
|  |   </build> | ||||||
|  |  | ||||||
|  |   <properties> | ||||||
|  |     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | ||||||
|  |     <java.version>1.8</java.version> | ||||||
|  |     <maven.compiler.encoding>UTF-8</maven.compiler.encoding> | ||||||
|  |     <maven.compiler.source>1.8</maven.compiler.source> | ||||||
|  |     <maven.compiler.target>1.8</maven.compiler.target> | ||||||
|  |   </properties> | ||||||
|  | </project> | ||||||
| @@ -0,0 +1,210 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 14:08:28 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-16 17:57:06 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\myutils\account\CpicXIMStaffInfo.java | ||||||
|  |  * @Description: 产险厦门分公司员工信息对象 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.myutils.account; | ||||||
|  |  | ||||||
|  | import java.sql.Connection; | ||||||
|  | import java.sql.DriverManager; | ||||||
|  | import java.sql.PreparedStatement; | ||||||
|  | import java.sql.ResultSet; | ||||||
|  | import java.sql.SQLException; | ||||||
|  | import com.fasterxml.jackson.annotation.JsonProperty; | ||||||
|  |  | ||||||
|  | /***************************************************** | ||||||
|  |  * 厦门太保员工信息 | ||||||
|  |  * 使用工厂函数创建。 | ||||||
|  |  *****************************************************/ | ||||||
|  | public class CpicXIMStaffInfo | ||||||
|  | { | ||||||
|  |     /***************************************************** | ||||||
|  |      * 查询员工信息 | ||||||
|  |      * @param uidOrCode p13账号或p09账号 | ||||||
|  |      * @return 员工信息对象 | ||||||
|  |      *****************************************************/ | ||||||
|  |     public static CpicXIMStaffInfo getStaffInfo( String uidOrCode ) | ||||||
|  |             throws SQLException, ClassNotFoundException | ||||||
|  |     { | ||||||
|  |         CpicXIMStaffInfo info = null; | ||||||
|  |  | ||||||
|  |         Connection connection = null; | ||||||
|  |         PreparedStatement stmt = null; | ||||||
|  |         ResultSet result = null; | ||||||
|  |  | ||||||
|  |         String jdbcURL = "jdbc:oracle:thin:@10.39.0.86:1521:xmcx1"; | ||||||
|  |         String userName = "dataex"; | ||||||
|  |         String password = "cpic123456"; | ||||||
|  |         String querySQL = "SELECT ry.staff_code,ry.staff_name,ry.p13uid," | ||||||
|  |                 + "               ry.department_code, bm.department_name," | ||||||
|  |                 + "               ry.section_office_code,ks.section_office_name " | ||||||
|  |                 + "          FROM idst0.rydm_t ry,idst0.ks_t ks,idst0.bm_t bm " | ||||||
|  |                 + "         WHERE ry.account_status = 0 AND (ry.staff_code = ? OR ry.p13uid = ?) " | ||||||
|  |                 + "           and ry.section_office_code = ks.section_office_code " | ||||||
|  |                 + "           and ry.department_code = bm.department_code "; | ||||||
|  |  | ||||||
|  |         try | ||||||
|  |         { | ||||||
|  |             Class.forName( "oracle.jdbc.driver.OracleDriver" ); | ||||||
|  |  | ||||||
|  |             connection = DriverManager.getConnection( jdbcURL, userName, password ); | ||||||
|  |             stmt = connection.prepareStatement( querySQL ); | ||||||
|  |             stmt.setString( 1, uidOrCode ); | ||||||
|  |             stmt.setString( 2, uidOrCode ); | ||||||
|  |  | ||||||
|  |             result = stmt.executeQuery(); | ||||||
|  |  | ||||||
|  |             if ( result.next()) | ||||||
|  |             { | ||||||
|  |                 info = new CpicXIMStaffInfo(); | ||||||
|  |  | ||||||
|  |                 info.code = result.getString( 1 ); | ||||||
|  |                 info.name = result.getString( 2 ); | ||||||
|  |                 info.p13UID = result.getString( 3 ); | ||||||
|  |                 info.departmentCode = result.getString( 4 ); | ||||||
|  |                 info.departmentName = result.getString( 5 ); | ||||||
|  |                 info.sectionOfficeCode = result.getString( 6 ); | ||||||
|  |                 info.setctionOfficeName = result.getString( 7 ); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |         finally | ||||||
|  |         { | ||||||
|  |             try | ||||||
|  |             { | ||||||
|  |                 if ( result != null) | ||||||
|  |                 { | ||||||
|  |                     result.close(); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             catch ( Exception exception ) | ||||||
|  |             { | ||||||
|  |                 exception.printStackTrace(); | ||||||
|  |             } | ||||||
|  |  | ||||||
|  |             try | ||||||
|  |             { | ||||||
|  |                 if ( stmt != null) | ||||||
|  |                 { | ||||||
|  |                     stmt.close(); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             catch ( Exception exception ) | ||||||
|  |             { | ||||||
|  |                 exception.printStackTrace(); | ||||||
|  |             } | ||||||
|  |  | ||||||
|  |             try | ||||||
|  |             { | ||||||
|  |                 if ( connection != null) | ||||||
|  |                 { | ||||||
|  |                     connection.close(); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             catch ( Exception exception ) | ||||||
|  |             { | ||||||
|  |                 exception.printStackTrace(); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         return info; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private CpicXIMStaffInfo() | ||||||
|  |     {} | ||||||
|  |  | ||||||
|  |     public String getName() | ||||||
|  |     { | ||||||
|  |         return name; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setName( String name ) | ||||||
|  |     { | ||||||
|  |         this.name = name; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getCode() | ||||||
|  |     { | ||||||
|  |         return code; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setCode( String code ) | ||||||
|  |     { | ||||||
|  |         this.code = code; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getP13UID() | ||||||
|  |     { | ||||||
|  |         return p13UID; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setP13UID( String p13uid ) | ||||||
|  |     { | ||||||
|  |         p13UID = p13uid; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getDepartmentCode() | ||||||
|  |     { | ||||||
|  |         return departmentCode; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setDepartmentCode( String departmentCode ) | ||||||
|  |     { | ||||||
|  |         this.departmentCode = departmentCode; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getDepartmentName() | ||||||
|  |     { | ||||||
|  |         return departmentName; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setDepartmentName( String departmentName ) | ||||||
|  |     { | ||||||
|  |         this.departmentName = departmentName; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getSectionOfficeCode() | ||||||
|  |     { | ||||||
|  |         return sectionOfficeCode; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setSectionOfficeCode( String sectionOfficeCode ) | ||||||
|  |     { | ||||||
|  |         this.sectionOfficeCode = sectionOfficeCode; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getSetctionOfficeName() | ||||||
|  |     { | ||||||
|  |         return setctionOfficeName; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setSetctionOfficeName( String setctionOfficeName ) | ||||||
|  |     { | ||||||
|  |         this.setctionOfficeName = setctionOfficeName; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @JsonProperty( "name") | ||||||
|  |     private String name; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "code") | ||||||
|  |     private String code; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "p13uid") | ||||||
|  |     private String p13UID; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "department_code") | ||||||
|  |     private String departmentCode; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "department_name") | ||||||
|  |     private String departmentName; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "section_office_code") | ||||||
|  |     private String sectionOfficeCode; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "section_office_name") | ||||||
|  |     private String setctionOfficeName; | ||||||
|  | } | ||||||
| @@ -0,0 +1,70 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 09:51:12 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-16 15:29:34 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\myutils\account\LdapAccountCheck.java | ||||||
|  |  * @Description: P13验证相关方法。 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.myutils.account; | ||||||
|  |  | ||||||
|  | import javax.naming.CommunicationException; | ||||||
|  | import javax.naming.Context; | ||||||
|  | import javax.naming.NamingException; | ||||||
|  | import javax.naming.directory.DirContext; | ||||||
|  | import javax.naming.directory.InitialDirContext; | ||||||
|  | import java.util.Hashtable; | ||||||
|  |  | ||||||
|  | public class LdapAccountCheck | ||||||
|  | { | ||||||
|  |     private static String ldapServerUrl = "ldap://10.39.0.205:389"; | ||||||
|  |  | ||||||
|  |     /***************************************************** | ||||||
|  |      * 对p13账号密码提交AD域服务器进行验证 | ||||||
|  |      * @param userName p13uid | ||||||
|  |      * @param password p13密码 | ||||||
|  |      * @return 返回验证结果,true为成功,false失败。 | ||||||
|  |      *****************************************************/ | ||||||
|  |     public static boolean ldapLogin( String userName, String password ) | ||||||
|  |     { | ||||||
|  |         boolean result = false; | ||||||
|  |  | ||||||
|  |         if ( userName.endsWith( "@pr.intra.cpic.com.cn" ) == false) | ||||||
|  |         { | ||||||
|  |             userName += "@pr.intra.cpic.com.cn"; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         DirContext ctx = null; | ||||||
|  |         Hashtable<String, String> ldap = new Hashtable<String, String>(); | ||||||
|  |  | ||||||
|  |         ldap.put( Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory" ); | ||||||
|  |         ldap.put( Context.SECURITY_AUTHENTICATION, "simple" ); | ||||||
|  |         ldap.put( Context.PROVIDER_URL, ldapServerUrl ); | ||||||
|  |         ldap.put( Context.SECURITY_PRINCIPAL, userName ); | ||||||
|  |         ldap.put( Context.SECURITY_CREDENTIALS, password ); | ||||||
|  |  | ||||||
|  |         try | ||||||
|  |         { | ||||||
|  |             ctx = new InitialDirContext( ldap ); | ||||||
|  |             ctx.close(); | ||||||
|  |  | ||||||
|  |             result = true; | ||||||
|  |         } | ||||||
|  |         catch ( CommunicationException error ) | ||||||
|  |         { | ||||||
|  |             error.printStackTrace(); | ||||||
|  |             error.getMessage(); | ||||||
|  |  | ||||||
|  |             result = false; | ||||||
|  |         } | ||||||
|  |         catch ( NamingException error ) | ||||||
|  |         { | ||||||
|  |             error.printStackTrace(); | ||||||
|  |             result = false; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         return result; | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -0,0 +1,20 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-16 08:50:47 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-16 10:15:11 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\myutils\config\json\AppConfig.java | ||||||
|  |  * @Description: 应用的JSON格式配置文件对象 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.myutils.config.json; | ||||||
|  |  | ||||||
|  | import com.fasterxml.jackson.annotation.JsonProperty; | ||||||
|  |  | ||||||
|  | @SuppressWarnings( | ||||||
|  | { "unused"}) | ||||||
|  | public class AppConfig | ||||||
|  | { | ||||||
|  |  | ||||||
|  | } | ||||||
| @@ -0,0 +1,16 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 16:19:39 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-15 16:19:41 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpicxim\myutils\config\json\ConfigLoader.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.myutils.config.json; | ||||||
|  |  | ||||||
|  | public class ConfigLoader | ||||||
|  | { | ||||||
|  |  | ||||||
|  | } | ||||||
| @@ -0,0 +1,24 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-16 08:55:32 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-16 10:15:42 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\myutils\config\json\DatabaseConfig.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.myutils.config.json; | ||||||
|  |  | ||||||
|  | import com.fasterxml.jackson.annotation.JsonProperty; | ||||||
|  |  | ||||||
|  | @SuppressWarnings( | ||||||
|  | { "unused"}) | ||||||
|  | public class DatabaseConfig | ||||||
|  | { | ||||||
|  |     private String dbType; | ||||||
|  |     private String userName; | ||||||
|  |     private String password; | ||||||
|  |     private String dbName; | ||||||
|  |     private String jdbcURL; | ||||||
|  | } | ||||||
| @@ -0,0 +1,80 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2023-01-22 23:11:26 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-24 00:55:08 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\controllers\FileUpload\FileUpload.java | ||||||
|  |  * @Description: 用于接受上传文件的Controller。 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | package com.cpic.xim.web.controllers.FileUpload; | ||||||
|  |  | ||||||
|  | import java.io.File; | ||||||
|  | import java.util.Vector; | ||||||
|  | import javax.servlet.http.HttpServletRequest; | ||||||
|  | import org.springframework.stereotype.Controller; | ||||||
|  | import org.springframework.web.bind.annotation.RequestMapping; | ||||||
|  | import org.springframework.web.bind.annotation.RequestParam; | ||||||
|  | import org.springframework.web.bind.annotation.ResponseBody; | ||||||
|  | import org.springframework.web.multipart.MultipartFile; | ||||||
|  |  | ||||||
|  | @SuppressWarnings( "unused" ) | ||||||
|  | @Controller | ||||||
|  | @RequestMapping( path = "/file" ) | ||||||
|  | public class FileUpload | ||||||
|  | { | ||||||
|  |     /***************************************************** | ||||||
|  |      * 接收上传文件,并保存到临时目录: | ||||||
|  |      * 1、临时目录下再用sessionID作为子目录保存文件。 | ||||||
|  |      * 2、保存时不更改文件名,会覆盖同名文件。 | ||||||
|  |      * 3、MultipartFile参数形参名称必须和请求form中file标签的name属性一致,否则值为null。 | ||||||
|  |      * 4、返回值为接收结果和文件保存路径。 | ||||||
|  |      *****************************************************/ | ||||||
|  |     @RequestMapping( path = "/file-upload.do" ) | ||||||
|  |     @ResponseBody | ||||||
|  |     public FileUploadResult getUploadFile( @RequestParam( "task-name" ) String taskName, | ||||||
|  |             @RequestParam( "file" ) MultipartFile[] files, HttpServletRequest request ) | ||||||
|  |     { | ||||||
|  |         // session id用来创建临时目录,避免重复 | ||||||
|  |         String sessionID = request.getSession().getId(); | ||||||
|  |         FileUploadResult result = new FileUploadResult(); | ||||||
|  |         Vector<String> fileNames = new Vector<String>(); | ||||||
|  |         int fileCount = files.length; | ||||||
|  |  | ||||||
|  |         // 防御验证 | ||||||
|  |         if ( files.length == 0 ) | ||||||
|  |         { | ||||||
|  |             result.setSuccess( false ); | ||||||
|  |             result.setMessage( "此接口用于上传文件!" ); | ||||||
|  |  | ||||||
|  |             return result; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         result.setSuccess( true ); | ||||||
|  |         result.setMessage( "上传成功!" ); | ||||||
|  |  | ||||||
|  |         for ( MultipartFile file : files ) | ||||||
|  |         { | ||||||
|  |             // 检查文件长度,如果为0则跳过 | ||||||
|  |             if ( file.isEmpty() ) | ||||||
|  |             { | ||||||
|  |  | ||||||
|  |                 continue; | ||||||
|  |             } | ||||||
|  |  | ||||||
|  |             // 保存文件到临时目录 | ||||||
|  |             String filePath = | ||||||
|  |                     request.getServletContext().getRealPath( "/temp/upload/" + sessionID ); | ||||||
|  |             String fileName = file.getOriginalFilename(); | ||||||
|  |             File destFile = new File( filePath, fileName ); | ||||||
|  |  | ||||||
|  |             fileNames.add( file.getOriginalFilename() ); | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         result.setFileList( fileNames ); | ||||||
|  |  | ||||||
|  |         return result; | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -0,0 +1,62 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2023-01-23 22:56:17 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-23 22:56:25 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\controllers\FileUpload\FileUploadResult.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | package com.cpic.xim.web.controllers.FileUpload; | ||||||
|  |  | ||||||
|  | import java.util.Vector; | ||||||
|  | import com.fasterxml.jackson.annotation.JsonProperty; | ||||||
|  |  | ||||||
|  | @SuppressWarnings( "unused" ) | ||||||
|  | public class FileUploadResult | ||||||
|  | { | ||||||
|  |     public FileUploadResult() | ||||||
|  |     {} | ||||||
|  |  | ||||||
|  |     public boolean isSuccess() | ||||||
|  |     { | ||||||
|  |         return success; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setSuccess( boolean success ) | ||||||
|  |     { | ||||||
|  |         this.success = success; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getMessage() | ||||||
|  |     { | ||||||
|  |         return message; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setMessage( String message ) | ||||||
|  |     { | ||||||
|  |         this.message = message; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public Vector<String> getFileList() | ||||||
|  |     { | ||||||
|  |         return fileList; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setFileList( Vector<String> fileList ) | ||||||
|  |     { | ||||||
|  |         this.fileList = fileList; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @JsonProperty( "success" ) | ||||||
|  |     private boolean success; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "message" ) | ||||||
|  |     private String message; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "file-list" ) | ||||||
|  |     private Vector<String> fileList; | ||||||
|  | } | ||||||
|  |  | ||||||
| @@ -0,0 +1,114 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 11:11:21 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-17 23:28:21 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckController.java | ||||||
|  |  * @Description: P13账号验证用Controller。 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.web.controllers.account; | ||||||
|  |  | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.nio.channels.IllegalSelectorException; | ||||||
|  | import java.sql.SQLException; | ||||||
|  | import javax.servlet.ServletContext; | ||||||
|  | import javax.servlet.http.HttpServletRequest; | ||||||
|  | import javax.servlet.http.HttpServletResponse; | ||||||
|  | import javax.servlet.http.HttpSession; | ||||||
|  | import org.springframework.stereotype.Controller; | ||||||
|  | import org.springframework.web.bind.annotation.RequestBody; | ||||||
|  | import org.springframework.web.bind.annotation.RequestMapping; | ||||||
|  | import org.springframework.web.bind.annotation.ResponseBody; | ||||||
|  | import com.cpic.xim.myutils.account.CpicXIMStaffInfo; | ||||||
|  | import com.cpic.xim.myutils.account.LdapAccountCheck; | ||||||
|  |  | ||||||
|  | @Controller | ||||||
|  | @RequestMapping( path = "/account" ) | ||||||
|  | @SuppressWarnings( "unused" ) | ||||||
|  | public class P13AccountCheckController | ||||||
|  | { | ||||||
|  |     /***************************************************** | ||||||
|  |      * 根据用户提供的P09工号或者P13账号密码,查找用户信息,并AD域服务器验证p13账号密码。 | ||||||
|  |      * 验证通过即返回人员信息。 | ||||||
|  |      * 验证不通过result.success值为false,并在message提供失败原因。 | ||||||
|  |      * @param param 由json格式转换的请求参数 | ||||||
|  |      * @param request | ||||||
|  |      * @param response | ||||||
|  |      * @return 返回一个P13AccountCheckResult对象,其中提供验证结果 | ||||||
|  |      *****************************************************/ | ||||||
|  |     @ResponseBody | ||||||
|  |     @RequestMapping( path = "/p13_account_check" ) | ||||||
|  |     public P13AccountCheckResult checkP13Account( @RequestBody P13AccountCheckRequest param, | ||||||
|  |             HttpServletRequest request, HttpServletResponse response ) | ||||||
|  |             throws IllegalSelectorException, IOException | ||||||
|  |     { | ||||||
|  |         P13AccountCheckResult result = new P13AccountCheckResult(); | ||||||
|  |         ServletContext context = request.getServletContext(); | ||||||
|  |  | ||||||
|  |         // context.getAttribute( null ); | ||||||
|  |         CpicXIMStaffInfo staff = null; | ||||||
|  |  | ||||||
|  |         try | ||||||
|  |         { | ||||||
|  |             // 先根据用户输入的09工号或p13账号获得p13账号,确定账号存在 | ||||||
|  |             staff = CpicXIMStaffInfo.getStaffInfo( param.getP13Account() ); | ||||||
|  |         } | ||||||
|  |         catch ( SQLException error ) | ||||||
|  |         { | ||||||
|  |             staff = null; | ||||||
|  |             result.setMessage( "人员工号或P13账号不存在!" ); | ||||||
|  |             result.setSuccess( false ); | ||||||
|  |         } | ||||||
|  |         catch ( ClassNotFoundException error ) | ||||||
|  |         { | ||||||
|  |             staff = null; | ||||||
|  |             result.setMessage( "加载Oracle驱动失败!" ); | ||||||
|  |             result.setSuccess( false ); | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         // 查询结果是null,说明没有查询到结果,工号或p13账号不存在,返回结果。 | ||||||
|  |         if ( staff == null ) | ||||||
|  |         { | ||||||
|  |             result.setMessage( "人员工号或P13账号不存在!" ); | ||||||
|  |             result.setSuccess( false ); | ||||||
|  |  | ||||||
|  |             return result; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         // 判断一下p13是否存在,如果不存在就结束过程 | ||||||
|  |         if ( staff.getP13UID().isEmpty() == true ) | ||||||
|  |         { | ||||||
|  |             result.setMessage( "P13账号不存在,请联系信息技术部申请账号!" ); | ||||||
|  |             result.setSuccess( false ); | ||||||
|  |  | ||||||
|  |             return result; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         // 进行ldap验证 | ||||||
|  |         boolean ldapCheckResult = | ||||||
|  |                 LdapAccountCheck.ldapLogin( staff.getP13UID(), param.getPassword() ); | ||||||
|  |  | ||||||
|  |         if ( ldapCheckResult == true ) | ||||||
|  |         { | ||||||
|  |             result.setSuccess( true ); | ||||||
|  |             result.setMessage( "验证成功!" ); | ||||||
|  |             result.setStaffInfo( staff ); | ||||||
|  |  | ||||||
|  |             // 将获取到的人员信息保存到会话中 | ||||||
|  |             HttpSession session = request.getSession(); | ||||||
|  |  | ||||||
|  |             session.setAttribute( "staff_info", staff ); | ||||||
|  |         } | ||||||
|  |         else | ||||||
|  |         { | ||||||
|  |             result.setSuccess( false ); | ||||||
|  |             result.setMessage( "密码错误!" ); | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         result.setToken( param.getP13Account() ); | ||||||
|  |  | ||||||
|  |         return result; | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -0,0 +1,45 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 21:01:43 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-15 21:03:21 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckRequest.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.web.controllers.account; | ||||||
|  |  | ||||||
|  | import com.fasterxml.jackson.annotation.*; | ||||||
|  |  | ||||||
|  | public class P13AccountCheckRequest | ||||||
|  | { | ||||||
|  |     P13AccountCheckRequest() | ||||||
|  |     {} | ||||||
|  |  | ||||||
|  |     public String getP13Account() | ||||||
|  |     { | ||||||
|  |         return p13Account; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setP13Account( String p13Account ) | ||||||
|  |     { | ||||||
|  |         this.p13Account = p13Account; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getPassword() | ||||||
|  |     { | ||||||
|  |         return password; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setPassword( String password ) | ||||||
|  |     { | ||||||
|  |         this.password = password; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @JsonProperty( "p13account") | ||||||
|  |     private String p13Account; | ||||||
|  |  | ||||||
|  |     @JsonProperty( "password") | ||||||
|  |     private String password; | ||||||
|  | } | ||||||
| @@ -0,0 +1,110 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 11:17:26 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-10 14:58:53 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckResult.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | package com.cpic.xim.web.controllers.account; | ||||||
|  |  | ||||||
|  | import com.cpic.xim.myutils.account.CpicXIMStaffInfo; | ||||||
|  | import com.fasterxml.jackson.annotation.*;; | ||||||
|  |  | ||||||
|  | public class P13AccountCheckResult | ||||||
|  | { | ||||||
|  |     P13AccountCheckResult() | ||||||
|  |     {} | ||||||
|  |  | ||||||
|  |     public boolean isSuccess() | ||||||
|  |     { | ||||||
|  |         return success; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setSuccess( boolean success ) | ||||||
|  |     { | ||||||
|  |         this.success = success; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public String getMessage() | ||||||
|  |     { | ||||||
|  |         return message; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setMessage( String message ) | ||||||
|  |     { | ||||||
|  |         this.message = message; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public CpicXIMStaffInfo getStaffInfo() | ||||||
|  |     { | ||||||
|  |         return staffInfo; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setStaffInfo( CpicXIMStaffInfo staffInfo ) | ||||||
|  |     { | ||||||
|  |         this.staffInfo = staffInfo; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |  | ||||||
|  |     public String getToken() | ||||||
|  |     { | ||||||
|  |         return token; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     public void setToken( String token ) | ||||||
|  |     { | ||||||
|  |         this.token = token; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Override | ||||||
|  |     public int hashCode() | ||||||
|  |     { | ||||||
|  |         final int prime = 31; | ||||||
|  |         int result = 1; | ||||||
|  |         result = prime * result + (success ? 1231 : 1237); | ||||||
|  |         result = prime * result + ((message == null) ? 0 : message.hashCode()); | ||||||
|  |         return result; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Override | ||||||
|  |     public boolean equals( Object obj ) | ||||||
|  |     { | ||||||
|  |         if ( this == obj) | ||||||
|  |             return true; | ||||||
|  |         if ( obj == null) | ||||||
|  |             return false; | ||||||
|  |         if ( getClass() != obj.getClass()) | ||||||
|  |             return false; | ||||||
|  |         P13AccountCheckResult other = (P13AccountCheckResult) obj; | ||||||
|  |         if ( success != other.success) | ||||||
|  |             return false; | ||||||
|  |         if ( message == null) | ||||||
|  |         { | ||||||
|  |             if ( other.message != null) | ||||||
|  |                 return false; | ||||||
|  |         } else if ( !message.equals( other.message )) | ||||||
|  |             return false; | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     // 验证结果状态,true为成功,false为失败 | ||||||
|  |     @JsonProperty( "success") | ||||||
|  |     private boolean success; | ||||||
|  |  | ||||||
|  |     // 验证结果消息字符串,用来提示前端。 | ||||||
|  |     @JsonProperty( "message") | ||||||
|  |     private String message; | ||||||
|  |  | ||||||
|  |     // 用户的token | ||||||
|  |     @JsonProperty( "token") | ||||||
|  |     private String token; | ||||||
|  |  | ||||||
|  |     // 验证成功后查询到的人员信息。 | ||||||
|  |     @JsonProperty( "staff_info") | ||||||
|  |     CpicXIMStaffInfo staffInfo; | ||||||
|  |  | ||||||
|  | } | ||||||
| @@ -0,0 +1,43 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 10:44:20 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-15 20:53:14 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\filters\cros\CrosFilter.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.web.filters.cros; | ||||||
|  |  | ||||||
|  | import java.io.IOException; | ||||||
|  | import javax.servlet.Filter; | ||||||
|  | import javax.servlet.FilterChain; | ||||||
|  | import javax.servlet.ServletException; | ||||||
|  | import javax.servlet.ServletRequest; | ||||||
|  | import javax.servlet.ServletResponse; | ||||||
|  | import javax.servlet.http.HttpServletRequest; | ||||||
|  | import javax.servlet.http.HttpServletResponse; | ||||||
|  |  | ||||||
|  | public class CrosFilter implements Filter | ||||||
|  | { | ||||||
|  |     @Override | ||||||
|  |     public void doFilter( ServletRequest req, ServletResponse resp, FilterChain chain ) | ||||||
|  |             throws ServletException, IOException | ||||||
|  |     { | ||||||
|  |         HttpServletRequest request = (HttpServletRequest) req; | ||||||
|  |         HttpServletResponse response = (HttpServletResponse) resp; | ||||||
|  |         String originHeader = request.getHeader( "Origin" ); | ||||||
|  |  | ||||||
|  |         response.setHeader( "Access-Control-Allow-Origin", originHeader ); | ||||||
|  |         response.setHeader( "Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE" ); | ||||||
|  |         response.setHeader( "Access-Control-Max-Age", "0" ); | ||||||
|  |         response.setHeader( "Access-Control-Allow-Headers", | ||||||
|  |                 "Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With,userId,token" ); | ||||||
|  |         response.setHeader( "Access-Control-Allow-Credentials", "true" ); | ||||||
|  |         response.setHeader( "XDomainRequestAllowed", "1" ); | ||||||
|  |         response.setHeader( "XDomainRequestAllowed", "1" ); | ||||||
|  |  | ||||||
|  |         chain.doFilter( request, response ); | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -0,0 +1,41 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2023-01-12 15:01:22 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-24 00:21:51 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\filters\token\TokenFilter.java | ||||||
|  |  * @Description: 用于检查token的过滤器 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.web.filters.token; | ||||||
|  |  | ||||||
|  | import java.io.IOException; | ||||||
|  | import javax.servlet.Filter; | ||||||
|  | import javax.servlet.FilterChain; | ||||||
|  | import javax.servlet.ServletException; | ||||||
|  | import javax.servlet.ServletRequest; | ||||||
|  | import javax.servlet.ServletResponse; | ||||||
|  | import javax.servlet.http.HttpServletRequest; | ||||||
|  | import javax.servlet.http.HttpServletResponse; | ||||||
|  |  | ||||||
|  | @SuppressWarnings( "unused" ) | ||||||
|  | public class TokenFilter implements Filter | ||||||
|  | { | ||||||
|  |     /***************************************************** | ||||||
|  |      * 对请求的token进行验证。 | ||||||
|  |      *****************************************************/ | ||||||
|  |     @Override | ||||||
|  |     public void doFilter( ServletRequest req, ServletResponse resp, FilterChain chain ) | ||||||
|  |             throws ServletException, IOException | ||||||
|  |     { | ||||||
|  |         HttpServletRequest request = (HttpServletRequest) req; | ||||||
|  |         HttpServletResponse response = (HttpServletResponse) resp; | ||||||
|  |  | ||||||
|  |         // 验证Token | ||||||
|  |         String token = request.getHeader( "Token" ); | ||||||
|  |  | ||||||
|  |         chain.doFilter( request, response ); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |  | ||||||
| @@ -0,0 +1,71 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-15 19:40:12 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-23 23:58:26 | ||||||
|  |  * @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\listener\ContextLoaderListener.java | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | package com.cpic.xim.web.listener; | ||||||
|  |  | ||||||
|  | import java.io.FileInputStream; | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.io.InputStreamReader; | ||||||
|  | import javax.servlet.ServletContext; | ||||||
|  | import javax.servlet.ServletContextEvent; | ||||||
|  | import javax.servlet.ServletContextListener; | ||||||
|  | import com.fasterxml.jackson.databind.ObjectMapper; | ||||||
|  |  | ||||||
|  | @SuppressWarnings( | ||||||
|  | { "unused"} ) | ||||||
|  | public class ContextLoaderListener implements ServletContextListener | ||||||
|  | { | ||||||
|  |     private static final int BUFFER_SIZE = 1024; | ||||||
|  |     private static final String CONFIG_FILE_CHARSET = "UTF-8"; | ||||||
|  |  | ||||||
|  |     @Override | ||||||
|  |     public void contextInitialized( ServletContextEvent event ) | ||||||
|  |     { | ||||||
|  |         ServletContext context = event.getServletContext(); | ||||||
|  |  | ||||||
|  |         String configFileLocation = context.getInitParameter( "config_file_location" ); | ||||||
|  |  | ||||||
|  |         // loadConfig( configFileLocation ); | ||||||
|  |  | ||||||
|  |  | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private void loadConfig( String configFileLocation ) | ||||||
|  |     { | ||||||
|  |         ObjectMapper mapper = new ObjectMapper(); | ||||||
|  |         FileInputStream configFile = null; | ||||||
|  |         InputStreamReader in = null; | ||||||
|  |         StringBuilder json = null; | ||||||
|  |         char[] buffer = new char[BUFFER_SIZE]; | ||||||
|  |  | ||||||
|  |         try | ||||||
|  |         { | ||||||
|  |             configFile = new FileInputStream( configFileLocation ); | ||||||
|  |         } | ||||||
|  |         catch ( IOException exception ) | ||||||
|  |         { | ||||||
|  |  | ||||||
|  |         } | ||||||
|  |         finally | ||||||
|  |         { | ||||||
|  |             try | ||||||
|  |             { | ||||||
|  |                 if ( configFile != null ) | ||||||
|  |                 { | ||||||
|  |                     configFile.close(); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             catch ( Exception error ) | ||||||
|  |             { | ||||||
|  |                 error.printStackTrace(); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -0,0 +1,25 @@ | |||||||
|  | <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:util="http://www.springframework.org/schema/util" xmlns:jpa="http://www.springframework.org/schema/data/jpa" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd | ||||||
|  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd"> | ||||||
|  |  | ||||||
|  |     <context:component-scan base-package="com.cpic.xim" /> | ||||||
|  |     <mvc:annotation-driven /> | ||||||
|  |     <mvc:default-servlet-handler /> | ||||||
|  |  | ||||||
|  |     <!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> | ||||||
|  |         <property name="prefix" value="/WEB-INF/jsp/" /> | ||||||
|  |         <property name="suffix" value=".jsp" /> | ||||||
|  |     </bean> --> | ||||||
|  |  | ||||||
|  |     <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> | ||||||
|  |         <property name="defaultEncoding" value="UTF-8" /> | ||||||
|  |         <property name="maxUploadSize" value="-1" /> | ||||||
|  |     </bean> | ||||||
|  |  | ||||||
|  | </beans> | ||||||
							
								
								
									
										57
									
								
								企业级管理系统/java/AdminSys/src/main/webapp/WEB-INF/web.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,57 @@ | |||||||
|  | <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" | ||||||
|  |   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||||
|  |   xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" | ||||||
|  |   version="3.1"> | ||||||
|  |   <display-name>Archetype Created Web Application</display-name> | ||||||
|  |  | ||||||
|  |   <servlet> | ||||||
|  |     <servlet-name>springmvc</servlet-name> | ||||||
|  |     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> | ||||||
|  |     <init-param> | ||||||
|  |       <param-name>contextConfigLocation</param-name> | ||||||
|  |       <param-value>classpath:spring.xml</param-value> | ||||||
|  |     </init-param> | ||||||
|  |     <load-on-startup>1</load-on-startup> | ||||||
|  |   </servlet> | ||||||
|  |   <servlet-mapping> | ||||||
|  |     <servlet-name>springmvc</servlet-name> | ||||||
|  |     <url-pattern>*.do</url-pattern> | ||||||
|  |   </servlet-mapping> | ||||||
|  |   <servlet-mapping> | ||||||
|  |     <servlet-name>springmvc</servlet-name> | ||||||
|  |     <url-pattern>/account/p13_account_check</url-pattern> | ||||||
|  |   </servlet-mapping> | ||||||
|  |  | ||||||
|  |   <!-- 用于验证Token的Filter --> | ||||||
|  |   <filter> | ||||||
|  |     <filter-name>token-filter</filter-name> | ||||||
|  |     <filter-class>com.cpic.xim.web.filters.token.TokenFilter</filter-class> | ||||||
|  |   </filter> | ||||||
|  |   <filter-mapping> | ||||||
|  |     <filter-name>token-filter</filter-name> | ||||||
|  |     <url-pattern>*.do</url-pattern> | ||||||
|  |   </filter-mapping> | ||||||
|  |  | ||||||
|  |  | ||||||
|  |   <!-- 用于实现跨域访问的Filter --> | ||||||
|  |   <filter> | ||||||
|  |     <filter-name>cros-filter</filter-name> | ||||||
|  |     <filter-class>com.cpic.xim.web.filters.cros.CrosFilter</filter-class> | ||||||
|  |   </filter> | ||||||
|  |   <filter-mapping> | ||||||
|  |     <filter-name>cros-filter</filter-name> | ||||||
|  |     <url-pattern>*</url-pattern> | ||||||
|  |   </filter-mapping> | ||||||
|  |  | ||||||
|  |  | ||||||
|  |   <!-- 配置文件路径参数 --> | ||||||
|  |   <context-param> | ||||||
|  |     <param-name>config_file_location</param-name> | ||||||
|  |     <param-value>config.xml</param-value> | ||||||
|  |   </context-param> | ||||||
|  |  | ||||||
|  |   <listener> | ||||||
|  |     <listener-class>com.cpic.xim.web.listener.ContextLoaderListener</listener-class> | ||||||
|  |   </listener> | ||||||
|  |  | ||||||
|  | </web-app> | ||||||
							
								
								
									
										68
									
								
								企业级管理系统/java/AdminSys/src/main/webapp/css/kane.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,68 @@ | |||||||
|  | html { | ||||||
|  |     --backupground-color: #f7f7f7; | ||||||
|  |     --btn-color-blue: #307dbe; | ||||||
|  |     --btn-color-yellow: #f7b24d; | ||||||
|  |     --btn-color-green: #5bad60; | ||||||
|  |     --btn-color-red: #e56651; | ||||||
|  |     --btn-font-color: #fff; | ||||||
|  |     background-color: #eee; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #root, | ||||||
|  | #app { | ||||||
|  |     height: 100vh; | ||||||
|  |     width: 100vw; | ||||||
|  |     position: fixed; | ||||||
|  |     padding: 50px; | ||||||
|  |     /* font-size: 0; */ | ||||||
|  |     overflow: auto; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #root, | ||||||
|  | #app * + * { | ||||||
|  |     margin-top: 15px; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | hr { | ||||||
|  |     background-color: steelblue; | ||||||
|  |     border: none; | ||||||
|  |     height: 3px; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | .test { | ||||||
|  |     width: 110vw; | ||||||
|  |     height: 100vh; | ||||||
|  |     border: 1px solid red; | ||||||
|  |     overflow: auto; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | button { | ||||||
|  |     padding: 5px 10px; | ||||||
|  |     background-color: var(--btn-color-red); | ||||||
|  |     color: var(--btn-font-color); | ||||||
|  |     width: 10em; | ||||||
|  |     border: none; | ||||||
|  |     border-radius: 0.25em; | ||||||
|  |     font-size: 1.5rem; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | button + button { | ||||||
|  |     margin-left: 0.5em; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | button:active { | ||||||
|  |     background-color: var(--btn-font-color); | ||||||
|  |     color: var(--btn-color-red); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | input { | ||||||
|  |     border: none; | ||||||
|  |     outline: solid 2px #e56651; | ||||||
|  |     font-size: 2rem; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | label { | ||||||
|  |     display: inline-block; | ||||||
|  |     font-size: 2rem; | ||||||
|  |     margin-top: 15px; | ||||||
|  | } | ||||||
							
								
								
									
										25
									
								
								企业级管理系统/java/AdminSys/src/main/webapp/css/main_frame.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,25 @@ | |||||||
|  | #app { | ||||||
|  |     width: 100vw; | ||||||
|  |     height: 100vh; | ||||||
|  |     padding: 0px; | ||||||
|  |     margin: 0px; | ||||||
|  |     display: flex; | ||||||
|  |     flex-direction: column; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #header { | ||||||
|  |     flex-basis: 50px; | ||||||
|  |     border: 1px solid red; | ||||||
|  |     max-height: 50px; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #main { | ||||||
|  |     flex-grow: 1; | ||||||
|  |     border: 1px solid red; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #footer { | ||||||
|  |     flex-basis: 100px; | ||||||
|  |     max-height: 100px; | ||||||
|  |     border: 1px solid red; | ||||||
|  | } | ||||||
| @@ -9,10 +9,8 @@ | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| html { | html { | ||||||
|   line-height: 1.15; |   line-height: 1.15; /* 1 */ | ||||||
|   /* 1 */ |   -webkit-text-size-adjust: 100%; /* 2 */ | ||||||
|   -webkit-text-size-adjust: 100%; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /* Sections | /* Sections | ||||||
| @@ -53,12 +51,9 @@ h1 { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| hr { | hr { | ||||||
|   box-sizing: content-box; |   box-sizing: content-box; /* 1 */ | ||||||
|   /* 1 */ |   height: 0; /* 1 */ | ||||||
|   height: 0; |   overflow: visible; /* 2 */ | ||||||
|   /* 1 */ |  | ||||||
|   overflow: visible; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -67,10 +62,8 @@ hr { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| pre { | pre { | ||||||
|   font-family: monospace, monospace; |   font-family: monospace, monospace; /* 1 */ | ||||||
|   /* 1 */ |   font-size: 1em; /* 2 */ | ||||||
|   font-size: 1em; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /* Text-level semantics | /* Text-level semantics | ||||||
| @@ -90,12 +83,9 @@ a { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| abbr[title] { | abbr[title] { | ||||||
|   border-bottom: none; |   border-bottom: none; /* 1 */ | ||||||
|   /* 1 */ |   text-decoration: underline; /* 2 */ | ||||||
|   text-decoration: underline; |   text-decoration: underline dotted; /* 2 */ | ||||||
|   /* 2 */ |  | ||||||
|   text-decoration: underline dotted; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -115,10 +105,8 @@ strong { | |||||||
| code, | code, | ||||||
| kbd, | kbd, | ||||||
| samp { | samp { | ||||||
|   font-family: monospace, monospace; |   font-family: monospace, monospace; /* 1 */ | ||||||
|   /* 1 */ |   font-size: 1em; /* 2 */ | ||||||
|   font-size: 1em; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -174,14 +162,10 @@ input, | |||||||
| optgroup, | optgroup, | ||||||
| select, | select, | ||||||
| textarea { | textarea { | ||||||
|   font-family: inherit; |   font-family: inherit; /* 1 */ | ||||||
|   /* 1 */ |   font-size: 100%; /* 1 */ | ||||||
|   font-size: 100%; |   line-height: 1.15; /* 1 */ | ||||||
|   /* 1 */ |   margin: 0; /* 2 */ | ||||||
|   line-height: 1.15; |  | ||||||
|   /* 1 */ |  | ||||||
|   margin: 0; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -190,8 +174,7 @@ textarea { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| button, | button, | ||||||
| input { | input { /* 1 */ | ||||||
|   /* 1 */ |  | ||||||
|   overflow: visible; |   overflow: visible; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @@ -201,8 +184,7 @@ input { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| button, | button, | ||||||
| select { | select { /* 1 */ | ||||||
|   /* 1 */ |  | ||||||
|   text-transform: none; |   text-transform: none; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @@ -256,18 +238,12 @@ fieldset { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| legend { | legend { | ||||||
|   box-sizing: border-box; |   box-sizing: border-box; /* 1 */ | ||||||
|   /* 1 */ |   color: inherit; /* 2 */ | ||||||
|   color: inherit; |   display: table; /* 1 */ | ||||||
|   /* 2 */ |   max-width: 100%; /* 1 */ | ||||||
|   display: table; |   padding: 0; /* 3 */ | ||||||
|   /* 1 */ |   white-space: normal; /* 1 */ | ||||||
|   max-width: 100%; |  | ||||||
|   /* 1 */ |  | ||||||
|   padding: 0; |  | ||||||
|   /* 3 */ |  | ||||||
|   white-space: normal; |  | ||||||
|   /* 1 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -293,10 +269,8 @@ textarea { | |||||||
| 
 | 
 | ||||||
| [type="checkbox"], | [type="checkbox"], | ||||||
| [type="radio"] { | [type="radio"] { | ||||||
|   box-sizing: border-box; |   box-sizing: border-box; /* 1 */ | ||||||
|   /* 1 */ |   padding: 0; /* 2 */ | ||||||
|   padding: 0; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -314,10 +288,8 @@ textarea { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| [type="search"] { | [type="search"] { | ||||||
|   -webkit-appearance: textfield; |   -webkit-appearance: textfield; /* 1 */ | ||||||
|   /* 1 */ |   outline-offset: -2px; /* 2 */ | ||||||
|   outline-offset: -2px; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @@ -334,10 +306,8 @@ textarea { | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| ::-webkit-file-upload-button { | ::-webkit-file-upload-button { | ||||||
|   -webkit-appearance: button; |   -webkit-appearance: button; /* 1 */ | ||||||
|   /* 1 */ |   font: inherit; /* 2 */ | ||||||
|   font: inherit; |  | ||||||
|   /* 2 */ |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /* Interactive | /* Interactive | ||||||
							
								
								
									
										11
									
								
								企业级管理系统/java/AdminSys/src/main/webapp/css/product_form.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | |||||||
|  | .panel { | ||||||
|  |     display: flex; | ||||||
|  |     justify-content: center; | ||||||
|  |     align-items: center; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | .main_form { | ||||||
|  |     height: 50vh; | ||||||
|  |     width: 50vw; | ||||||
|  |     border: 1px solid red; | ||||||
|  | } | ||||||
							
								
								
									
										17
									
								
								企业级管理系统/java/AdminSys/src/main/webapp/css/test.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,17 @@ | |||||||
|  | a, | ||||||
|  | p { | ||||||
|  |     padding: 5rem; | ||||||
|  |     border: 1px solid red; | ||||||
|  |     line-height: 2rem; | ||||||
|  |     margin: 2em; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | .warp_test { | ||||||
|  |     width: 5rem; | ||||||
|  |     border: 1px solid red; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ol, | ||||||
|  | li { | ||||||
|  |     background-color: cornflowerblue; | ||||||
|  | } | ||||||
							
								
								
									
										23
									
								
								企业级管理系统/java/AdminSys/src/main/webapp/index.jsp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,23 @@ | |||||||
|  | <%-- /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-10-21 00:14:43 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-10-21 00:16:48 | ||||||
|  |  * @FilePath: \car_dealer\src\main\webapp\test.jsp | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ --%> | ||||||
|  | <%@ page contentType="text/html;charset=UTF-8" %> | ||||||
|  | <!DOCTYPE html> | ||||||
|  | <html lang="en"> | ||||||
|  | <head> | ||||||
|  |     <meta charset="UTF-8"> | ||||||
|  |     <meta http-equiv="X-UA-Compatible" content="IE=edge"> | ||||||
|  |     <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||||||
|  |     <title>Document</title> | ||||||
|  | </head> | ||||||
|  | <body> | ||||||
|  |      | ||||||
|  | </body> | ||||||
|  | </html> | ||||||
							
								
								
									
										5
									
								
								企业级管理系统/web/admin_system/.browserslistrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | > 1% | ||||||
|  | last 2 versions | ||||||
|  | not dead | ||||||
|  | not ie 11 | ||||||
|  | safari >= 7 | ||||||
							
								
								
									
										2
									
								
								企业级管理系统/web/admin_system/.env.development
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,2 @@ | |||||||
|  | VUE_APP_API_URL_LOGIN = "http://222.76.244.118:11001/admin-system/account/p13_account_check" | ||||||
|  | VUR_APPP_API_URL_UPLOAD_FILE= "http://222.76.244.118:11001/admin-system/file/file-upload.do" | ||||||
							
								
								
									
										27
									
								
								企业级管理系统/web/admin_system/.eslintrc.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,27 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-14 15:12:46 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-14 15:20:20 | ||||||
|  |  * @FilePath: \admin_system\.eslintrc.js | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | module.exports = { | ||||||
|  |   root: true, | ||||||
|  |   env: { | ||||||
|  |     node: true | ||||||
|  |   }, | ||||||
|  |   'extends': [ | ||||||
|  |     'plugin:vue/vue3-essential', | ||||||
|  |     'eslint:recommended' | ||||||
|  |   ], | ||||||
|  |   parserOptions: { | ||||||
|  |     parser: '@babel/eslint-parser' | ||||||
|  |   }, | ||||||
|  |   rules: { | ||||||
|  |     'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', | ||||||
|  |     'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off' | ||||||
|  |   } | ||||||
|  | } | ||||||
| @@ -1,4 +1,4 @@ | |||||||
| # hello-cli | # admin_system | ||||||
| 
 | 
 | ||||||
| ## Project setup | ## Project setup | ||||||
| ``` | ``` | ||||||
							
								
								
									
										23141
									
								
								企业级管理系统/web/admin_system/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										36
									
								
								企业级管理系统/web/admin_system/package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,36 @@ | |||||||
|  | { | ||||||
|  |   "name": "admin_system", | ||||||
|  |   "version": "0.1.0", | ||||||
|  |   "private": true, | ||||||
|  |   "scripts": { | ||||||
|  |     "serve": "vue-cli-service serve", | ||||||
|  |     "build": "vue-cli-service build", | ||||||
|  |     "lint": "vue-cli-service lint" | ||||||
|  |   }, | ||||||
|  |   "dependencies": { | ||||||
|  |     "@element-plus/icons-vue": "^2.0.10", | ||||||
|  |     "axios": "^1.2.1", | ||||||
|  |     "core-js": "^3.8.3", | ||||||
|  |     "element-plus": "^2.2.26", | ||||||
|  |     "sass": "^1.56.2", | ||||||
|  |     "sass-loader": "^13.2.0", | ||||||
|  |     "scss": "^0.2.4", | ||||||
|  |     "scss-loader": "^0.0.1", | ||||||
|  |     "vue": "^3.2.13", | ||||||
|  |     "vue-router": "^4.0.3", | ||||||
|  |     "vuex": "^4.0.0" | ||||||
|  |   }, | ||||||
|  |   "devDependencies": { | ||||||
|  |     "@babel/core": "^7.12.16", | ||||||
|  |     "@babel/eslint-parser": "^7.12.16", | ||||||
|  |     "@vue/cli-plugin-babel": "~5.0.0", | ||||||
|  |     "@vue/cli-plugin-eslint": "~5.0.0", | ||||||
|  |     "@vue/cli-plugin-router": "~5.0.0", | ||||||
|  |     "@vue/cli-plugin-vuex": "~5.0.0", | ||||||
|  |     "@vue/cli-service": "~5.0.0", | ||||||
|  |     "eslint": "^7.32.0", | ||||||
|  |     "eslint-plugin-vue": "^8.0.3", | ||||||
|  |     "svg-sprite-loader": "^2.1.0", | ||||||
|  |     "vue-cli-plugin-element-plus": "~0.0.13" | ||||||
|  |   } | ||||||
|  | } | ||||||
| Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB | 
							
								
								
									
										43
									
								
								企业级管理系统/web/admin_system/public/index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,43 @@ | |||||||
|  | <!-- | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-17 11:08:18 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-26 01:37:19 | ||||||
|  |  * @FilePath: \admin_system\public\index.html | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  | --> | ||||||
|  | <!DOCTYPE html> | ||||||
|  | <html lang=""> | ||||||
|  |     <head> | ||||||
|  |         <meta charset="utf-8" /> | ||||||
|  |         <meta http-equiv="X-UA-Compatible" content="IE=edge" /> | ||||||
|  |         <meta name="viewport" content="width=device-width,initial-scale=1.0" /> | ||||||
|  |         <link rel="icon" href="<%= BASE_URL %>favicon.ico" /> | ||||||
|  |         <title><%= htmlWebpackPlugin.options.title %></title> | ||||||
|  |     </head> | ||||||
|  |     <body> | ||||||
|  |         <noscript> | ||||||
|  |             <strong | ||||||
|  |                 >We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't | ||||||
|  |                 work properly without JavaScript enabled. Please enable it to | ||||||
|  |                 continue.</strong | ||||||
|  |             > | ||||||
|  |         </noscript> | ||||||
|  |         <div id="app" v-cloak></div> | ||||||
|  |         <!-- built files will be auto injected --> | ||||||
|  |     </body> | ||||||
|  |     <style> | ||||||
|  |         .v-cloak { | ||||||
|  |             display: none; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         body { | ||||||
|  |             width: 100vw; | ||||||
|  |             height: 100vh; | ||||||
|  |             max-height: 100vh; | ||||||
|  |             min-width: 1280px; | ||||||
|  |         } | ||||||
|  |     </style> | ||||||
|  | </html> | ||||||
							
								
								
									
										35
									
								
								企业级管理系统/web/admin_system/src/App.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,35 @@ | |||||||
|  | <!-- | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-14 15:12:46 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-19 14:26:17 | ||||||
|  |  * @FilePath: \admin_system\src\App.vue | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  | --> | ||||||
|  | <template> | ||||||
|  |   <el-config-provider :locale="this.locale"> | ||||||
|  |     <router-view></router-view> | ||||||
|  |   </el-config-provider> | ||||||
|  | </template> | ||||||
|  |  | ||||||
|  | <script> | ||||||
|  | //引入语言组件 | ||||||
|  | import zhCn from "element-plus/lib/locale/lang/zh-cn"; | ||||||
|  |  | ||||||
|  | export default { | ||||||
|  |   name: "App", | ||||||
|  |   data() { | ||||||
|  |     return { | ||||||
|  |       locale: zhCn, //语言属性 | ||||||
|  |     }; | ||||||
|  |   }, | ||||||
|  |   components: { | ||||||
|  |     // HelloWorld, | ||||||
|  |   }, | ||||||
|  | }; | ||||||
|  | </script> | ||||||
|  |  | ||||||
|  | <style> | ||||||
|  | </style> | ||||||
| @@ -2,8 +2,8 @@ | |||||||
|  * @Author: Kane |  * @Author: Kane | ||||||
|  * @Date: 2022-11-12 23:22:59 |  * @Date: 2022-11-12 23:22:59 | ||||||
|  * @LastEditors: Kane |  * @LastEditors: Kane | ||||||
|  * @LastEditTime: 2022-11-16 15:26:04 |  * @LastEditTime: 2022-12-05 01:07:18 | ||||||
|  * @FilePath: \car_dealer\css\colors.css |  * @FilePath: \hello-cli\src\assets\css\colors.css | ||||||
|  * @Description:  |  * @Description:  | ||||||
|  *  |  *  | ||||||
|  * Copyright (c) ${2022} by Kane, All Rights Reserved.  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
| @@ -18,4 +18,7 @@ html { | |||||||
|     --btn-font-color: #fff; |     --btn-font-color: #fff; | ||||||
| 
 | 
 | ||||||
|     --input-focus-color: #e56651; |     --input-focus-color: #e56651; | ||||||
|  | 
 | ||||||
|  |     /* 标题栏背景色 */ | ||||||
|  |     --banner-background-color: #1d74b2; | ||||||
| } | } | ||||||
							
								
								
									
										17
									
								
								企业级管理系统/web/admin_system/src/assets/css/global.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,17 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-05 00:07:49 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-05 00:48:04 | ||||||
|  |  * @FilePath: \hello-cli\src\assets\css\global.css | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | html, | ||||||
|  | body, | ||||||
|  | #app { | ||||||
|  |     /* padding: 0px; */ | ||||||
|  |     margin: 0px; | ||||||
|  |     overflow: hidden; | ||||||
|  | } | ||||||
| Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB | 
							
								
								
									
										36
									
								
								企业级管理系统/web/admin_system/src/components/svg/SvgIcon.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,36 @@ | |||||||
|  | <!-- | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2023-01-06 20:33:57 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-07 17:10:07 | ||||||
|  |  * @FilePath: \admin_system\src\components\svg\SvgIcon.vue | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  | --> | ||||||
|  | <template> | ||||||
|  |     svg-icon:{{ this.iconName }} | ||||||
|  | </template> | ||||||
|  |  | ||||||
|  | <script> | ||||||
|  | export default { | ||||||
|  |     name: "svg-icon", | ||||||
|  |     data() | ||||||
|  |     { | ||||||
|  |         return { | ||||||
|  |             iconName: "" | ||||||
|  |         }; | ||||||
|  |     }, | ||||||
|  |     props: ["icon"], | ||||||
|  |     created() | ||||||
|  |     { | ||||||
|  |         console.log("svg"); | ||||||
|  |         console.log(this.icon); | ||||||
|  |         this.iconName = this.icon; | ||||||
|  |     }, | ||||||
|  | }; | ||||||
|  | </script> | ||||||
|  |  | ||||||
|  | <style scoped> | ||||||
|  |  | ||||||
|  | </style> | ||||||
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M757.76 102.4a122.88 122.88 0 0 1 122.88 122.88v376.8832l-1.4336-0.1536A89.6 89.6 0 0 1 960 691.2v153.6A89.6 89.6 0 0 1 870.4 934.4H153.6a89.6 89.6 0 0 1-89.6-89.6v-153.6a89.6 89.6 0 0 1 80.7936-89.1904l-1.4336 0.1536V225.28A122.88 122.88 0 0 1 266.24 102.4h491.52zM280.064 678.4H153.6a12.8 12.8 0 0 0-12.4416 9.8816l-0.3584 2.9184v153.6c0 7.0656 5.7344 12.8 12.8 12.8h716.8a12.8 12.8 0 0 0 12.8-12.8v-153.6a12.8 12.8 0 0 0-12.8-12.8h-126.5152l-84.992 68.352a38.4 38.4 0 0 1-24.0128 8.448H389.12a38.4 38.4 0 0 1-24.064-8.448L280.064 678.4zM757.76 179.2H266.24a46.08 46.08 0 0 0-45.7216 40.2944L220.16 225.28v376.32h73.3696a38.4 38.4 0 0 1 24.064 8.448l85.0432 68.352h218.6752l85.0944-68.352a38.4 38.4 0 0 1 18.8416-8.0896l5.2224-0.3584H803.84V225.28a46.08 46.08 0 0 0-40.2944-45.7216L757.76 179.2z m-114.1248 280.9344a38.4 38.4 0 0 1 5.2224 76.4416l-5.2224 0.3584H380.416a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h263.2704z m0-153.6a38.4 38.4 0 0 1 5.2224 76.4416l-5.2224 0.3584H380.416a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h263.2704z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 76.8a435.2 435.2 0 1 1 0 870.4 435.2 435.2 0 0 1 0-870.4zM512 153.6a358.4 358.4 0 1 0 0 716.8 358.4 358.4 0 0 0 0-716.8z m168.0384 141.2608a38.4 38.4 0 0 1 49.152 49.1008l-95.5904 266.4448a38.4 38.4 0 0 1-23.1936 23.1936L343.9616 729.088a38.4 38.4 0 0 1-49.152-49.1008l95.5904-266.4448a38.4 38.4 0 0 1 23.1936-23.1936zM440.832 500.4288l-46.1312 128.9216 128.8192-46.2336-82.688-82.688z m188.6208-105.8304l-136.8576 48.9984 87.7568 87.7568 49.1008-136.7552z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 753 B | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M665.6 448c49.4592 0 89.6 40.1408 89.6 89.6v307.2A89.6 89.6 0 0 1 665.6 934.4H358.4a89.6 89.6 0 0 1-89.6-89.6v-307.2c0-49.4592 40.1408-89.6 89.6-89.6z m12.8 281.6h-332.8v115.2a12.8 12.8 0 0 0 9.8816 12.4416L358.4 857.6h307.2a12.8 12.8 0 0 0 12.8-12.8v-115.2z m-250.88 25.6a38.4 38.4 0 1 1 0 76.8 38.4 38.4 0 0 1 0-76.8zM512 102.4a307.3536 307.3536 0 0 1 292.2496 212.3264 256.0512 256.0512 0 0 1 27.8016 488.3456v-84.6336a179.4048 179.4048 0 0 0 89.2928-145.408L921.6 563.2a179.3024 179.3024 0 0 0-126.464-171.3152l-9.3696-2.56-41.3696-10.2912-13.1584-40.6016a230.5024 230.5024 0 0 0-434.7904-10.3936l-3.584 10.3424-13.2096 40.6016-41.4208 10.24a179.3024 179.3024 0 0 0-46.2336 329.216v84.6336a256.1024 256.1024 0 0 1 27.7504-488.3456A307.2512 307.2512 0 0 1 512 102.4z m153.6 422.4H358.4a12.8 12.8 0 0 0-12.8 12.8v115.2h332.8V537.6a12.8 12.8 0 0 0-9.8816-12.4416L665.6 524.8z m-238.08 25.6a38.4 38.4 0 1 1 0 76.8 38.4 38.4 0 0 1 0-76.8z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.2 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M333.0048 113.664a153.6 153.6 0 0 1 153.6 153.6v174.1824a45.1584 45.1584 0 0 1-45.1584 45.1584H267.264a153.6 153.6 0 0 1-153.6-153.6V267.264a153.6 153.6 0 0 1 153.6-153.6h65.7408z m7.424 77.1584l-7.424-0.3584H267.264a76.8 76.8 0 0 0-76.4416 69.4272l-0.3584 7.3728v65.7408a76.8 76.8 0 0 0 69.4272 76.4416l7.3728 0.3584h142.5408V267.264a76.8 76.8 0 0 0-62.208-75.4176l-7.168-1.024zM441.4464 537.6c24.9344 0 45.1584 20.224 45.1584 45.1584v174.1824a153.6 153.6 0 0 1-153.6 153.6H267.264a153.6 153.6 0 0 1-153.6-153.6V691.2a153.6 153.6 0 0 1 153.6-153.6h174.1824z m-31.6416 76.7488L267.264 614.4a76.8 76.8 0 0 0-76.4416 69.4272l-0.3584 7.3728v65.7408a76.8 76.8 0 0 0 69.4272 76.4416l7.3728 0.3584h65.7408a76.8 76.8 0 0 0 76.4416-69.376l0.3584-7.424v-142.592z m347.136-500.6848a153.6 153.6 0 0 1 153.6 153.6v65.7408a153.6 153.6 0 0 1-153.6 153.6h-174.1824a45.1584 45.1584 0 0 1-45.1584-45.1584V267.264a153.6 153.6 0 0 1 153.6-153.6h65.7408z m0 76.8H691.2a76.8 76.8 0 0 0-76.4416 69.4272L614.4 267.264l-0.0512 142.5408h142.592a76.8 76.8 0 0 0 76.4416-69.376l0.3584-7.424V267.264a76.8 76.8 0 0 0-69.376-76.4416l-7.424-0.3584z m0 347.136a153.6 153.6 0 0 1 153.6 153.6v65.7408a153.6 153.6 0 0 1-153.6 153.6H691.2a153.6 153.6 0 0 1-153.6-153.6v-174.1824c0-24.9344 20.224-45.1584 45.1584-45.1584h174.1824zM614.4 756.9408a76.8 76.8 0 0 0 69.4272 76.4416l7.3728 0.3584h65.7408a76.8 76.8 0 0 0 76.4416-69.376l0.3584-7.424V691.2a76.8 76.8 0 0 0-69.376-76.4416L756.9408 614.4l-142.592-0.0512 0.0512 142.592z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.7 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M773.12 102.4a122.88 122.88 0 0 1 122.88 122.88v573.44a122.88 122.88 0 0 1-122.88 122.88H250.88a122.88 122.88 0 0 1-122.88-122.88V225.28A122.88 122.88 0 0 1 250.88 102.4h522.24z m0 76.8H250.88a46.08 46.08 0 0 0-45.7216 40.2944L204.8 225.28v573.44a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h522.24a46.08 46.08 0 0 0 45.7216-40.2944L819.2 798.72V225.28a46.08 46.08 0 0 0-40.2944-45.7216L773.12 179.2zM436.6336 247.1424c6.3488 0.2048 12.6976 0.9216 18.9952 2.1504 38.8096 7.5264 68.7104 32.256 89.8048 71.8336 19.6608 37.0176 26.88 67.4816 20.48 97.3824a99.4816 99.4816 0 0 1-30.5664 53.248l-0.9216 0.768 5.0176 8.3968 9.6768 14.4896 6.8608 9.9328 9.216 12.1856 6.8608 8.2432 3.7888-1.2288c50.688-15.5136 97.28 1.4336 140.544 47.616l7.6288 8.448c38.7584 45.8752 41.728 86.3744 26.2656 115.456l-3.2768 6.8096c-8.6528 16.0768-23.4496 33.1264-44.288 49.6128-29.3888 23.1424-71.0144 39.424-105.3696 38.0928l-8.448-0.8704-12.6976-1.5872a215.3984 215.3984 0 0 1-74.9568-27.4944c-47.9744-28.16-95.232-77.312-142.3872-152.4736-31.4368-50.0736-51.5072-89.4464-64.3584-130.3552a234.752 234.752 0 0 1-9.0112-124.8256 111.616 111.616 0 0 1 55.296-74.752l13.0048-7.0656c32.6144-17.92 55.6032-24.9856 82.8416-24.064z m-2.6624 76.7488c-11.3664-0.4096-21.7088 2.7648-43.3664 14.6432l-12.544 6.8608a34.5088 34.5088 0 0 0-17.3056 22.784c-5.632 27.9552-3.4816 56.832 6.6048 85.248 10.9568 34.816 28.3136 68.864 56.5248 113.92 71.0656 113.3568 117.248 140.4928 180.736 146.7904l-1.4848-0.2048 4.4544-0.256c11.1104-1.4336 27.8016-8.0384 41.1648-16.896l6.4-4.608c14.336-11.3152 22.2208-21.0432 25.9584-29.3376 2.56-4.864 2.048-11.5712-15.4624-32.256-28.3648-32.8192-47.9744-40.0384-70.912-31.4368l-8.1408 3.4304-6.656 3.3792a38.4 38.4 0 0 1-41.472-4.5568 104.0896 104.0896 0 0 1-8.192-7.424c-13.312-13.7216-25.6-28.3648-37.0688-44.3904l-15.9744-23.3472c-8.6528-13.312-16.4864-27.136-23.808-41.984l-3.4304-7.4752a38.4 38.4 0 0 1 16.7424-50.1248c16.0768-8.4992 22.2208-15.616 24.064-24.2176 1.9456-9.216-1.2288-22.7328-13.1584-45.2096-10.8544-20.2752-22.272-29.7472-36.5568-32.5632a46.4896 46.4896 0 0 0-7.168-0.768z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 2.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M798.72 102.4A122.88 122.88 0 0 1 921.6 225.28v573.44a122.88 122.88 0 0 1-122.88 122.88H225.28A122.88 122.88 0 0 1 102.4 798.72V225.28A122.88 122.88 0 0 1 225.28 102.4h573.44z m0 76.8H225.28a46.08 46.08 0 0 0-45.7216 40.2944L179.2 225.28v573.44a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h573.44a46.08 46.08 0 0 0 45.7216-40.2944l0.3584-5.7856V225.28a46.08 46.08 0 0 0-40.2944-45.7216L798.72 179.2z" fill="#595959" /><path d="M368.7936 248.32a38.4 38.4 0 0 1 38.0416 33.1776l0.3584 5.2224v204.032a102.4 102.4 0 0 1 0 189.8496V737.28a38.4 38.4 0 0 1-76.4928 5.2224l-0.3072-5.2224v-56.6784a102.4 102.4 0 0 1 0-189.9008V286.72a38.4 38.4 0 0 1 38.4-38.4z m0 311.7568a25.6 25.6 0 1 0 0 51.2 25.6 25.6 0 0 0 0-51.2zM655.36 248.32a38.4 38.4 0 0 1 38.0416 33.1776l0.3584 5.2224 0.0512 56.6272a102.4 102.4 0 0 1 0 189.8496L693.76 737.28a38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224v-204.032a102.4 102.4 0 0 1 0-189.952V286.72a38.4 38.4 0 0 1 38.4-38.4z m0 164.352a25.6 25.6 0 1 0 0 51.2 25.6 25.6 0 0 0 0-51.2z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M773.12 102.4a122.88 122.88 0 0 1 122.88 122.88v573.44a122.88 122.88 0 0 1-122.88 122.88H250.88a122.88 122.88 0 0 1-122.88-122.88v-84.5824H102.4a38.4 38.4 0 0 1-5.2224-76.3904L102.4 637.3888l25.6-0.0512v-87.04H102.4a38.4 38.4 0 0 1-5.2224-76.3904L102.4 473.5488l25.6-0.0512v-87.04H102.4a38.4 38.4 0 0 1-5.2224-76.3904L102.4 309.7088l25.6-0.0512V225.28A122.88 122.88 0 0 1 250.88 102.4h522.24z m0 76.8H250.88a46.08 46.08 0 0 0-45.7216 40.2944L204.8 225.28v84.4288a38.4 38.4 0 0 1 5.2224 76.4416L204.8 386.5088v87.04a38.4 38.4 0 0 1 5.2224 76.4416L204.8 550.3488v87.04a38.4 38.4 0 0 1 5.2224 76.4416L204.8 714.1888V798.72a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h522.24a46.08 46.08 0 0 0 45.7216-40.2944L819.2 798.72V225.28a46.08 46.08 0 0 0-40.2944-45.7216L773.12 179.2z m-235.52 104.96a140.8 140.8 0 0 1 106.6496 232.704A217.4464 217.4464 0 0 1 755.2 706.56a38.4 38.4 0 1 1-76.8 0 140.8 140.8 0 1 0-281.6 0 38.4 38.4 0 1 1-76.8 0c0-81.408 44.7488-152.4224 111.0016-189.7472A140.8 140.8 0 0 1 537.6 284.16z m0 76.8a64 64 0 1 0 0 128 64 64 0 0 0 0-128z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M652.8 43.52c45.568 0 83.2 34.048 88.8832 78.08l-0.1024-0.6656 44.3392 0.0512a122.88 122.88 0 0 1 122.88 122.88v573.44a122.88 122.88 0 0 1-122.88 122.88H238.08a122.88 122.88 0 0 1-122.88-122.88v-573.44a122.88 122.88 0 0 1 122.88-122.88l44.3392-0.0512-0.1024 0.6656A89.6 89.6 0 0 1 371.2 43.52z m86.7328 153.088a89.6 89.6 0 0 1-86.7328 67.072h-281.6a89.6 89.6 0 0 1-86.7328-67.072l0.3072 1.1776H238.08a46.08 46.08 0 0 0-45.7216 40.2944l-0.3584 5.7856v573.44a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h547.84a46.08 46.08 0 0 0 45.7216-40.2944l0.3584-5.7856v-573.44a46.08 46.08 0 0 0-40.2944-45.7216l-5.7856-0.3584h-46.6944zM512 335.36a140.8 140.8 0 0 1 104.192 235.52 191.6928 191.6928 0 0 1 87.808 161.28 38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224a115.2 115.2 0 1 0-230.4 0 38.4 38.4 0 1 1-76.8 0c0-67.6352 34.9696-127.1296 87.808-161.28A140.8 140.8 0 0 1 512 335.36z m0 76.8a64 64 0 1 0 0 128 64 64 0 0 0 0-128z m140.8-291.84h-281.6A12.8 12.8 0 0 0 358.4 133.12v40.96c0 7.0656 5.7344 12.8 12.8 12.8h281.6A12.8 12.8 0 0 0 665.6 174.08v-40.96a12.8 12.8 0 0 0-12.8-12.8z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M665.6 89.6a38.4 38.4 0 0 1 38.0416 33.1776l0.3584 5.2224v30.6688l120.32 0.0512a122.88 122.88 0 0 1 122.88 122.88v496.64a122.88 122.88 0 0 1-122.88 122.88H199.68a122.88 122.88 0 0 1-122.88-122.88V281.6a122.88 122.88 0 0 1 122.88-122.88l120.32-0.0512V128a38.4 38.4 0 0 1 76.4416-5.2224l0.3584 5.2224v30.6688h230.4V128a38.4 38.4 0 0 1 38.4-38.4zM320 235.4688L199.68 235.52a46.08 46.08 0 0 0-45.7216 40.2944L153.6 281.6v496.64a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h624.64a46.08 46.08 0 0 0 45.7216-40.2944L870.4 778.24V281.6a46.08 46.08 0 0 0-40.2944-45.7216L824.32 235.52l-120.32-0.0512v17.2032a38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224v-17.2032h-230.4v17.2032a38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224v-17.2032zM384 367.36a120.064 120.064 0 0 1 87.552 202.24 164.2496 164.2496 0 0 1 72.448 136.96 32 32 0 1 1-64 0c0-52.5312-39.0656-95.3344-88.3712-99.328l-7.6288 0.256c-2.56 0-5.12-0.1024-7.68-0.256-49.2544 3.9936-88.32 46.7968-88.32 99.328a32 32 0 1 1-64 0c0-57.2416 28.7744-107.776 72.4992-137.0624A120.064 120.064 0 0 1 384 367.36z m362.6496 209.5104a38.4 38.4 0 0 1 5.1712 76.4928l-5.1712 0.3072H614.4a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h132.2496zM384 431.36a56.064 56.064 0 0 0-6.5024 111.7696l6.5024-0.2048 6.5024 0.2048A56.064 56.064 0 0 0 384 431.36z m362.6496-8.0896a38.4 38.4 0 0 1 5.1712 76.4928l-5.1712 0.3072H614.4a38.4 38.4 0 0 1-5.2224-76.4416L614.4 423.2704h132.2496z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.7 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M716.8 460.8a256 256 0 1 1 0 512 256 256 0 0 1 0-512z m30.72-358.4A122.88 122.88 0 0 1 870.4 225.28l0.0512 196.2496a330.496 330.496 0 0 0-76.8-28.6208L793.6 225.28a46.08 46.08 0 0 0-40.2944-45.7216L747.52 179.2H225.28a46.08 46.08 0 0 0-45.7216 40.2944L179.2 225.28v573.44a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h184.2176c11.5712 27.7504 26.7776 53.5552 45.0048 76.8H225.28A122.88 122.88 0 0 1 102.4 798.72V225.28A122.88 122.88 0 0 1 225.28 102.4h522.24z m-30.72 435.2a179.2 179.2 0 1 0 0 358.4 179.2 179.2 0 0 0 0-358.4z m0 31.1296a38.4 38.4 0 0 1 38.0416 33.1776l0.3584 5.2224v78.5408h48.64a38.4 38.4 0 0 1 38.0416 33.28l0.3584 5.12a38.4 38.4 0 0 1-33.1776 38.0928l-5.2224 0.3584H716.8a38.4 38.4 0 0 1-38.0416-33.1776l-0.3584-5.2224v-116.992a38.4 38.4 0 0 1 38.4-38.4zM431.2064 435.2a38.4 38.4 0 0 1 5.2224 76.4416L431.2064 512h-153.6a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h153.6z m177.3568-153.6a38.4 38.4 0 0 1 5.2224 76.4416L608.5632 358.4H277.6064a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h330.9568z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M665.6 115.2a38.4 38.4 0 0 1 38.0416 33.1776L704 153.6v30.6688l94.72 0.0512A122.88 122.88 0 0 1 921.6 307.2v471.04a122.88 122.88 0 0 1-122.88 122.88H225.28A122.88 122.88 0 0 1 102.4 778.24V307.2a122.88 122.88 0 0 1 122.88-122.88l94.72-0.0512V153.6a38.4 38.4 0 0 1 76.4416-5.2224L396.8 153.6v30.6688h230.4V153.6a38.4 38.4 0 0 1 38.4-38.4zM320 261.0688L225.28 261.12a46.08 46.08 0 0 0-45.7216 40.2944L179.2 307.2v471.04a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h573.44a46.08 46.08 0 0 0 45.7216-40.2944l0.3584-5.7856V307.2a46.08 46.08 0 0 0-40.2944-45.7216L798.72 261.12l-94.72-0.0512v17.2032a38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224v-17.2032h-230.4v17.2032a38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224v-17.2032zM307.2 588.8a51.2 51.2 0 1 1 0 102.4 51.2 51.2 0 0 1 0-102.4z m409.6 12.544a38.4 38.4 0 0 1 5.2224 76.4416l-5.2224 0.3584H460.8a38.4 38.4 0 0 1-5.2224-76.4416L460.8 601.344h256zM307.2 424.96a51.2 51.2 0 1 1 0 102.4 51.2 51.2 0 0 1 0-102.4z m409.6 12.544a38.4 38.4 0 0 1 5.2224 76.4416l-5.2224 0.3584H460.8a38.4 38.4 0 0 1-5.2224-76.4416L460.8 437.504h256z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M495.0528 78.1824a38.4 38.4 0 0 1 33.8944 0l384 189.0304a41.3184 41.3184 0 0 1 6.4 3.9424l1.536 1.28a26.4192 26.4192 0 0 1 2.4576 2.2016l0.9728 1.024a24.9344 24.9344 0 0 1 2.304 2.7136l0.7168 1.024a34.816 34.816 0 0 1 4.096 7.2192l1.6384 4.9152a38.912 38.912 0 0 1 1.3312 10.1376v441.1392a38.4 38.4 0 0 1-21.4528 34.4576l-384 189.0304a39.0656 39.0656 0 0 1-9.728 3.2768l-4.7616 0.6144h-4.9152l-4.8128-0.6144a37.888 37.888 0 0 1-9.472-3.1744l-0.2048-0.1024-384-189.0304a38.4 38.4 0 0 1-21.4528-34.4576V301.6704c0-3.584 0.512-6.9632 1.3312-10.1376l1.6896-4.9152a37.5808 37.5808 0 0 1 3.9936-7.168l0.8192-1.024a25.3952 25.3952 0 0 1 2.2016-2.7648l1.024-1.024a24.2176 24.2176 0 0 1 2.4064-2.2016l1.6384-1.28a37.0688 37.0688 0 0 1 6.3488-3.9424l-4.096 2.3552a39.0656 39.0656 0 0 1 3.072-1.8432l1.024-0.512zM166.4 363.4176v355.4304l307.2 151.296v-355.5328l-307.2-151.1936z m691.2 0l-307.2 151.1936v355.5328l307.2-151.296V363.4176zM512 155.392L214.9376 301.6704 512 447.8976l297.0112-146.2272L512 155.392z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| After Width: | Height: | Size: 4.9 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M579.2256 95.1808l286.72 187.4432A122.88 122.88 0 0 1 921.6 385.536V798.72a122.88 122.88 0 0 1-122.88 122.88H225.28A122.88 122.88 0 0 1 102.4 798.72V385.4848A122.88 122.88 0 0 1 158.0544 282.624l286.72-187.4432a122.88 122.88 0 0 1 134.4512 0zM492.032 156.4672l-5.2736 2.9696-286.72 187.4944a46.08 46.08 0 0 0-20.48 32.768L179.2 385.536V798.72a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h573.44a46.08 46.08 0 0 0 45.7216-40.2944l0.3584-5.7856V385.4848a46.08 46.08 0 0 0-16.2304-35.1232l-4.608-3.4304-286.72-187.4944a46.08 46.08 0 0 0-45.2096-2.9696z m202.1376 516.4544a38.4 38.4 0 0 1 0 76.8H329.8304a38.4 38.4 0 1 1 0-76.8h364.3392z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 928 B | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M870.4 832a38.4 38.4 0 0 1 5.2224 76.4416L870.4 908.8H153.6a38.4 38.4 0 0 1-5.2224-76.4416L153.6 832h716.8z m-71.68-716.8a122.88 122.88 0 0 1 122.88 122.88v419.84a122.88 122.88 0 0 1-122.88 122.88H225.28a122.88 122.88 0 0 1-122.88-122.88v-419.84a122.88 122.88 0 0 1 122.88-122.88h573.44z m0 76.8H225.28a46.08 46.08 0 0 0-45.7216 40.2944L179.2 238.08v419.84a46.08 46.08 0 0 0 40.2944 45.7216l5.7856 0.3584h573.44a46.08 46.08 0 0 0 45.7216-40.2944l0.3584-5.7856v-419.84a46.08 46.08 0 0 0-40.2944-45.7216L798.72 192z m-13.824 98.304a38.4 38.4 0 0 1 3.7376 49.9712l-3.7376 4.3008-222.0032 222.0032a38.4 38.4 0 0 1-50.0224 3.7376l-4.3008-3.7376-108.544-108.544-108.544 108.544a38.4 38.4 0 0 1-50.0224 3.7376l-4.3008-3.7376a38.4 38.4 0 0 1-3.7376-49.9712l3.7376-4.3008 135.68-135.7312a38.4 38.4 0 0 1 50.0224-3.7376l4.3008 3.7376 108.544 108.544 194.8672-194.816a38.4 38.4 0 0 1 54.272 0z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.1 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M481.536 199.4752a38.4 38.4 0 0 1 39.0656 38.4l-0.0512 300.3904h300.4416a38.4 38.4 0 0 1 38.0416 33.2288l0.3584 5.1712A377.2416 377.2416 0 1 1 469.6064 199.68z m-37.7856 79.2576l-6.144 0.8192a300.544 300.544 0 0 0 44.544 597.5552 300.4928 300.4928 0 0 0 297.216-256l0.7168-6.0416H482.2016a38.4 38.4 0 0 1-38.0928-33.1776l-0.3072-5.2224-0.0512-297.9328z m171.776-204.4416l5.0688 0.0512a371.4048 371.4048 0 0 1 342.528 357.5808l0.2048 11.8784a38.4 38.4 0 0 1-38.4 39.0656h-307.2a38.4 38.4 0 0 1-38.4-38.4V112.64a38.4 38.4 0 0 1 41.2672-38.2976z m40.5504 82.7904v248.9856h227.84l-0.8704-7.0656a294.7584 294.7584 0 0 0-222.3616-240.896l-4.608-1.024z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 937 B | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 153.6a307.3536 307.3536 0 0 1 292.2496 212.3264 256.0512 256.0512 0 0 1-36.1984 503.1936L768 870.4H256v-1.28a256 256 0 0 1-36.2496-503.1936A307.2512 307.2512 0 0 1 512 153.6z m0 76.8a230.4512 230.4512 0 0 0-215.552 148.8384l-3.584 10.3424-13.2096 40.6016-41.4208 10.24a179.3024 179.3024 0 0 0 15.6672 351.0784l9.728 1.2288 9.216 0.8704h478.3104l9.2672-0.8704a179.2 179.2 0 0 0 160.9216-168.4992L921.6 614.4a179.3024 179.3024 0 0 0-126.464-171.3152l-9.3696-2.56-41.3696-10.2912-13.1584-40.6016A230.5024 230.5024 0 0 0 512 230.4z" fill="#595959" /><path d="M512 371.2a38.4 38.4 0 0 1 38.0416 33.1776L550.4 409.6v170.2912l27.2896-27.2896a38.4 38.4 0 0 1 50.3808-3.4304l3.9424 3.4304a38.4 38.4 0 0 1 3.4304 50.3808l-3.4304 3.9424-94.1056 94.1056a38.4 38.4 0 0 1-50.3808 3.4304l-3.9424-3.4304-94.1568-94.1056a38.4 38.4 0 0 1 50.3808-57.7536l3.9424 3.4304 29.8496 29.8496V409.6a38.4 38.4 0 0 1 38.4-38.4z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.2 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M358.4 205.4144c19.2 0 37.632 3.2256 54.784 9.0624a267.3664 267.3664 0 0 0-31.5904 70.656A91.904 91.904 0 0 0 358.4 282.2656c-49.664 0-89.6 39.0656-89.6 86.784S308.736 455.68 358.4 455.68a92.16 92.16 0 0 0 29.4912-4.8128c8.96 24.576 21.4528 47.4624 36.8128 68.096-20.2752 8.704-42.752 13.5168-66.304 13.5168-91.6992 0-166.4-73.0112-166.4-163.5328S266.7008 205.4144 358.4 205.4144zM283.5456 633.5488H227.5328a48.384 48.384 0 0 0-48.0256 42.7008l-0.3072 5.632v43.2128a5.12 5.12 0 0 0 3.1232 4.7104l1.9968 0.4096h72.2944a234.1376 234.1376 0 0 0-0.3584 12.1856v51.2c0 4.5056 0.2048 9.0112 0.512 13.4144H184.32a81.92 81.92 0 0 1-81.92-81.92v-43.2128a125.1328 125.1328 0 0 1 125.1328-125.184h122.7264a231.4752 231.4752 0 0 0-66.7136 76.8zM793.856 588.8a153.6 153.6 0 0 1 153.6 153.6v51.2a102.4 102.4 0 0 1-102.4 102.4h-409.6a102.4 102.4 0 0 1-102.4-102.4v-51.2a153.6 153.6 0 0 1 153.6-153.6h307.2z m0 76.8h-307.2a76.8 76.8 0 0 0-76.4416 69.4272l-0.3584 7.3728v51.2a25.6 25.6 0 0 0 20.992 25.1904l4.608 0.4096h409.6a25.6 25.6 0 0 0 25.1904-20.992l0.4096-4.608v-51.2a76.8 76.8 0 0 0-69.376-76.4416L793.856 665.6zM640.256 166.4a192 192 0 1 0 0 384 192 192 0 0 0 0-384z m0 76.8a115.2 115.2 0 1 1 0 230.4 115.2 115.2 0 0 1 0-230.4z" fill="#595959" /><path d="M793.856 588.8a153.6 153.6 0 0 1 153.6 153.6v51.2a102.4 102.4 0 0 1-102.4 102.4h-409.6a102.4 102.4 0 0 1-102.4-102.4v-51.2a153.6 153.6 0 0 1 153.6-153.6h307.2z m0 76.8h-307.2a76.8 76.8 0 0 0-76.4416 69.4272l-0.3584 7.3728v51.2a25.6 25.6 0 0 0 20.992 25.1904l4.608 0.4096h409.6a25.6 25.6 0 0 0 25.1904-20.992l0.4096-4.608v-51.2a76.8 76.8 0 0 0-69.376-76.4416L793.856 665.6z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.9 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M711.9872 115.2l8.192 0.256a120.0128 120.0128 0 0 1 111.8208 119.7568l-0.0512-1.9968h10.2912A130.56 130.56 0 0 1 972.8 363.776v427.264A130.56 130.56 0 0 1 842.24 921.6H232.96A130.56 130.56 0 0 1 102.4 791.04V235.2128l0.256-8.192A120.0128 120.0128 0 0 1 222.4128 115.2h489.5744z m130.2528 194.816H232.96c-27.6992 0-50.5344 20.992-53.4528 47.9232l-0.3072 5.8368v427.264c0 27.6992 20.992 50.5344 47.9232 53.4528l5.8368 0.3072h609.28c27.6992 0 50.5344-20.992 53.4528-47.9232l0.3072-5.8368v-48.4352h-220.416a165.2224 165.2224 0 0 1 0-330.3936H896v-48.4352c0-27.648-20.992-50.4832-47.9232-53.4016l-5.8368-0.3584z m53.76 178.9952h-220.416c-46.2336 0-84.1728 35.5328-88.064 80.7936l-0.3072 7.6288c0 46.2336 35.5328 84.224 80.7424 88.064l7.68 0.3072H896V489.0112z m-211.2 50.1248a38.4 38.4 0 1 1 0 76.8 38.4 38.4 0 0 1 0-76.8z m27.1872-347.136H222.4128l-5.4272 0.3584a43.2128 43.2128 0 0 0-37.7856 42.8544v9.5744a130.048 130.048 0 0 1 53.76-11.5712h522.0864l-0.2048-3.4304a43.2128 43.2128 0 0 0-37.376-37.4272l-5.4784-0.3584z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 51.2c19.5584 0 48.2304 6.656 85.9136 19.968l21.4528 7.9872 23.2448 9.216 12.288 5.12 25.9584 11.264 27.7504 12.5952 29.5424 13.8752 31.3344 15.2064 33.1264 16.5376 53.0432 27.2896A122.88 122.88 0 0 1 921.6 299.1104V537.6a409.6 409.6 0 0 1-396.8 409.3952L512 947.2a409.6 409.6 0 0 1-409.6-409.6V299.1104a122.88 122.88 0 0 1 65.9456-108.8512l35.84-18.5344 33.9968-17.152 32.256-15.872 30.4128-14.592 28.672-13.2096 26.8288-11.9296c8.6528-3.7376 16.9984-7.2704 25.0368-10.5472l23.2448-9.2672 21.504-7.936C463.7184 57.856 492.3904 51.2 512 51.2z m0 76.8c-5.632 0-13.4144 1.2288-23.1936 3.6864L476.16 135.168l-14.4896 4.7104-16.384 5.8368-28.0064 10.9056-31.8976 13.5168-23.4496 10.4448-38.2976 17.8176-27.5456 13.312-29.184 14.336-30.72 15.616-32.256 16.6912a46.08 46.08 0 0 0-24.2688 34.4064l-0.4608 6.3488V537.6c0 179.8144 142.592 326.2976 319.744 332.5952l11.8784 0.2048 11.5712-0.1536a332.8 332.8 0 0 0 322.2016-320.7168l0.2048-11.9296V299.1104a46.0288 46.0288 0 0 0-24.6784-40.7552l-32.256-16.6912-45.568-22.9376-28.3648-13.824-39.5264-18.688a2152.5504 2152.5504 0 0 0-12.288-5.632l-23.5008-10.4448-31.8976-13.5168-28.0064-10.9056-16.384-5.8368-14.4896-4.7104-12.6464-3.4816A101.6832 101.6832 0 0 0 512 128z m39.0656 176.3328a38.4 38.4 0 0 1 17.2032 47.4624l-2.2016 4.7104-70.8608 127.8976H593.92a38.4 38.4 0 0 1 35.84 52.1728l-2.2528 4.864-102.4 184.7808a38.4 38.4 0 0 1-69.376-32.512l2.2016-4.7616 70.7584-127.744H430.08a38.4 38.4 0 0 1-35.84-52.1216l2.2528-4.864 102.4-184.8832a38.4 38.4 0 0 1 52.224-15.0016z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.8 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M824.32 128a122.88 122.88 0 0 1 122.88 122.88v522.24a122.88 122.88 0 0 1-122.88 122.88H199.68a122.88 122.88 0 0 1-122.88-122.88V250.88a122.88 122.88 0 0 1 122.88-122.88h624.64z m0 76.8H199.68a46.08 46.08 0 0 0-45.7216 40.2944L153.6 250.88v522.24a46.08 46.08 0 0 0 40.2944 45.7216L199.68 819.2h624.64a46.08 46.08 0 0 0 45.7216-40.2944L870.4 773.12V250.88a46.08 46.08 0 0 0-40.2944-45.7216L824.32 204.8zM512 350.72a38.4 38.4 0 0 1 5.2224 76.4416L512 427.52l-79.36-0.0512v235.5712a38.4 38.4 0 0 1-76.4416 5.2224l-0.3584-5.2224V427.4688L276.48 427.52a38.4 38.4 0 0 1-5.2224-76.4416L276.48 350.72H512z m234.6496 256a38.4 38.4 0 0 1 5.1712 76.4416l-5.1712 0.3584h-102.4a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h102.4z m0-122.4192a38.4 38.4 0 0 1 5.1712 76.4416l-5.1712 0.3584h-102.4a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h102.4z m0-122.4704a38.4 38.4 0 0 1 5.1712 76.4928l-5.1712 0.3072h-102.4a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h102.4z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.2 KiB | 
| @@ -0,0 +1 @@ | |||||||
|  | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M680.3456 935.7312l-10.1888 0.256H522.24a38.4 38.4 0 0 1-5.2224-76.4416l5.2224-0.3584h147.968c36.352 0 68.7616-16.8448 89.9072-43.1616h49.5104c14.2336 0 28.0064-2.0992 40.96-6.144a192 192 0 0 1-170.24 125.8496zM531.2 115.2a330.9568 330.9568 0 0 1 330.752 319.0784l0.2048 11.8784 0.0512 17.408a137.216 137.216 0 0 0-52.6336-10.4448l-24.2176-0.0512v-6.912a254.1568 254.1568 0 0 0-243.1488-253.952l-11.008-0.2048h-38.4a254.1568 254.1568 0 0 0-253.952 243.1488l-0.2048 11.008v6.912l-24.2688 0.0512a137.216 137.216 0 0 0-52.6336 10.4448l0.1024-17.408a330.9568 330.9568 0 0 1 319.0784-330.752l11.8784-0.2048h38.4z" fill="#595959" /><path d="M262.4 453.12h-48.0256A137.5744 137.5744 0 0 0 76.8 590.7456v87.7056a137.5744 137.5744 0 0 0 137.6256 137.6256h47.9744a89.6 89.6 0 0 0 89.6-89.6V542.72a89.6 89.6 0 0 0-89.6-89.6z m-48.0256 76.8h48.0256a12.8 12.8 0 0 1 12.8 12.8v183.7568a12.8 12.8 0 0 1-12.8 12.8h-48.0256A60.8256 60.8256 0 0 1 153.6 678.4v-87.7056c0-33.5872 27.2384-60.8256 60.8256-60.8256zM761.6 453.12h48.0256a137.5744 137.5744 0 0 1 137.5744 137.6256v87.7056a137.5744 137.5744 0 0 1-137.6256 137.6256h-47.9744a89.6 89.6 0 0 1-89.6-89.6V542.72c0-49.4592 40.1408-89.6 89.6-89.6z m48.0256 76.8h-48.0256a12.8 12.8 0 0 0-12.8 12.8v183.7568c0 7.0656 5.7344 12.8 12.8 12.8h48.0256c33.536 0 60.7744-27.2384 60.7744-60.8256v-87.7056c0-33.5872-27.2384-60.8256-60.8256-60.8256z" fill="#595959" /></svg> | ||||||
| After Width: | Height: | Size: 1.6 KiB | 
							
								
								
									
										22
									
								
								企业级管理系统/web/admin_system/src/components/svg/svg.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,22 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2023-01-06 20:49:04 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2023-01-07 12:17:28 | ||||||
|  |  * @FilePath: \admin_system\src\components\svg\svg.js | ||||||
|  |  * @Description: 导入svg图标 | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | const context = require.context("./icons", false, /\.svg$/); | ||||||
|  | console.log(context); | ||||||
|  |  | ||||||
|  | function requireAll(context) | ||||||
|  | { | ||||||
|  |     return context.keys().map(context); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | const svgMap = requireAll(context); | ||||||
|  |  | ||||||
|  | console.log("导入svg"); | ||||||
|  | console.log(svgMap); | ||||||
							
								
								
									
										24
									
								
								企业级管理系统/web/admin_system/src/css/colors.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,24 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-11-12 23:22:59 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-05 01:07:18 | ||||||
|  |  * @FilePath: \hello-cli\src\assets\css\colors.css | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | html { | ||||||
|  |     --backupground-color: #f4f5f7ff; | ||||||
|  |     --btn-color-blue: #307dbe; | ||||||
|  |     --btn-color-yellow: #f7b24d; | ||||||
|  |     --btn-color-green: #5bad60; | ||||||
|  |     --btn-color-red: #e56651; | ||||||
|  |     --btn-font-color: #fff; | ||||||
|  |  | ||||||
|  |     --input-focus-color: #e56651; | ||||||
|  |  | ||||||
|  |     /* 标题栏背景色 */ | ||||||
|  |     --banner-background-color: #1d74b2; | ||||||
|  | } | ||||||
							
								
								
									
										17
									
								
								企业级管理系统/web/admin_system/src/css/global.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,17 @@ | |||||||
|  | /* | ||||||
|  |  * @Author: Kane | ||||||
|  |  * @Date: 2022-12-05 00:07:49 | ||||||
|  |  * @LastEditors: Kane | ||||||
|  |  * @LastEditTime: 2022-12-05 00:48:04 | ||||||
|  |  * @FilePath: \hello-cli\src\assets\css\global.css | ||||||
|  |  * @Description:  | ||||||
|  |  *  | ||||||
|  |  * Copyright (c) ${2022} by Kane, All Rights Reserved.  | ||||||
|  |  */ | ||||||
|  | html, | ||||||
|  | body, | ||||||
|  | #app { | ||||||
|  |     /* padding: 0px; */ | ||||||
|  |     margin: 0px; | ||||||
|  |     overflow: hidden; | ||||||
|  | } | ||||||