diff --git a/UI2.0/.editorconfig b/UI2.0/.editorconfig new file mode 100644 index 0000000000000000000000000000000000000000..9d08a1a828a3bd2d60de3952744df29f9add27fa --- /dev/null +++ b/UI2.0/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true diff --git a/UI2.0/.gitignore b/UI2.0/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..eda972c4db1c5ae573adf8bd12512918e4e193a9 --- /dev/null +++ b/UI2.0/.gitignore @@ -0,0 +1,36 @@ +package-lock.json +.vscode +.DS_Store +.thumbs.db +node_modules + + +# Quasar core related directories +.quasar +/dist + +# Cordova related directories and files +/src-cordova/node_modules +/src-cordova/platforms +/src-cordova/plugins +/src-cordova/www + +# Capacitor related directories and files +/src-capacitor/www +/src-capacitor/node_modules + +# BEX related directories and files +/src-bex/www +/src-bex/js/core + +# Log files +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Editor directories and files +.idea +*.suo +*.ntvs* +*.njsproj +*.sln diff --git a/UI2.0/.postcssrc.js b/UI2.0/.postcssrc.js new file mode 100644 index 0000000000000000000000000000000000000000..1174fe52b74b2c8f3cb52da36e85b19ccd0e6c02 --- /dev/null +++ b/UI2.0/.postcssrc.js @@ -0,0 +1,8 @@ +// https://github.com/michael-ciniawsky/postcss-load-config + +module.exports = { + plugins: [ + // to edit target browsers: use "browserslist" field in package.json + require('autoprefixer') + ] +} diff --git a/UI2.0/README.md b/UI2.0/README.md new file mode 100644 index 0000000000000000000000000000000000000000..8463df3981d4b7a2dc835be29cf9d45eb11d6810 --- /dev/null +++ b/UI2.0/README.md @@ -0,0 +1,24 @@ +# Quasar App (a-tune-ui-todo) + +A Quasar Framework app + +## Install the dependencies +```bash +npm install +``` + +### Start the app in development mode (hot-code reloading, error reporting, etc.) +```bash +quasar dev +``` + +### The result of the diagram +![Image](./img/sample.JPG) + +### Build the app for production +```bash +quasar build +``` + +### Customize the configuration +See [Configuring quasar.conf.js](https://quasar.dev/quasar-cli/quasar-conf-js). diff --git a/UI2.0/babel.config.js b/UI2.0/babel.config.js new file mode 100644 index 0000000000000000000000000000000000000000..c51e84dbd871fb55f8579f200501e4395188ceff --- /dev/null +++ b/UI2.0/babel.config.js @@ -0,0 +1,15 @@ + + +module.exports = api => { + return { + presets: [ + [ + '@quasar/babel-preset-app', + api.caller(caller => caller && caller.target === 'node') + ? { targets: { node: 'current' } } + : {} + ] + ] + } +} + diff --git a/UI2.0/img/sample.JPG b/UI2.0/img/sample.JPG new file mode 100644 index 0000000000000000000000000000000000000000..bb7c5b8a721f6f8b800450c8b9e4104cbde8ebcd Binary files /dev/null and b/UI2.0/img/sample.JPG differ diff --git a/UI2.0/jsconfig.json b/UI2.0/jsconfig.json new file mode 100644 index 0000000000000000000000000000000000000000..6318e483235be4da1931c1f17a0e0f68703bcabf --- /dev/null +++ b/UI2.0/jsconfig.json @@ -0,0 +1,36 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "paths": { + "src/*": [ + "src/*" + ], + "app/*": [ + "*" + ], + "components/*": [ + "src/components/*" + ], + "layouts/*": [ + "src/layouts/*" + ], + "pages/*": [ + "src/pages/*" + ], + "assets/*": [ + "src/assets/*" + ], + "boot/*": [ + "src/boot/*" + ], + "vue$": [ + "node_modules/vue/dist/vue.runtime.esm-bundler.js" + ] + } + }, + "exclude": [ + "dist", + ".quasar", + "node_modules" + ] +} diff --git a/UI2.0/package.json b/UI2.0/package.json new file mode 100644 index 0000000000000000000000000000000000000000..f850cd8eaae1a4accd8a3569603c39c830b46588 --- /dev/null +++ b/UI2.0/package.json @@ -0,0 +1,39 @@ +{ + "name": "a-tune-ui-todo", + "version": "0.0.1", + "description": "A Quasar Framework app", + "productName": "Quasar App", + "author": "yang-ting-chen ", + "private": true, + "scripts": { + "test": "echo \"No test specified\" && exit 0" + }, + "dependencies": { + "@quasar/extras": "^1.0.0", + "core-js": "^3.6.5", + "echarts": "^5.3.0", + "quasar": "^2.0.0", + "vue": "^3.0.0", + "vue-router": "^4.0.0", + "vuex": "^4.0.1" + }, + "devDependencies": { + "@quasar/app": "^3.0.0" + }, + "browserslist": [ + "last 10 Chrome versions", + "last 10 Firefox versions", + "last 4 Edge versions", + "last 7 Safari versions", + "last 8 Android versions", + "last 8 ChromeAndroid versions", + "last 8 FirefoxAndroid versions", + "last 10 iOS versions", + "last 5 Opera versions" + ], + "engines": { + "node": ">= 12.22.1", + "npm": ">= 6.13.4", + "yarn": ">= 1.21.1" + } +} diff --git a/UI2.0/public/favicon.ico b/UI2.0/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..ae7bbdb712f8ce9fe49761b68ef3a2d4c51606f9 Binary files /dev/null and b/UI2.0/public/favicon.ico differ diff --git a/UI2.0/public/icons/favicon-128x128.png b/UI2.0/public/icons/favicon-128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..14011761929f4ffbef81be318a347c0032eb6f42 Binary files /dev/null and b/UI2.0/public/icons/favicon-128x128.png differ diff --git a/UI2.0/public/icons/favicon-16x16.png b/UI2.0/public/icons/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..679063a314fd3c64d24ce2d10fa28996381e65ef Binary files /dev/null and b/UI2.0/public/icons/favicon-16x16.png differ diff --git a/UI2.0/public/icons/favicon-32x32.png b/UI2.0/public/icons/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..fd1fbc6f1b21f4513d47cc7e2e40699fb731b15f Binary files /dev/null and b/UI2.0/public/icons/favicon-32x32.png differ diff --git a/UI2.0/public/icons/favicon-96x96.png b/UI2.0/public/icons/favicon-96x96.png new file mode 100644 index 0000000000000000000000000000000000000000..e93b80a09c82e1c1a0be4dfd7fdd032e76f77096 Binary files /dev/null and b/UI2.0/public/icons/favicon-96x96.png differ diff --git a/UI2.0/quasar.conf.js b/UI2.0/quasar.conf.js new file mode 100644 index 0000000000000000000000000000000000000000..e3f1fb6c49b28ac127a095329ea6cc0259b88f4c --- /dev/null +++ b/UI2.0/quasar.conf.js @@ -0,0 +1,221 @@ +/* + * This file runs in a Node context (it's NOT transpiled by Babel), so use only + * the ES6 features that are supported by your Node version. https://node.green/ + */ + +// Configuration for your app +// https://quasar.dev/quasar-cli/quasar-conf-js + +const { configure } = require('quasar/wrappers'); + +module.exports = configure(function (ctx) { + return { + // https://quasar.dev/quasar-cli/supporting-ts + supportTS: false, + + // https://quasar.dev/quasar-cli/prefetch-feature + // preFetch: true, + + // app boot file (/src/boot) + // --> boot files are part of "main.js" + // https://quasar.dev/quasar-cli/boot-files + boot: [ + ], + + // https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css + css: [ + 'app.scss' + ], + + // https://github.com/quasarframework/quasar/tree/dev/extras + extras: [ + // 'ionicons-v4', + // 'mdi-v5', + // 'fontawesome-v5', + // 'eva-icons', + // 'themify', + // 'line-awesome', + // 'roboto-font-latin-ext', // this or either 'roboto-font', NEVER both! + + 'roboto-font', // optional, you are not bound to it + 'material-icons', // optional, you are not bound to it + ], + + // Full list of options: https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-build + build: { + vueRouterMode: 'hash', // available values: 'hash', 'history' + + // transpile: false, + // publicPath: '/', + + // Add dependencies for transpiling with Babel (Array of string/regex) + // (from node_modules, which are by default not transpiled). + // Applies only if "transpile" is set to true. + // transpileDependencies: [], + + // rtl: true, // https://quasar.dev/options/rtl-support + // preloadChunks: true, + // showProgress: false, + // gzip: true, + // analyze: true, + + // Options below are automatically set depending on the env, set them if you want to override + // extractCSS: false, + + // https://quasar.dev/quasar-cli/handling-webpack + // "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain + chainWebpack (/* chain */) { + // + }, + }, + + // Full list of options: https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-devServer + devServer: { + server: { + type: 'http' + }, + port: 8080, + open: true // opens browser window automatically + }, + + // https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-framework + framework: { + config: {}, + + // iconSet: 'material-icons', // Quasar icon set + // lang: 'en-US', // Quasar language pack + + // For special cases outside of where the auto-import strategy can have an impact + // (like functional components as one of the examples), + // you can manually specify Quasar components/directives to be available everywhere: + // + // components: [], + // directives: [], + + // Quasar plugins + plugins: [] + }, + + // animations: 'all', // --- includes all animations + // https://quasar.dev/options/animations + animations: [], + + // https://quasar.dev/quasar-cli/developing-ssr/configuring-ssr + ssr: { + pwa: false, + + // manualStoreHydration: true, + // manualPostHydrationTrigger: true, + + prodPort: 3000, // The default port that the production server should use + // (gets superseded if process.env.PORT is specified at runtime) + + maxAge: 1000 * 60 * 60 * 24 * 30, + // Tell browser when a file from the server should expire from cache (in ms) + + chainWebpackWebserver (/* chain */) { + // + }, + + middlewares: [ + ctx.prod ? 'compression' : '', + 'render' // keep this as last one + ] + }, + + // https://quasar.dev/quasar-cli/developing-pwa/configuring-pwa + pwa: { + workboxPluginMode: 'GenerateSW', // 'GenerateSW' or 'InjectManifest' + workboxOptions: {}, // only for GenerateSW + + // for the custom service worker ONLY (/src-pwa/custom-service-worker.[js|ts]) + // if using workbox in InjectManifest mode + chainWebpackCustomSW (/* chain */) { + // + }, + + manifest: { + name: `Quasar App`, + short_name: `Quasar App`, + description: `A Quasar Framework app`, + display: 'standalone', + orientation: 'portrait', + background_color: '#ffffff', + theme_color: '#027be3', + icons: [ + { + src: 'icons/icon-128x128.png', + sizes: '128x128', + type: 'image/png' + }, + { + src: 'icons/icon-192x192.png', + sizes: '192x192', + type: 'image/png' + }, + { + src: 'icons/icon-256x256.png', + sizes: '256x256', + type: 'image/png' + }, + { + src: 'icons/icon-384x384.png', + sizes: '384x384', + type: 'image/png' + }, + { + src: 'icons/icon-512x512.png', + sizes: '512x512', + type: 'image/png' + } + ] + } + }, + + // Full list of options: https://quasar.dev/quasar-cli/developing-cordova-apps/configuring-cordova + cordova: { + // noIosLegacyBuildFlag: true, // uncomment only if you know what you are doing + }, + + // Full list of options: https://quasar.dev/quasar-cli/developing-capacitor-apps/configuring-capacitor + capacitor: { + hideSplashscreen: true + }, + + // Full list of options: https://quasar.dev/quasar-cli/developing-electron-apps/configuring-electron + electron: { + bundler: 'packager', // 'packager' or 'builder' + + packager: { + // https://github.com/electron-userland/electron-packager/blob/master/docs/api.md#options + + // OS X / Mac App Store + // appBundleId: '', + // appCategoryType: '', + // osxSign: '', + // protocol: 'myapp://path', + + // Windows only + // win32metadata: { ... } + }, + + builder: { + // https://www.electron.build/configuration/configuration + + appId: 'a-tune-ui-todo' + }, + + // "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain + chainWebpackMain (/* chain */) { + // do something with the Electron main process Webpack cfg + // extendWebpackMain also available besides this chainWebpackMain + }, + + // "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain + chainWebpackPreload (/* chain */) { + // do something with the Electron main process Webpack cfg + // extendWebpackPreload also available besides this chainWebpackPreload + }, + } + } +}); diff --git a/UI2.0/src/App.vue b/UI2.0/src/App.vue new file mode 100644 index 0000000000000000000000000000000000000000..f391960091a7141b2653185ea2485ce5e2f7b6af --- /dev/null +++ b/UI2.0/src/App.vue @@ -0,0 +1,10 @@ + + diff --git a/UI2.0/src/README.md b/UI2.0/src/README.md new file mode 100644 index 0000000000000000000000000000000000000000..950c7fad14a395684a94647f6499af5c9a0e5bb0 --- /dev/null +++ b/UI2.0/src/README.md @@ -0,0 +1,6 @@ +# 当前存在问题: +1. “支持14大类50款应用调优”模块的图片下方的“56px”的距离无法实现,因为超过了这一模块的整体界面 +2. 字体问题 +3. 执行命令界面的textbox点击后全屏还未实现 +4. 控制面板的表格分页还未实现 +5. 控制面板添加卡片动作设置有问题 \ No newline at end of file diff --git a/UI2.0/src/assets/contact-us/close-default.png b/UI2.0/src/assets/contact-us/close-default.png new file mode 100644 index 0000000000000000000000000000000000000000..661020565789f4622408485f38dc8d02da366701 Binary files /dev/null and b/UI2.0/src/assets/contact-us/close-default.png differ diff --git a/UI2.0/src/assets/contact-us/close-highlight.png b/UI2.0/src/assets/contact-us/close-highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..6985c68f7a38bb4a6635f19da5aeed7fe5798c9b Binary files /dev/null and b/UI2.0/src/assets/contact-us/close-highlight.png differ diff --git a/UI2.0/src/assets/control-panel/1.png b/UI2.0/src/assets/control-panel/1.png new file mode 100644 index 0000000000000000000000000000000000000000..c06e7b51cdaaa06e4c321f797f2003014ea429d4 Binary files /dev/null and b/UI2.0/src/assets/control-panel/1.png differ diff --git a/UI2.0/src/assets/control-panel/10.png b/UI2.0/src/assets/control-panel/10.png new file mode 100644 index 0000000000000000000000000000000000000000..941e3c0354525a16effe16fe46d66845c8110d47 Binary files /dev/null and b/UI2.0/src/assets/control-panel/10.png differ diff --git a/UI2.0/src/assets/control-panel/2.png b/UI2.0/src/assets/control-panel/2.png new file mode 100644 index 0000000000000000000000000000000000000000..0ca38108150217df25bb5c5600c87012e188d13a Binary files /dev/null and b/UI2.0/src/assets/control-panel/2.png differ diff --git a/UI2.0/src/assets/control-panel/3.png b/UI2.0/src/assets/control-panel/3.png new file mode 100644 index 0000000000000000000000000000000000000000..c5406261c42905ee449207f588e0d2243db372c7 Binary files /dev/null and b/UI2.0/src/assets/control-panel/3.png differ diff --git a/UI2.0/src/assets/control-panel/4.png b/UI2.0/src/assets/control-panel/4.png new file mode 100644 index 0000000000000000000000000000000000000000..bfab6674ef16376cbc28ace00301c0d30292bd1e Binary files /dev/null and b/UI2.0/src/assets/control-panel/4.png differ diff --git a/UI2.0/src/assets/control-panel/5.png b/UI2.0/src/assets/control-panel/5.png new file mode 100644 index 0000000000000000000000000000000000000000..1bc5aabb62fbdaf691e35692fd75980400b968a0 Binary files /dev/null and b/UI2.0/src/assets/control-panel/5.png differ diff --git a/UI2.0/src/assets/control-panel/6.png b/UI2.0/src/assets/control-panel/6.png new file mode 100644 index 0000000000000000000000000000000000000000..fc1c0c4311e7b174d6549076c00ccf2f433bf426 Binary files /dev/null and b/UI2.0/src/assets/control-panel/6.png differ diff --git a/UI2.0/src/assets/control-panel/7.png b/UI2.0/src/assets/control-panel/7.png new file mode 100644 index 0000000000000000000000000000000000000000..6dae8554f59d1cbfd3d9716d1ff303886dd04cf0 Binary files /dev/null and b/UI2.0/src/assets/control-panel/7.png differ diff --git a/UI2.0/src/assets/control-panel/8.png b/UI2.0/src/assets/control-panel/8.png new file mode 100644 index 0000000000000000000000000000000000000000..692d496489dda73d71f727ccdb687d6e2c6b5e0e Binary files /dev/null and b/UI2.0/src/assets/control-panel/8.png differ diff --git a/UI2.0/src/assets/control-panel/9.png b/UI2.0/src/assets/control-panel/9.png new file mode 100644 index 0000000000000000000000000000000000000000..a448adc78201d899c3f36451042b194180148d0b Binary files /dev/null and b/UI2.0/src/assets/control-panel/9.png differ diff --git a/UI2.0/src/assets/control-panel/add-default.png b/UI2.0/src/assets/control-panel/add-default.png new file mode 100644 index 0000000000000000000000000000000000000000..e6871fbf841168649cc4525a1c32ffe4a084513e Binary files /dev/null and b/UI2.0/src/assets/control-panel/add-default.png differ diff --git a/UI2.0/src/assets/control-panel/add-highlight.png b/UI2.0/src/assets/control-panel/add-highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..e3630e39cd07e754859e113908d7bc9877fe5d95 Binary files /dev/null and b/UI2.0/src/assets/control-panel/add-highlight.png differ diff --git a/UI2.0/src/assets/control-panel/card.png b/UI2.0/src/assets/control-panel/card.png new file mode 100644 index 0000000000000000000000000000000000000000..de94341e31771874cb0af68b083df03afa7b0480 Binary files /dev/null and b/UI2.0/src/assets/control-panel/card.png differ diff --git a/UI2.0/src/assets/control-panel/close-default.png b/UI2.0/src/assets/control-panel/close-default.png new file mode 100644 index 0000000000000000000000000000000000000000..661020565789f4622408485f38dc8d02da366701 Binary files /dev/null and b/UI2.0/src/assets/control-panel/close-default.png differ diff --git a/UI2.0/src/assets/control-panel/close-highlight.png b/UI2.0/src/assets/control-panel/close-highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..6985c68f7a38bb4a6635f19da5aeed7fe5798c9b Binary files /dev/null and b/UI2.0/src/assets/control-panel/close-highlight.png differ diff --git a/UI2.0/src/assets/control-panel/delete-default.png b/UI2.0/src/assets/control-panel/delete-default.png new file mode 100644 index 0000000000000000000000000000000000000000..f693e2900142cc32dbc46a106e679c7f68a60719 Binary files /dev/null and b/UI2.0/src/assets/control-panel/delete-default.png differ diff --git a/UI2.0/src/assets/control-panel/delete-highlight.png b/UI2.0/src/assets/control-panel/delete-highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..5426904472e8900c5d1b06981958125ef6c6ccff Binary files /dev/null and b/UI2.0/src/assets/control-panel/delete-highlight.png differ diff --git a/UI2.0/src/assets/control-panel/filter-default.png b/UI2.0/src/assets/control-panel/filter-default.png new file mode 100644 index 0000000000000000000000000000000000000000..f648fea631ef58161bf237ec34bfe7414eb4021b Binary files /dev/null and b/UI2.0/src/assets/control-panel/filter-default.png differ diff --git a/UI2.0/src/assets/control-panel/filter-highlight.png b/UI2.0/src/assets/control-panel/filter-highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..2c30e865bd0a499a9515b02a2b0839ee3f184d1c Binary files /dev/null and b/UI2.0/src/assets/control-panel/filter-highlight.png differ diff --git a/UI2.0/src/assets/execute-command/help-default.png b/UI2.0/src/assets/execute-command/help-default.png new file mode 100644 index 0000000000000000000000000000000000000000..0daa2f5b92eed6a321f0ecc350c103cbf0b70ef4 Binary files /dev/null and b/UI2.0/src/assets/execute-command/help-default.png differ diff --git a/UI2.0/src/assets/execute-command/help-highlight.png b/UI2.0/src/assets/execute-command/help-highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..10ecb6b39fe5bd01b2aefb1c90124a20cd96fb9f Binary files /dev/null and b/UI2.0/src/assets/execute-command/help-highlight.png differ diff --git a/UI2.0/src/assets/home/14-categories-and-50-applications.png b/UI2.0/src/assets/home/14-categories-and-50-applications.png new file mode 100644 index 0000000000000000000000000000000000000000..6a87e4b52a517f1e48b6a3be1b28b4af49edab8f Binary files /dev/null and b/UI2.0/src/assets/home/14-categories-and-50-applications.png differ diff --git a/UI2.0/src/assets/home/AI-algorithm.png b/UI2.0/src/assets/home/AI-algorithm.png new file mode 100644 index 0000000000000000000000000000000000000000..9501db7481339e4c831f8c80e458e7addbcb703c Binary files /dev/null and b/UI2.0/src/assets/home/AI-algorithm.png differ diff --git a/UI2.0/src/assets/home/automation.png b/UI2.0/src/assets/home/automation.png new file mode 100644 index 0000000000000000000000000000000000000000..612d57c2f023846607695f2cc71fc2594ac30f66 Binary files /dev/null and b/UI2.0/src/assets/home/automation.png differ diff --git a/UI2.0/src/assets/home/background.png b/UI2.0/src/assets/home/background.png new file mode 100644 index 0000000000000000000000000000000000000000..b8364b427b7d5e4339043e6c4b2d63684b70110c Binary files /dev/null and b/UI2.0/src/assets/home/background.png differ diff --git a/UI2.0/src/assets/home/banner-background.png b/UI2.0/src/assets/home/banner-background.png new file mode 100644 index 0000000000000000000000000000000000000000..3c59db291d3b6b299b000e6c3324ecbd71db0c35 Binary files /dev/null and b/UI2.0/src/assets/home/banner-background.png differ diff --git a/UI2.0/src/assets/home/banner-picture.png b/UI2.0/src/assets/home/banner-picture.png new file mode 100644 index 0000000000000000000000000000000000000000..4b72a8098a0e4ea379172829238b339fb6882209 Binary files /dev/null and b/UI2.0/src/assets/home/banner-picture.png differ diff --git a/UI2.0/src/assets/home/card-background.png b/UI2.0/src/assets/home/card-background.png new file mode 100644 index 0000000000000000000000000000000000000000..d8f43fdca68a31c44b4e2f7a4c5aa2c45540b164 Binary files /dev/null and b/UI2.0/src/assets/home/card-background.png differ diff --git a/UI2.0/src/assets/home/offline-dynamic-tuning.png b/UI2.0/src/assets/home/offline-dynamic-tuning.png new file mode 100644 index 0000000000000000000000000000000000000000..08b501db766b8af7e53507cf66e74d8de3744e94 Binary files /dev/null and b/UI2.0/src/assets/home/offline-dynamic-tuning.png differ diff --git a/UI2.0/src/assets/home/online-static-tuning.png b/UI2.0/src/assets/home/online-static-tuning.png new file mode 100644 index 0000000000000000000000000000000000000000..c9bb9806e661c106864c58584458bbfbe1df3948 Binary files /dev/null and b/UI2.0/src/assets/home/online-static-tuning.png differ diff --git a/UI2.0/src/assets/home/performance-optimizing.png b/UI2.0/src/assets/home/performance-optimizing.png new file mode 100644 index 0000000000000000000000000000000000000000..f41f7f544c94f69411f97b68e8dd783310cb07a8 Binary files /dev/null and b/UI2.0/src/assets/home/performance-optimizing.png differ diff --git a/UI2.0/src/assets/layout/logo_03.png b/UI2.0/src/assets/layout/logo_03.png new file mode 100644 index 0000000000000000000000000000000000000000..a6ddf0e9b7063c5572e5fd6997fe685f6f24ec4a Binary files /dev/null and b/UI2.0/src/assets/layout/logo_03.png differ diff --git a/UI2.0/src/assets/layout/search-1.png b/UI2.0/src/assets/layout/search-1.png new file mode 100644 index 0000000000000000000000000000000000000000..355b88698eedcaddfdf354f895ac0fff18d7f4df Binary files /dev/null and b/UI2.0/src/assets/layout/search-1.png differ diff --git a/UI2.0/src/assets/layout/search-2.png b/UI2.0/src/assets/layout/search-2.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f71d47d3883b696d22a8f9cad9f93fba4c9315 Binary files /dev/null and b/UI2.0/src/assets/layout/search-2.png differ diff --git a/UI2.0/src/assets/login-picture.JPG b/UI2.0/src/assets/login-picture.JPG new file mode 100644 index 0000000000000000000000000000000000000000..fe4aa961f94bc054d18ceb636207fd89fd5caad2 Binary files /dev/null and b/UI2.0/src/assets/login-picture.JPG differ diff --git a/UI2.0/src/assets/quasar-logo-vertical.svg b/UI2.0/src/assets/quasar-logo-vertical.svg new file mode 100644 index 0000000000000000000000000000000000000000..821083104a8da969f6ebe021813312e24fe820ca --- /dev/null +++ b/UI2.0/src/assets/quasar-logo-vertical.svg @@ -0,0 +1,15 @@ + + + + + + + + + \ No newline at end of file diff --git a/UI2.0/src/boot/.gitkeep b/UI2.0/src/boot/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/UI2.0/src/components/EssentialLink.vue b/UI2.0/src/components/EssentialLink.vue new file mode 100644 index 0000000000000000000000000000000000000000..c2899650e4e96888ab8ce946cb548327e4096f15 --- /dev/null +++ b/UI2.0/src/components/EssentialLink.vue @@ -0,0 +1,51 @@ + + + diff --git a/UI2.0/src/css/app.scss b/UI2.0/src/css/app.scss new file mode 100644 index 0000000000000000000000000000000000000000..ecac98f346a997239ea8d62f6d9404c4a0389444 --- /dev/null +++ b/UI2.0/src/css/app.scss @@ -0,0 +1 @@ +// app global css in SCSS form diff --git a/UI2.0/src/css/command-record.css b/UI2.0/src/css/command-record.css new file mode 100644 index 0000000000000000000000000000000000000000..d31a477d4df0b297448d7fb4cb8fec942de502af --- /dev/null +++ b/UI2.0/src/css/command-record.css @@ -0,0 +1,55 @@ +.btn-grp button { + background-color: #fff; + border: 1px solid #cccccc; + padding: 0px; + height: 32px; + width: 85px; + border-radius: 0px; + cursor: pointer; + margin: 32px 0px 32px 0px; +} + +.btn-grp:after { + content: ""; + clear: both; + display: table; +} +.btn-grp button:not(:last-child) { + border-right: none; +} + +.btn-grp button:hover { + background-color: #3781de; + color: #fff; + border: 1px solid #3781de; +} +.container { + height: 70px; + width: 300px; + margin-top: 32px; + margin-right: 32px; +} +.parent { + position: absolute; +} +.search { + width: 300px; + height: 32px; + border-radius: 18px; + outline: none; + border: 1px solid #ccc; + padding-left: 20px; +} +.btn { + height: 35px; + width: 35px; + position: absolute; + background: url("../assets/layout/search-1.png") no-repeat; + top: 4px; + left: 265px; + border: none; + cursor: pointer; +} +.btn:hover{ + background: url("../assets/layout/search-2.png") no-repeat; +} diff --git a/UI2.0/src/css/control-panel.css b/UI2.0/src/css/control-panel.css new file mode 100644 index 0000000000000000000000000000000000000000..5fb4a7689784191327e7a6ba35e7a1eaea4e4544 --- /dev/null +++ b/UI2.0/src/css/control-panel.css @@ -0,0 +1,246 @@ +.col-mod-a { + width: 1856px; + height: 108px; + margin-left: 32px; + margin-top: 16px; + margin-bottom: 16px; + background: url(../assets/control-panel/card.png) no-repeat; +} +.col-mod { + background-color: #f1f2f6; +} +.control-add-a { + background: url(../assets/control-panel/add-default.png) no-repeat; + width: 24px; + height: 24px; + margin-top: 134px; + margin-left: 214px; + cursor: pointer; +} +.control-add-b { + background: url(../assets/control-panel/add-default.png) no-repeat; + width: 24px; + height: 24px; + float: left; + cursor: pointer; +} +.control-add-a:hover, +.control-add-b:hover { + background: url(../assets/control-panel/add-highlight.png) no-repeat; + /* background-color: antiquewhite; */ +} +.control-delete { + background: url(../assets/control-panel/delete-default.png) no-repeat; + width: 24px; + height: 24px; + margin: 39px 32px 0px 0px; +} +.control-delete:hover { + background: url(../assets/control-panel/delete-highlight.png) no-repeat; +} +.new-command-btn { + background: #3781de; + color: white; + font-size: 14px; + margin-right: 32px; + margin-bottom: 16px; + margin-top: 32px; + height: 32px; + width: 90px; + border: none; + border-radius: 4px; + padding: 0; +} + +.task-list { + width: 1310px; + margin: 0px 32px; + border-collapse: collapse; +} +.task-list td { + font-size: 14px; + border-bottom: 1px solid #cfcfcf; + height: 48px; + padding-left: 24px; +} +.task-list th { + font-size: 14px; + text-align: left; + background-color: #f5f5f5; + color: #bcbcbc; + height: 32px; +} +.task-list img { + margin-left: 8px; +} +.table-button { + background-color: #fff; + border: none; + color: #3781de; + font-size: 14px; + padding: 1px 0px; + margin: 0px 16px 0px 0px; +} + +.rate-table { + margin: 0px 32px; + width: 388px; + border-collapse: collapse; +} +.rate-table th { + font-size: 14px; + text-align: left; + background-color: #f5f5f5; + color: #bcbcbc; + height: 32px; + width: 129px; +} +.rate-table td { + font-size: 14px; + height: 40px; + padding-left: 24px; +} +.rate-table img { + margin: 7px 0px; +} +.rate-column { + padding-right: 24px; + text-align: right; +} +.pop-win { + display: none; + position: absolute; + top: 35%; + left: 30%; + width: 472px; + height: 440px; + border: 1px solid #fff; + background-color: white; + overflow: auto; + border-radius: 4px; +} +.black_overlay { + display: none; + position: absolute; + top: 0%; + left: 0%; + width: 100%; + height: 100%; + background-color: rgb(185, 184, 184); + opacity: 0.5; +} +.select-model { + margin-left: 32px; + justify-content: space-between; + margin-bottom: 16px; +} +.select-tip { + color: #222222; + font-size: 14px; + padding-top: 6px; +} +.select_type { + width: 316px; + height: 32px; + float: right; + margin-right: 32px; + border: 1px solid #e6e6e6; + border-radius: 4px; +} +.select_page { + width: 90px; + height: 32px; + margin-right: 32px; + border: 1px solid #e6e6e6; + border-radius: 4px; + outline: none; +} +ul.pagination { + display: inline-block; + padding: 0; + margin: 0; +} + +ul.pagination li { + display: inline; +} + +ul.pagination li a { + color: black; + float: left; + padding: 5px 12px; + text-decoration: none; + border-radius: 4px; +} + +ul.pagination li a.active { + background-color: #3781de; + color: white; +} + +ul.pagination li a:hover:not(.active) { + background-color: #ddd; +} +.button-add-chart-no { + background: #fff; + font-size: 14px; + border-radius: 4px; + border: 1px solid #cfcfcf; + width: 96px; + height: 32px; + margin: 8px 8px 24px 0px; +} +.button-add-chart-yes { + background: #3781de; + color: white; + font-size: 14px; + border: 0; + border-radius: 4px; + width: 96px; + height: 32px; + margin: 8px 0px 24px 0px; +} +.close-card { + height: 24px; + width: 24px; + margin-top: 18px; + background: url(../assets/control-panel/close-default.png) no-repeat; +} +.close-card:hover { + background: url(../assets/control-panel/close-highlight.png) no-repeat; +} +.card-button { + border: 0; + background-color: #fff; + padding: 0; +} +.card-button:hover { + color: #3781de; +} +.input-Taskname::-webkit-input-placeholder { + color: #cccccc; +} +.add-chart { + color: #999999; + font-size: 14px; + margin: 16px 198px 0px 190px; + background-color: #fff; + border: 0; + width: 70px; + cursor: pointer; +} +/* 设置滚动条的样式 */ +::-webkit-scrollbar { + width: 12px; + padding-right: 8px; +} +/* 滚动槽 */ +::-webkit-scrollbar-track { + border-radius: 10px; + padding-right: 8px; +} +/* 滚动条滑块 */ +::-webkit-scrollbar-thumb { + border-radius: 10px; + background: #cccccc; +} \ No newline at end of file diff --git a/UI2.0/src/css/execute-command.css b/UI2.0/src/css/execute-command.css new file mode 100644 index 0000000000000000000000000000000000000000..8bae597e7c354d1ca1a7322980eddbbb15321b51 --- /dev/null +++ b/UI2.0/src/css/execute-command.css @@ -0,0 +1,132 @@ +.btn-group button { + background-color: #fff; + border: 1px solid #cccccc; + padding: 0px; + height: 32px; + width: 85px; + border-radius: 0px; + cursor: pointer; + margin-bottom: 24px; +} + +.btn-group:after { + content: ""; + clear: both; + display: table; +} +.btn-group button:not(:last-child) { + border-right: none; +} + +.btn-group button:hover { + background-color: #3781de; + color: #fff; + border: 1px solid #3781de; +} +.select-first { + margin: 0px 32px 40px 8px; + padding: 0px 16px; + height: 32px; + width: 210px; + border: 1px solid #cccccc; + border-radius: 4px; + color: #222222; + font-size: 14px; + outline: none; +} +.btn-atune-adm { + border-radius: 4px; + margin-left: 128px; + margin-right: 8px; + height: 32px; + width: 110px; + background-color: #e6e6e6; + color: #999999; + font-size: 14px; + border: 1px solid #999999; + cursor: pointer; +} +.btn-add-parameter { + border-radius: 4px; + height: 32px; + width: 110px; + background-color: #3781de; + color: #ffffff; + font-size: 14px; + border: 1px solid #3781de; + cursor: pointer; +} +.please-input { + border: none; + border-bottom: 1px solid #cccccc; + width: 170px; + margin-right: 32px; + margin-bottom: 40px; +} +.please-input:focus { + outline: none; +} +.please-input::-webkit-input-placeholder { + color: #cccccc; +} +.table-button { + background-color: #fff; + border: none; + color: #3781de; + font-size: 14px; + padding: 1px 0px; + margin: 0px 16px 0px 0px; +} +.selectfile-table { + border-collapse: collapse; + margin-left: 248px; + width: 883px; + text-align: left; + border: none; +} +.selectfile-table th { + background-color: #f5f5f5; + height: 32px; + color: #999999; +} +.selectfile-table td { + height: 48px; + padding-left: 11.54px; + border-bottom: 1px solid #e6e6e6; +} +.command-textbox { + width: 1544px; + height: 212px; + margin: 16px 8px 16px 16px; + overflow: auto; + border: none; + background-color: #f5f5f5; + border-radius: 4px; + padding: 0px; + outline: none; +} +.textbox-div { + margin-left: 248px; + margin-bottom: 80px; + width: 1576px; + height: 236px; + background-color: #f5f5f5; + border: none; + border-radius: 4px; +} + +/* 设置滚动条的样式 */ +::-webkit-scrollbar { + width: 12px; + padding-right: 8px; +} +/* 滚动槽 */ +::-webkit-scrollbar-track { + border-radius: 10px; + padding-right: 8px; +} +/* 滚动条滑块 */ +::-webkit-scrollbar-thumb { + border-radius: 10px; + background: #cccccc; +} \ No newline at end of file diff --git a/UI2.0/src/css/home.css b/UI2.0/src/css/home.css new file mode 100644 index 0000000000000000000000000000000000000000..3c68c1a06a251b966f7a7ce0e48f02aa40191ed8 --- /dev/null +++ b/UI2.0/src/css/home.css @@ -0,0 +1,28 @@ +.col-module-a { + background: url(../assets/home/banner-background.png) no-repeat; +} +.col-module-b { + background-color: #f5f6f8; +} +.col-module-c { + background: url(../assets/home/background.png) no-repeat; +} +.col-module-d { + background-color: #2c3554; +} +.row .introduce { + margin: 43px 7px; + background: #fff; + border: 1px solid #fff; + border-radius: 3px; + box-shadow: 1px 4px 6px 5px #dae2f0; + background: url(../assets/home/card-background.png) no-repeat; +} +.introduce-text { + font-size: 14px; + color: #222222; +} +.q-table th, +.q-table td { + padding: 7px 10px; +} \ No newline at end of file diff --git a/UI2.0/src/css/mainlayout.css b/UI2.0/src/css/mainlayout.css new file mode 100644 index 0000000000000000000000000000000000000000..5caac489b99d0d48b3c5db1a54cb9e2d6b0724d6 --- /dev/null +++ b/UI2.0/src/css/mainlayout.css @@ -0,0 +1,26 @@ +.q-toolbar { + padding: 16px 0px; +} +.button-group { + position: absolute; + right: 0%; + /* background-color: antiquewhite; */ +} +.search-input { + border-radius: 20px; + height: 32px; + border: 1px solid #cccccc; + padding-left: 10px; + display: none; + outline: none; +} +.search-img { + background: url(../assets/layout/search-1.png) no-repeat; + width: 24px; + height: 24px; + margin-right: 24px; + margin-top: 5px; +} +.search-img:hover { + background: url(../assets/layout/search-2.png) no-repeat; +} \ No newline at end of file diff --git a/UI2.0/src/css/quasar.variables.scss b/UI2.0/src/css/quasar.variables.scss new file mode 100644 index 0000000000000000000000000000000000000000..2dea8f0da0250a8bda72b75dc959590f2d1038c9 --- /dev/null +++ b/UI2.0/src/css/quasar.variables.scss @@ -0,0 +1,24 @@ +// Quasar SCSS (& Sass) Variables +// -------------------------------------------------- +// To customize the look and feel of this app, you can override +// the Sass/SCSS variables found in Quasar's source Sass/SCSS files. + +// Check documentation for full list of Quasar variables + +// Your own variables (that are declared here) and Quasar's own +// ones will be available out of the box in your .vue/.scss/.sass files + +// It's highly recommended to change the default colors +// to match your app's branding. +// Tip: Use the "Theme Builder" on Quasar's documentation website. + +$primary : #ffffff; +$secondary : #26A69A; +$accent : #9C27B0; + +$dark : #1D1D1D; + +$positive : #21BA45; +$negative : #C10015; +$info : #31CCEC; +$warning : #F2C037; diff --git a/UI2.0/src/css/userlayout.css b/UI2.0/src/css/userlayout.css new file mode 100644 index 0000000000000000000000000000000000000000..952abd49d6cef8a8620785bb6a24a6a8b46bb160 --- /dev/null +++ b/UI2.0/src/css/userlayout.css @@ -0,0 +1,39 @@ +.q-toolbar { + padding: 16px 0px; + } + .menu-group { + text-align: center; + } + .menu-btn { + color: #222222; + font-size: 16px; + margin: 0px 24px; + padding: 0px; + height: 48px; + border: 0px; + background-color: #ffffff; + border-radius: 0px; + } + .menu-btn:hover { + color: #3781de; + background-color: #ffffff; + border-bottom: 2px solid #3781de; + } + .search-input { + border-radius: 20px; + height: 32px; + border: 1px solid #cccccc; + padding-left: 10px; + display: none; + outline: none; + } + .search-img { + background: url(../assets/layout/search-1.png) no-repeat; + width: 24px; + height: 24px; + margin-right: 24px; + margin-top: 3px; + } + .search-img:hover { + background: url(../assets/layout/search-2.png) no-repeat; + } \ No newline at end of file diff --git a/UI2.0/src/index.template.html b/UI2.0/src/index.template.html new file mode 100644 index 0000000000000000000000000000000000000000..8157cbfff400514fca2f4224f67e54f1c704d07f --- /dev/null +++ b/UI2.0/src/index.template.html @@ -0,0 +1,22 @@ + + + + <%= productName %> + + + + + + + + + + + + + + + +
+ + diff --git a/UI2.0/src/js/command-record.js b/UI2.0/src/js/command-record.js new file mode 100644 index 0000000000000000000000000000000000000000..747587adb3aba3b7ac741c708d096391f26af3bf --- /dev/null +++ b/UI2.0/src/js/command-record.js @@ -0,0 +1,126 @@ +import { defineComponent } from "vue"; + +export default defineComponent({ + data() { + return { + columns: [ + { + name: "order", + required: true, + label: "序号", + align: "left", + field: (row) => row.order, + format: (val) => `${val}`, + sortable: true, + }, + { + name: "name", + align: "center", + label: "任务名称", + field: "name", + }, + { name: "IP", label: "IP地址", field: "IP" }, + { name: "command", label: "命令", field: "command" }, + { name: "state", label: "任务状态", field: "state" }, + { name: "time", label: "开始时间", field: "time" }, + { + name: "operation", + label: "操作", + field: "operation", + }, + ], + data: [ + { + order: 1, + name: "Test1", + IP: "9.10.33.13", + command: "在线调优", + state: "运行中", + time: 87, + operation: "14%", + }, + { + order: 2, + name: "Test2", + IP: "9.10.33.13", + command: "离线调优", + state: "运行中", + time: 129, + operation: "8%", + }, + { + order: 3, + name: "Test3", + IP: "9.10.33.13", + command: "在线调优", + state: "已完成", + time: 337, + operation: "6%", + }, + { + order: 4, + name: "Test4", + IP: "9.10.33.13", + command: "离线调优", + state: "运行中", + time: 413, + operation: "3%", + }, + { + order: 5, + name: "Test5", + IP: "9.10.33.13", + command: "离线调优", + state: "已完成", + time: 327, + operation: "7%", + }, + { + order: 6, + name: "Test6", + IP: "9.10.33.13", + command: "在线调优", + state: "已完成", + time: 50, + operation: "0%", + }, + { + order: 7, + name: "Test7", + IP: "9.10.33.13", + command: "在线调优", + state: "运行中", + time: 38, + operation: "0%", + }, + { + order: 8, + name: "Test8", + IP: "9.10.33.13", + command: "离线调优", + state: "运行中", + time: 562, + operation: "0%", + }, + { + order: 9, + name: "Test9", + IP: "9.10.33.13", + command: "在线调优", + state: "失败", + time: 326, + operation: "2%", + }, + { + order: 10, + name: "Test10", + IP: "9.10.33.13", + command: "在线调优", + state: "已完成", + time: 54, + operation: "12%", + }, + ], + }; + }, +}); \ No newline at end of file diff --git a/UI2.0/src/js/control-panel.js b/UI2.0/src/js/control-panel.js new file mode 100644 index 0000000000000000000000000000000000000000..6004166988ee75c0879af46bde3d3341b54d6c57 --- /dev/null +++ b/UI2.0/src/js/control-panel.js @@ -0,0 +1,263 @@ +{/* \ No newline at end of file diff --git a/UI2.0/src/js/execute-command.js b/UI2.0/src/js/execute-command.js new file mode 100644 index 0000000000000000000000000000000000000000..07bcf271a2fe937c98190ac4a5192acf918ef8aa --- /dev/null +++ b/UI2.0/src/js/execute-command.js @@ -0,0 +1,33 @@ +import { defineComponent } from "vue"; + +export default defineComponent({ + methods: { + showClickmode() { + document.getElementById("click-mode").style.display = "block"; + document.getElementById("node-mode").style.display = "none"; + document.getElementById("cluster-mode").style.display = "none"; + }, + showNodemode() { + document.getElementById("click-mode").style.display = "none"; + document.getElementById("node-mode").style.display = "block"; + document.getElementById("cluster-mode").style.display = "none"; + }, + showClustermode() { + document.getElementById("click-mode").style.display = "none"; + document.getElementById("node-mode").style.display = "none"; + document.getElementById("cluster-mode").style.display = "block"; + }, + showAddparameter() { + document.getElementById("add-parameter-1").style.display = "block"; + document.getElementById("tunning-select").style.display = "none"; + }, + closeAddparameter() { + document.getElementById("add-parameter-1").style.display = "none"; + document.getElementById("tunning-select").style.display = "none"; + }, + showTunningselect() { + document.getElementById("tunning-select").style.display = "block"; + document.getElementById("add-parameter-1").style.display = "none"; + }, + }, +}); \ No newline at end of file diff --git a/UI2.0/src/js/home.js b/UI2.0/src/js/home.js new file mode 100644 index 0000000000000000000000000000000000000000..b3a4d9ee0778364723607eb4b2ad4e05cecacc77 --- /dev/null +++ b/UI2.0/src/js/home.js @@ -0,0 +1,5 @@ +import { defineComponent } from "vue"; + +export default defineComponent({ + name: "PageIndex", +}); \ No newline at end of file diff --git a/UI2.0/src/js/mainlayout.js b/UI2.0/src/js/mainlayout.js new file mode 100644 index 0000000000000000000000000000000000000000..e234da2346a0d3c5c60aff0b2b7ebb76d6b89c09 --- /dev/null +++ b/UI2.0/src/js/mainlayout.js @@ -0,0 +1,97 @@ +import EssentialLink from "components/EssentialLink.vue"; + +const linksList = [ + { + title: "Docs", + caption: "quasar.dev", + icon: "school", + link: "https://quasar.dev", + }, +// { +// title: "Github", +// caption: "github.com/quasarframework", +// icon: "code", +// link: "https://github.com/quasarframework", +// }, +// { +// title: "Discord Chat Channel", +// caption: "chat.quasar.dev", +// icon: "chat", +// link: "https://chat.quasar.dev", +// }, +// { +// title: "Forum", +// caption: "forum.quasar.dev", +// icon: "record_voice_over", +// link: "https://forum.quasar.dev", +// }, +// { +// title: "Twitter", +// caption: "@quasarframework", +// icon: "rss_feed", +// link: "https://twitter.quasar.dev", +// }, +// { +// title: "Facebook", +// caption: "@QuasarFramework", +// icon: "public", +// link: "https://facebook.quasar.dev", +// }, +// { +// title: "Quasar Awesome", +// caption: "Community Quasar projects", +// icon: "favorite", +// link: "https://awesome.quasar.dev", +// }, +]; + +import { defineComponent, ref } from "vue"; + +export default defineComponent({ + name: "MainLayout", + + components: { + EssentialLink, + }, + + methods: { + onItemClick() { + console.log("Clicked."); + }, + onMainClick() { + this.$router.push({ + path: "/", + }); + }, + onLoginClick() { + this.$router.push({ + path: "/login", + }); + }, + onRegisterClick() { + this.$router.push({ + path: "/register", + }); + }, + onUserClick() { + this.$router.push({ + path: "/user", + }); + }, + showSearchInput() { + document.getElementById("search-input").style.display = "block"; + }, + }, + + setup() { + const leftDrawerOpen = ref(false); + + return { + essentialLinks: linksList, + leftDrawerOpen, + toggleLeftDrawer() { + leftDrawerOpen.value = !leftDrawerOpen.value; + }, + }; + }, +}); \ No newline at end of file diff --git a/UI2.0/src/js/userlayout.js b/UI2.0/src/js/userlayout.js new file mode 100644 index 0000000000000000000000000000000000000000..81da730a01242869a7814f8747222627448e296b --- /dev/null +++ b/UI2.0/src/js/userlayout.js @@ -0,0 +1,63 @@ +import { defineComponent, ref } from "vue"; + +export default defineComponent({ + name: "MainLayout", + + components: {}, + + methods: { + onItemClick() { + console.log("Clicked."); + }, + onMainClick() { + this.$router.push({ + path: "/", + }); + }, + onContactClick() { + this.$router.push({ + path: "/contact", + }); + }, + onRecordClick() { + this.$router.push({ + path: "/record", + }); + }, + onInformationClick(){ + this.$router.push({ + path: "/information", + }); + }, + onCommandClick() { + this.$router.push({ + path: "/command", + }); + }, + onUserClick() { + this.$router.push({ + path: "/user", + }); + }, + onLoginClick() { + this.$router.push({ + path: "/login", + }); + }, + showSearchInput() { + document.getElementById("search-input").style.display = "block"; + }, + }, + + setup() { + // const leftDrawerOpen = ref(false); + + return { + // essentialLinks: linksList, + // leftDrawerOpen, + // toggleLeftDrawer() { + // leftDrawerOpen.value = !leftDrawerOpen.value; + // }, + }; + }, +}); \ No newline at end of file diff --git a/UI2.0/src/layouts/LoginLayout.vue b/UI2.0/src/layouts/LoginLayout.vue new file mode 100644 index 0000000000000000000000000000000000000000..8e364bf2cc3739611c42877e8b07217c4bb070b3 --- /dev/null +++ b/UI2.0/src/layouts/LoginLayout.vue @@ -0,0 +1,77 @@ + + + + + diff --git a/UI2.0/src/layouts/MainLayout.vue b/UI2.0/src/layouts/MainLayout.vue new file mode 100644 index 0000000000000000000000000000000000000000..882475f6faf85693ff021238b726ec8cf7f4b8dc --- /dev/null +++ b/UI2.0/src/layouts/MainLayout.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/UI2.0/src/layouts/UserLayout.vue b/UI2.0/src/layouts/UserLayout.vue new file mode 100644 index 0000000000000000000000000000000000000000..f040cbff59b860a227d5e72044c3ea96684367fd --- /dev/null +++ b/UI2.0/src/layouts/UserLayout.vue @@ -0,0 +1,104 @@ + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Command-record.vue b/UI2.0/src/pages/Command-record.vue new file mode 100644 index 0000000000000000000000000000000000000000..8bfefaacaadf3429732a11082d58a30dfb372b29 --- /dev/null +++ b/UI2.0/src/pages/Command-record.vue @@ -0,0 +1,69 @@ + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Contact-us.vue b/UI2.0/src/pages/Contact-us.vue new file mode 100644 index 0000000000000000000000000000000000000000..f7dfa3e07c0677ca5aa5de7a9460786f6027ec6f --- /dev/null +++ b/UI2.0/src/pages/Contact-us.vue @@ -0,0 +1,224 @@ + + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Control-panel.vue b/UI2.0/src/pages/Control-panel.vue new file mode 100644 index 0000000000000000000000000000000000000000..22bdb0236fbdf011f0d70ef856f71f0240d36fb2 --- /dev/null +++ b/UI2.0/src/pages/Control-panel.vue @@ -0,0 +1,948 @@ + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Error404.vue b/UI2.0/src/pages/Error404.vue new file mode 100644 index 0000000000000000000000000000000000000000..de8bedfb36222776cb3342606175dee08387d48d --- /dev/null +++ b/UI2.0/src/pages/Error404.vue @@ -0,0 +1,31 @@ + + + diff --git a/UI2.0/src/pages/Execute-command.vue b/UI2.0/src/pages/Execute-command.vue new file mode 100644 index 0000000000000000000000000000000000000000..449139d2868df0ac6c2df7d87fd112e84ee8f15e --- /dev/null +++ b/UI2.0/src/pages/Execute-command.vue @@ -0,0 +1,377 @@ + + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Home.vue b/UI2.0/src/pages/Home.vue new file mode 100644 index 0000000000000000000000000000000000000000..0c9cf299a80c138c2f50809ae958ad58ce0fec26 --- /dev/null +++ b/UI2.0/src/pages/Home.vue @@ -0,0 +1,232 @@ + + + + + diff --git a/UI2.0/src/pages/Login.vue b/UI2.0/src/pages/Login.vue new file mode 100644 index 0000000000000000000000000000000000000000..238948a7159b3a684093e72eac121cc2e572de42 --- /dev/null +++ b/UI2.0/src/pages/Login.vue @@ -0,0 +1,117 @@ + + + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Realtime-information.vue b/UI2.0/src/pages/Realtime-information.vue new file mode 100644 index 0000000000000000000000000000000000000000..d6f42407b1c82e32759a146605e0f2b20b15e3e6 --- /dev/null +++ b/UI2.0/src/pages/Realtime-information.vue @@ -0,0 +1,125 @@ + + + + + + \ No newline at end of file diff --git a/UI2.0/src/pages/Register.vue b/UI2.0/src/pages/Register.vue new file mode 100644 index 0000000000000000000000000000000000000000..6cfe74b85649b237ca0239052f5e11cdd87959d7 --- /dev/null +++ b/UI2.0/src/pages/Register.vue @@ -0,0 +1,94 @@ + + + + + + + \ No newline at end of file diff --git a/UI2.0/src/quasar.d.ts b/UI2.0/src/quasar.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..e9a276aded6b5566c0f7168f6e74f1f35a1dc0b7 --- /dev/null +++ b/UI2.0/src/quasar.d.ts @@ -0,0 +1,7 @@ +// Forces TS to apply `@quasar/app` augmentations of `quasar` package +// Removing this would break `quasar/wrappers` imports as those typings are declared +// into `@quasar/app` +// As a side effect, since `@quasar/app` reference `quasar` to augment it, +// this declaration also apply `quasar` own +// augmentations (eg. adds `$q` into Vue component context) +/// diff --git a/UI2.0/src/router/index.js b/UI2.0/src/router/index.js new file mode 100644 index 0000000000000000000000000000000000000000..c2e623525ca0b7875f1fc16023ef39d678b3c345 --- /dev/null +++ b/UI2.0/src/router/index.js @@ -0,0 +1,30 @@ +import { route } from 'quasar/wrappers' +import { createRouter, createMemoryHistory, createWebHistory, createWebHashHistory } from 'vue-router' +import routes from './routes' + +/* + * If not building with SSR mode, you can + * directly export the Router instantiation; + * + * The function below can be async too; either use + * async/await or return a Promise which resolves + * with the Router instance. + */ + +export default route(function (/* { store, ssrContext } */) { + const createHistory = process.env.SERVER + ? createMemoryHistory + : (process.env.VUE_ROUTER_MODE === 'history' ? createWebHistory : createWebHashHistory) + + const Router = createRouter({ + scrollBehavior: () => ({ left: 0, top: 0 }), + routes, + + // Leave this as is and make changes in quasar.conf.js instead! + // quasar.conf.js -> build -> vueRouterMode + // quasar.conf.js -> build -> publicPath + history: createHistory(process.env.MODE === 'ssr' ? void 0 : process.env.VUE_ROUTER_BASE) + }) + + return Router +}) diff --git a/UI2.0/src/router/routes.js b/UI2.0/src/router/routes.js new file mode 100644 index 0000000000000000000000000000000000000000..71d6ab3622fb195c54b0bef23db0956f633d1bed --- /dev/null +++ b/UI2.0/src/router/routes.js @@ -0,0 +1,68 @@ + +const routes = [ + { + path: '/', + component: () => import('layouts/MainLayout.vue'), + children: [ + { path: '', component: () => import('pages/Home.vue') } + ] + }, + { + path: '/login', + component: () => import('layouts/LoginLayout.vue'), + children: [ + { path: '', component: () => import('pages/Login.vue') } + ] + }, + { + path: '/register', + component: () => import('layouts/LoginLayout.vue'), + children: [ + { path: '', component: () => import('pages/Register.vue') } + ] + }, + { + path: '/user', + component: () => import('layouts/UserLayout.vue'), + children: [ + { path: '', component: () => import('pages/Control-panel.vue') } + ] + }, + { + path: '/command', + component: () => import('layouts/UserLayout.vue'), + children: [ + { path: '', component: () => import('pages/Execute-command.vue') } + ] + }, + { + path: '/information', + component: () => import('layouts/UserLayout.vue'), + children: [ + { path: '', component: () => import('pages/Realtime-information.vue') } + ] + }, + { + path: '/record', + component: () => import('layouts/UserLayout.vue'), + children: [ + { path: '', component: () => import('pages/Command-record.vue') } + ] + }, + { + path: '/contact', + component: () => import('layouts/UserLayout.vue'), + children: [ + { path: '', component: () => import('pages/Contact-us.vue') } + ] + }, + + // Always leave this as last one, + // but you can also remove it + { + path: '/:catchAll(.*)*', + component: () => import('pages/Error404.vue') + } +] + +export default routes diff --git a/UI2.0/src/store/index.js b/UI2.0/src/store/index.js new file mode 100644 index 0000000000000000000000000000000000000000..f4ce543a85b3cbed66bc1f99f63249d9ac8d2768 --- /dev/null +++ b/UI2.0/src/store/index.js @@ -0,0 +1,27 @@ +import { store } from 'quasar/wrappers' +import { createStore } from 'vuex' + +// import example from './module-example' + +/* + * If not building with SSR mode, you can + * directly export the Store instantiation; + * + * The function below can be async too; either use + * async/await or return a Promise which resolves + * with the Store instance. + */ + +export default store(function (/* { ssrContext } */) { + const Store = createStore({ + modules: { + // example + }, + + // enable strict mode (adds overhead!) + // for dev mode and --debug builds only + strict: process.env.DEBUGGING + }) + + return Store +}) diff --git a/UI2.0/src/store/module-example/actions.js b/UI2.0/src/store/module-example/actions.js new file mode 100644 index 0000000000000000000000000000000000000000..cf42235248229bf14f04e77a9ca239f0caae6fae --- /dev/null +++ b/UI2.0/src/store/module-example/actions.js @@ -0,0 +1,2 @@ +export function someAction (/* context */) { +} diff --git a/UI2.0/src/store/module-example/getters.js b/UI2.0/src/store/module-example/getters.js new file mode 100644 index 0000000000000000000000000000000000000000..ce8aa1f26bffc2d952395192050c4b27643d599c --- /dev/null +++ b/UI2.0/src/store/module-example/getters.js @@ -0,0 +1,2 @@ +export function someGetter (/* state */) { +} diff --git a/UI2.0/src/store/module-example/index.js b/UI2.0/src/store/module-example/index.js new file mode 100644 index 0000000000000000000000000000000000000000..babab8ec520e34a51ac8ece7387024dd41ba4079 --- /dev/null +++ b/UI2.0/src/store/module-example/index.js @@ -0,0 +1,12 @@ +import state from './state' +import * as getters from './getters' +import * as mutations from './mutations' +import * as actions from './actions' + +export default { + namespaced: true, + getters, + mutations, + actions, + state +} diff --git a/UI2.0/src/store/module-example/mutations.js b/UI2.0/src/store/module-example/mutations.js new file mode 100644 index 0000000000000000000000000000000000000000..ce57bfbced558dc936316f8918421bcab16952cc --- /dev/null +++ b/UI2.0/src/store/module-example/mutations.js @@ -0,0 +1,2 @@ +export function someMutation (/* state */) { +} diff --git a/UI2.0/src/store/module-example/state.js b/UI2.0/src/store/module-example/state.js new file mode 100644 index 0000000000000000000000000000000000000000..6fd747ceba9f63969a407a2904027a0edb9cbe5c --- /dev/null +++ b/UI2.0/src/store/module-example/state.js @@ -0,0 +1,5 @@ +export default function () { + return { + // + } +} diff --git a/UI2.0/src/store/store-flag.d.ts b/UI2.0/src/store/store-flag.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..7677175b003245a3d07a7608d33d8e501042d52d --- /dev/null +++ b/UI2.0/src/store/store-flag.d.ts @@ -0,0 +1,10 @@ +/* eslint-disable */ +// THIS FEATURE-FLAG FILE IS AUTOGENERATED, +// REMOVAL OR CHANGES WILL CAUSE RELATED TYPES TO STOP WORKING +import "quasar/dist/types/feature-flag"; + +declare module "quasar/dist/types/feature-flag" { + interface QuasarFeatureFlags { + store: true; + } +}