Browse Source

first commit

zhoulisky 1 year ago
commit
a2c06b2b42
100 changed files with 23706 additions and 0 deletions
  1. 3 0
      .browserslistrc
  2. 16 0
      .editorconfig
  3. 17 0
      .eslintrc.js
  4. 24 0
      .gitignore
  5. 5 0
      .postcssrc.js
  6. 5 0
      babel.config.js
  7. 9 0
      build.sh
  8. 13983 0
      package-lock.json
  9. 55 0
      package.json
  10. 11 0
      public/cdn/animate/3.5.2/animate.css
  11. 9 0
      public/cdn/avue/2.12.6/avue.min.js
  12. 1 0
      public/cdn/avue/2.12.6/index.css
  13. 9 0
      public/cdn/axios/1.0.0/axios.min.js
  14. 1 0
      public/cdn/element-ui/2.15.6/index.js
  15. BIN
      public/cdn/element-ui/2.15.6/theme-chalk/fonts/element-icons.ttf
  16. BIN
      public/cdn/element-ui/2.15.6/theme-chalk/fonts/element-icons.woff
  17. 1 0
      public/cdn/element-ui/2.15.6/theme-chalk/index.css
  18. 201 0
      public/cdn/iconfont/avue/iconfont.css
  19. BIN
      public/cdn/iconfont/avue/iconfont.eot
  20. 1 0
      public/cdn/iconfont/avue/iconfont.js
  21. 331 0
      public/cdn/iconfont/avue/iconfont.json
  22. 164 0
      public/cdn/iconfont/avue/iconfont.svg
  23. BIN
      public/cdn/iconfont/avue/iconfont.ttf
  24. BIN
      public/cdn/iconfont/avue/iconfont.woff
  25. BIN
      public/cdn/iconfont/avue/iconfont.woff2
  26. 1043 0
      public/cdn/iconfont/common/iconfont.css
  27. 1 0
      public/cdn/iconfont/common/iconfont.js
  28. 1808 0
      public/cdn/iconfont/common/iconfont.json
  29. BIN
      public/cdn/iconfont/common/iconfont.ttf
  30. BIN
      public/cdn/iconfont/common/iconfont.woff
  31. BIN
      public/cdn/iconfont/common/iconfont.woff2
  32. 23 0
      public/cdn/iconfont/index.css
  33. 345 0
      public/cdn/iconfont/saber/iconfont.css
  34. BIN
      public/cdn/iconfont/saber/iconfont.eot
  35. 1 0
      public/cdn/iconfont/saber/iconfont.js
  36. 583 0
      public/cdn/iconfont/saber/iconfont.json
  37. 272 0
      public/cdn/iconfont/saber/iconfont.svg
  38. BIN
      public/cdn/iconfont/saber/iconfont.ttf
  39. BIN
      public/cdn/iconfont/saber/iconfont.woff
  40. BIN
      public/cdn/iconfont/saber/iconfont.woff2
  41. BIN
      public/cdn/nutflow/wf-design-base/fonts/bpmn.08b5f281.eot
  42. BIN
      public/cdn/nutflow/wf-design-base/fonts/bpmn.3c4c9f45.woff2
  43. BIN
      public/cdn/nutflow/wf-design-base/fonts/bpmn.acbc6cbd.woff
  44. BIN
      public/cdn/nutflow/wf-design-base/fonts/bpmn.f922519e.ttf
  45. BIN
      public/cdn/nutflow/wf-design-base/fonts/codicon.22349029.ttf
  46. BIN
      public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.674f50d2.eot
  47. BIN
      public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.af7ae505.woff2
  48. BIN
      public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.b06871f2.ttf
  49. BIN
      public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.fee66e71.woff
  50. 224 0
      public/cdn/nutflow/wf-design-base/img/bpmn.1381b44e.svg
  51. 2671 0
      public/cdn/nutflow/wf-design-base/img/fontawesome-webfont.912ec66d.svg
  52. 25 0
      public/cdn/nutflow/wf-design-base/index.umd.min.js
  53. 6 0
      public/cdn/vue-router/3.0.1/vue-router.min.js
  54. 6 0
      public/cdn/vue/2.6.10/vue.min.js
  55. 6 0
      public/cdn/vuex/3.1.1/vuex.min.js
  56. 7 0
      public/cdn/xlsx/FileSaver.min.js
  57. 23 0
      public/cdn/xlsx/xlsx.full.min.js
  58. BIN
      public/favicon.png
  59. 508 0
      public/img/bg/403.svg
  60. 314 0
      public/img/bg/404.svg
  61. 208 0
      public/img/bg/500.svg
  62. BIN
      public/img/bg/bg.jpg
  63. BIN
      public/img/bg/bg1.jpg
  64. BIN
      public/img/bg/bg2.jpg
  65. BIN
      public/img/bg/bg3.jpg
  66. BIN
      public/img/bg/bg4.jpg
  67. BIN
      public/img/bg/cloud.jpg
  68. BIN
      public/img/bg/img-logo.png
  69. BIN
      public/img/bg/login.png
  70. BIN
      public/img/bg/logo.png
  71. BIN
      public/img/bg/star-squashed.jpg
  72. BIN
      public/img/bg/vip1.png
  73. BIN
      public/img/bg/vip2.png
  74. BIN
      public/img/bg/vip3.png
  75. BIN
      public/img/bg/vip4.png
  76. BIN
      public/img/logo.png
  77. BIN
      public/img/mock/card/card-1.jpg
  78. BIN
      public/img/mock/card/card-2.jpg
  79. BIN
      public/img/mock/card/card-3.jpg
  80. BIN
      public/img/mock/card/card-4.jpg
  81. BIN
      public/img/mock/cli/1.png
  82. BIN
      public/img/mock/cli/2.png
  83. BIN
      public/img/mock/cli/3.png
  84. BIN
      public/img/mock/iconfont.png
  85. 116 0
      public/index.html
  86. 6 0
      public/svg/loading-spin.svg
  87. 105 0
      public/util/aes.js
  88. BIN
      public/util/screen/guge.png
  89. BIN
      public/util/screen/huohu.png
  90. 32 0
      public/util/screen/screen.css
  91. 47 0
      public/util/screen/screen.js
  92. 30 0
      src/App.vue
  93. 53 0
      src/api/base/region.js
  94. 15 0
      src/api/common.js
  95. 60 0
      src/api/desk/notice.js
  96. 123 0
      src/api/flow/flow.js
  97. 78 0
      src/api/job/jobinfo.js
  98. 57 0
      src/api/job/jobserver.js
  99. 64 0
      src/api/logs.js
  100. 0 0
      src/api/report/report.js

+ 3 - 0
.browserslistrc

@@ -0,0 +1,3 @@
+> 1%
+last 2 versions
+not ie <= 8

+ 16 - 0
.editorconfig

@@ -0,0 +1,16 @@
+# http://editorconfig.org
+root = true
+
+[*]
+indent_style = space
+indent_size = 2
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+
+[*.md]
+trim_trailing_whitespace = false
+
+[Makefile]
+indent_style = tab

+ 17 - 0
.eslintrc.js

@@ -0,0 +1,17 @@
+module.exports = {
+  root: true,
+  env: {
+    node: true
+  },
+  'extends': [
+    'plugin:vue/essential',
+    'eslint:recommended'
+  ],
+  rules: {
+    'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
+    'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
+  },
+  parserOptions: {
+    parser: 'babel-eslint'
+  }
+}

+ 24 - 0
.gitignore

@@ -0,0 +1,24 @@
+.DS_Store
+node_modules
+/dist
+
+/tests/e2e/videos/
+/tests/e2e/screenshots/
+
+# local env files
+.env.local
+.env.*.local
+
+# Log files
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# Editor directories and files
+.idea
+.vscode
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw*

+ 5 - 0
.postcssrc.js

@@ -0,0 +1,5 @@
+module.exports = {
+  plugins: {
+    autoprefixer: {}
+  }
+}

+ 5 - 0
babel.config.js

@@ -0,0 +1,5 @@
+module.exports = {
+  presets: [
+    '@vue/app'
+  ]
+}

+ 9 - 0
build.sh

@@ -0,0 +1,9 @@
+#!/bin/bash
+
+echo "====================打包文件===================="
+yarn build
+echo "====================传输文件===================="
+
+scp -P 22 -r ./dist/** root@192.168.0.157:/docker/nginx/web/html
+
+echo "====================部署完毕===================="

File diff suppressed because it is too large
+ 13983 - 0
package-lock.json


+ 55 - 0
package.json

@@ -0,0 +1,55 @@
+{
+  "name": "saber-admin",
+  "version": "4.5.0",
+  "private": true,
+  "scripts": {
+    "serve": "vue-cli-service serve",
+    "build": "vue-cli-service build",
+    "lint": "vue-cli-service lint",
+    "analyz": "npm_config_report=true npm run build",
+    "test:unit": "vue-cli-service test:unit",
+    "test:e2e": "vue-cli-service test:e2e"
+  },
+  "dependencies": {
+    "avue-plugin-ueditor": "^0.1.4",
+    "axios": "^0.21.1",
+    "babel-polyfill": "^6.26.0",
+    "classlist-polyfill": "^1.2.0",
+    "crypto-js": "^4.0.0",
+    "element-ui": "^2.15.6",
+    "js-base64": "^2.5.1",
+    "js-cookie": "^2.2.0",
+    "js-md5": "^0.7.3",
+    "sm-crypto": "^0.3.13",
+    "mockjs": "^1.0.1-beta3",
+    "node-gyp": "^5.0.6",
+    "nprogress": "^0.2.0",
+    "portfinder": "^1.0.23",
+    "script-loader": "^0.7.2",
+    "vue": "^2.6.10",
+    "vue-axios": "^2.1.2",
+    "vue-i18n": "^8.7.0",
+    "vue-router": "^3.0.1",
+    "vuex": "^3.1.1"
+  },
+  "devDependencies": {
+    "@vue/cli-plugin-babel": "^3.1.1",
+    "@vue/cli-plugin-eslint": "^3.1.5",
+    "@vue/cli-service": "^3.1.4",
+    "chai": "^4.1.2",
+    "sass": "^1.77.6",
+    "sass-loader": "^10.0.5",
+    "vue-template-compiler": "^2.5.17",
+    "webpack-bundle-analyzer": "^3.0.3"
+  },
+  "lint-staged": {
+    "*.js": [
+      "vue-cli-service lint",
+      "git add"
+    ],
+    "*.vue": [
+      "vue-cli-service lint",
+      "git add"
+    ]
+  }
+}

File diff suppressed because it is too large
+ 11 - 0
public/cdn/animate/3.5.2/animate.css


File diff suppressed because it is too large
+ 9 - 0
public/cdn/avue/2.12.6/avue.min.js


File diff suppressed because it is too large
+ 1 - 0
public/cdn/avue/2.12.6/index.css


File diff suppressed because it is too large
+ 9 - 0
public/cdn/axios/1.0.0/axios.min.js


File diff suppressed because it is too large
+ 1 - 0
public/cdn/element-ui/2.15.6/index.js


BIN
public/cdn/element-ui/2.15.6/theme-chalk/fonts/element-icons.ttf


BIN
public/cdn/element-ui/2.15.6/theme-chalk/fonts/element-icons.woff


File diff suppressed because it is too large
+ 1 - 0
public/cdn/element-ui/2.15.6/theme-chalk/index.css


File diff suppressed because it is too large
+ 201 - 0
public/cdn/iconfont/avue/iconfont.css


BIN
public/cdn/iconfont/avue/iconfont.eot


File diff suppressed because it is too large
+ 1 - 0
public/cdn/iconfont/avue/iconfont.js


+ 331 - 0
public/cdn/iconfont/avue/iconfont.json

@@ -0,0 +1,331 @@
+{
+  "id": "567566",
+  "name": "avue-cli",
+  "font_family": "iconfont",
+  "css_prefix_text": "icon-",
+  "description": "",
+  "glyphs": [
+    {
+      "icon_id": "5779983",
+      "name": "中英文",
+      "font_class": "zhongyingwen",
+      "unicode": "e61d",
+      "unicode_decimal": 58909
+    },
+    {
+      "icon_id": "6270863",
+      "name": "菜单",
+      "font_class": "caidan",
+      "unicode": "e891",
+      "unicode_decimal": 59537
+    },
+    {
+      "icon_id": "696478",
+      "name": "日志",
+      "font_class": "rizhi1",
+      "unicode": "e6af",
+      "unicode_decimal": 59055
+    },
+    {
+      "icon_id": "3416675",
+      "name": "锁屏",
+      "font_class": "suoping",
+      "unicode": "e6e9",
+      "unicode_decimal": 59113
+    },
+    {
+      "icon_id": "6631809",
+      "name": "主题",
+      "font_class": "zhuti",
+      "unicode": "e620",
+      "unicode_decimal": 58912
+    },
+    {
+      "icon_id": "1261208",
+      "name": "bug",
+      "font_class": "bug",
+      "unicode": "e649",
+      "unicode_decimal": 58953
+    },
+    {
+      "icon_id": "288984",
+      "name": "微信",
+      "font_class": "weixin1",
+      "unicode": "e679",
+      "unicode_decimal": 59001
+    },
+    {
+      "icon_id": "1037628",
+      "name": "qq",
+      "font_class": "qq1",
+      "unicode": "e609",
+      "unicode_decimal": 58889
+    },
+    {
+      "icon_id": "1046777",
+      "name": "验证码",
+      "font_class": "yanzhengma",
+      "unicode": "e616",
+      "unicode_decimal": 58902
+    },
+    {
+      "icon_id": "2559431",
+      "name": "用户",
+      "font_class": "yonghu",
+      "unicode": "e6b3",
+      "unicode_decimal": 59059
+    },
+    {
+      "icon_id": "2678617",
+      "name": "密码",
+      "font_class": "mima",
+      "unicode": "e652",
+      "unicode_decimal": 58962
+    },
+    {
+      "icon_id": "2678634",
+      "name": "手机",
+      "font_class": "shouji",
+      "unicode": "e65d",
+      "unicode_decimal": 58973
+    },
+    {
+      "icon_id": "554313",
+      "name": "wifi路由",
+      "font_class": "iconset0265",
+      "unicode": "e6a4",
+      "unicode_decimal": 59044
+    },
+    {
+      "icon_id": "1149090",
+      "name": "动态",
+      "font_class": "dongtai",
+      "unicode": "e6a7",
+      "unicode_decimal": 59047
+    },
+    {
+      "icon_id": "3851337",
+      "name": "参数",
+      "font_class": "canshu",
+      "unicode": "e655",
+      "unicode_decimal": 58965
+    },
+    {
+      "icon_id": "167168",
+      "name": "数据展示2",
+      "font_class": "shujuzhanshi2",
+      "unicode": "e651",
+      "unicode_decimal": 58961
+    },
+    {
+      "icon_id": "1025135",
+      "name": "退出全屏",
+      "font_class": "tuichuquanping",
+      "unicode": "e755",
+      "unicode_decimal": 59221
+    },
+    {
+      "icon_id": "1166053",
+      "name": "日志",
+      "font_class": "rizhi",
+      "unicode": "e61c",
+      "unicode_decimal": 58908
+    },
+    {
+      "icon_id": "500861",
+      "name": "错误提示图标",
+      "font_class": "cuowutishitubiao",
+      "unicode": "e6a0",
+      "unicode_decimal": 59040
+    },
+    {
+      "icon_id": "554205",
+      "name": "闪电",
+      "font_class": "iconset0216",
+      "unicode": "e673",
+      "unicode_decimal": 58995
+    },
+    {
+      "icon_id": "1572731",
+      "name": "错误",
+      "font_class": "debug",
+      "unicode": "e611",
+      "unicode_decimal": 58897
+    },
+    {
+      "icon_id": "1305474",
+      "name": "权限",
+      "font_class": "quanxian",
+      "unicode": "e63f",
+      "unicode_decimal": 58943
+    },
+    {
+      "icon_id": "1684809",
+      "name": "刷新",
+      "font_class": "shuaxin",
+      "unicode": "e6ba",
+      "unicode_decimal": 59066
+    },
+    {
+      "icon_id": "579385",
+      "name": "全屏",
+      "font_class": "quanping",
+      "unicode": "e615",
+      "unicode_decimal": 58901
+    },
+    {
+      "icon_id": "2154823",
+      "name": "播放器-(锁屏)_44",
+      "font_class": "bofangqi-suoping",
+      "unicode": "e699",
+      "unicode_decimal": 59033
+    },
+    {
+      "icon_id": "1160830",
+      "name": "navicon",
+      "font_class": "navicon",
+      "unicode": "e84e",
+      "unicode_decimal": 59470
+    },
+    {
+      "icon_id": "1250665",
+      "name": "圆",
+      "font_class": "yuan",
+      "unicode": "e657",
+      "unicode_decimal": 58967
+    },
+    {
+      "icon_id": "680969",
+      "name": "表单",
+      "font_class": "biaodan",
+      "unicode": "e715",
+      "unicode_decimal": 59157
+    },
+    {
+      "icon_id": "1164693",
+      "name": "系统管理",
+      "font_class": "liuliangyunpingtaitubiao08",
+      "unicode": "e68f",
+      "unicode_decimal": 59023
+    },
+    {
+      "icon_id": "1723000",
+      "name": "菜单管理",
+      "font_class": "caidanguanli",
+      "unicode": "e7c0",
+      "unicode_decimal": 59328
+    },
+    {
+      "icon_id": "2486611",
+      "name": "用户管理",
+      "font_class": "yonghuguanli",
+      "unicode": "e610",
+      "unicode_decimal": 58896
+    },
+    {
+      "icon_id": "2959039",
+      "name": "角色管理",
+      "font_class": "jiaoseguanli",
+      "unicode": "e624",
+      "unicode_decimal": 58916
+    },
+    {
+      "icon_id": "1164841",
+      "name": "错误",
+      "font_class": "cuowu",
+      "unicode": "e626",
+      "unicode_decimal": 58918
+    },
+    {
+      "icon_id": "591722",
+      "name": "wxb工具",
+      "font_class": "wxbgongju",
+      "unicode": "e61b",
+      "unicode_decimal": 58907
+    },
+    {
+      "icon_id": "804054",
+      "name": "退出",
+      "font_class": "tuichu",
+      "unicode": "e642",
+      "unicode_decimal": 58946
+    },
+    {
+      "icon_id": "1191509",
+      "name": "导航栏_模式02",
+      "font_class": "daohanglanmoshi02",
+      "unicode": "e623",
+      "unicode_decimal": 58915
+    },
+    {
+      "icon_id": "1005775",
+      "name": "阿里巴巴",
+      "font_class": "changyonglogo27",
+      "unicode": "e714",
+      "unicode_decimal": 59156
+    },
+    {
+      "icon_id": "128369",
+      "name": "欢迎页",
+      "font_class": "huanyingye",
+      "unicode": "e60c",
+      "unicode_decimal": 58892
+    },
+    {
+      "icon_id": "586924",
+      "name": "iframe",
+      "font_class": "iframe",
+      "unicode": "e74c",
+      "unicode_decimal": 59212
+    },
+    {
+      "icon_id": "700335",
+      "name": "360",
+      "font_class": "msnui-360",
+      "unicode": "e78a",
+      "unicode_decimal": 59274
+    },
+    {
+      "icon_id": "833695",
+      "name": "搜狐",
+      "font_class": "souhu",
+      "unicode": "e62d",
+      "unicode_decimal": 58925
+    },
+    {
+      "icon_id": "1114667",
+      "name": "图标",
+      "font_class": "tubiao",
+      "unicode": "e630",
+      "unicode_decimal": 58928
+    },
+    {
+      "icon_id": "1346645",
+      "name": "百度1",
+      "font_class": "baidu1",
+      "unicode": "e621",
+      "unicode_decimal": 58913
+    },
+    {
+      "icon_id": "1789257",
+      "name": "表格",
+      "font_class": "biaoge",
+      "unicode": "e6b5",
+      "unicode_decimal": 59061
+    },
+    {
+      "icon_id": "695468",
+      "name": "QQ",
+      "font_class": "qq",
+      "unicode": "e631",
+      "unicode_decimal": 58929
+    },
+    {
+      "icon_id": "851731",
+      "name": "微信",
+      "font_class": "weixin",
+      "unicode": "e632",
+      "unicode_decimal": 58930
+    }
+  ]
+}

File diff suppressed because it is too large
+ 164 - 0
public/cdn/iconfont/avue/iconfont.svg


BIN
public/cdn/iconfont/avue/iconfont.ttf


BIN
public/cdn/iconfont/avue/iconfont.woff


BIN
public/cdn/iconfont/avue/iconfont.woff2


File diff suppressed because it is too large
+ 1043 - 0
public/cdn/iconfont/common/iconfont.css


File diff suppressed because it is too large
+ 1 - 0
public/cdn/iconfont/common/iconfont.js


File diff suppressed because it is too large
+ 1808 - 0
public/cdn/iconfont/common/iconfont.json


BIN
public/cdn/iconfont/common/iconfont.ttf


BIN
public/cdn/iconfont/common/iconfont.woff


BIN
public/cdn/iconfont/common/iconfont.woff2


+ 23 - 0
public/cdn/iconfont/index.css

@@ -0,0 +1,23 @@
+
+[class^="icon-"]{
+	font-family: "iconfont" !important;
+	/* 以下内容参照第三方图标库本身的规则 */
+	font-size: 18px !important;
+	font-style: normal;
+	-webkit-font-smoothing: antialiased;
+	-moz-osx-font-smoothing: grayscale;
+}
+.el-menu-item [class^=icon-] {
+    margin-right: 5px;
+    width: 24px;
+    text-align: center;
+    font-size: 18px;
+    vertical-align: middle;
+}
+.el-submenu [class^=icon-] {
+    vertical-align: middle;
+    margin-right: 5px;
+    width: 24px;
+    text-align: center;
+    font-size: 18px;
+}

File diff suppressed because it is too large
+ 345 - 0
public/cdn/iconfont/saber/iconfont.css


BIN
public/cdn/iconfont/saber/iconfont.eot


File diff suppressed because it is too large
+ 1 - 0
public/cdn/iconfont/saber/iconfont.js


+ 583 - 0
public/cdn/iconfont/saber/iconfont.json

@@ -0,0 +1,583 @@
+{
+  "id": "1066523",
+  "name": "saber",
+  "font_family": "iconfont",
+  "css_prefix_text": "icon",
+  "description": "saber图标库",
+  "glyphs": [
+    {
+      "icon_id": "7396772",
+      "name": "gitee",
+      "font_class": "gitee2",
+      "unicode": "e6d6",
+      "unicode_decimal": 59094
+    },
+    {
+      "icon_id": "431779",
+      "name": "github",
+      "font_class": "github",
+      "unicode": "e709",
+      "unicode_decimal": 59145
+    },
+    {
+      "icon_id": "7766806",
+      "name": "icon_wechat",
+      "font_class": "icon_wechat",
+      "unicode": "ebde",
+      "unicode_decimal": 60382
+    },
+    {
+      "icon_id": "7766735",
+      "name": "icon_exchange",
+      "font_class": "icon_exchange",
+      "unicode": "eba7",
+      "unicode_decimal": 60327
+    },
+    {
+      "icon_id": "7766736",
+      "name": "icon_ding",
+      "font_class": "icon_ding",
+      "unicode": "eba8",
+      "unicode_decimal": 60328
+    },
+    {
+      "icon_id": "7766737",
+      "name": "icon_down",
+      "font_class": "icon_down",
+      "unicode": "eba9",
+      "unicode_decimal": 60329
+    },
+    {
+      "icon_id": "7766740",
+      "name": "icon_glass",
+      "font_class": "icon_glass",
+      "unicode": "ebaa",
+      "unicode_decimal": 60330
+    },
+    {
+      "icon_id": "7766742",
+      "name": "icon_GPS",
+      "font_class": "icon_GPS",
+      "unicode": "ebab",
+      "unicode_decimal": 60331
+    },
+    {
+      "icon_id": "7766743",
+      "name": "icon_hardware_fill",
+      "font_class": "icon_hardware_fill",
+      "unicode": "ebac",
+      "unicode_decimal": 60332
+    },
+    {
+      "icon_id": "7766745",
+      "name": "icon_im_more",
+      "font_class": "icon_im_more",
+      "unicode": "ebad",
+      "unicode_decimal": 60333
+    },
+    {
+      "icon_id": "7766747",
+      "name": "icon_group",
+      "font_class": "icon_group",
+      "unicode": "ebae",
+      "unicode_decimal": 60334
+    },
+    {
+      "icon_id": "7766748",
+      "name": "icon_horn",
+      "font_class": "icon_horn",
+      "unicode": "ebaf",
+      "unicode_decimal": 60335
+    },
+    {
+      "icon_id": "7766749",
+      "name": "icon_im_face",
+      "font_class": "icon_im_face",
+      "unicode": "ebb0",
+      "unicode_decimal": 60336
+    },
+    {
+      "icon_id": "7766752",
+      "name": "icon_launch_page",
+      "font_class": "icon_launch_page",
+      "unicode": "ebb1",
+      "unicode_decimal": 60337
+    },
+    {
+      "icon_id": "7766753",
+      "name": "icon_likegood",
+      "font_class": "icon_likegood",
+      "unicode": "ebb2",
+      "unicode_decimal": 60338
+    },
+    {
+      "icon_id": "7766754",
+      "name": "icon_index_line",
+      "font_class": "icon_index_line",
+      "unicode": "ebb3",
+      "unicode_decimal": 60339
+    },
+    {
+      "icon_id": "7766755",
+      "name": "icon_live",
+      "font_class": "icon_live",
+      "unicode": "ebb4",
+      "unicode_decimal": 60340
+    },
+    {
+      "icon_id": "7766756",
+      "name": "icon_link",
+      "font_class": "icon_link",
+      "unicode": "ebb5",
+      "unicode_decimal": 60341
+    },
+    {
+      "icon_id": "7766757",
+      "name": "icon_im_voice",
+      "font_class": "icon_im_voice",
+      "unicode": "ebb6",
+      "unicode_decimal": 60342
+    },
+    {
+      "icon_id": "7766758",
+      "name": "icon_mobilephone",
+      "font_class": "icon_mobilephone",
+      "unicode": "ebb7",
+      "unicode_decimal": 60343
+    },
+    {
+      "icon_id": "7766759",
+      "name": "icon_dmail",
+      "font_class": "icon_dmail",
+      "unicode": "ebb8",
+      "unicode_decimal": 60344
+    },
+    {
+      "icon_id": "7766760",
+      "name": "icon_message",
+      "font_class": "icon_message",
+      "unicode": "ebb9",
+      "unicode_decimal": 60345
+    },
+    {
+      "icon_id": "7766763",
+      "name": "icon_more",
+      "font_class": "icon_more",
+      "unicode": "ebba",
+      "unicode_decimal": 60346
+    },
+    {
+      "icon_id": "7766764",
+      "name": "icon_left",
+      "font_class": "icon_left",
+      "unicode": "ebbb",
+      "unicode_decimal": 60347
+    },
+    {
+      "icon_id": "7766765",
+      "name": "icon_next_arrow",
+      "font_class": "icon_next_arrow",
+      "unicode": "ebbc",
+      "unicode_decimal": 60348
+    },
+    {
+      "icon_id": "7766766",
+      "name": "icon_notice",
+      "font_class": "icon_notice",
+      "unicode": "ebbd",
+      "unicode_decimal": 60349
+    },
+    {
+      "icon_id": "7766769",
+      "name": "icon_namecard",
+      "font_class": "icon_namecard",
+      "unicode": "ebbe",
+      "unicode_decimal": 60350
+    },
+    {
+      "icon_id": "7766770",
+      "name": "icon_phone",
+      "font_class": "icon_phone",
+      "unicode": "ebbf",
+      "unicode_decimal": 60351
+    },
+    {
+      "icon_id": "7766771",
+      "name": "icon_qq",
+      "font_class": "icon_qq",
+      "unicode": "ebc0",
+      "unicode_decimal": 60352
+    },
+    {
+      "icon_id": "7766772",
+      "name": "icon_photo",
+      "font_class": "icon_photo",
+      "unicode": "ebc1",
+      "unicode_decimal": 60353
+    },
+    {
+      "icon_id": "7766774",
+      "name": "icon_redpacket",
+      "font_class": "icon_redpacket",
+      "unicode": "ebc2",
+      "unicode_decimal": 60354
+    },
+    {
+      "icon_id": "7766775",
+      "name": "icon_patriarch",
+      "font_class": "icon_patriarch",
+      "unicode": "ebc3",
+      "unicode_decimal": 60355
+    },
+    {
+      "icon_id": "7766776",
+      "name": "icon_roundclose",
+      "font_class": "icon_roundclose",
+      "unicode": "ebc4",
+      "unicode_decimal": 60356
+    },
+    {
+      "icon_id": "7766777",
+      "name": "icon_im_keyboard",
+      "font_class": "icon_im_keyboard",
+      "unicode": "ebc5",
+      "unicode_decimal": 60357
+    },
+    {
+      "icon_id": "7766778",
+      "name": "icon_roundreduce",
+      "font_class": "icon_roundreduce",
+      "unicode": "ebc6",
+      "unicode_decimal": 60358
+    },
+    {
+      "icon_id": "7766780",
+      "name": "icon_QRcode",
+      "font_class": "icon_QRcode",
+      "unicode": "ebc7",
+      "unicode_decimal": 60359
+    },
+    {
+      "icon_id": "7766781",
+      "name": "icon_savememo",
+      "font_class": "icon_savememo",
+      "unicode": "ebc8",
+      "unicode_decimal": 60360
+    },
+    {
+      "icon_id": "7766782",
+      "name": "icon_roundadd",
+      "font_class": "icon_roundadd",
+      "unicode": "ebc9",
+      "unicode_decimal": 60361
+    },
+    {
+      "icon_id": "7766783",
+      "name": "icon_refresh",
+      "font_class": "icon_refresh",
+      "unicode": "ebca",
+      "unicode_decimal": 60362
+    },
+    {
+      "icon_id": "7766784",
+      "name": "icon_search",
+      "font_class": "icon_search",
+      "unicode": "ebcb",
+      "unicode_decimal": 60363
+    },
+    {
+      "icon_id": "7766785",
+      "name": "icon_scan",
+      "font_class": "icon_scan",
+      "unicode": "ebcc",
+      "unicode_decimal": 60364
+    },
+    {
+      "icon_id": "7766786",
+      "name": "icon_send",
+      "font_class": "icon_send",
+      "unicode": "ebcd",
+      "unicode_decimal": 60365
+    },
+    {
+      "icon_id": "7766787",
+      "name": "icon_principal",
+      "font_class": "icon_principal",
+      "unicode": "ebce",
+      "unicode_decimal": 60366
+    },
+    {
+      "icon_id": "7766789",
+      "name": "icon_scan_namecard",
+      "font_class": "icon_scan_namecard",
+      "unicode": "ebcf",
+      "unicode_decimal": 60367
+    },
+    {
+      "icon_id": "7766790",
+      "name": "icon_secret",
+      "font_class": "icon_secret",
+      "unicode": "ebd0",
+      "unicode_decimal": 60368
+    },
+    {
+      "icon_id": "7766791",
+      "name": "icon_share",
+      "font_class": "icon_share",
+      "unicode": "ebd1",
+      "unicode_decimal": 60369
+    },
+    {
+      "icon_id": "7766793",
+      "name": "icon_sms",
+      "font_class": "icon_sms",
+      "unicode": "ebd2",
+      "unicode_decimal": 60370
+    },
+    {
+      "icon_id": "7766795",
+      "name": "icon_setting",
+      "font_class": "icon_setting",
+      "unicode": "ebd3",
+      "unicode_decimal": 60371
+    },
+    {
+      "icon_id": "7766798",
+      "name": "icon_star",
+      "font_class": "icon_star",
+      "unicode": "ebd4",
+      "unicode_decimal": 60372
+    },
+    {
+      "icon_id": "7766799",
+      "name": "icon_subordinate",
+      "font_class": "icon_subordinate",
+      "unicode": "ebd5",
+      "unicode_decimal": 60373
+    },
+    {
+      "icon_id": "7766800",
+      "name": "icon_task",
+      "font_class": "icon_task",
+      "unicode": "ebd6",
+      "unicode_decimal": 60374
+    },
+    {
+      "icon_id": "7766803",
+      "name": "icon_study",
+      "font_class": "icon_study",
+      "unicode": "ebd7",
+      "unicode_decimal": 60375
+    },
+    {
+      "icon_id": "7766808",
+      "name": "icon_work",
+      "font_class": "icon_work",
+      "unicode": "ebd8",
+      "unicode_decimal": 60376
+    },
+    {
+      "icon_id": "7766811",
+      "name": "icon_safety",
+      "font_class": "icon_safety",
+      "unicode": "ebd9",
+      "unicode_decimal": 60377
+    },
+    {
+      "icon_id": "7766813",
+      "name": "icon_voipphone",
+      "font_class": "icon_voipphone",
+      "unicode": "ebda",
+      "unicode_decimal": 60378
+    },
+    {
+      "icon_id": "7766815",
+      "name": "icon_shakehands",
+      "font_class": "icon_shakehands",
+      "unicode": "ebdb",
+      "unicode_decimal": 60379
+    },
+    {
+      "icon_id": "7766817",
+      "name": "icon_task_done",
+      "font_class": "icon_task_done",
+      "unicode": "ebdc",
+      "unicode_decimal": 60380
+    },
+    {
+      "icon_id": "7766820",
+      "name": "icon_workfile_line",
+      "font_class": "icon_workfile_line",
+      "unicode": "ebdd",
+      "unicode_decimal": 60381
+    },
+    {
+      "icon_id": "7766709",
+      "name": "icon_add",
+      "font_class": "icon_add",
+      "unicode": "eb8f",
+      "unicode_decimal": 60303
+    },
+    {
+      "icon_id": "7766710",
+      "name": "icon_addmessage",
+      "font_class": "icon_addmessage",
+      "unicode": "eb90",
+      "unicode_decimal": 60304
+    },
+    {
+      "icon_id": "7766711",
+      "name": "icon_addresslist",
+      "font_class": "icon_addresslist",
+      "unicode": "eb91",
+      "unicode_decimal": 60305
+    },
+    {
+      "icon_id": "7766712",
+      "name": "icon_affiliations_li",
+      "font_class": "icon_affiliations_li",
+      "unicode": "eb92",
+      "unicode_decimal": 60306
+    },
+    {
+      "icon_id": "7766713",
+      "name": "icon_addperson",
+      "font_class": "icon_addperson",
+      "unicode": "eb93",
+      "unicode_decimal": 60307
+    },
+    {
+      "icon_id": "7766714",
+      "name": "icon_boss",
+      "font_class": "icon_boss",
+      "unicode": "eb94",
+      "unicode_decimal": 60308
+    },
+    {
+      "icon_id": "7766715",
+      "name": "icon_alipay_line",
+      "font_class": "icon_alipay_line",
+      "unicode": "eb95",
+      "unicode_decimal": 60309
+    },
+    {
+      "icon_id": "7766716",
+      "name": "icon_addressbook",
+      "font_class": "icon_addressbook",
+      "unicode": "eb96",
+      "unicode_decimal": 60310
+    },
+    {
+      "icon_id": "7766717",
+      "name": "icon_at",
+      "font_class": "icon_at",
+      "unicode": "eb97",
+      "unicode_decimal": 60311
+    },
+    {
+      "icon_id": "7766718",
+      "name": "icon_airplay",
+      "font_class": "icon_airplay",
+      "unicode": "eb98",
+      "unicode_decimal": 60312
+    },
+    {
+      "icon_id": "7766719",
+      "name": "icon_calendar",
+      "font_class": "icon_calendar",
+      "unicode": "eb99",
+      "unicode_decimal": 60313
+    },
+    {
+      "icon_id": "7766720",
+      "name": "icon_attestation",
+      "font_class": "icon_attestation",
+      "unicode": "eb9a",
+      "unicode_decimal": 60314
+    },
+    {
+      "icon_id": "7766721",
+      "name": "icon_camera",
+      "font_class": "icon_camera",
+      "unicode": "eb9b",
+      "unicode_decimal": 60315
+    },
+    {
+      "icon_id": "7766722",
+      "name": "icon_certificate_fil",
+      "font_class": "icon_certificate_fil",
+      "unicode": "eb9c",
+      "unicode_decimal": 60316
+    },
+    {
+      "icon_id": "7766723",
+      "name": "icon_coinpurse_line",
+      "font_class": "icon_coinpurse_line",
+      "unicode": "eb9d",
+      "unicode_decimal": 60317
+    },
+    {
+      "icon_id": "7766725",
+      "name": "icon_compile",
+      "font_class": "icon_compile",
+      "unicode": "eb9e",
+      "unicode_decimal": 60318
+    },
+    {
+      "icon_id": "7766726",
+      "name": "icon_details",
+      "font_class": "icon_details",
+      "unicode": "eb9f",
+      "unicode_decimal": 60319
+    },
+    {
+      "icon_id": "7766728",
+      "name": "icon_cloud_history",
+      "font_class": "icon_cloud_history",
+      "unicode": "eba0",
+      "unicode_decimal": 60320
+    },
+    {
+      "icon_id": "7766729",
+      "name": "icon_community_line",
+      "font_class": "icon_community_line",
+      "unicode": "eba1",
+      "unicode_decimal": 60321
+    },
+    {
+      "icon_id": "7766730",
+      "name": "icon_discovery",
+      "font_class": "icon_discovery",
+      "unicode": "eba2",
+      "unicode_decimal": 60322
+    },
+    {
+      "icon_id": "7766731",
+      "name": "icon_delete",
+      "font_class": "icon_delete",
+      "unicode": "eba3",
+      "unicode_decimal": 60323
+    },
+    {
+      "icon_id": "7766732",
+      "name": "icon_dispose",
+      "font_class": "icon_dispose",
+      "unicode": "eba4",
+      "unicode_decimal": 60324
+    },
+    {
+      "icon_id": "7766733",
+      "name": "icon_doc",
+      "font_class": "icon_doc",
+      "unicode": "eba5",
+      "unicode_decimal": 60325
+    },
+    {
+      "icon_id": "7766734",
+      "name": "icon_cspace",
+      "font_class": "icon_cspace",
+      "unicode": "eba6",
+      "unicode_decimal": 60326
+    }
+  ]
+}

File diff suppressed because it is too large
+ 272 - 0
public/cdn/iconfont/saber/iconfont.svg


BIN
public/cdn/iconfont/saber/iconfont.ttf


BIN
public/cdn/iconfont/saber/iconfont.woff


BIN
public/cdn/iconfont/saber/iconfont.woff2


BIN
public/cdn/nutflow/wf-design-base/fonts/bpmn.08b5f281.eot


BIN
public/cdn/nutflow/wf-design-base/fonts/bpmn.3c4c9f45.woff2


BIN
public/cdn/nutflow/wf-design-base/fonts/bpmn.acbc6cbd.woff


BIN
public/cdn/nutflow/wf-design-base/fonts/bpmn.f922519e.ttf


BIN
public/cdn/nutflow/wf-design-base/fonts/codicon.22349029.ttf


BIN
public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.674f50d2.eot


BIN
public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.af7ae505.woff2


BIN
public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.b06871f2.ttf


BIN
public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.fee66e71.woff


File diff suppressed because it is too large
+ 224 - 0
public/cdn/nutflow/wf-design-base/img/bpmn.1381b44e.svg


File diff suppressed because it is too large
+ 2671 - 0
public/cdn/nutflow/wf-design-base/img/fontawesome-webfont.912ec66d.svg


File diff suppressed because it is too large
+ 25 - 0
public/cdn/nutflow/wf-design-base/index.umd.min.js


File diff suppressed because it is too large
+ 6 - 0
public/cdn/vue-router/3.0.1/vue-router.min.js


File diff suppressed because it is too large
+ 6 - 0
public/cdn/vue/2.6.10/vue.min.js


File diff suppressed because it is too large
+ 6 - 0
public/cdn/vuex/3.1.1/vuex.min.js


File diff suppressed because it is too large
+ 7 - 0
public/cdn/xlsx/FileSaver.min.js


File diff suppressed because it is too large
+ 23 - 0
public/cdn/xlsx/xlsx.full.min.js


BIN
public/favicon.png


File diff suppressed because it is too large
+ 508 - 0
public/img/bg/403.svg


File diff suppressed because it is too large
+ 314 - 0
public/img/bg/404.svg


File diff suppressed because it is too large
+ 208 - 0
public/img/bg/500.svg


BIN
public/img/bg/bg.jpg


BIN
public/img/bg/bg1.jpg


BIN
public/img/bg/bg2.jpg


BIN
public/img/bg/bg3.jpg


BIN
public/img/bg/bg4.jpg


BIN
public/img/bg/cloud.jpg


BIN
public/img/bg/img-logo.png


BIN
public/img/bg/login.png


BIN
public/img/bg/logo.png


BIN
public/img/bg/star-squashed.jpg


BIN
public/img/bg/vip1.png


BIN
public/img/bg/vip2.png


BIN
public/img/bg/vip3.png


BIN
public/img/bg/vip4.png


BIN
public/img/logo.png


BIN
public/img/mock/card/card-1.jpg


BIN
public/img/mock/card/card-2.jpg


BIN
public/img/mock/card/card-3.jpg


BIN
public/img/mock/card/card-4.jpg


BIN
public/img/mock/cli/1.png


BIN
public/img/mock/cli/2.png


BIN
public/img/mock/cli/3.png


BIN
public/img/mock/iconfont.png


+ 116 - 0
public/index.html

@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+  <meta http-equiv="X-UA-Compatible" content="IE=edge">
+  <meta http-equiv="X-UA-Compatible" content="chrome=1"/>
+  <meta name="renderer" content="webkit">
+  <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0">
+  <meta name="apple-mobile-web-app-capable" content="yes">
+  <meta name="apple-mobile-web-app-status-bar-style" content="black">
+  <meta name="format-detection" content="telephone=no">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/element-ui/2.15.6/theme-chalk/index.css">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/animate/3.5.2/animate.css">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/index.css">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/avue/iconfont.css">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/saber/iconfont.css">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/common/iconfont.css">
+  <link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/2.12.6/index.css">
+  <script src="<%= BASE_URL %>cdn/xlsx/FileSaver.min.js"></script>
+  <script src="<%= BASE_URL %>cdn/xlsx/xlsx.full.min.js"></script>
+  <link rel="icon" href="<%= BASE_URL %>favicon.png">
+  <title>微服务开发平台</title>
+  <style>
+    html,
+    body,
+    #app {
+      height: 100%;
+      margin: 0;
+      padding: 0;
+    }
+
+    .avue-home {
+      background-color: #303133;
+      height: 100%;
+      display: flex;
+      flex-direction: column;
+    }
+
+    .avue-home__main {
+      user-select: none;
+      width: 100%;
+      flex-grow: 1;
+      display: flex;
+      justify-content: center;
+      align-items: center;
+      flex-direction: column;
+    }
+
+    .avue-home__footer {
+      width: 100%;
+      flex-grow: 0;
+      text-align: center;
+      padding: 1em 0;
+    }
+
+    .avue-home__footer > a {
+      font-size: 12px;
+      color: #ABABAB;
+      text-decoration: none;
+    }
+
+    .avue-home__loading {
+      height: 32px;
+      width: 32px;
+      margin-bottom: 20px;
+    }
+
+    .avue-home__title {
+      color: #FFF;
+      font-size: 14px;
+      margin-bottom: 10px;
+    }
+
+    .avue-home__sub-title {
+      color: #ABABAB;
+      font-size: 12px;
+    }
+  </style>
+</head>
+
+<body>
+<noscript>
+  <strong>
+    很抱歉,如果没有 JavaScript 支持,Saber 将不能正常工作。请启用浏览器的 JavaScript 然后继续。
+  </strong>
+</noscript>
+<div id="app">
+  <div class="avue-home">
+    <div class="avue-home__main">
+      <img class="avue-home__loading" src="<%= BASE_URL %>svg/loading-spin.svg" alt="loading">
+      <div class="avue-home__title">
+        正在加载资源
+      </div>
+      <div class="avue-home__sub-title d">
+        初次加载资源可能需要较多时间 请耐心等待
+      </div>
+    </div>
+    <div class="avue-home__footer">
+      <a href="https://bladex.cn" target="_blank">
+        https://bladex.cn </a>
+    </div>
+  </div>
+</div>
+<!-- built files will be auto injected -->
+<script src="<%= BASE_URL %>util/aes.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/vue/2.6.10/vue.min.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/vuex/3.1.1/vuex.min.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/vue-router/3.0.1/vue-router.min.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/axios/1.0.0/axios.min.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/element-ui/2.15.6/index.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/avue/2.12.6/avue.min.js" charset="utf-8"></script>
+<script src="<%= BASE_URL %>cdn/nutflow/wf-design-base/index.umd.min.js" charset="utf-8"></script>
+</body>
+
+</html>

+ 6 - 0
public/svg/loading-spin.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
+  <path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
+  <path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z">
+    <animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite" />
+  </path>
+</svg>

File diff suppressed because it is too large
+ 105 - 0
public/util/aes.js


BIN
public/util/screen/guge.png


BIN
public/util/screen/huohu.png


+ 32 - 0
public/util/screen/screen.css

@@ -0,0 +1,32 @@
+.el-tip {
+    position: fixed;
+    left: 50%;
+    top: 50%;
+    width: 500px;
+    padding: 8px 16px;
+    margin: 0;
+    margin-left: -250px;
+    margin-top: -60px;
+    box-sizing: border-box;
+    border-radius: 4px;
+    position: relative;
+    background-color: #fff;
+    overflow: hidden;
+    opacity: 1;
+    display: flex;
+    align-items: center;
+    transition: opacity .2s;
+}
+
+.el-tip--warning {
+    background-color: #fdf6ec;
+    color: #e6a23c;
+}
+
+.el-tip__title {
+    line-height: 18px;
+}
+.el-tip_img img{
+    width: 80px;
+    height: 80px;
+}

+ 47 - 0
public/util/screen/screen.js

@@ -0,0 +1,47 @@
+function util() {
+    this.flag = true;
+    var body = document.body;
+    var safe = this;
+    var validVersion = function() {
+        var browser = navigator.appName
+        var b_version = navigator.appVersion
+        var version = b_version.split(";");
+        var trim_Version = version[1].replace(/[ ]/g, "");
+        if (trim_Version == 'WOW64') {
+            safe.flag = false
+        } else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE6.0") {
+            safe.flag = false
+        } else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE7.0") {
+            safe.flag = false
+        } else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE8.0") {
+            safe.flag = false
+        } else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE9.0") {
+            safe.flag = false
+        }
+    }
+    this.setBody = function() {
+        var str = '<div class="el-tip el-tip--warning" id="tip">' +
+            '<div class="el-tip_content">' +
+            '<span class="el-tip__title">' +
+            '您乘坐的浏览器版本太低了,你可以把浏览器从兼容模式调到极速模式' +
+            '<br /> 实在不行就换浏览器吧;' +
+            '</span>' +
+            '<div class="el-tip_img">' +
+            '<img src="/util/screen/huohu.png" alt="">' +
+            '<img src="/util/screen/guge.png" alt="">' +
+            '</div>' +
+            '</div>' +
+            '</div>';
+        body.innerHTML = str + body.innerHTML
+    }
+    this.init = function() {
+        validVersion(); //检测浏览器的版本
+        return this;
+    }
+}
+
+var creen = new util().init();
+var flag = creen.flag;
+if (!flag) {
+    creen.setBody();
+}

+ 30 - 0
src/App.vue

@@ -0,0 +1,30 @@
+<template>
+  <div id="app">
+    <router-view />
+  </div>
+</template>
+
+<script>
+export default {
+  name: "app",
+  data() {
+    return {};
+  },
+  watch: {},
+  created() {
+
+  },
+  methods: {},
+  computed: {}
+};
+</script>
+<style lang="scss">
+#app {
+  width: 100%;
+  height: 100%;
+  overflow: hidden;
+}
+.avue--detail .el-col{
+  margin-bottom: 0;
+}
+</style>

+ 53 - 0
src/api/base/region.js

@@ -0,0 +1,53 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+  return request({
+    url: '/api/blade-system/region/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const getLazyTree = (parentCode, params) => {
+  return request({
+    url: '/api/blade-system/region/lazy-tree',
+    method: 'get',
+    params: {
+      ...params,
+      parentCode
+    }
+  })
+}
+
+export const getDetail = (code) => {
+  return request({
+    url: '/api/blade-system/region/detail',
+    method: 'get',
+    params: {
+      code
+    }
+  })
+}
+
+export const remove = (id) => {
+  return request({
+    url: '/api/blade-system/region/remove',
+    method: 'post',
+    params: {
+      id,
+    }
+  })
+}
+
+export const submit = (row) => {
+  return request({
+    url: '/api/blade-system/region/submit',
+    method: 'post',
+    data: row
+  })
+}
+

+ 15 - 0
src/api/common.js

@@ -0,0 +1,15 @@
+import request from "@/router/axios";
+
+/**
+ * 文件流返回
+ * @param url 接口地址
+ * @param params 接口参数
+ */
+export const exportBlob = (url, params) => {
+  return request({
+    url: url,
+    params: params,
+    method: 'get',
+    responseType: 'blob'
+  })
+}

+ 60 - 0
src/api/desk/notice.js

@@ -0,0 +1,60 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+  return request({
+    url: '/api/blade-desk/notice/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    },
+    cryptoToken: false,
+    cryptoData: false
+  })
+}
+
+export const remove = (ids) => {
+  return request({
+    url: '/api/blade-desk/notice/remove',
+    method: 'post',
+    params: {
+      ids,
+    },
+    cryptoToken: false,
+    cryptoData: false
+  })
+}
+
+export const add = (row) => {
+  return request({
+    url: '/api/blade-desk/notice/submit',
+    method: 'post',
+    data: row,
+    cryptoToken: false,
+    cryptoData: false
+  })
+}
+
+export const update = (row) => {
+  return request({
+    url: '/api/blade-desk/notice/submit',
+    method: 'post',
+    data: row,
+    cryptoToken: false,
+    cryptoData: false
+  })
+}
+
+export const getNotice = (id) => {
+  return request({
+    url: '/api/blade-desk/notice/detail',
+    method: 'get',
+    params: {
+      id
+    },
+    cryptoToken: false,
+    cryptoData: false
+  })
+}
+

+ 123 - 0
src/api/flow/flow.js

@@ -0,0 +1,123 @@
+import request from '@/router/axios';
+
+export const modelList = (current, size, params) => {
+  return request({
+    url: '/api/blade-flow/model/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const managerList = (current, size, params) => {
+  return request({
+    url: '/api/blade-flow/manager/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const followList = (current, size, params) => {
+  return request({
+    url: '/api/blade-flow/follow/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+
+export const removeModel = (ids) => {
+  return request({
+    url: '/api/blade-flow/model/remove',
+    method: 'post',
+    params: {
+      ids,
+    }
+  })
+}
+
+export const deployModel = (params) => {
+  return request({
+    url: '/api/blade-flow/model/deploy',
+    method: 'post',
+    params
+  })
+}
+
+export const changeState = (params) => {
+  return request({
+    url: '/api/blade-flow/manager/change-state',
+    method: 'post',
+    params
+  })
+}
+
+export const deployUpload = (category, tenantIds, files) => {
+  const formData = new FormData();
+  formData.append('category', category);
+  formData.append('tenantIds', tenantIds);
+  files.forEach(file => {
+    formData.append('files', file);
+  });
+  return request({
+    headers: {
+      "Content-Type": "multipart/form-data"
+    },
+    url: '/api/blade-flow/manager/deploy-upload',
+    method: 'post',
+    data: formData
+  })
+}
+
+export const deleteDeployment = (deploymentIds) => {
+  return request({
+    url: '/api/blade-flow/manager/delete-deployment',
+    method: 'post',
+    params: {
+      deploymentIds,
+    }
+  })
+}
+
+export const deleteProcessInstance = (params) => {
+  return request({
+    url: '/api/blade-flow/follow/delete-process-instance',
+    method: 'post',
+    params
+  })
+}
+
+export const submitModel = (data) => {
+  return request({
+    url: '/api/blade-flow/model/submit',
+    method: 'post',
+    data
+  })
+}
+
+export const detail = (params) => {
+  return request({
+    url: '/api/blade-flow/model/detail',
+    method: 'get',
+    params
+  })
+}
+
+export const modelView = (params) => {
+  return request({
+    url: '/api/blade-flow/process/model-view',
+    method: 'get',
+    params
+  })
+}

+ 78 - 0
src/api/job/jobinfo.js

@@ -0,0 +1,78 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+  return request({
+    url: '/api/blade-job/job-info/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    },
+  });
+};
+
+export const getDetail = id => {
+  return request({
+    url: '/api/blade-job/job-info/detail',
+    method: 'get',
+    params: {
+      id,
+    },
+  });
+};
+
+export const remove = ids => {
+  return request({
+    url: '/api/blade-job/job-info/remove',
+    method: 'post',
+    params: {
+      ids,
+    },
+  });
+};
+
+export const add = row => {
+  return request({
+    url: '/api/blade-job/job-info/submit',
+    method: 'post',
+    data: row,
+  });
+};
+
+export const update = row => {
+  return request({
+    url: '/api/blade-job/job-info/submit',
+    method: 'post',
+    data: row,
+  });
+};
+
+export const change = row => {
+  return request({
+    url: '/api/blade-job/job-info/change',
+    method: 'post',
+    params: {
+      id: row.id,
+      enable: row.enable,
+    },
+  });
+};
+
+export const run = row => {
+  return request({
+    url: '/api/blade-job/job-info/run',
+    method: 'post',
+    params: {
+      id: row.id,
+    },
+  });
+};
+
+export const sync = row => {
+  return request({
+    url: '/api/blade-job/job-info/sync',
+    method: 'post',
+    data: row,
+  });
+};

+ 57 - 0
src/api/job/jobserver.js

@@ -0,0 +1,57 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+  return request({
+    url: '/api/blade-job/job-server/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    },
+  });
+};
+
+export const getDetail = id => {
+  return request({
+    url: '/api/blade-job/job-server/detail',
+    method: 'get',
+    params: {
+      id,
+    },
+  });
+};
+
+export const remove = ids => {
+  return request({
+    url: '/api/blade-job/job-server/remove',
+    method: 'post',
+    params: {
+      ids,
+    },
+  });
+};
+
+export const add = row => {
+  return request({
+    url: '/api/blade-job/job-server/submit',
+    method: 'post',
+    data: row,
+  });
+};
+
+export const update = row => {
+  return request({
+    url: '/api/blade-job/job-server/submit',
+    method: 'post',
+    data: row,
+  });
+};
+
+export const sync = row => {
+  return request({
+    url: '/api/blade-job/job-server/sync',
+    method: 'post',
+    data: row,
+  });
+};

+ 64 - 0
src/api/logs.js

@@ -0,0 +1,64 @@
+import request from '@/router/axios';
+
+export const getUsualList = (current, size) => {
+  return request({
+    url: '/api/blade-log/usual/list',
+    method: 'get',
+    params: {
+      current,
+      size
+    }
+  })
+}
+
+export const getApiList = (current, size) => {
+  return request({
+    url: '/api/blade-log/api/list',
+    method: 'get',
+    params: {
+      current,
+      size
+    }
+  })
+}
+
+export const getErrorList = (current, size) => {
+  return request({
+    url: '/api/blade-log/error/list',
+    method: 'get',
+    params: {
+      current,
+      size
+    }
+  })
+}
+
+
+export const getUsualLogs = (id) => {
+  return request({
+    url: '/api/blade-log/usual/detail',
+    method: 'get',
+    params: {
+      id,
+    }
+  })
+}
+export const getApiLogs = (id) => {
+  return request({
+    url: '/api/blade-log/api/detail',
+    method: 'get',
+    params: {
+      id,
+    }
+  })
+}
+export const getErrorLogs = (id) => {
+  return request({
+    url: '/api/blade-log/error/detail',
+    method: 'get',
+    params: {
+      id,
+    }
+  })
+}
+

+ 0 - 0
src/api/report/report.js


Some files were not shown because too many files changed in this diff