yuanhao 2 年之前
父節點
當前提交
292329658f
共有 100 個文件被更改,包括 646 次插入5541 次删除
  1. 2 1
      .gitignore
  2. 1 1
      in-client-qn-ui/src/config/setting.config.js
  3. 26 16
      in-client-qn/pom.xml
  4. 17 1
      in-client-qn/src/main/java/com/jiayue/insu/inclientqn/config/SaTokenConfigure.java
  5. 13 0
      in-client-qn/src/main/java/com/jiayue/insu/inclientqn/config/SpringWebMvcConfig.java
  6. 0 1
      in-client-qn/src/main/resources/bootstrap.yml
  7. 0 0
      in-client-qn/src/main/resources/static/css/loading.css
  8. 0 0
      in-client-qn/src/main/resources/static/favicon.ico
  9. 0 0
      in-client-qn/src/main/resources/static/favicon_backup.ico
  10. 2 2
      in-client-qn/src/main/resources/static/index.html
  11. 0 0
      in-client-qn/src/main/resources/static/robots.txt
  12. 5 0
      in-client-qn/src/main/resources/static/stati/css/app.96de6436.css
  13. 1 1
      in-client-qn/src/main/resources/static/stati/css/chunk-0b4404b9.3db1e250.css
  14. 0 1
      in-client-qn/src/main/resources/static/stati/css/chunk-21cb2456.38506a84.css
  15. 5 0
      in-client-qn/src/main/resources/static/stati/css/chunk-280dbe30.4581149a.css
  16. 1 1
      in-client-qn/src/main/resources/static/stati/css/chunk-3311ac0c.84770bcf.css
  17. 1 1
      in-client-qn/src/main/resources/static/stati/css/chunk-3647e9aa.d0fe461e.css
  18. 1 1
      in-client-qn/src/main/resources/static/stati/css/chunk-445d6656.df02b243.css
  19. 10 0
      in-client-qn/src/main/resources/static/stati/css/chunk-580281d6.106c7e82.css
  20. 6 0
      in-client-qn/src/main/resources/static/stati/css/chunk-657a6214.49531dae.css
  21. 6 0
      in-client-qn/src/main/resources/static/stati/css/chunk-68dd391e.61bbd8ee.css
  22. 5 0
      in-client-qn/src/main/resources/static/stati/css/chunk-7a1a131c.0ddc1f08.css
  23. 5 0
      in-client-qn/src/main/resources/static/stati/css/chunk-9bc04fac.b727be31.css
  24. 5 0
      in-client-qn/src/main/resources/static/stati/css/chunk-b6f15cd2.0c7c76d0.css
  25. 1 1
      in-client-qn/src/main/resources/static/stati/css/element-ui.0e3a750b.css
  26. 0 1
      in-client-qn/src/main/resources/static/stati/css/vab-layouts.e3cf13cf.css
  27. 0 0
      in-client-qn/src/main/resources/static/stati/fonts/element-icons.535877f5.woff
  28. 0 0
      in-client-qn/src/main/resources/static/stati/fonts/element-icons.732389de.ttf
  29. 0 0
      in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.674f50d2.674f50d2.eot
  30. 0 0
      in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.af7ae505.af7ae505.woff2
  31. 0 0
      in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.b06871f2.b06871f2.ttf
  32. 0 0
      in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.fee66e71.fee66e71.woff
  33. 0 0
      in-client-qn/src/main/resources/static/stati/img/401.475d4b80.png
  34. 0 0
      in-client-qn/src/main/resources/static/stati/img/404.36bda403.png
  35. 0 0
      in-client-qn/src/main/resources/static/stati/img/avatar.dee4f73c.jpg
  36. 0 0
      in-client-qn/src/main/resources/static/stati/img/background.c7e07de7.jpg
  37. 0 0
      in-client-qn/src/main/resources/static/stati/img/fontawesome-webfont.912ec66d.912ec66d.svg
  38. 0 0
      in-client-qn/src/main/resources/static/stati/img/left.98ce7024.jpg
  39. 0 0
      in-client-qn/src/main/resources/static/stati/img/right.3d769702.jpg
  40. 0 0
      in-client-qn/src/main/resources/static/stati/img/zfb_kf.e340e885.jpg
  41. 5 0
      in-client-qn/src/main/resources/static/stati/js/app.62634641.js
  42. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-0b4404b9.964359a9.js
  43. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-21cb2456.3b928ee0.js
  44. 1 1
      in-client-qn/src/main/resources/static/stati/js/chunk-280dbe30.f062a847.js
  45. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-3311ac0c.5ed9982d.js
  46. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-3647e9aa.0c3b9edc.js
  47. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-445d6656.86b7011b.js
  48. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-580281d6.51fce15c.js
  49. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-657a6214.0f491ce4.js
  50. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-68dd391e.fd571827.js
  51. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-7a1a131c.6e9ff750.js
  52. 1 1
      in-client-qn/src/main/resources/static/stati/js/chunk-9bc04fac.6d1cd9bd.js
  53. 6 0
      in-client-qn/src/main/resources/static/stati/js/chunk-b6f15cd2.1f6c933d.js
  54. 1 1
      in-client-qn/src/main/resources/static/stati/js/element-ui.cfb27695.js
  55. 6 0
      in-client-qn/src/main/resources/static/stati/js/vab-layouts.78261467.js
  56. 0 5
      in-cloud-ui/dist/static/css/app.ed679154.css
  57. 0 10
      in-cloud-ui/dist/static/css/chunk-09252a67.d4702ae8.css
  58. 0 5
      in-cloud-ui/dist/static/css/chunk-280dbe30.f20eb6ec.css
  59. 0 5
      in-cloud-ui/dist/static/css/chunk-34af7082.e8bc2839.css
  60. 0 5
      in-cloud-ui/dist/static/css/chunk-671bd806.2f53d14d.css
  61. 0 6
      in-cloud-ui/dist/static/css/chunk-8254cd0c.16636249.css
  62. 0 5
      in-cloud-ui/dist/static/css/chunk-9bc04fac.da3a1082.css
  63. 0 5
      in-cloud-ui/dist/static/js/app.b72e33f9.js
  64. 0 6
      in-cloud-ui/dist/static/js/chunk-09252a67.25a95764.js
  65. 0 6
      in-cloud-ui/dist/static/js/chunk-0b4404b9.ac033812.js
  66. 0 6
      in-cloud-ui/dist/static/js/chunk-1e7a4f65.45c9f254.js
  67. 0 6
      in-cloud-ui/dist/static/js/chunk-22fe7c72.3b4ce770.js
  68. 0 6
      in-cloud-ui/dist/static/js/chunk-34af7082.571f8970.js
  69. 0 6
      in-cloud-ui/dist/static/js/chunk-3d699947.6c1ddba6.js
  70. 0 6
      in-cloud-ui/dist/static/js/chunk-671bd806.dad5be3e.js
  71. 0 6
      in-cloud-ui/dist/static/js/chunk-8254cd0c.0e45463e.js
  72. 0 6
      in-cloud-ui/dist/static/js/chunk-9e7c9e88.c80e5ece.js
  73. 0 6
      in-cloud-ui/dist/static/js/vab-layouts.f7bc517d.js
  74. 0 40
      in-cloud-ui/mock/controller/ad.js
  75. 0 250
      in-cloud-ui/mock/controller/changeLog.js
  76. 0 324
      in-cloud-ui/mock/controller/colorfulIcon.js
  77. 0 43
      in-cloud-ui/mock/controller/goodsList.js
  78. 0 985
      in-cloud-ui/mock/controller/icon.js
  79. 0 51
      in-cloud-ui/mock/controller/menuManagement.js
  80. 0 33
      in-cloud-ui/mock/controller/notice.js
  81. 0 42
      in-cloud-ui/mock/controller/personalCenter.js
  82. 0 2294
      in-cloud-ui/mock/controller/remixIcon.js
  83. 0 53
      in-cloud-ui/mock/controller/roleManagement.js
  84. 0 292
      in-cloud-ui/mock/controller/router.js
  85. 0 88
      in-cloud-ui/mock/controller/table.js
  86. 0 54
      in-cloud-ui/mock/controller/tree.js
  87. 0 95
      in-cloud-ui/mock/controller/user.js
  88. 0 70
      in-cloud-ui/mock/controller/userManagement.js
  89. 0 98
      in-cloud-ui/mock/index.js
  90. 0 43
      in-cloud-ui/mock/utils/index.js
  91. 3 3
      in-cloud-ui/public/index.html
  92. 1 1
      in-cloud-ui/src/config/setting.config.js
  93. 1 4
      in-cloud-ui/src/main.js
  94. 0 52
      in-cloud-ui/src/utils/static.js
  95. 216 209
      in-cloud-ui/src/views/401.vue
  96. 207 207
      in-cloud-ui/src/views/404.vue
  97. 13 14
      in-cloud/pom.xml
  98. 0 34
      in-cloud/src/main/java/com/jiayue/insu/incloud/config/MinioConfig.java
  99. 18 1
      in-cloud/src/main/java/com/jiayue/insu/incloud/config/SaTokenConfigure.java
  100. 0 23
      in-cloud/src/main/java/com/jiayue/insu/incloud/controller/FileController.java

+ 2 - 1
.gitignore

@@ -60,4 +60,5 @@ upload
 gen_code
 
 ### node ###
-node_modules
+node_modules
+dist

+ 1 - 1
in-client-qn-ui/src/config/setting.config.js

@@ -7,7 +7,7 @@ const setting = {
   // 生产环境构建文件的目录名
   outputDir: 'dist',
   // 放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。
-  assetsDir: 'static',
+  assetsDir: 'stati',
   // 开发环境每次保存时是否输出为eslint编译警告
   lintOnSave: true,
   // 进行编译的依赖

+ 26 - 16
in-client-qn/pom.xml

@@ -10,11 +10,12 @@
     <modelVersion>4.0.0</modelVersion>
 
     <artifactId>in-client-qn</artifactId>
-
+    <packaging>jar</packaging>
     <properties>
         <maven.compiler.source>8</maven.compiler.source>
         <maven.compiler.target>8</maven.compiler.target>
     </properties>
+
     <dependencies>
         <dependency>
             <groupId>com.jiayue</groupId>
@@ -32,16 +33,6 @@
             <artifactId>mysql-connector-java</artifactId>
             <scope>runtime</scope>
         </dependency>
-<!--        <dependency>-->
-<!--            <groupId>org.projectlombok</groupId>-->
-<!--            <artifactId>lombok</artifactId>-->
-<!--            <optional>true</optional>-->
-<!--        </dependency>-->
-<!--        <dependency>-->
-<!--            <groupId>org.springframework.boot</groupId>-->
-<!--            <artifactId>spring-boot-starter-test</artifactId>-->
-<!--            <scope>test</scope>-->
-<!--        </dependency>-->
 
         <dependency>
             <groupId>org.springframework.boot</groupId>
@@ -109,16 +100,35 @@
             <version>1.7</version>
         </dependency>
 
-        <dependency>
-            <groupId>io.minio</groupId>
-            <artifactId>minio</artifactId>
-            <version>8.2.1</version>
-        </dependency>
+
 
         <dependency>
             <groupId>com.jiayue</groupId>
             <artifactId>in-common-minio</artifactId>
             <version>1.0-SNAPSHOT</version>
         </dependency>
+
+
     </dependencies>
+
+
+
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <version>2.6.7</version>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>repackage</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
 </project>

+ 17 - 1
in-client-qn/src/main/java/com/jiayue/insu/inclientqn/config/SaTokenConfigure.java

@@ -5,6 +5,7 @@ import cn.dev33.satoken.interceptor.SaRouteInterceptor;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.web.servlet.config.annotation.EnableWebMvc;
 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
 @Configuration
@@ -19,8 +20,23 @@ public class SaTokenConfigure implements WebMvcConfigurer {
         // 注册Sa-Token的路由拦截器
         registry.addInterceptor(new SaRouteInterceptor())
                 .addPathPatterns("/**")
-                .excludePathPatterns("/login/doLogin");
+                .excludePathPatterns("/login/doLogin","/file/**","/stati/**","/index.html");
     }
 
+    private static final String[] CLASSPATH_RESOURCE_LOCATIONS = {
+            "classpath:/META-INF/resources/", "classpath:/resources/",
+            "classpath:/static/", "classpath:/public/" };
 
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        if (!registry.hasMappingForPattern("/webjars/**")) {
+            registry.addResourceHandler("/webjars/**").addResourceLocations(
+                    "classpath:/META-INF/resources/webjars/");
+        }
+        if (!registry.hasMappingForPattern("/**")) {
+            registry.addResourceHandler("/**").addResourceLocations(
+                    CLASSPATH_RESOURCE_LOCATIONS);
+        }
+        WebMvcConfigurer.super.addResourceHandlers(registry);
+    }
 }

+ 13 - 0
in-client-qn/src/main/java/com/jiayue/insu/inclientqn/config/SpringWebMvcConfig.java

@@ -0,0 +1,13 @@
+package com.jiayue.insu.inclientqn.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+@Configuration
+public class SpringWebMvcConfig implements WebMvcConfigurer {
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
+    }
+}

+ 0 - 1
in-client-qn/src/main/resources/bootstrap.yml

@@ -4,7 +4,6 @@ spring:
     name: ${stationCode}-insu-qn
   profiles:
     active: dev
-
 # Sa-Token配置
 sa-token:
   # token名称 (同时也是cookie名称)

+ 0 - 0
in-cloud-ui/dist/static/css/loading.css → in-client-qn/src/main/resources/static/css/loading.css


+ 0 - 0
in-cloud-ui/dist/favicon.ico → in-client-qn/src/main/resources/static/favicon.ico


+ 0 - 0
in-cloud-ui/dist/favicon_backup.ico → in-client-qn/src/main/resources/static/favicon_backup.ico


+ 2 - 2
in-cloud/src/main/resources/public/index.html → in-client-qn/src/main/resources/static/index.html

@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>vue-admin-better官网、首页、文档和下载 - 前端开发框架</title><meta name="keywords" content="vab,vab官网,后台管理框架,vue后台管理框架,vue-admin-beautiful-pro源码分享,vue-admin-beautiful-pro源码,vue-admin-beautiful官网,vue-admin-beautiful文档,vue-element-admin,vue-element-admin官网,vue-element-admin文档,vue-admin,vue-admin官网,vue-admin文档"><meta name="description" content="一体化云端官网与文档基于vue-admin-beautiful构建,简称vab(是一款超棒的vue+element中后台前端快速开发框架),QQ群972435319,作者:vue-admin-beautiful"><meta name="author" content="vue-admin-beautiful"><link rel="stylesheet" href="static/css/loading.css"><link href="static/css/vab-layouts.016df47b.css" rel="stylesheet"><link href="static/css/element-ui.0e3a750b.css" rel="stylesheet"><link href="static/css/app.ed679154.css" rel="stylesheet"></head><body><noscript>非常抱歉鉴于安全考量,您无法查看一体化云端 源代码,该系统基于vue-admin-better开发</noscript><div id="vue-admin-beautiful"><div class="first-loading-wrp"><div class="loading-wrp"><span class="dot dot-spin"><i></i> <i></i> <i></i> <i></i></span></div><h1>一体化云端</h1></div></div><script>;/^http(s*):\/\//.test(location.href) ||
+<!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>vue-admin-better官网、首页、文档和下载 - 前端开发框架</title><meta name="keywords" content="vab,vab官网,后台管理框架,vue后台管理框架,vue-admin-beautiful-pro源码分享,vue-admin-beautiful-pro源码,vue-admin-beautiful官网,vue-admin-beautiful文档,vue-element-admin,vue-element-admin官网,vue-element-admin文档,vue-admin,vue-admin官网,vue-admin文档"><meta name="description" content="清能客户端官网与文档基于vue-admin-beautiful构建,简称vab(是一款超棒的vue+element中后台前端快速开发框架),QQ群972435319,作者:vue-admin-beautiful"><meta name="author" content="vue-admin-beautiful"><link rel="stylesheet" href="static/css/loading.css"><link href="stati/css/vab-layouts.e3cf13cf.css" rel="stylesheet"><link href="stati/css/element-ui.0e3a750b.css" rel="stylesheet"><link href="stati/css/app.96de6436.css" rel="stylesheet"></head><body><noscript>非常抱歉鉴于安全考量,您无法查看清能客户端 源代码,该系统基于vue-admin-better开发</noscript><div id="vue-admin-beautiful"><div class="first-loading-wrp"><div class="loading-wrp"><span class="dot dot-spin"><i></i> <i></i> <i></i> <i></i></span></div><h1>清能客户端</h1></div></div><script>;/^http(s*):\/\//.test(location.href) ||
         alert(
           '基于vue-admin-beautiful-pro开源版开发的项目需要部署到服务器下访问'
         )</script><script>if (window.location.hostname !== 'localhost') {
@@ -9,4 +9,4 @@
           var s = document.getElementsByTagName('script')[0]
           s.parentNode.insertBefore(hm, s)
         })()
-      }</script><script src="static/js/vab-layouts.f7bc517d.js"></script><script src="static/js/element-ui.cfb27695.js"></script><script src="static/js/app.b72e33f9.js"></script></body></html>
+      }</script><script src="stati/js/vab-layouts.78261467.js"></script><script src="stati/js/element-ui.cfb27695.js"></script><script src="stati/js/app.62634641.js"></script></body></html>

+ 0 - 0
in-cloud-ui/dist/robots.txt → in-client-qn/src/main/resources/static/robots.txt


File diff suppressed because it is too large
+ 5 - 0
in-client-qn/src/main/resources/static/stati/css/app.96de6436.css


File diff suppressed because it is too large
+ 1 - 1
in-client-qn/src/main/resources/static/stati/css/chunk-0b4404b9.3db1e250.css


File diff suppressed because it is too large
+ 0 - 1
in-client-qn/src/main/resources/static/stati/css/chunk-21cb2456.38506a84.css


File diff suppressed because it is too large
+ 5 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-280dbe30.4581149a.css


+ 1 - 1
in-cloud-ui/dist/static/css/chunk-1e7a4f65.cec03e72.css → in-client-qn/src/main/resources/static/stati/css/chunk-3311ac0c.84770bcf.css

@@ -2,5 +2,5 @@
  *  build: vue-admin-better 
  *  vue-admin-beautiful.com 
  *  https://gitee.com/chu1204505056/vue-admin-better 
- *  time: 2022-6-10 15:26:20
+ *  time: 2022-6-20 13:13:10
  */.demo-table-expand{font-size:0}.demo-table-expand label{width:90px;color:#99a9bf}.demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}

+ 1 - 1
in-cloud-ui/dist/static/css/chunk-22fe7c72.fbd12a05.css → in-client-qn/src/main/resources/static/stati/css/chunk-3647e9aa.d0fe461e.css

@@ -2,5 +2,5 @@
  *  build: vue-admin-better 
  *  vue-admin-beautiful.com 
  *  https://gitee.com/chu1204505056/vue-admin-better 
- *  time: 2022-6-10 15:26:20
+ *  time: 2022-6-20 13:13:10
  */.demo-table-expand{font-size:0}.demo-table-expand label{width:90px;color:#99a9bf}.demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}

+ 1 - 1
in-cloud-ui/dist/static/css/chunk-3d699947.4581094c.css → in-client-qn/src/main/resources/static/stati/css/chunk-445d6656.df02b243.css

@@ -2,5 +2,5 @@
  *  build: vue-admin-better 
  *  vue-admin-beautiful.com 
  *  https://gitee.com/chu1204505056/vue-admin-better 
- *  time: 2022-6-10 15:26:20
+ *  time: 2022-6-20 13:13:10
  */.demo-table-expand{font-size:0}.demo-table-expand label{width:90px;color:#99a9bf}.demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}

File diff suppressed because it is too large
+ 10 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-580281d6.106c7e82.css


+ 6 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-657a6214.49531dae.css

@@ -0,0 +1,6 @@
+/*!
+ *  build: vue-admin-better 
+ *  vue-admin-beautiful.com 
+ *  https://gitee.com/chu1204505056/vue-admin-better 
+ *  time: 2022-6-20 13:13:10
+ */.demo-table-expand{font-size:0}.demo-table-expand label{width:90px;color:#99a9bf}.demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}

+ 6 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-68dd391e.61bbd8ee.css

@@ -0,0 +1,6 @@
+/*!
+ *  build: vue-admin-better 
+ *  vue-admin-beautiful.com 
+ *  https://gitee.com/chu1204505056/vue-admin-better 
+ *  time: 2022-6-20 13:13:10
+ */.demo-table-expand{font-size:0}.demo-table-expand label{width:90px;color:#99a9bf}.demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}

File diff suppressed because it is too large
+ 5 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-7a1a131c.0ddc1f08.css


File diff suppressed because it is too large
+ 5 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-9bc04fac.b727be31.css


File diff suppressed because it is too large
+ 5 - 0
in-client-qn/src/main/resources/static/stati/css/chunk-b6f15cd2.0c7c76d0.css


+ 1 - 1
in-cloud-ui/dist/static/css/element-ui.0e3a750b.css → in-client-qn/src/main/resources/static/stati/css/element-ui.0e3a750b.css

@@ -2,5 +2,5 @@
  *  build: vue-admin-better 
  *  vue-admin-beautiful.com 
  *  https://gitee.com/chu1204505056/vue-admin-better 
- *  time: 2022-6-10 15:26:20
+ *  time: 2022-6-20 13:13:10
  */@media only screen and (max-width:767px){.hidden-xs-only{display:none!important}}@media only screen and (min-width:768px){.hidden-sm-and-up{display:none!important}}@media only screen and (min-width:768px) and (max-width:991px){.hidden-sm-only{display:none!important}}@media only screen and (max-width:991px){.hidden-sm-and-down{display:none!important}}@media only screen and (min-width:992px){.hidden-md-and-up{display:none!important}}@media only screen and (min-width:992px) and (max-width:1199px){.hidden-md-only{display:none!important}}@media only screen and (max-width:1199px){.hidden-md-and-down{display:none!important}}@media only screen and (min-width:1200px){.hidden-lg-and-up{display:none!important}}@media only screen and (min-width:1200px) and (max-width:1919px){.hidden-lg-only{display:none!important}}@media only screen and (max-width:1919px){.hidden-lg-and-down{display:none!important}}@media only screen and (min-width:1920px){.hidden-xl-only{display:none!important}}

File diff suppressed because it is too large
+ 0 - 1
in-client-qn/src/main/resources/static/stati/css/vab-layouts.e3cf13cf.css


+ 0 - 0
in-cloud-ui/dist/static/fonts/element-icons.535877f5.woff → in-client-qn/src/main/resources/static/stati/fonts/element-icons.535877f5.woff


+ 0 - 0
in-cloud-ui/dist/static/fonts/element-icons.732389de.ttf → in-client-qn/src/main/resources/static/stati/fonts/element-icons.732389de.ttf


+ 0 - 0
in-cloud-ui/dist/static/fonts/fontawesome-webfont.674f50d2.674f50d2.eot → in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.674f50d2.674f50d2.eot


+ 0 - 0
in-cloud-ui/dist/static/fonts/fontawesome-webfont.af7ae505.af7ae505.woff2 → in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.af7ae505.af7ae505.woff2


+ 0 - 0
in-cloud-ui/dist/static/fonts/fontawesome-webfont.b06871f2.b06871f2.ttf → in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.b06871f2.b06871f2.ttf


+ 0 - 0
in-cloud-ui/dist/static/fonts/fontawesome-webfont.fee66e71.fee66e71.woff → in-client-qn/src/main/resources/static/stati/fonts/fontawesome-webfont.fee66e71.fee66e71.woff


+ 0 - 0
in-cloud-ui/dist/static/img/401.475d4b80.png → in-client-qn/src/main/resources/static/stati/img/401.475d4b80.png


+ 0 - 0
in-cloud-ui/dist/static/img/404.36bda403.png → in-client-qn/src/main/resources/static/stati/img/404.36bda403.png


+ 0 - 0
in-cloud-ui/dist/static/img/avatar.dee4f73c.jpg → in-client-qn/src/main/resources/static/stati/img/avatar.dee4f73c.jpg


+ 0 - 0
in-cloud-ui/dist/static/img/background.c7e07de7.jpg → in-client-qn/src/main/resources/static/stati/img/background.c7e07de7.jpg


+ 0 - 0
in-cloud-ui/dist/static/img/fontawesome-webfont.912ec66d.912ec66d.svg → in-client-qn/src/main/resources/static/stati/img/fontawesome-webfont.912ec66d.912ec66d.svg


+ 0 - 0
in-cloud-ui/dist/static/img/left.98ce7024.jpg → in-client-qn/src/main/resources/static/stati/img/left.98ce7024.jpg


+ 0 - 0
in-cloud-ui/dist/static/img/right.3d769702.jpg → in-client-qn/src/main/resources/static/stati/img/right.3d769702.jpg


+ 0 - 0
in-cloud-ui/dist/static/img/zfb_kf.e340e885.jpg → in-client-qn/src/main/resources/static/stati/img/zfb_kf.e340e885.jpg


File diff suppressed because it is too large
+ 5 - 0
in-client-qn/src/main/resources/static/stati/js/app.62634641.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-0b4404b9.964359a9.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-21cb2456.3b928ee0.js


+ 1 - 1
in-cloud-ui/dist/static/js/chunk-280dbe30.8f0766fb.js → in-client-qn/src/main/resources/static/stati/js/chunk-280dbe30.f062a847.js

@@ -2,6 +2,6 @@
  *  build: vue-admin-better 
  *  vue-admin-beautiful.com 
  *  https://gitee.com/chu1204505056/vue-admin-better 
- *  time: 2022-6-10 15:26:20
+ *  time: 2022-6-20 13:13:10
  */
 (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-280dbe30"],{"37f9":function(t,n,e){"use strict";e.r(n);var c=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"index-container"},[e("vab-snow")],1)},u=[],a=e("e64d"),o={name:"index",components:{VabSnow:a["default"]},data:function(){return{}},created:function(){},mounted:function(){},methods:{}},s=o,i=(e("c017"),e("2877")),r=Object(i["a"])(s,c,u,!1,null,"1da7eb04",null);n["default"]=r.exports},6728:function(t,n,e){"use strict";e("7211")},7211:function(t,n,e){},bc94:function(t,n,e){},c017:function(t,n,e){"use strict";e("bc94")},e64d:function(t,n,e){"use strict";e.r(n);var c=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"content",style:t.styleObj},t._l(200,(function(t,n){return e("div",{key:n,staticClass:"snow"})})),0)},u=[],a={name:"VabSnow",props:{styleObj:{type:Object,default:function(){return{}}}},data:function(){return{}},created:function(){},mounted:function(){},methods:{}},o=a,s=(e("6728"),e("2877")),i=Object(s["a"])(o,c,u,!1,null,"29aafa1c",null);n["default"]=i.exports}}]);

File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-3311ac0c.5ed9982d.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-3647e9aa.0c3b9edc.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-445d6656.86b7011b.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-580281d6.51fce15c.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-657a6214.0f491ce4.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-68dd391e.fd571827.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-7a1a131c.6e9ff750.js


File diff suppressed because it is too large
+ 1 - 1
in-client-qn/src/main/resources/static/stati/js/chunk-9bc04fac.6d1cd9bd.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/chunk-b6f15cd2.1f6c933d.js


File diff suppressed because it is too large
+ 1 - 1
in-client-qn/src/main/resources/static/stati/js/element-ui.cfb27695.js


File diff suppressed because it is too large
+ 6 - 0
in-client-qn/src/main/resources/static/stati/js/vab-layouts.78261467.js


File diff suppressed because it is too large
+ 0 - 5
in-cloud-ui/dist/static/css/app.ed679154.css


File diff suppressed because it is too large
+ 0 - 10
in-cloud-ui/dist/static/css/chunk-09252a67.d4702ae8.css


File diff suppressed because it is too large
+ 0 - 5
in-cloud-ui/dist/static/css/chunk-280dbe30.f20eb6ec.css


File diff suppressed because it is too large
+ 0 - 5
in-cloud-ui/dist/static/css/chunk-34af7082.e8bc2839.css


File diff suppressed because it is too large
+ 0 - 5
in-cloud-ui/dist/static/css/chunk-671bd806.2f53d14d.css


+ 0 - 6
in-cloud-ui/dist/static/css/chunk-8254cd0c.16636249.css

@@ -1,6 +0,0 @@
-/*!
- *  build: vue-admin-better 
- *  vue-admin-beautiful.com 
- *  https://gitee.com/chu1204505056/vue-admin-better 
- *  time: 2022-6-10 15:26:20
- */.demo-table-expand{font-size:0}.demo-table-expand label{width:90px;color:#99a9bf}.demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}

File diff suppressed because it is too large
+ 0 - 5
in-cloud-ui/dist/static/css/chunk-9bc04fac.da3a1082.css


File diff suppressed because it is too large
+ 0 - 5
in-cloud-ui/dist/static/js/app.b72e33f9.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-09252a67.25a95764.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-0b4404b9.ac033812.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-1e7a4f65.45c9f254.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-22fe7c72.3b4ce770.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-34af7082.571f8970.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-3d699947.6c1ddba6.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-671bd806.dad5be3e.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-8254cd0c.0e45463e.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/chunk-9e7c9e88.c80e5ece.js


File diff suppressed because it is too large
+ 0 - 6
in-cloud-ui/dist/static/js/vab-layouts.f7bc517d.js


+ 0 - 40
in-cloud-ui/mock/controller/ad.js

@@ -1,40 +0,0 @@
-const data = [
-  {
-    title: '建党百年惊喜福利,付费版本买一得二全年最低价,点我购买',
-    url: 'https://vue-admin-beautiful.com/authorization',
-  },
-  /*   {
-    title: 'Admin Pro 3.0付费版本已发布,增加多项贴心功能,点我提前体验',
-    url: 'https://chu1204505056.gitee.io/admin-pro?hmsr=homeAd&hmpl=&hmcu=&hmkw=&hmci=',
-  },
-  {
-    title: 'Admin Plus 3.0内测版本已发布,增加多项贴心功能,点我提前体验',
-    url: 'https://chu1204505056.gitee.io/admin-plus?hmsr=homeAd&hmpl=&hmcu=&hmkw=&hmci=',
-  },
-  {
-    title: 'vue-admin-beautiful(antdv) vue3.0版本已发布,点我提前体验',
-    url: 'https://vue-admin-beautiful.com/vue-admin-beautiful-antdv?hmsr=homeAd&hmpl=&hmcu=&hmkw=&hmci=',
-  },
-  {
-    title: 'vue-admin-beautiful(element-plus) vue3.0版本已发布,点我提前体验',
-    url: 'https://chu1204505056.gitee.io/admin-plus?hmsr=homeAd&hmpl=&hmcu=&hmkw=&hmci=',
-  },
-  {
-    title:
-      '程序无国界,但程序员有国界,中国国家尊严不容挑衅,如果您在特殊时期继续购买HM、耐克、阿迪达斯等品牌那么您将无权继续使用Vab',
-    url: 'https://chu1204505056.gitee.io/admin-pro?hmsr=homeAd&hmpl=&hmcu=&hmkw=&hmci=',
-  }, */
-]
-module.exports = [
-  {
-    url: '/ad/getList',
-    type: 'get',
-    response() {
-      return {
-        code: 200,
-        msg: 'success',
-        data,
-      }
-    },
-  },
-]

+ 0 - 250
in-cloud-ui/mock/controller/changeLog.js

@@ -1,250 +0,0 @@
-const data = [
-  {
-    content: '在github上获得了第一个star,感恩一位名叫Bequiet2014的github用户',
-    timestamp: '2020-03-23',
-  },
-  {
-    content: '增加更换主题功能',
-    timestamp: '2020-04-10',
-  },
-  {
-    content: '大幅精简代码',
-    timestamp: '2020-04-14',
-  },
-  {
-    content: '修复群友反馈的bug',
-    timestamp: '2020-04-16',
-  },
-  {
-    content: '剔除maptalks',
-    timestamp: '2020-04-17',
-  },
-  {
-    content:
-      '换行符统一修改为lf 支持苹果 linux windows协同开发 强制开启最严格eslint规则 不要哭 严格是有好处的',
-    timestamp: '2020-04-17',
-  },
-  {
-    content: '彻底完成手机端适配,记录这一天熬夜到了晚上三点',
-    timestamp: '2020-04-18',
-  },
-  {
-    content:
-      '删除babel-polyfill 提高打包速度 减少压缩体积(放弃ie是这个项目做出的最伟大的决定)',
-    timestamp: '2020-04-18',
-  },
-  {
-    content: '源码精简至800k',
-    timestamp: '2020-04-19',
-  },
-  {
-    content: '添加视频播放器组件',
-    timestamp: '2020-04-20',
-  },
-  {
-    content: '修复路由懒加载 完善主题配色',
-    timestamp: '2020-04-22',
-  },
-  {
-    content: '修复全局axios拦截 加快动画展示效果 修改登录页样式',
-    timestamp: '2020-04-24',
-  },
-  {
-    content: '简化权限与登录逻辑 更新mockServer',
-    timestamp: '2020-04-25',
-  },
-  {
-    content: '优化登录退出逻辑 代码更清晰 退出不再重载网页 改为重载路由形式',
-    timestamp: '2020-04-26',
-  },
-  {
-    content: '无端的指责只会让我更加努力 修复sidebar 简化permission',
-    timestamp: '2020-04-28',
-  },
-  {
-    content: '又是一个深夜 实现了表格增删改查的一键生成',
-    timestamp: '2020-04-30',
-  },
-  {
-    content: '大幅优化tagsview标签动画',
-    timestamp: '2020-05-02',
-  },
-  {
-    content: '三种图标组件实现mock模拟分页',
-    timestamp: '2020-05-03',
-  },
-  {
-    content: '添加了markdown编辑器组件',
-    timestamp: '2020-05-04',
-  },
-  {
-    content: '添加stylelint-plus自动规整排序样式',
-    timestamp: '2020-05-06',
-  },
-  {
-    content: '添加商城模板',
-    timestamp: '2020-05-12',
-  },
-  {
-    content: 'github标星超过1000 感恩',
-    timestamp: '2020-05-13',
-  },
-  {
-    content: '添加验证码组件',
-    timestamp: '2020-05-14',
-  },
-  {
-    content: '修复横向菜单bug',
-    timestamp: '2020-05-16',
-  },
-  {
-    content: '又被人骂了 挺好的 让我下定决心重写了tabsBar',
-    timestamp: '2020-05-20',
-  },
-  {
-    content: '仿ant-design 添加雪花屏',
-    timestamp: '2020-05-26',
-  },
-  {
-    content: '添加人员管理模块',
-    timestamp: '2020-06-02',
-  },
-  {
-    content: 'github标星超过2000 感恩',
-    timestamp: '2020-06-03',
-  },
-  {
-    content: '添加炫酷地图组件',
-    timestamp: '2020-06-11',
-  },
-  {
-    content: '抽离更多公共配置,框架使用更顺手',
-    timestamp: '2020-06-19',
-  },
-  {
-    content: '彻底完成了tabsBar多标签页的重构',
-    timestamp: '2020-06-22',
-  },
-  {
-    content: '感恩github标星过3.0K 祝大家端午节快乐',
-    timestamp: '2020-06-25',
-  },
-  {
-    content: '彻底重构了SideBar与TopBar 大幅精简dom渲染逻辑 全球首发',
-    timestamp: '2020-06-25',
-  },
-  {
-    content: '添加菜单管理',
-    timestamp: '2020-07-7',
-  },
-  {
-    content: '首次采用sass-loader 9.0写法,感谢github用户 shaonialife',
-    timestamp: '2020-07-7',
-  },
-  {
-    content: '添加vue-amap组件',
-    timestamp: '2020-07-11',
-  },
-  {
-    content: '修改zx-layouts引入方式',
-    timestamp: '2020-07-15',
-  },
-  {
-    content:
-      '记录这一天vue-admin-beautiful在插件市场、百度已花费超过1万元广告费用,希望一切都值得',
-    timestamp: '2020-07-18',
-  },
-  {
-    content: '主题配置添加绿荫草场、荣耀典藏、暗黑之子模式',
-    timestamp: '2020-07-18',
-  },
-  {
-    content: '全局axios请求全面支持Status Code拦截处理',
-    timestamp: '2020-07-29',
-  },
-  {
-    content: '重构全局loadding加载代码',
-    timestamp: '2020-07-31',
-  },
-  {
-    content: '升级stylelint自动排序功能',
-    timestamp: '2020-08-25',
-  },
-  {
-    content: '修复视频播放器组件重载路由失效的bug',
-    timestamp: '2020-09-03',
-  },
-  {
-    content: '修复极个别情况image-loader打包报错',
-    timestamp: '2020-09-18',
-  },
-  {
-    content: '全网首个基于vue3.0开发的admin框架已发布,具体请访问github',
-    timestamp: '2020-09-22',
-  },
-  {
-    content: '完善路由后端渲染方案,弃用之前写法',
-    timestamp: '2020-09-30',
-  },
-  {
-    content: '大版本迭代,请关注github tag',
-    timestamp: '2020-09-30',
-  },
-  /* {
-    content:
-      "面对自称加拿大华人的捕蛇者说作者laike9m的发帖诋毁,和人身攻击,本想去知乎找他理论,可奈何他的知乎已经由于经常发布错误言论被官方封号了https://www.zhihu.com/people/laike9m,既然自己都不是中国人了,就不要妄加揣测国产的开源项目了,一切都交给时间吧,后来我释怀了,laike9m、Cruii这群人不止是抹黑我的框架,甚至还去抹黑中国民营企业的佼佼者华为,充满了无奈啊,也许只有发布这样的言论,他们的目的才能达到把 https://github.com/evil-huawei/evil-huawei",
-    timestamp: "2020-10-01",
-  }, */
-  {
-    content: '凌晨两点,我累了,移除无用组件,精简package',
-    timestamp: '2020-10-02',
-  },
-  {
-    content: '富文本编辑器支持精细化配置',
-    timestamp: '2020-10-20',
-  },
-  {
-    content: '公共布局支持自动导出',
-    timestamp: '2020-10-23',
-  },
-  {
-    content: '遮罩添加高斯模糊',
-    timestamp: '2020-10-25',
-  },
-  {
-    content: 'vue3.0 + element-plus版本正式上线',
-    timestamp: '2020-12-5',
-  },
-  {
-    content: '完成首页重构,跟进echarts 5.0',
-    timestamp: '2020-12-7',
-  },
-  {
-    content: '更新sass版本至最新',
-    timestamp: '2021-1-7',
-  },
-  {
-    content: '更新vue-echarts版本至最新,options变更为option',
-    timestamp: '2021-2-23',
-  },
-  {
-    content:
-      '开源版品牌名升级为vue-admin-better,付费版vue2.x品牌升级为Admin Pro,付费版vue3.x品牌名升级为Admin Plus',
-    timestamp: '最近更新',
-  },
-]
-
-module.exports = [
-  {
-    url: '/changeLog/getList',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: 999,
-        data: data,
-      }
-    },
-  },
-]

+ 0 - 324
in-cloud-ui/mock/controller/colorfulIcon.js

@@ -1,324 +0,0 @@
-const data = [
-  'alphabetical_sorting',
-  'alphabetical_sorting',
-  'alarm_clock',
-  'area_chart',
-  'approval',
-  'answers',
-  'approve',
-  'assistant',
-  'automotive',
-  'automatic',
-  'bad_decision',
-  'bar_chart',
-  'bearish',
-  'biomass',
-  'biohazard',
-  'binoculars',
-  'bookmark',
-  'briefcase',
-  'biotech',
-  'broken_link',
-  'business',
-  'bullish',
-  'business_contact',
-  'businesswoman',
-  'cable_release',
-  'calculator',
-  'businessman',
-  'calendar',
-  'butting_in',
-  'call_transfer',
-  'callback',
-  'camcorder',
-  'camera',
-  'camcorder_pro',
-  'cancel',
-  'camera_addon',
-  'camera_identificatio',
-  'capacitor',
-  'candle_sticks',
-  'checkmark',
-  'circuit',
-  'charge_battery',
-  'clear_filters',
-  'clapperboard',
-  'clock',
-  'close_up_mode',
-  'collaboration',
-  'cell_phone',
-  'collapse',
-  'collect',
-  'cloth',
-  'combo_chart',
-  'comments',
-  'conference_call',
-  'compact_camera',
-  'contacts',
-  'copyleft',
-  'copyright',
-  'crystal_oscillator',
-  'cursor',
-  'currency_exchange',
-  'customer_support',
-  'dam',
-  'data_backup',
-  'data_configuration',
-  'data_encryption',
-  'data_protection',
-  'data_recovery',
-  'database',
-  'data_sheet',
-  'debt',
-  'decision',
-  'delete_column',
-  'delete_database',
-  'department',
-  'delete_row',
-  'deployment',
-  'dislike',
-  'disapprove',
-  'disclaimer',
-  'display',
-  'document',
-  'do_not_insert',
-  'do_not_mix',
-  'do_not_inhale',
-  'donate',
-  'down',
-  'doughnut_chart',
-  'down_left',
-  'down_right',
-  'download',
-  'edit_image',
-  'electrical_sensor',
-  'electrical_threshold',
-  'electricity',
-  'electro_devices',
-  'electronics',
-  'empty_battery',
-  'empty_filter',
-  'empty_trash',
-  'end_call',
-  'engineering',
-  'entering_heaven_aliv',
-  'expand',
-  'export',
-  'expired',
-  'factory',
-  'factory_breakdown',
-  'external',
-  'faq',
-  'feed_in',
-  'file',
-  'feedback',
-  'film',
-  'filled_filter',
-  'filing_cabinet',
-  'film_reel',
-  'flash_auto',
-  'fine_print',
-  'flash_off',
-  'flash_on',
-  'flow_chart',
-  'folder',
-  'frame',
-  'full_battery',
-  'full_trash',
-  'gallery',
-  'generic_sorting_asc',
-  'generic_sorting_desc',
-  'genealogy',
-  'globe',
-  'good_decision',
-  'headset',
-  'grid',
-  'graduation_cap',
-  'heat_map',
-  'high_priority',
-  'high_battery',
-  'image_file',
-  'home',
-  'idea',
-  'import',
-  'in_transit',
-  'integrated_webcam',
-  'inspection',
-  'invite',
-  'internal',
-  'ipad',
-  'info',
-  'iphone',
-  'kindle',
-  'key',
-  'landscape',
-  'left',
-  'left_down',
-  'left_up',
-  'leave',
-  'like_placeholder',
-  'light_at_the_end_of_',
-  'library',
-  'line_chart',
-  'link',
-  'like',
-  'lock',
-  'list',
-  'lock_landscape',
-  'low_battery',
-  'lock_portrait',
-  'low_priority',
-  'make_decision',
-  'medium_priority',
-  'manager',
-  'menu',
-  'middle_battery',
-  'minus',
-  'missed_call',
-  'mind_map',
-  'mms',
-  'multiple_cameras',
-  'money_transfer',
-  'music',
-  'multiple_devices',
-  'multiple_smartphones',
-  'multiple_inputs',
-  'negative_dynamic',
-  'neutral_decision',
-  'night_landscape',
-  'news',
-  'neutral_trading',
-  'night_portrait',
-  'no_idea',
-  'next',
-  'no_video',
-  'nook',
-  'ok',
-  'org_unit',
-  'opened_folder',
-  'old_time_camera',
-  'online_support',
-  'organization',
-  'package',
-  'paid',
-  'parallel_tasks',
-  'overtime',
-  'panorama',
-  'phone',
-  'phone_android',
-  'photo_reel',
-  'pie_chart',
-  'picture',
-  'planner',
-  'plus',
-  'podium_with_audience',
-  'podium_without_speak',
-  'podium_with_speaker',
-  'previous',
-  'portrait_mode',
-  'positive_dynamic',
-  'privacy',
-  'process',
-  'puzzle',
-  'questions',
-  'print',
-  'radar_plot',
-  'rating',
-  'ratings',
-  'reading',
-  'redo',
-  'reading_ebook',
-  'refresh',
-  'registered_trademark',
-  'right',
-  'reuse',
-  'remove_image',
-  'right_down',
-  'right_up',
-  'rotate_to_portrait',
-  'rules',
-  'rotate_camera',
-  'rotate_to_landscape',
-  'ruler',
-  'scatter_plot',
-  'search',
-  'safe',
-  'self_service_kiosk',
-  'selfie',
-  'serial_tasks',
-  'sales_performance',
-  'settings',
-  'services',
-  'share',
-  'shipped',
-  'sim_card',
-  'shop',
-  'service_mark',
-  'sim_card_chip',
-  'signature',
-  'smartphone_tablet',
-  'sound_recording_copy',
-  'sms',
-  'speaker',
-  'slr_back_side',
-  'start',
-  'stack_of_photos',
-  'statistics',
-  'sports_mode',
-  'support',
-  'synchronize',
-  'switch_camera',
-  'survey',
-  'tablet_android',
-  'template',
-  'trademark',
-  'todo_list',
-  'touchscreen_smartpho',
-  'timeline',
-  'tree_structure',
-  'undo',
-  'up_left',
-  'two_smartphones',
-  'unlock',
-  'up',
-  'up_right',
-  'upload',
-  'video_call',
-  'video_file',
-  'view_details',
-  'video_projector',
-  'vip',
-  'voice_presentation',
-  'webcam',
-  'voicemail',
-  'workflow',
-  'about',
-  'accept_database',
-  'add_image',
-  'add_column',
-  'add_database',
-  'add_row',
-]
-module.exports = [
-  {
-    url: '/colorfulIcon/getList',
-    type: 'post',
-    response(config) {
-      const { title, pageNo = 1, pageSize = 72 } = config.body
-      let mockList = data.filter((item) => {
-        if (title && item.indexOf(title) < 0) return false
-        return true
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: mockList.length,
-        data: pageList,
-      }
-    },
-  },
-]

+ 0 - 43
in-cloud-ui/mock/controller/goodsList.js

@@ -1,43 +0,0 @@
-const { mock } = require('mockjs')
-
-const List = []
-const count = 999
-let num = 0
-for (let i = 0; i < count; i++) {
-  List.push(
-    mock({
-      uuid: '@uuid',
-      image: `https://picsum.photos/300/600?random=${num++}`,
-      title: '@ctitle',
-      description: '@csentence',
-      link: 'https://www.baidu.com',
-      price: '@integer(100, 500)',
-      'status|1': [1, 0],
-      'isRecommend|1': [1, 0],
-    })
-  )
-}
-
-module.exports = [
-  {
-    url: '/goodsList/getList',
-    type: 'post',
-    response(config) {
-      const { title = '', pageNo = 1, pageSize = 20 } = config.body
-      let mockList = List.filter((item) => {
-        if (title && item.title.indexOf(title) < 0) return false
-        return true
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: count,
-        data: pageList,
-      }
-    },
-  },
-]

+ 0 - 985
in-cloud-ui/mock/controller/icon.js

@@ -1,985 +0,0 @@
-const data = [
-  'air-freshener',
-  'align-center',
-  'align-justify',
-  'align-left',
-  'align-right',
-  'allergies',
-  'ambulance',
-  'american-sign-language-interpreting',
-  'anchor',
-  'angle-double-down',
-  'angle-double-left',
-  'angle-double-right',
-  'angle-double-up',
-  'angle-down',
-  'angle-left',
-  'angle-right',
-  'angle-up',
-  'angry',
-  'ankh',
-  'apple-alt',
-  'archive',
-  'archway',
-  'arrow-alt-circle-down',
-  'arrow-alt-circle-left',
-  'arrow-alt-circle-right',
-  'arrow-alt-circle-up',
-  'arrow-circle-down',
-  'arrow-circle-left',
-  'arrow-circle-right',
-  'arrow-circle-up',
-  'arrow-down',
-  'arrow-left',
-  'arrow-right',
-  'arrow-up',
-  'arrows-alt',
-  'arrows-alt-h',
-  'arrows-alt-v',
-  'assistive-listening-systems',
-  'asterisk',
-  'at',
-  'atlas',
-  'atom',
-  'audio-description',
-  'award',
-  'baby',
-  'baby-carriage',
-  'backspace',
-  'backward',
-  'bacon',
-  'bahai',
-  'balance-scale',
-  'balance-scale-left',
-  'balance-scale-right',
-  'ban',
-  'band-aid',
-  'barcode',
-  'bars',
-  'baseball-ball',
-  'basketball-ball',
-  'bath',
-  'battery-empty',
-  'battery-full',
-  'battery-half',
-  'battery-quarter',
-  'battery-three-quarters',
-  'bed',
-  'beer',
-  'bell',
-  'bell-slash',
-  'bezier-curve',
-  'bible',
-  'bicycle',
-  'biking',
-  'binoculars',
-  'biohazard',
-  'birthday-cake',
-  'blender',
-  'blender-phone',
-  'blind',
-  'blog',
-  'bold',
-  'bolt',
-  'bomb',
-  'bone',
-  'bong',
-  'book',
-  'book-dead',
-  'book-medical',
-  'book-open',
-  'book-reader',
-  'bookmark',
-  'border-all',
-  'border-none',
-  'border-style',
-  'bowling-ball',
-  'box',
-  'box-open',
-  'boxes',
-  'braille',
-  'brain',
-  'bread-slice',
-  'briefcase',
-  'briefcase-medical',
-  'broadcast-tower',
-  'broom',
-  'brush',
-  'bug',
-  'building',
-  'bullhorn',
-  'bullseye',
-  'burn',
-  'bus',
-  'bus-alt',
-  'business-time',
-  'calculator',
-  'calendar',
-  'calendar-alt',
-  'calendar-check',
-  'calendar-day',
-  'calendar-minus',
-  'calendar-plus',
-  'calendar-times',
-  'calendar-week',
-  'camera',
-  'camera-retro',
-  'campground',
-  'candy-cane',
-  'cannabis',
-  'capsules',
-  'car',
-  'car-alt',
-  'car-battery',
-  'car-crash',
-  'car-side',
-  'caravan',
-  'caret-down',
-  'caret-left',
-  'caret-right',
-  'caret-square-down',
-  'caret-square-left',
-  'caret-square-right',
-  'caret-square-up',
-  'caret-up',
-  'carrot',
-  'cart-arrow-down',
-  'cart-plus',
-  'cash-register',
-  'cat',
-  'certificate',
-  'chair',
-  'chalkboard',
-  'chalkboard-teacher',
-  'charging-station',
-  'chart-area',
-  'chart-bar',
-  'chart-line',
-  'chart-pie',
-  'check',
-  'check-circle',
-  'check-double',
-  'check-square',
-  'cheese',
-  'chess',
-  'chess-bishop',
-  'chess-board',
-  'chess-king',
-  'chess-knight',
-  'chess-pawn',
-  'chess-queen',
-  'chess-rook',
-  'chevron-circle-down',
-  'chevron-circle-left',
-  'chevron-circle-right',
-  'chevron-circle-up',
-  'chevron-down',
-  'chevron-left',
-  'chevron-right',
-  'chevron-up',
-  'child',
-  'church',
-  'circle',
-  'circle-notch',
-  'city',
-  'clinic-medical',
-  'clipboard',
-  'clipboard-check',
-  'clipboard-list',
-  'clock',
-  'clone',
-  'closed-captioning',
-  'cloud',
-  'cloud-download-alt',
-  'cloud-meatball',
-  'cloud-moon',
-  'cloud-moon-rain',
-  'cloud-rain',
-  'cloud-showers-heavy',
-  'cloud-sun',
-  'cloud-sun-rain',
-  'cloud-upload-alt',
-  'cocktail',
-  'code',
-  'code-branch',
-  'coffee',
-  'cog',
-  'cogs',
-  'coins',
-  'columns',
-  'comment',
-  'comment-alt',
-  'comment-dollar',
-  'comment-dots',
-  'comment-medical',
-  'comment-slash',
-  'comments',
-  'comments-dollar',
-  'compact-disc',
-  'compass',
-  'compress',
-  'compress-alt',
-  'compress-arrows-alt',
-  'concierge-bell',
-  'cookie',
-  'cookie-bite',
-  'copy',
-  'copyright',
-  'couch',
-  'credit-card',
-  'crop',
-  'crop-alt',
-  'cross',
-  'crosshairs',
-  'crow',
-  'crown',
-  'crutch',
-  'cube',
-  'cubes',
-  'cut',
-  'database',
-  'deaf',
-  'democrat',
-  'desktop',
-  'dharmachakra',
-  'diagnoses',
-  'dice',
-  'dice-d20',
-  'dice-d6',
-  'dice-five',
-  'dice-four',
-  'dice-one',
-  'dice-six',
-  'dice-three',
-  'dice-two',
-  'digital-tachograph',
-  'directions',
-  'divide',
-  'dizzy',
-  'dna',
-  'dog',
-  'dollar-sign',
-  'dolly',
-  'dolly-flatbed',
-  'donate',
-  'door-closed',
-  'door-open',
-  'dot-circle',
-  'dove',
-  'download',
-  'drafting-compass',
-  'dragon',
-  'draw-polygon',
-  'drum',
-  'drum-steelpan',
-  'drumstick-bite',
-  'dumbbell',
-  'dumpster',
-  'dumpster-fire',
-  'dungeon',
-  'edit',
-  'egg',
-  'eject',
-  'ellipsis-h',
-  'ellipsis-v',
-  'envelope',
-  'envelope-open',
-  'envelope-open-text',
-  'envelope-square',
-  'equals',
-  'eraser',
-  'ethernet',
-  'euro-sign',
-  'exchange-alt',
-  'exclamation',
-  'exclamation-circle',
-  'exclamation-triangle',
-  'expand',
-  'expand-alt',
-  'expand-arrows-alt',
-  'external-link-alt',
-  'external-link-square-alt',
-  'eye',
-  'eye-dropper',
-  'eye-slash',
-  'fan',
-  'fast-backward',
-  'fast-forward',
-  'fax',
-  'feather',
-  'feather-alt',
-  'female',
-  'fighter-jet',
-  'file',
-  'file-alt',
-  'file-archive',
-  'file-audio',
-  'file-code',
-  'file-contract',
-  'file-csv',
-  'file-download',
-  'file-excel',
-  'file-export',
-  'file-image',
-  'file-import',
-  'file-invoice',
-  'file-invoice-dollar',
-  'file-medical',
-  'file-medical-alt',
-  'file-pdf',
-  'file-powerpoint',
-  'file-prescription',
-  'file-signature',
-  'file-upload',
-  'file-video',
-  'file-word',
-  'fill',
-  'fill-drip',
-  'film',
-  'filter',
-  'fingerprint',
-  'fire',
-  'fire-alt',
-  'fire-extinguisher',
-  'first-aid',
-  'fish',
-  'fist-raised',
-  'flag',
-  'flag-checkered',
-  'flag-usa',
-  'flask',
-  'flushed',
-  'folder',
-  'folder-minus',
-  'folder-open',
-  'folder-plus',
-  'font',
-  'football-ball',
-  'forward',
-  'frog',
-  'frown',
-  'frown-open',
-  'funnel-dollar',
-  'futbol',
-  'gamepad',
-  'gas-pump',
-  'gavel',
-  'gem',
-  'genderless',
-  'ghost',
-  'gift',
-  'gifts',
-  'glass-cheers',
-  'glass-martini',
-  'glass-martini-alt',
-  'glass-whiskey',
-  'glasses',
-  'globe',
-  'globe-africa',
-  'globe-americas',
-  'globe-asia',
-  'globe-europe',
-  'golf-ball',
-  'gopuram',
-  'graduation-cap',
-  'greater-than',
-  'greater-than-equal',
-  'grimace',
-  'grin',
-  'grin-alt',
-  'grin-beam',
-  'grin-beam-sweat',
-  'grin-hearts',
-  'grin-squint',
-  'grin-squint-tears',
-  'grin-stars',
-  'grin-tears',
-  'grin-tongue',
-  'grin-tongue-squint',
-  'grin-tongue-wink',
-  'grin-wink',
-  'grip-horizontal',
-  'grip-lines',
-  'grip-lines-vertical',
-  'grip-vertical',
-  'guitar',
-  'h-square',
-  'hamburger',
-  'hammer',
-  'hamsa',
-  'hand-holding',
-  'hand-holding-heart',
-  'hand-holding-usd',
-  'hand-lizard',
-  'hand-middle-finger',
-  'hand-paper',
-  'hand-peace',
-  'hand-point-down',
-  'hand-point-left',
-  'hand-point-right',
-  'hand-point-up',
-  'hand-pointer',
-  'hand-rock',
-  'hand-scissors',
-  'hand-spock',
-  'hands',
-  'hands-helping',
-  'handshake',
-  'hanukiah',
-  'hard-hat',
-  'hashtag',
-  'hat-cowboy',
-  'hat-cowboy-side',
-  'hat-wizard',
-  'hdd',
-  'heading',
-  'headphones',
-  'headphones-alt',
-  'headset',
-  'heart',
-  'heart-broken',
-  'heartbeat',
-  'helicopter',
-  'highlighter',
-  'hiking',
-  'hippo',
-  'history',
-  'hockey-puck',
-  'holly-berry',
-  'home',
-  'horse',
-  'horse-head',
-  'hospital',
-  'hospital-alt',
-  'hospital-symbol',
-  'hot-tub',
-  'hotdog',
-  'hotel',
-  'hourglass',
-  'hourglass-end',
-  'hourglass-half',
-  'hourglass-start',
-  'house-damage',
-  'hryvnia',
-  'i-cursor',
-  'ice-cream',
-  'icicles',
-  'icons',
-  'id-badge',
-  'id-card',
-  'id-card-alt',
-  'igloo',
-  'image',
-  'images',
-  'inbox',
-  'indent',
-  'industry',
-  'infinity',
-  'info',
-  'info-circle',
-  'italic',
-  'jedi',
-  'joint',
-  'journal-whills',
-  'kaaba',
-  'key',
-  'keyboard',
-  'khanda',
-  'kiss',
-  'kiss-beam',
-  'kiss-wink-heart',
-  'kiwi-bird',
-  'landmark',
-  'language',
-  'laptop',
-  'laptop-code',
-  'laptop-medical',
-  'laugh',
-  'laugh-beam',
-  'laugh-squint',
-  'laugh-wink',
-  'layer-group',
-  'leaf',
-  'lemon',
-  'less-than',
-  'less-than-equal',
-  'level-down-alt',
-  'level-up-alt',
-  'life-ring',
-  'lightbulb',
-  'link',
-  'lira-sign',
-  'list',
-  'list-alt',
-  'list-ol',
-  'list-ul',
-  'location-arrow',
-  'lock',
-  'lock-open',
-  'long-arrow-alt-down',
-  'long-arrow-alt-left',
-  'long-arrow-alt-right',
-  'long-arrow-alt-up',
-  'low-vision',
-  'luggage-cart',
-  'magic',
-  'magnet',
-  'mail-bulk',
-  'male',
-  'map',
-  'map-marked',
-  'map-marked-alt',
-  'map-marker',
-  'map-marker-alt',
-  'map-pin',
-  'map-signs',
-  'marker',
-  'mars',
-  'mars-double',
-  'mars-stroke',
-  'mars-stroke-h',
-  'mars-stroke-v',
-  'mask',
-  'medal',
-  'medkit',
-  'meh',
-  'meh-blank',
-  'meh-rolling-eyes',
-  'memory',
-  'menorah',
-  'mercury',
-  'meteor',
-  'microchip',
-  'microphone',
-  'microphone-alt',
-  'microphone-alt-slash',
-  'microphone-slash',
-  'microscope',
-  'minus',
-  'minus-circle',
-  'minus-square',
-  'mitten',
-  'mobile',
-  'mobile-alt',
-  'money-bill',
-  'money-bill-alt',
-  'money-bill-wave',
-  'money-bill-wave-alt',
-  'money-check',
-  'money-check-alt',
-  'monument',
-  'moon',
-  'mortar-pestle',
-  'mosque',
-  'motorcycle',
-  'mountain',
-  'mouse',
-  'mouse-pointer',
-  'mug-hot',
-  'music',
-  'network-wired',
-  'neuter',
-  'newspaper',
-  'not-equal',
-  'notes-medical',
-  'object-group',
-  'object-ungroup',
-  'oil-can',
-  'om',
-  'otter',
-  'outdent',
-  'pager',
-  'paint-brush',
-  'paint-roller',
-  'palette',
-  'pallet',
-  'paper-plane',
-  'paperclip',
-  'parachute-box',
-  'paragraph',
-  'parking',
-  'passport',
-  'pastafarianism',
-  'paste',
-  'pause',
-  'pause-circle',
-  'paw',
-  'peace',
-  'pen',
-  'pen-alt',
-  'pen-fancy',
-  'pen-nib',
-  'pen-square',
-  'pencil-alt',
-  'pencil-ruler',
-  'people-carry',
-  'pepper-hot',
-  'percent',
-  'percentage',
-  'person-booth',
-  'phone',
-  'phone-alt',
-  'phone-slash',
-  'phone-square',
-  'phone-square-alt',
-  'phone-volume',
-  'photo-video',
-  'piggy-bank',
-  'pills',
-  'pizza-slice',
-  'place-of-worship',
-  'plane',
-  'plane-arrival',
-  'plane-departure',
-  'play',
-  'play-circle',
-  'plug',
-  'plus',
-  'plus-circle',
-  'plus-square',
-  'podcast',
-  'poll',
-  'poll-h',
-  'poo',
-  'poo-storm',
-  'poop',
-  'portrait',
-  'pound-sign',
-  'power-off',
-  'pray',
-  'praying-hands',
-  'prescription',
-  'prescription-bottle',
-  'prescription-bottle-alt',
-  'print',
-  'procedures',
-  'project-diagram',
-  'puzzle-piece',
-  'qrcode',
-  'question',
-  'question-circle',
-  'quidditch',
-  'quote-left',
-  'quote-right',
-  'quran',
-  'radiation',
-  'radiation-alt',
-  'rainbow',
-  'random',
-  'receipt',
-  'record-vinyl',
-  'recycle',
-  'redo',
-  'redo-alt',
-  'registered',
-  'remove-format',
-  'reply',
-  'reply-all',
-  'republican',
-  'restroom',
-  'retweet',
-  'ribbon',
-  'ring',
-  'road',
-  'robot',
-  'rocket',
-  'route',
-  'rss',
-  'rss-square',
-  'ruble-sign',
-  'ruler',
-  'ruler-combined',
-  'ruler-horizontal',
-  'ruler-vertical',
-  'running',
-  'rupee-sign',
-  'sad-cry',
-  'sad-tear',
-  'satellite',
-  'satellite-dish',
-  'save',
-  'school',
-  'screwdriver',
-  'scroll',
-  'sd-card',
-  'search',
-  'search-dollar',
-  'search-location',
-  'search-minus',
-  'search-plus',
-  'seedling',
-  'server',
-  'shapes',
-  'share',
-  'share-alt',
-  'share-alt-square',
-  'share-square',
-  'shekel-sign',
-  'shield-alt',
-  'ship',
-  'shipping-fast',
-  'shoe-prints',
-  'shopping-bag',
-  'shopping-basket',
-  'shopping-cart',
-  'shower',
-  'shuttle-van',
-  'sign',
-  'sign-in-alt',
-  'sign-language',
-  'sign-out-alt',
-  'signal',
-  'signature',
-  'sim-card',
-  'sitemap',
-  'skating',
-  'skiing',
-  'skiing-nordic',
-  'skull',
-  'skull-crossbones',
-  'slash',
-  'sleigh',
-  'sliders-h',
-  'smile',
-  'smile-beam',
-  'smile-wink',
-  'smog',
-  'smoking',
-  'smoking-ban',
-  'sms',
-  'snowboarding',
-  'snowflake',
-  'snowman',
-  'snowplow',
-  'socks',
-  'solar-panel',
-  'sort',
-  'sort-alpha-down',
-  'sort-alpha-down-alt',
-  'sort-alpha-up',
-  'sort-alpha-up-alt',
-  'sort-amount-down',
-  'sort-amount-down-alt',
-  'sort-amount-up',
-  'sort-amount-up-alt',
-  'sort-down',
-  'sort-numeric-down',
-  'sort-numeric-down-alt',
-  'sort-numeric-up',
-  'sort-numeric-up-alt',
-  'sort-up',
-  'spa',
-  'space-shuttle',
-  'spell-check',
-  'spider',
-  'spinner',
-  'splotch',
-  'spray-can',
-  'square',
-  'square-full',
-  'square-root-alt',
-  'stamp',
-  'star',
-  'star-and-crescent',
-  'star-half',
-  'star-half-alt',
-  'star-of-david',
-  'star-of-life',
-  'step-backward',
-  'step-forward',
-  'stethoscope',
-  'sticky-note',
-  'stop',
-  'stop-circle',
-  'stopwatch',
-  'store',
-  'store-alt',
-  'stream',
-  'street-view',
-  'strikethrough',
-  'stroopwafel',
-  'subscript',
-  'subway',
-  'suitcase',
-  'suitcase-rolling',
-  'sun',
-  'superscript',
-  'surprise',
-  'swatchbook',
-  'swimmer',
-  'swimming-pool',
-  'synagogue',
-  'sync',
-  'sync-alt',
-  'syringe',
-  'table',
-  'table-tennis',
-  'tablet',
-  'tablet-alt',
-  'tablets',
-  'tachometer-alt',
-  'tag',
-  'tags',
-  'tape',
-  'tasks',
-  'taxi',
-  'teeth',
-  'teeth-open',
-  'temperature-high',
-  'temperature-low',
-  'tenge',
-  'terminal',
-  'text-height',
-  'text-width',
-  'th',
-  'th-large',
-  'th-list',
-  'theater-masks',
-  'thermometer',
-  'thermometer-empty',
-  'thermometer-full',
-  'thermometer-half',
-  'thermometer-quarter',
-  'thermometer-three-quarters',
-  'thumbs-down',
-  'thumbs-up',
-  'thumbtack',
-  'ticket-alt',
-  'times',
-  'times-circle',
-  'tint',
-  'tint-slash',
-  'tired',
-  'toggle-off',
-  'toggle-on',
-  'toilet',
-  'toilet-paper',
-  'toolbox',
-  'tools',
-  'tooth',
-  'torah',
-  'torii-gate',
-  'tractor',
-  'trademark',
-  'traffic-light',
-  'trailer',
-  'train',
-  'tram',
-  'transgender',
-  'transgender-alt',
-  'trash',
-  'trash-alt',
-  'trash-restore',
-  'trash-restore-alt',
-  'tree',
-  'trophy',
-  'truck',
-  'truck-loading',
-  'truck-monster',
-  'truck-moving',
-  'truck-pickup',
-  'tshirt',
-  'tty',
-  'tv',
-  'umbrella',
-  'umbrella-beach',
-  'underline',
-  'undo',
-  'undo-alt',
-  'universal-access',
-  'university',
-  'unlink',
-  'unlock',
-  'unlock-alt',
-  'upload',
-  'user',
-  'user-alt',
-  'user-alt-slash',
-  'user-astronaut',
-  'user-check',
-  'user-circle',
-  'user-clock',
-  'user-cog',
-  'user-edit',
-  'user-friends',
-  'user-graduate',
-  'user-injured',
-  'user-lock',
-  'user-md',
-  'user-minus',
-  'user-ninja',
-  'user-nurse',
-  'user-plus',
-  'user-secret',
-  'user-shield',
-  'user-slash',
-  'user-tag',
-  'user-tie',
-  'user-times',
-  'users',
-  'users-cog',
-  'utensil-spoon',
-  'utensils',
-  'vector-square',
-  'venus',
-  'venus-double',
-  'venus-mars',
-  'vial',
-  'vials',
-  'video',
-  'video-slash',
-  'vihara',
-  'voicemail',
-  'volleyball-ball',
-  'volume-down',
-  'volume-mute',
-  'volume-off',
-  'volume-up',
-  'vote-yea',
-  'vr-cardboard',
-  'walking',
-  'wallet',
-  'warehouse',
-  'water',
-  'wave-square',
-  'weight',
-  'weight-hanging',
-  'wheelchair',
-  'wifi',
-  'wind',
-  'window-close',
-  'window-maximize',
-  'window-minimize',
-  'window-restore',
-  'wine-bottle',
-  'wine-glass',
-  'wine-glass-alt',
-  'won-sign',
-  'wrench',
-  'x-ray',
-  'yen-sign',
-  'yin-yang',
-]
-module.exports = [
-  {
-    url: '/icon/getList',
-    type: 'post',
-    response(config) {
-      const { title, pageNo = 1, pageSize = 72 } = config.body
-      let mockList = data.filter((item) => {
-        if (title && item.indexOf(title) < 0) return false
-        return true
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: mockList.length,
-        data: pageList,
-      }
-    },
-  },
-]

+ 0 - 51
in-cloud-ui/mock/controller/menuManagement.js

@@ -1,51 +0,0 @@
-module.exports = [
-  {
-    url: '/menuManagement/getTree',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: 999,
-        data: [
-          {
-            id: 'root',
-            label: '全部角色',
-            children: [
-              {
-                id: '@id',
-                permission: 'admin',
-                label: 'admin角色',
-              },
-              {
-                id: '@id',
-                permission: 'editor',
-                label: 'editor角色',
-              },
-            ],
-          },
-        ],
-      }
-    },
-  },
-  {
-    url: '/menuManagement/doEdit',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟保存成功',
-      }
-    },
-  },
-  {
-    url: '/menuManagement/doDelete',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟删除成功',
-      }
-    },
-  },
-]

+ 0 - 33
in-cloud-ui/mock/controller/notice.js

@@ -1,33 +0,0 @@
-const data = [
-  {
-    title:
-      '温馨提示:集成版虽功能丰富,但冗余依赖过多,建议开发时使用基础版进行开发, 建党百年惊喜福利,买一得二,全年最低价,一年仅此一次:<a target="_blank" href="https://vue-admin-beautiful.com/authorization">点我获取优惠福利</a>',
-    closable: false,
-    type: 'success',
-  },
-  {
-    title:
-      '作者寄语:感谢Star,感恩相遇,愿世间美好与我们环环相扣,加油!屏幕前的我们,打破桎梏,坚守初心。其实人生改变命运的机会并没有太多,我们并不是不优秀,我们也并不是一无是处,我们也希望驻足山巅被众人仰望,也许我们缺少的只是一个机会,缺少的只是生命中的导师,我希望这个框架帮助到更多的人,希望有一天,我们面试的时候不再胆怯,希望有一天别人看到的不仅仅是你的努力,还有你的功成名就,出人头地。',
-    closable: false,
-    type: 'warning',
-  },
-  {
-    title:
-      '随笔:我一直在寻找开源的真谛,我一直再想什么是开源,我一开始觉得免费就是开源,好像又不是。我理解的开源是:你也开源,我也开源,大家一起贡献,相互帮助。我最担心的事情是:我一个小人物,去伺候一众的伸手党,我想,这不是开源该有的氛围。我还太年轻,不懂什么是格局,我只知道,无私的帮助他人,能给我带来快乐,却不能给我带来收入,当然,有时候,快乐对我来说就已经足够了。可惜我是一个人,没有精力帮助到每一个人,可惜这个世界需要赚钱,才能过上平凡的生活,可惜了我的梦想,这个物欲横流的时代,理想主义的我们,即使内心坚决如铁,也似乎寸步难行。',
-    closable: false,
-    type: 'success',
-  },
-]
-module.exports = [
-  {
-    url: '/notice/getList',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: 'success',
-        data,
-      }
-    },
-  },
-]

+ 0 - 42
in-cloud-ui/mock/controller/personalCenter.js

@@ -1,42 +0,0 @@
-const { mock } = require('mockjs')
-
-module.exports = [
-  {
-    url: '/personalCenter/getList',
-    type: 'post',
-    response(config) {
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: 999,
-        data: mock({
-          'data|10': [
-            {
-              id: '@id',
-            },
-          ],
-        }).data,
-      }
-    },
-  },
-  {
-    url: '/personalCenter/doEdit',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟保存成功',
-      }
-    },
-  },
-  {
-    url: '/personalCenter/doDelete',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟删除成功',
-      }
-    },
-  },
-]

+ 0 - 2294
in-cloud-ui/mock/controller/remixIcon.js

@@ -1,2294 +0,0 @@
-const data = [
-  '24-hours-fill',
-  '24-hours-line',
-  '4k-fill',
-  '4k-line',
-  'a-b',
-  'account-box-fill',
-  'account-box-line',
-  'account-circle-fill',
-  'account-circle-line',
-  'account-pin-box-fill',
-  'account-pin-box-line',
-  'account-pin-circle-fill',
-  'account-pin-circle-line',
-  'add-box-fill',
-  'add-box-line',
-  'add-circle-fill',
-  'add-circle-line',
-  'add-fill',
-  'add-line',
-  'admin-fill',
-  'admin-line',
-  'airplay-fill',
-  'airplay-line',
-  'alarm-fill',
-  'alarm-line',
-  'alarm-warning-fill',
-  'alarm-warning-line',
-  'album-fill',
-  'album-line',
-  'alert-fill',
-  'alert-line',
-  'aliens-fill',
-  'aliens-line',
-  'align-bottom',
-  'align-center',
-  'align-justify',
-  'align-left',
-  'align-right',
-  'align-top',
-  'align-vertically',
-  'alipay-fill',
-  'alipay-line',
-  'amazon-fill',
-  'amazon-line',
-  'anchor-fill',
-  'anchor-line',
-  'ancient-gate-fill',
-  'ancient-gate-line',
-  'ancient-pavilion-fill',
-  'ancient-pavilion-line',
-  'android-fill',
-  'android-line',
-  'angularjs-fill',
-  'angularjs-line',
-  'anticlockwise-2-fill',
-  'anticlockwise-2-line',
-  'anticlockwise-fill',
-  'anticlockwise-line',
-  'app-store-fill',
-  'app-store-line',
-  'apple-fill',
-  'apple-line',
-  'apps-2-fill',
-  'apps-2-line',
-  'apps-fill',
-  'apps-line',
-  'archive-drawer-fill',
-  'archive-drawer-line',
-  'archive-fill',
-  'archive-line',
-  'arrow-down-circle-fill',
-  'arrow-down-circle-line',
-  'arrow-down-fill',
-  'arrow-down-line',
-  'arrow-down-s-fill',
-  'arrow-down-s-line',
-  'arrow-drop-down-fill',
-  'arrow-drop-down-line',
-  'arrow-drop-left-fill',
-  'arrow-drop-left-line',
-  'arrow-drop-right-fill',
-  'arrow-drop-right-line',
-  'arrow-drop-up-fill',
-  'arrow-drop-up-line',
-  'arrow-go-back-fill',
-  'arrow-go-back-line',
-  'arrow-go-forward-fill',
-  'arrow-go-forward-line',
-  'arrow-left-circle-fill',
-  'arrow-left-circle-line',
-  'arrow-left-down-fill',
-  'arrow-left-down-line',
-  'arrow-left-fill',
-  'arrow-left-line',
-  'arrow-left-right-fill',
-  'arrow-left-right-line',
-  'arrow-left-s-fill',
-  'arrow-left-s-line',
-  'arrow-left-up-fill',
-  'arrow-left-up-line',
-  'arrow-right-circle-fill',
-  'arrow-right-circle-line',
-  'arrow-right-down-fill',
-  'arrow-right-down-line',
-  'arrow-right-fill',
-  'arrow-right-line',
-  'arrow-right-s-fill',
-  'arrow-right-s-line',
-  'arrow-right-up-fill',
-  'arrow-right-up-line',
-  'arrow-up-circle-fill',
-  'arrow-up-circle-line',
-  'arrow-up-down-fill',
-  'arrow-up-down-line',
-  'arrow-up-fill',
-  'arrow-up-line',
-  'arrow-up-s-fill',
-  'arrow-up-s-line',
-  'artboard-2-fill',
-  'artboard-2-line',
-  'artboard-fill',
-  'artboard-line',
-  'article-fill',
-  'article-line',
-  'aspect-ratio-fill',
-  'aspect-ratio-line',
-  'asterisk',
-  'at-fill',
-  'at-line',
-  'attachment-2',
-  'attachment-fill',
-  'attachment-line',
-  'auction-fill',
-  'auction-line',
-  'award-fill',
-  'award-line',
-  'baidu-fill',
-  'baidu-line',
-  'ball-pen-fill',
-  'ball-pen-line',
-  'bank-card-2-fill',
-  'bank-card-2-line',
-  'bank-card-fill',
-  'bank-card-line',
-  'bank-fill',
-  'bank-line',
-  'bar-chart-2-fill',
-  'bar-chart-2-line',
-  'bar-chart-box-fill',
-  'bar-chart-box-line',
-  'bar-chart-fill',
-  'bar-chart-grouped-fill',
-  'bar-chart-grouped-line',
-  'bar-chart-horizontal-fill',
-  'bar-chart-horizontal-line',
-  'bar-chart-line',
-  'barcode-box-fill',
-  'barcode-box-line',
-  'barcode-fill',
-  'barcode-line',
-  'barricade-fill',
-  'barricade-line',
-  'base-station-fill',
-  'base-station-line',
-  'basketball-fill',
-  'basketball-line',
-  'battery-2-charge-fill',
-  'battery-2-charge-line',
-  'battery-2-fill',
-  'battery-2-line',
-  'battery-charge-fill',
-  'battery-charge-line',
-  'battery-fill',
-  'battery-line',
-  'battery-low-fill',
-  'battery-low-line',
-  'battery-saver-fill',
-  'battery-saver-line',
-  'battery-share-fill',
-  'battery-share-line',
-  'bear-smile-fill',
-  'bear-smile-line',
-  'behance-fill',
-  'behance-line',
-  'bell-fill',
-  'bell-line',
-  'bike-fill',
-  'bike-line',
-  'bilibili-fill',
-  'bilibili-line',
-  'bill-fill',
-  'bill-line',
-  'billiards-fill',
-  'billiards-line',
-  'bit-coin-fill',
-  'bit-coin-line',
-  'blaze-fill',
-  'blaze-line',
-  'bluetooth-connect-fill',
-  'bluetooth-connect-line',
-  'bluetooth-fill',
-  'bluetooth-line',
-  'blur-off-fill',
-  'blur-off-line',
-  'body-scan-fill',
-  'body-scan-line',
-  'bold',
-  'book-2-fill',
-  'book-2-line',
-  'book-3-fill',
-  'book-3-line',
-  'book-fill',
-  'book-line',
-  'book-mark-fill',
-  'book-mark-line',
-  'book-open-fill',
-  'book-open-line',
-  'book-read-fill',
-  'book-read-line',
-  'booklet-fill',
-  'booklet-line',
-  'bookmark-2-fill',
-  'bookmark-2-line',
-  'bookmark-3-fill',
-  'bookmark-3-line',
-  'bookmark-fill',
-  'bookmark-line',
-  'boxing-fill',
-  'boxing-line',
-  'braces-fill',
-  'braces-line',
-  'brackets-fill',
-  'brackets-line',
-  'briefcase-2-fill',
-  'briefcase-2-line',
-  'briefcase-3-fill',
-  'briefcase-3-line',
-  'briefcase-4-fill',
-  'briefcase-4-line',
-  'briefcase-5-fill',
-  'briefcase-5-line',
-  'briefcase-fill',
-  'briefcase-line',
-  'bring-forward',
-  'bring-to-front',
-  'broadcast-fill',
-  'broadcast-line',
-  'brush-2-fill',
-  'brush-2-line',
-  'brush-3-fill',
-  'brush-3-line',
-  'brush-4-fill',
-  'brush-4-line',
-  'brush-fill',
-  'brush-line',
-  'bubble-chart-fill',
-  'bubble-chart-line',
-  'bug-2-fill',
-  'bug-2-line',
-  'bug-fill',
-  'bug-line',
-  'building-2-fill',
-  'building-2-line',
-  'building-3-fill',
-  'building-3-line',
-  'building-4-fill',
-  'building-4-line',
-  'building-fill',
-  'building-line',
-  'bus-2-fill',
-  'bus-2-line',
-  'bus-fill',
-  'bus-line',
-  'bus-wifi-fill',
-  'bus-wifi-line',
-  'cactus-fill',
-  'cactus-line',
-  'cake-2-fill',
-  'cake-2-line',
-  'cake-3-fill',
-  'cake-3-line',
-  'cake-fill',
-  'cake-line',
-  'calculator-fill',
-  'calculator-line',
-  'calendar-2-fill',
-  'calendar-2-line',
-  'calendar-check-fill',
-  'calendar-check-line',
-  'calendar-event-fill',
-  'calendar-event-line',
-  'calendar-fill',
-  'calendar-line',
-  'calendar-todo-fill',
-  'calendar-todo-line',
-  'camera-2-fill',
-  'camera-2-line',
-  'camera-3-fill',
-  'camera-3-line',
-  'camera-fill',
-  'camera-lens-fill',
-  'camera-lens-line',
-  'camera-line',
-  'camera-off-fill',
-  'camera-off-line',
-  'camera-switch-fill',
-  'camera-switch-line',
-  'capsule-fill',
-  'capsule-line',
-  'car-fill',
-  'car-line',
-  'car-washing-fill',
-  'car-washing-line',
-  'caravan-fill',
-  'caravan-line',
-  'cast-fill',
-  'cast-line',
-  'cellphone-fill',
-  'cellphone-line',
-  'celsius-fill',
-  'celsius-line',
-  'centos-fill',
-  'centos-line',
-  'character-recognition-fill',
-  'character-recognition-line',
-  'charging-pile-2-fill',
-  'charging-pile-2-line',
-  'charging-pile-fill',
-  'charging-pile-line',
-  'chat-1-fill',
-  'chat-1-line',
-  'chat-2-fill',
-  'chat-2-line',
-  'chat-3-fill',
-  'chat-3-line',
-  'chat-4-fill',
-  'chat-4-line',
-  'chat-check-fill',
-  'chat-check-line',
-  'chat-delete-fill',
-  'chat-delete-line',
-  'chat-download-fill',
-  'chat-download-line',
-  'chat-follow-up-fill',
-  'chat-follow-up-line',
-  'chat-forward-fill',
-  'chat-forward-line',
-  'chat-heart-fill',
-  'chat-heart-line',
-  'chat-history-fill',
-  'chat-history-line',
-  'chat-new-fill',
-  'chat-new-line',
-  'chat-off-fill',
-  'chat-off-line',
-  'chat-poll-fill',
-  'chat-poll-line',
-  'chat-private-fill',
-  'chat-private-line',
-  'chat-quote-fill',
-  'chat-quote-line',
-  'chat-settings-fill',
-  'chat-settings-line',
-  'chat-smile-2-fill',
-  'chat-smile-2-line',
-  'chat-smile-3-fill',
-  'chat-smile-3-line',
-  'chat-smile-fill',
-  'chat-smile-line',
-  'chat-upload-fill',
-  'chat-upload-line',
-  'chat-voice-fill',
-  'chat-voice-line',
-  'check-double-fill',
-  'check-double-line',
-  'check-fill',
-  'check-line',
-  'checkbox-blank-circle-fill',
-  'checkbox-blank-circle-line',
-  'checkbox-blank-fill',
-  'checkbox-blank-line',
-  'checkbox-circle-fill',
-  'checkbox-circle-line',
-  'checkbox-fill',
-  'checkbox-indeterminate-fill',
-  'checkbox-indeterminate-line',
-  'checkbox-line',
-  'checkbox-multiple-blank-fill',
-  'checkbox-multiple-blank-line',
-  'checkbox-multiple-fill',
-  'checkbox-multiple-line',
-  'china-railway-fill',
-  'china-railway-line',
-  'chrome-fill',
-  'chrome-line',
-  'clapperboard-fill',
-  'clapperboard-line',
-  'clipboard-fill',
-  'clipboard-line',
-  'clockwise-2-fill',
-  'clockwise-2-line',
-  'clockwise-fill',
-  'clockwise-line',
-  'close-circle-fill',
-  'close-circle-line',
-  'close-fill',
-  'close-line',
-  'closed-captioning-fill',
-  'closed-captioning-line',
-  'cloud-fill',
-  'cloud-line',
-  'cloud-off-fill',
-  'cloud-off-line',
-  'cloud-windy-fill',
-  'cloud-windy-line',
-  'cloudy-2-fill',
-  'cloudy-2-line',
-  'cloudy-fill',
-  'cloudy-line',
-  'code-box-fill',
-  'code-box-line',
-  'code-fill',
-  'code-line',
-  'code-s-fill',
-  'code-s-line',
-  'code-s-slash-fill',
-  'code-s-slash-line',
-  'code-view',
-  'codepen-fill',
-  'codepen-line',
-  'coin-fill',
-  'coin-line',
-  'coins-fill',
-  'coins-line',
-  'collage-fill',
-  'collage-line',
-  'command-fill',
-  'command-line',
-  'community-fill',
-  'community-line',
-  'compass-2-fill',
-  'compass-2-line',
-  'compass-3-fill',
-  'compass-3-line',
-  'compass-4-fill',
-  'compass-4-line',
-  'compass-discover-fill',
-  'compass-discover-line',
-  'compass-fill',
-  'compass-line',
-  'compasses-2-fill',
-  'compasses-2-line',
-  'compasses-fill',
-  'compasses-line',
-  'computer-fill',
-  'computer-line',
-  'contacts-book-2-fill',
-  'contacts-book-2-line',
-  'contacts-book-fill',
-  'contacts-book-line',
-  'contacts-book-upload-fill',
-  'contacts-book-upload-line',
-  'contacts-fill',
-  'contacts-line',
-  'contrast-2-fill',
-  'contrast-2-line',
-  'contrast-drop-2-fill',
-  'contrast-drop-2-line',
-  'contrast-drop-fill',
-  'contrast-drop-line',
-  'contrast-fill',
-  'contrast-line',
-  'copper-coin-fill',
-  'copper-coin-line',
-  'copper-diamond-fill',
-  'copper-diamond-line',
-  'copyleft-fill',
-  'copyleft-line',
-  'copyright-fill',
-  'copyright-line',
-  'coreos-fill',
-  'coreos-line',
-  'coupon-2-fill',
-  'coupon-2-line',
-  'coupon-3-fill',
-  'coupon-3-line',
-  'coupon-4-fill',
-  'coupon-4-line',
-  'coupon-5-fill',
-  'coupon-5-line',
-  'coupon-fill',
-  'coupon-line',
-  'cpu-fill',
-  'cpu-line',
-  'creative-commons-by-fill',
-  'creative-commons-by-line',
-  'creative-commons-fill',
-  'creative-commons-line',
-  'creative-commons-nc-fill',
-  'creative-commons-nc-line',
-  'creative-commons-nd-fill',
-  'creative-commons-nd-line',
-  'creative-commons-sa-fill',
-  'creative-commons-sa-line',
-  'creative-commons-zero-fill',
-  'creative-commons-zero-line',
-  'criminal-fill',
-  'criminal-line',
-  'crop-2-fill',
-  'crop-2-line',
-  'crop-fill',
-  'crop-line',
-  'css3-fill',
-  'css3-line',
-  'cup-fill',
-  'cup-line',
-  'currency-fill',
-  'currency-line',
-  'cursor-fill',
-  'cursor-line',
-  'customer-service-2-fill',
-  'customer-service-2-line',
-  'customer-service-fill',
-  'customer-service-line',
-  'dashboard-2-fill',
-  'dashboard-2-line',
-  'dashboard-3-fill',
-  'dashboard-3-line',
-  'dashboard-fill',
-  'dashboard-line',
-  'database-2-fill',
-  'database-2-line',
-  'database-fill',
-  'database-line',
-  'delete-back-2-fill',
-  'delete-back-2-line',
-  'delete-back-fill',
-  'delete-back-line',
-  'delete-bin-2-fill',
-  'delete-bin-2-line',
-  'delete-bin-3-fill',
-  'delete-bin-3-line',
-  'delete-bin-4-fill',
-  'delete-bin-4-line',
-  'delete-bin-5-fill',
-  'delete-bin-5-line',
-  'delete-bin-6-fill',
-  'delete-bin-6-line',
-  'delete-bin-7-fill',
-  'delete-bin-7-line',
-  'delete-bin-fill',
-  'delete-bin-line',
-  'delete-column',
-  'delete-row',
-  'device-fill',
-  'device-line',
-  'device-recover-fill',
-  'device-recover-line',
-  'dingding-fill',
-  'dingding-line',
-  'direction-fill',
-  'direction-line',
-  'disc-fill',
-  'disc-line',
-  'discord-fill',
-  'discord-line',
-  'discuss-fill',
-  'discuss-line',
-  'dislike-fill',
-  'dislike-line',
-  'disqus-fill',
-  'disqus-line',
-  'divide-fill',
-  'divide-line',
-  'donut-chart-fill',
-  'donut-chart-line',
-  'door-closed-fill',
-  'door-closed-line',
-  'door-fill',
-  'door-line',
-  'door-lock-box-fill',
-  'door-lock-box-line',
-  'door-lock-fill',
-  'door-lock-line',
-  'door-open-fill',
-  'door-open-line',
-  'dossier-fill',
-  'dossier-line',
-  'douban-fill',
-  'douban-line',
-  'double-quotes-l',
-  'double-quotes-r',
-  'download-2-fill',
-  'download-2-line',
-  'download-cloud-2-fill',
-  'download-cloud-2-line',
-  'download-cloud-fill',
-  'download-cloud-line',
-  'download-fill',
-  'download-line',
-  'draft-fill',
-  'draft-line',
-  'drag-drop-fill',
-  'drag-drop-line',
-  'drag-move-2-fill',
-  'drag-move-2-line',
-  'drag-move-fill',
-  'drag-move-line',
-  'dribbble-fill',
-  'dribbble-line',
-  'drive-fill',
-  'drive-line',
-  'drizzle-fill',
-  'drizzle-line',
-  'drop-fill',
-  'drop-line',
-  'dropbox-fill',
-  'dropbox-line',
-  'dual-sim-1-fill',
-  'dual-sim-1-line',
-  'dual-sim-2-fill',
-  'dual-sim-2-line',
-  'dv-fill',
-  'dv-line',
-  'dvd-fill',
-  'dvd-line',
-  'e-bike-2-fill',
-  'e-bike-2-line',
-  'e-bike-fill',
-  'e-bike-line',
-  'earth-fill',
-  'earth-line',
-  'earthquake-fill',
-  'earthquake-line',
-  'edge-fill',
-  'edge-line',
-  'edit-2-fill',
-  'edit-2-line',
-  'edit-box-fill',
-  'edit-box-line',
-  'edit-circle-fill',
-  'edit-circle-line',
-  'edit-fill',
-  'edit-line',
-  'eject-fill',
-  'eject-line',
-  'emotion-2-fill',
-  'emotion-2-line',
-  'emotion-fill',
-  'emotion-happy-fill',
-  'emotion-happy-line',
-  'emotion-laugh-fill',
-  'emotion-laugh-line',
-  'emotion-line',
-  'emotion-normal-fill',
-  'emotion-normal-line',
-  'emotion-sad-fill',
-  'emotion-sad-line',
-  'emotion-unhappy-fill',
-  'emotion-unhappy-line',
-  'empathize-fill',
-  'empathize-line',
-  'emphasis-cn',
-  'emphasis',
-  'english-input',
-  'equalizer-fill',
-  'equalizer-line',
-  'eraser-fill',
-  'eraser-line',
-  'error-warning-fill',
-  'error-warning-line',
-  'evernote-fill',
-  'evernote-line',
-  'exchange-box-fill',
-  'exchange-box-line',
-  'exchange-cny-fill',
-  'exchange-cny-line',
-  'exchange-dollar-fill',
-  'exchange-dollar-line',
-  'exchange-fill',
-  'exchange-funds-fill',
-  'exchange-funds-line',
-  'exchange-line',
-  'external-link-fill',
-  'external-link-line',
-  'eye-2-fill',
-  'eye-2-line',
-  'eye-close-fill',
-  'eye-close-line',
-  'eye-fill',
-  'eye-line',
-  'eye-off-fill',
-  'eye-off-line',
-  'facebook-box-fill',
-  'facebook-box-line',
-  'facebook-circle-fill',
-  'facebook-circle-line',
-  'facebook-fill',
-  'facebook-line',
-  'fahrenheit-fill',
-  'fahrenheit-line',
-  'feedback-fill',
-  'feedback-line',
-  'file-2-fill',
-  'file-2-line',
-  'file-3-fill',
-  'file-3-line',
-  'file-4-fill',
-  'file-4-line',
-  'file-add-fill',
-  'file-add-line',
-  'file-chart-2-fill',
-  'file-chart-2-line',
-  'file-chart-fill',
-  'file-chart-line',
-  'file-cloud-fill',
-  'file-cloud-line',
-  'file-code-fill',
-  'file-code-line',
-  'file-copy-2-fill',
-  'file-copy-2-line',
-  'file-copy-fill',
-  'file-copy-line',
-  'file-damage-fill',
-  'file-damage-line',
-  'file-download-fill',
-  'file-download-line',
-  'file-edit-fill',
-  'file-edit-line',
-  'file-excel-2-fill',
-  'file-excel-2-line',
-  'file-excel-fill',
-  'file-excel-line',
-  'file-fill',
-  'file-forbid-fill',
-  'file-forbid-line',
-  'file-gif-fill',
-  'file-gif-line',
-  'file-history-fill',
-  'file-history-line',
-  'file-hwp-fill',
-  'file-hwp-line',
-  'file-info-fill',
-  'file-info-line',
-  'file-line',
-  'file-list-2-fill',
-  'file-list-2-line',
-  'file-list-3-fill',
-  'file-list-3-line',
-  'file-list-fill',
-  'file-list-line',
-  'file-lock-fill',
-  'file-lock-line',
-  'file-mark-fill',
-  'file-mark-line',
-  'file-music-fill',
-  'file-music-line',
-  'file-paper-2-fill',
-  'file-paper-2-line',
-  'file-paper-fill',
-  'file-paper-line',
-  'file-pdf-fill',
-  'file-pdf-line',
-  'file-ppt-2-fill',
-  'file-ppt-2-line',
-  'file-ppt-fill',
-  'file-ppt-line',
-  'file-reduce-fill',
-  'file-reduce-line',
-  'file-search-fill',
-  'file-search-line',
-  'file-settings-fill',
-  'file-settings-line',
-  'file-shield-2-fill',
-  'file-shield-2-line',
-  'file-shield-fill',
-  'file-shield-line',
-  'file-shred-fill',
-  'file-shred-line',
-  'file-text-fill',
-  'file-text-line',
-  'file-transfer-fill',
-  'file-transfer-line',
-  'file-unknow-fill',
-  'file-unknow-line',
-  'file-upload-fill',
-  'file-upload-line',
-  'file-user-fill',
-  'file-user-line',
-  'file-warning-fill',
-  'file-warning-line',
-  'file-word-2-fill',
-  'file-word-2-line',
-  'file-word-fill',
-  'file-word-line',
-  'file-zip-fill',
-  'file-zip-line',
-  'film-fill',
-  'film-line',
-  'filter-2-fill',
-  'filter-2-line',
-  'filter-3-fill',
-  'filter-3-line',
-  'filter-fill',
-  'filter-line',
-  'filter-off-fill',
-  'filter-off-line',
-  'find-replace-fill',
-  'find-replace-line',
-  'finder-fill',
-  'finder-line',
-  'fingerprint-2-fill',
-  'fingerprint-2-line',
-  'fingerprint-fill',
-  'fingerprint-line',
-  'fire-fill',
-  'fire-line',
-  'firefox-fill',
-  'firefox-line',
-  'first-aid-kit-fill',
-  'first-aid-kit-line',
-  'flag-2-fill',
-  'flag-2-line',
-  'flag-fill',
-  'flag-line',
-  'flashlight-fill',
-  'flashlight-line',
-  'flask-fill',
-  'flask-line',
-  'flight-land-fill',
-  'flight-land-line',
-  'flight-takeoff-fill',
-  'flight-takeoff-line',
-  'flood-fill',
-  'flood-line',
-  'flow-chart',
-  'flutter-fill',
-  'flutter-line',
-  'focus-2-fill',
-  'focus-2-line',
-  'focus-3-fill',
-  'focus-3-line',
-  'focus-fill',
-  'focus-line',
-  'foggy-fill',
-  'foggy-line',
-  'folder-2-fill',
-  'folder-2-line',
-  'folder-3-fill',
-  'folder-3-line',
-  'folder-4-fill',
-  'folder-4-line',
-  'folder-5-fill',
-  'folder-5-line',
-  'folder-add-fill',
-  'folder-add-line',
-  'folder-chart-2-fill',
-  'folder-chart-2-line',
-  'folder-chart-fill',
-  'folder-chart-line',
-  'folder-download-fill',
-  'folder-download-line',
-  'folder-fill',
-  'folder-forbid-fill',
-  'folder-forbid-line',
-  'folder-history-fill',
-  'folder-history-line',
-  'folder-info-fill',
-  'folder-info-line',
-  'folder-keyhole-fill',
-  'folder-keyhole-line',
-  'folder-line',
-  'folder-lock-fill',
-  'folder-lock-line',
-  'folder-music-fill',
-  'folder-music-line',
-  'folder-open-fill',
-  'folder-open-line',
-  'folder-received-fill',
-  'folder-received-line',
-  'folder-reduce-fill',
-  'folder-reduce-line',
-  'folder-settings-fill',
-  'folder-settings-line',
-  'folder-shared-fill',
-  'folder-shared-line',
-  'folder-shield-2-fill',
-  'folder-shield-2-line',
-  'folder-shield-fill',
-  'folder-shield-line',
-  'folder-transfer-fill',
-  'folder-transfer-line',
-  'folder-unknow-fill',
-  'folder-unknow-line',
-  'folder-upload-fill',
-  'folder-upload-line',
-  'folder-user-fill',
-  'folder-user-line',
-  'folder-warning-fill',
-  'folder-warning-line',
-  'folder-zip-fill',
-  'folder-zip-line',
-  'folders-fill',
-  'folders-line',
-  'font-color',
-  'font-size-2',
-  'font-size',
-  'football-fill',
-  'football-line',
-  'footprint-fill',
-  'footprint-line',
-  'forbid-2-fill',
-  'forbid-2-line',
-  'forbid-fill',
-  'forbid-line',
-  'format-clear',
-  'fridge-fill',
-  'fridge-line',
-  'fullscreen-exit-fill',
-  'fullscreen-exit-line',
-  'fullscreen-fill',
-  'fullscreen-line',
-  'function-fill',
-  'function-line',
-  'functions',
-  'funds-box-fill',
-  'funds-box-line',
-  'funds-fill',
-  'funds-line',
-  'gallery-fill',
-  'gallery-line',
-  'gallery-upload-fill',
-  'gallery-upload-line',
-  'game-fill',
-  'game-line',
-  'gamepad-fill',
-  'gamepad-line',
-  'gas-station-fill',
-  'gas-station-line',
-  'gatsby-fill',
-  'gatsby-line',
-  'genderless-fill',
-  'genderless-line',
-  'ghost-2-fill',
-  'ghost-2-line',
-  'ghost-fill',
-  'ghost-line',
-  'ghost-smile-fill',
-  'ghost-smile-line',
-  'gift-2-fill',
-  'gift-2-line',
-  'gift-fill',
-  'gift-line',
-  'git-branch-fill',
-  'git-branch-line',
-  'git-commit-fill',
-  'git-commit-line',
-  'git-merge-fill',
-  'git-merge-line',
-  'git-pull-request-fill',
-  'git-pull-request-line',
-  'git-repository-commits-fill',
-  'git-repository-commits-line',
-  'git-repository-fill',
-  'git-repository-line',
-  'git-repository-private-fill',
-  'git-repository-private-line',
-  'github-fill',
-  'github-line',
-  'gitlab-fill',
-  'gitlab-line',
-  'global-fill',
-  'global-line',
-  'globe-fill',
-  'globe-line',
-  'goblet-fill',
-  'goblet-line',
-  'google-fill',
-  'google-line',
-  'google-play-fill',
-  'google-play-line',
-  'government-fill',
-  'government-line',
-  'gps-fill',
-  'gps-line',
-  'gradienter-fill',
-  'gradienter-line',
-  'grid-fill',
-  'grid-line',
-  'group-2-fill',
-  'group-2-line',
-  'group-fill',
-  'group-line',
-  'guide-fill',
-  'guide-line',
-  'h-1',
-  'h-2',
-  'h-3',
-  'h-4',
-  'h-5',
-  'h-6',
-  'hail-fill',
-  'hail-line',
-  'hammer-fill',
-  'hammer-line',
-  'hand-coin-fill',
-  'hand-coin-line',
-  'hand-heart-fill',
-  'hand-heart-line',
-  'hand-sanitizer-fill',
-  'hand-sanitizer-line',
-  'handbag-fill',
-  'handbag-line',
-  'hard-drive-2-fill',
-  'hard-drive-2-line',
-  'hard-drive-fill',
-  'hard-drive-line',
-  'hashtag',
-  'haze-2-fill',
-  'haze-2-line',
-  'haze-fill',
-  'haze-line',
-  'hd-fill',
-  'hd-line',
-  'heading',
-  'headphone-fill',
-  'headphone-line',
-  'health-book-fill',
-  'health-book-line',
-  'heart-2-fill',
-  'heart-2-line',
-  'heart-3-fill',
-  'heart-3-line',
-  'heart-add-fill',
-  'heart-add-line',
-  'heart-fill',
-  'heart-line',
-  'heart-pulse-fill',
-  'heart-pulse-line',
-  'hearts-fill',
-  'hearts-line',
-  'heavy-showers-fill',
-  'heavy-showers-line',
-  'history-fill',
-  'history-line',
-  'home-2-fill',
-  'home-2-line',
-  'home-3-fill',
-  'home-3-line',
-  'home-4-fill',
-  'home-4-line',
-  'home-5-fill',
-  'home-5-line',
-  'home-6-fill',
-  'home-6-line',
-  'home-7-fill',
-  'home-7-line',
-  'home-8-fill',
-  'home-8-line',
-  'home-fill',
-  'home-gear-fill',
-  'home-gear-line',
-  'home-heart-fill',
-  'home-heart-line',
-  'home-line',
-  'home-smile-2-fill',
-  'home-smile-2-line',
-  'home-smile-fill',
-  'home-smile-line',
-  'home-wifi-fill',
-  'home-wifi-line',
-  'honor-of-kings-fill',
-  'honor-of-kings-line',
-  'honour-fill',
-  'honour-line',
-  'hospital-fill',
-  'hospital-line',
-  'hotel-bed-fill',
-  'hotel-bed-line',
-  'hotel-fill',
-  'hotel-line',
-  'hotspot-fill',
-  'hotspot-line',
-  'hq-fill',
-  'hq-line',
-  'html5-fill',
-  'html5-line',
-  'ie-fill',
-  'ie-line',
-  'image-2-fill',
-  'image-2-line',
-  'image-add-fill',
-  'image-add-line',
-  'image-edit-fill',
-  'image-edit-line',
-  'image-fill',
-  'image-line',
-  'inbox-archive-fill',
-  'inbox-archive-line',
-  'inbox-fill',
-  'inbox-line',
-  'inbox-unarchive-fill',
-  'inbox-unarchive-line',
-  'increase-decrease-fill',
-  'increase-decrease-line',
-  'indent-decrease',
-  'indent-increase',
-  'indeterminate-circle-fill',
-  'indeterminate-circle-line',
-  'information-fill',
-  'information-line',
-  'infrared-thermometer-fill',
-  'infrared-thermometer-line',
-  'ink-bottle-fill',
-  'ink-bottle-line',
-  'input-cursor-move',
-  'input-method-fill',
-  'input-method-line',
-  'insert-column-left',
-  'insert-column-right',
-  'insert-row-bottom',
-  'insert-row-top',
-  'instagram-fill',
-  'instagram-line',
-  'install-fill',
-  'install-line',
-  'invision-fill',
-  'invision-line',
-  'italic',
-  'kakao-talk-fill',
-  'kakao-talk-line',
-  'key-2-fill',
-  'key-2-line',
-  'key-fill',
-  'key-line',
-  'keyboard-box-fill',
-  'keyboard-box-line',
-  'keyboard-fill',
-  'keyboard-line',
-  'keynote-fill',
-  'keynote-line',
-  'knife-blood-fill',
-  'knife-blood-line',
-  'knife-fill',
-  'knife-line',
-  'landscape-fill',
-  'landscape-line',
-  'layout-2-fill',
-  'layout-2-line',
-  'layout-3-fill',
-  'layout-3-line',
-  'layout-4-fill',
-  'layout-4-line',
-  'layout-5-fill',
-  'layout-5-line',
-  'layout-6-fill',
-  'layout-6-line',
-  'layout-bottom-2-fill',
-  'layout-bottom-2-line',
-  'layout-bottom-fill',
-  'layout-bottom-line',
-  'layout-column-fill',
-  'layout-column-line',
-  'layout-fill',
-  'layout-grid-fill',
-  'layout-grid-line',
-  'layout-left-2-fill',
-  'layout-left-2-line',
-  'layout-left-fill',
-  'layout-left-line',
-  'layout-line',
-  'layout-masonry-fill',
-  'layout-masonry-line',
-  'layout-right-2-fill',
-  'layout-right-2-line',
-  'layout-right-fill',
-  'layout-right-line',
-  'layout-row-fill',
-  'layout-row-line',
-  'layout-top-2-fill',
-  'layout-top-2-line',
-  'layout-top-fill',
-  'layout-top-line',
-  'leaf-fill',
-  'leaf-line',
-  'lifebuoy-fill',
-  'lifebuoy-line',
-  'lightbulb-fill',
-  'lightbulb-flash-fill',
-  'lightbulb-flash-line',
-  'lightbulb-line',
-  'line-chart-fill',
-  'line-chart-line',
-  'line-fill',
-  'line-height',
-  'line-line',
-  'link-m',
-  'link-unlink-m',
-  'link-unlink',
-  'link',
-  'linkedin-box-fill',
-  'linkedin-box-line',
-  'linkedin-fill',
-  'linkedin-line',
-  'links-fill',
-  'links-line',
-  'list-check-2',
-  'list-check',
-  'list-ordered',
-  'list-settings-fill',
-  'list-settings-line',
-  'list-unordered',
-  'live-fill',
-  'live-line',
-  'loader-2-fill',
-  'loader-2-line',
-  'loader-3-fill',
-  'loader-3-line',
-  'loader-4-fill',
-  'loader-4-line',
-  'loader-5-fill',
-  'loader-5-line',
-  'loader-fill',
-  'loader-line',
-  'lock-2-fill',
-  'lock-2-line',
-  'lock-fill',
-  'lock-line',
-  'lock-password-fill',
-  'lock-password-line',
-  'lock-unlock-fill',
-  'lock-unlock-line',
-  'login-box-fill',
-  'login-box-line',
-  'login-circle-fill',
-  'login-circle-line',
-  'logout-box-fill',
-  'logout-box-line',
-  'logout-box-r-fill',
-  'logout-box-r-line',
-  'logout-circle-fill',
-  'logout-circle-line',
-  'logout-circle-r-fill',
-  'logout-circle-r-line',
-  'luggage-cart-fill',
-  'luggage-cart-line',
-  'luggage-deposit-fill',
-  'luggage-deposit-line',
-  'lungs-fill',
-  'lungs-line',
-  'mac-fill',
-  'mac-line',
-  'macbook-fill',
-  'macbook-line',
-  'magic-fill',
-  'magic-line',
-  'mail-add-fill',
-  'mail-add-line',
-  'mail-check-fill',
-  'mail-check-line',
-  'mail-close-fill',
-  'mail-close-line',
-  'mail-download-fill',
-  'mail-download-line',
-  'mail-fill',
-  'mail-forbid-fill',
-  'mail-forbid-line',
-  'mail-line',
-  'mail-lock-fill',
-  'mail-lock-line',
-  'mail-open-fill',
-  'mail-open-line',
-  'mail-send-fill',
-  'mail-send-line',
-  'mail-settings-fill',
-  'mail-settings-line',
-  'mail-star-fill',
-  'mail-star-line',
-  'mail-unread-fill',
-  'mail-unread-line',
-  'mail-volume-fill',
-  'mail-volume-line',
-  'map-2-fill',
-  'map-2-line',
-  'map-fill',
-  'map-line',
-  'map-pin-2-fill',
-  'map-pin-2-line',
-  'map-pin-3-fill',
-  'map-pin-3-line',
-  'map-pin-4-fill',
-  'map-pin-4-line',
-  'map-pin-5-fill',
-  'map-pin-5-line',
-  'map-pin-add-fill',
-  'map-pin-add-line',
-  'map-pin-fill',
-  'map-pin-line',
-  'map-pin-range-fill',
-  'map-pin-range-line',
-  'map-pin-time-fill',
-  'map-pin-time-line',
-  'map-pin-user-fill',
-  'map-pin-user-line',
-  'mark-pen-fill',
-  'mark-pen-line',
-  'markdown-fill',
-  'markdown-line',
-  'markup-fill',
-  'markup-line',
-  'mastercard-fill',
-  'mastercard-line',
-  'mastodon-fill',
-  'mastodon-line',
-  'medal-2-fill',
-  'medal-2-line',
-  'medal-fill',
-  'medal-line',
-  'medicine-bottle-fill',
-  'medicine-bottle-line',
-  'medium-fill',
-  'medium-line',
-  'men-fill',
-  'men-line',
-  'mental-health-fill',
-  'mental-health-line',
-  'menu-2-fill',
-  'menu-2-line',
-  'menu-3-fill',
-  'menu-3-line',
-  'menu-4-fill',
-  'menu-4-line',
-  'menu-5-fill',
-  'menu-5-line',
-  'menu-add-fill',
-  'menu-add-line',
-  'menu-fill',
-  'menu-fold-fill',
-  'menu-fold-line',
-  'menu-line',
-  'menu-unfold-fill',
-  'menu-unfold-line',
-  'merge-cells-horizontal',
-  'merge-cells-vertical',
-  'message-2-fill',
-  'message-2-line',
-  'message-3-fill',
-  'message-3-line',
-  'message-fill',
-  'message-line',
-  'messenger-fill',
-  'messenger-line',
-  'meteor-fill',
-  'meteor-line',
-  'mic-2-fill',
-  'mic-2-line',
-  'mic-fill',
-  'mic-line',
-  'mic-off-fill',
-  'mic-off-line',
-  'mickey-fill',
-  'mickey-line',
-  'microscope-fill',
-  'microscope-line',
-  'microsoft-fill',
-  'microsoft-line',
-  'mind-map',
-  'mini-program-fill',
-  'mini-program-line',
-  'mist-fill',
-  'mist-line',
-  'money-cny-box-fill',
-  'money-cny-box-line',
-  'money-cny-circle-fill',
-  'money-cny-circle-line',
-  'money-dollar-box-fill',
-  'money-dollar-box-line',
-  'money-dollar-circle-fill',
-  'money-dollar-circle-line',
-  'money-euro-box-fill',
-  'money-euro-box-line',
-  'money-euro-circle-fill',
-  'money-euro-circle-line',
-  'money-pound-box-fill',
-  'money-pound-box-line',
-  'money-pound-circle-fill',
-  'money-pound-circle-line',
-  'moon-clear-fill',
-  'moon-clear-line',
-  'moon-cloudy-fill',
-  'moon-cloudy-line',
-  'moon-fill',
-  'moon-foggy-fill',
-  'moon-foggy-line',
-  'moon-line',
-  'more-2-fill',
-  'more-2-line',
-  'more-fill',
-  'more-line',
-  'motorbike-fill',
-  'motorbike-line',
-  'mouse-fill',
-  'mouse-line',
-  'movie-2-fill',
-  'movie-2-line',
-  'movie-fill',
-  'movie-line',
-  'music-2-fill',
-  'music-2-line',
-  'music-fill',
-  'music-line',
-  'mv-fill',
-  'mv-line',
-  'navigation-fill',
-  'navigation-line',
-  'netease-cloud-music-fill',
-  'netease-cloud-music-line',
-  'netflix-fill',
-  'netflix-line',
-  'newspaper-fill',
-  'newspaper-line',
-  'node-tree',
-  'notification-2-fill',
-  'notification-2-line',
-  'notification-3-fill',
-  'notification-3-line',
-  'notification-4-fill',
-  'notification-4-line',
-  'notification-badge-fill',
-  'notification-badge-line',
-  'notification-fill',
-  'notification-line',
-  'notification-off-fill',
-  'notification-off-line',
-  'npmjs-fill',
-  'npmjs-line',
-  'number-0',
-  'number-1',
-  'number-2',
-  'number-3',
-  'number-4',
-  'number-5',
-  'number-6',
-  'number-7',
-  'number-8',
-  'number-9',
-  'numbers-fill',
-  'numbers-line',
-  'nurse-fill',
-  'nurse-line',
-  'oil-fill',
-  'oil-line',
-  'omega',
-  'open-arm-fill',
-  'open-arm-line',
-  'open-source-fill',
-  'open-source-line',
-  'opera-fill',
-  'opera-line',
-  'order-play-fill',
-  'order-play-line',
-  'organization-chart',
-  'outlet-2-fill',
-  'outlet-2-line',
-  'outlet-fill',
-  'outlet-line',
-  'page-separator',
-  'pages-fill',
-  'pages-line',
-  'paint-brush-fill',
-  'paint-brush-line',
-  'paint-fill',
-  'paint-line',
-  'palette-fill',
-  'palette-line',
-  'pantone-fill',
-  'pantone-line',
-  'paragraph',
-  'parent-fill',
-  'parent-line',
-  'parentheses-fill',
-  'parentheses-line',
-  'parking-box-fill',
-  'parking-box-line',
-  'parking-fill',
-  'parking-line',
-  'passport-fill',
-  'passport-line',
-  'patreon-fill',
-  'patreon-line',
-  'pause-circle-fill',
-  'pause-circle-line',
-  'pause-fill',
-  'pause-line',
-  'pause-mini-fill',
-  'pause-mini-line',
-  'paypal-fill',
-  'paypal-line',
-  'pen-nib-fill',
-  'pen-nib-line',
-  'pencil-fill',
-  'pencil-line',
-  'pencil-ruler-2-fill',
-  'pencil-ruler-2-line',
-  'pencil-ruler-fill',
-  'pencil-ruler-line',
-  'percent-fill',
-  'percent-line',
-  'phone-camera-fill',
-  'phone-camera-line',
-  'phone-fill',
-  'phone-find-fill',
-  'phone-find-line',
-  'phone-line',
-  'phone-lock-fill',
-  'phone-lock-line',
-  'picture-in-picture-2-fill',
-  'picture-in-picture-2-line',
-  'picture-in-picture-exit-fill',
-  'picture-in-picture-exit-line',
-  'picture-in-picture-fill',
-  'picture-in-picture-line',
-  'pie-chart-2-fill',
-  'pie-chart-2-line',
-  'pie-chart-box-fill',
-  'pie-chart-box-line',
-  'pie-chart-fill',
-  'pie-chart-line',
-  'pin-distance-fill',
-  'pin-distance-line',
-  'ping-pong-fill',
-  'ping-pong-line',
-  'pinterest-fill',
-  'pinterest-line',
-  'pinyin-input',
-  'pixelfed-fill',
-  'pixelfed-line',
-  'plane-fill',
-  'plane-line',
-  'plant-fill',
-  'plant-line',
-  'play-circle-fill',
-  'play-circle-line',
-  'play-fill',
-  'play-line',
-  'play-list-2-fill',
-  'play-list-2-line',
-  'play-list-add-fill',
-  'play-list-add-line',
-  'play-list-fill',
-  'play-list-line',
-  'play-mini-fill',
-  'play-mini-line',
-  'playstation-fill',
-  'playstation-line',
-  'plug-2-fill',
-  'plug-2-line',
-  'plug-fill',
-  'plug-line',
-  'polaroid-2-fill',
-  'polaroid-2-line',
-  'polaroid-fill',
-  'polaroid-line',
-  'police-car-fill',
-  'police-car-line',
-  'price-tag-2-fill',
-  'price-tag-2-line',
-  'price-tag-3-fill',
-  'price-tag-3-line',
-  'price-tag-fill',
-  'price-tag-line',
-  'printer-cloud-fill',
-  'printer-cloud-line',
-  'printer-fill',
-  'printer-line',
-  'product-hunt-fill',
-  'product-hunt-line',
-  'profile-fill',
-  'profile-line',
-  'projector-2-fill',
-  'projector-2-line',
-  'projector-fill',
-  'projector-line',
-  'psychotherapy-fill',
-  'psychotherapy-line',
-  'pulse-fill',
-  'pulse-line',
-  'pushpin-2-fill',
-  'pushpin-2-line',
-  'pushpin-fill',
-  'pushpin-line',
-  'qq-fill',
-  'qq-line',
-  'qr-code-fill',
-  'qr-code-line',
-  'qr-scan-2-fill',
-  'qr-scan-2-line',
-  'qr-scan-fill',
-  'qr-scan-line',
-  'question-answer-fill',
-  'question-answer-line',
-  'question-fill',
-  'question-line',
-  'question-mark',
-  'questionnaire-fill',
-  'questionnaire-line',
-  'quill-pen-fill',
-  'quill-pen-line',
-  'radar-fill',
-  'radar-line',
-  'radio-2-fill',
-  'radio-2-line',
-  'radio-button-fill',
-  'radio-button-line',
-  'radio-fill',
-  'radio-line',
-  'rainbow-fill',
-  'rainbow-line',
-  'rainy-fill',
-  'rainy-line',
-  'reactjs-fill',
-  'reactjs-line',
-  'record-circle-fill',
-  'record-circle-line',
-  'record-mail-fill',
-  'record-mail-line',
-  'recycle-fill',
-  'recycle-line',
-  'red-packet-fill',
-  'red-packet-line',
-  'reddit-fill',
-  'reddit-line',
-  'refresh-fill',
-  'refresh-line',
-  'refund-2-fill',
-  'refund-2-line',
-  'refund-fill',
-  'refund-line',
-  'registered-fill',
-  'registered-line',
-  'remixicon-fill',
-  'remixicon-line',
-  'remote-control-2-fill',
-  'remote-control-2-line',
-  'remote-control-fill',
-  'remote-control-line',
-  'repeat-2-fill',
-  'repeat-2-line',
-  'repeat-fill',
-  'repeat-line',
-  'repeat-one-fill',
-  'repeat-one-line',
-  'reply-all-fill',
-  'reply-all-line',
-  'reply-fill',
-  'reply-line',
-  'reserved-fill',
-  'reserved-line',
-  'rest-time-fill',
-  'rest-time-line',
-  'restart-fill',
-  'restart-line',
-  'restaurant-2-fill',
-  'restaurant-2-line',
-  'restaurant-fill',
-  'restaurant-line',
-  'rewind-fill',
-  'rewind-line',
-  'rewind-mini-fill',
-  'rewind-mini-line',
-  'rhythm-fill',
-  'rhythm-line',
-  'riding-fill',
-  'riding-line',
-  'road-map-fill',
-  'road-map-line',
-  'roadster-fill',
-  'roadster-line',
-  'robot-fill',
-  'robot-line',
-  'rocket-2-fill',
-  'rocket-2-line',
-  'rocket-fill',
-  'rocket-line',
-  'rotate-lock-fill',
-  'rotate-lock-line',
-  'rounded-corner',
-  'route-fill',
-  'route-line',
-  'router-fill',
-  'router-line',
-  'rss-fill',
-  'rss-line',
-  'ruler-2-fill',
-  'ruler-2-line',
-  'ruler-fill',
-  'ruler-line',
-  'run-fill',
-  'run-line',
-  'safari-fill',
-  'safari-line',
-  'safe-2-fill',
-  'safe-2-line',
-  'safe-fill',
-  'safe-line',
-  'sailboat-fill',
-  'sailboat-line',
-  'save-2-fill',
-  'save-2-line',
-  'save-3-fill',
-  'save-3-line',
-  'save-fill',
-  'save-line',
-  'scales-2-fill',
-  'scales-2-line',
-  'scales-3-fill',
-  'scales-3-line',
-  'scales-fill',
-  'scales-line',
-  'scan-2-fill',
-  'scan-2-line',
-  'scan-fill',
-  'scan-line',
-  'scissors-2-fill',
-  'scissors-2-line',
-  'scissors-cut-fill',
-  'scissors-cut-line',
-  'scissors-fill',
-  'scissors-line',
-  'screenshot-2-fill',
-  'screenshot-2-line',
-  'screenshot-fill',
-  'screenshot-line',
-  'sd-card-fill',
-  'sd-card-line',
-  'sd-card-mini-fill',
-  'sd-card-mini-line',
-  'search-2-fill',
-  'search-2-line',
-  'search-eye-fill',
-  'search-eye-line',
-  'search-fill',
-  'search-line',
-  'secure-payment-fill',
-  'secure-payment-line',
-  'seedling-fill',
-  'seedling-line',
-  'send-backward',
-  'send-plane-2-fill',
-  'send-plane-2-line',
-  'send-plane-fill',
-  'send-plane-line',
-  'send-to-back',
-  'sensor-fill',
-  'sensor-line',
-  'separator',
-  'server-fill',
-  'server-line',
-  'service-fill',
-  'service-line',
-  'settings-2-fill',
-  'settings-2-line',
-  'settings-3-fill',
-  'settings-3-line',
-  'settings-4-fill',
-  'settings-4-line',
-  'settings-5-fill',
-  'settings-5-line',
-  'settings-6-fill',
-  'settings-6-line',
-  'settings-fill',
-  'settings-line',
-  'shape-2-fill',
-  'shape-2-line',
-  'shape-fill',
-  'shape-line',
-  'share-box-fill',
-  'share-box-line',
-  'share-circle-fill',
-  'share-circle-line',
-  'share-fill',
-  'share-forward-2-fill',
-  'share-forward-2-line',
-  'share-forward-box-fill',
-  'share-forward-box-line',
-  'share-forward-fill',
-  'share-forward-line',
-  'share-line',
-  'shield-check-fill',
-  'shield-check-line',
-  'shield-cross-fill',
-  'shield-cross-line',
-  'shield-fill',
-  'shield-flash-fill',
-  'shield-flash-line',
-  'shield-keyhole-fill',
-  'shield-keyhole-line',
-  'shield-line',
-  'shield-star-fill',
-  'shield-star-line',
-  'shield-user-fill',
-  'shield-user-line',
-  'ship-2-fill',
-  'ship-2-line',
-  'ship-fill',
-  'ship-line',
-  'shirt-fill',
-  'shirt-line',
-  'shopping-bag-2-fill',
-  'shopping-bag-2-line',
-  'shopping-bag-3-fill',
-  'shopping-bag-3-line',
-  'shopping-bag-fill',
-  'shopping-bag-line',
-  'shopping-basket-2-fill',
-  'shopping-basket-2-line',
-  'shopping-basket-fill',
-  'shopping-basket-line',
-  'shopping-cart-2-fill',
-  'shopping-cart-2-line',
-  'shopping-cart-fill',
-  'shopping-cart-line',
-  'showers-fill',
-  'showers-line',
-  'shuffle-fill',
-  'shuffle-line',
-  'shut-down-fill',
-  'shut-down-line',
-  'side-bar-fill',
-  'side-bar-line',
-  'signal-tower-fill',
-  'signal-tower-line',
-  'signal-wifi-1-fill',
-  'signal-wifi-1-line',
-  'signal-wifi-2-fill',
-  'signal-wifi-2-line',
-  'signal-wifi-3-fill',
-  'signal-wifi-3-line',
-  'signal-wifi-error-fill',
-  'signal-wifi-error-line',
-  'signal-wifi-fill',
-  'signal-wifi-line',
-  'signal-wifi-off-fill',
-  'signal-wifi-off-line',
-  'sim-card-2-fill',
-  'sim-card-2-line',
-  'sim-card-fill',
-  'sim-card-line',
-  'single-quotes-l',
-  'single-quotes-r',
-  'sip-fill',
-  'sip-line',
-  'skip-back-fill',
-  'skip-back-line',
-  'skip-back-mini-fill',
-  'skip-back-mini-line',
-  'skip-forward-fill',
-  'skip-forward-line',
-  'skip-forward-mini-fill',
-  'skip-forward-mini-line',
-  'skull-2-fill',
-  'skull-2-line',
-  'skull-fill',
-  'skull-line',
-  'skype-fill',
-  'skype-line',
-  'slack-fill',
-  'slack-line',
-  'slice-fill',
-  'slice-line',
-  'slideshow-2-fill',
-  'slideshow-2-line',
-  'slideshow-3-fill',
-  'slideshow-3-line',
-  'slideshow-4-fill',
-  'slideshow-4-line',
-  'slideshow-fill',
-  'slideshow-line',
-  'smartphone-fill',
-  'smartphone-line',
-  'snapchat-fill',
-  'snapchat-line',
-  'snowy-fill',
-  'snowy-line',
-  'sort-asc',
-  'sort-desc',
-  'sound-module-fill',
-  'sound-module-line',
-  'soundcloud-fill',
-  'soundcloud-line',
-  'space-ship-fill',
-  'space-ship-line',
-  'space',
-  'spam-2-fill',
-  'spam-2-line',
-  'spam-3-fill',
-  'spam-3-line',
-  'spam-fill',
-  'spam-line',
-  'speaker-2-fill',
-  'speaker-2-line',
-  'speaker-3-fill',
-  'speaker-3-line',
-  'speaker-fill',
-  'speaker-line',
-  'spectrum-fill',
-  'spectrum-line',
-  'speed-fill',
-  'speed-line',
-  'speed-mini-fill',
-  'speed-mini-line',
-  'split-cells-horizontal',
-  'split-cells-vertical',
-  'spotify-fill',
-  'spotify-line',
-  'spy-fill',
-  'spy-line',
-  'stack-fill',
-  'stack-line',
-  'stack-overflow-fill',
-  'stack-overflow-line',
-  'stackshare-fill',
-  'stackshare-line',
-  'star-fill',
-  'star-half-fill',
-  'star-half-line',
-  'star-half-s-fill',
-  'star-half-s-line',
-  'star-line',
-  'star-s-fill',
-  'star-s-line',
-  'star-smile-fill',
-  'star-smile-line',
-  'steam-fill',
-  'steam-line',
-  'steering-2-fill',
-  'steering-2-line',
-  'steering-fill',
-  'steering-line',
-  'stethoscope-fill',
-  'stethoscope-line',
-  'sticky-note-2-fill',
-  'sticky-note-2-line',
-  'sticky-note-fill',
-  'sticky-note-line',
-  'stock-fill',
-  'stock-line',
-  'stop-circle-fill',
-  'stop-circle-line',
-  'stop-fill',
-  'stop-line',
-  'stop-mini-fill',
-  'stop-mini-line',
-  'store-2-fill',
-  'store-2-line',
-  'store-3-fill',
-  'store-3-line',
-  'store-fill',
-  'store-line',
-  'strikethrough-2',
-  'strikethrough',
-  'subscript-2',
-  'subscript',
-  'subtract-fill',
-  'subtract-line',
-  'subway-fill',
-  'subway-line',
-  'subway-wifi-fill',
-  'subway-wifi-line',
-  'suitcase-2-fill',
-  'suitcase-2-line',
-  'suitcase-3-fill',
-  'suitcase-3-line',
-  'suitcase-fill',
-  'suitcase-line',
-  'sun-cloudy-fill',
-  'sun-cloudy-line',
-  'sun-fill',
-  'sun-foggy-fill',
-  'sun-foggy-line',
-  'sun-line',
-  'superscript-2',
-  'superscript',
-  'surgical-mask-fill',
-  'surgical-mask-line',
-  'surround-sound-fill',
-  'surround-sound-line',
-  'survey-fill',
-  'survey-line',
-  'swap-box-fill',
-  'swap-box-line',
-  'swap-fill',
-  'swap-line',
-  'switch-fill',
-  'switch-line',
-  'sword-fill',
-  'sword-line',
-  'syringe-fill',
-  'syringe-line',
-  't-box-fill',
-  't-box-line',
-  't-shirt-2-fill',
-  't-shirt-2-line',
-  't-shirt-air-fill',
-  't-shirt-air-line',
-  't-shirt-fill',
-  't-shirt-line',
-  'table-2',
-  'table-alt-fill',
-  'table-alt-line',
-  'table-fill',
-  'table-line',
-  'tablet-fill',
-  'tablet-line',
-  'takeaway-fill',
-  'takeaway-line',
-  'taobao-fill',
-  'taobao-line',
-  'tape-fill',
-  'tape-line',
-  'task-fill',
-  'task-line',
-  'taxi-fill',
-  'taxi-line',
-  'taxi-wifi-fill',
-  'taxi-wifi-line',
-  'team-fill',
-  'team-line',
-  'telegram-fill',
-  'telegram-line',
-  'temp-cold-fill',
-  'temp-cold-line',
-  'temp-hot-fill',
-  'temp-hot-line',
-  'terminal-box-fill',
-  'terminal-box-line',
-  'terminal-fill',
-  'terminal-line',
-  'terminal-window-fill',
-  'terminal-window-line',
-  'test-tube-fill',
-  'test-tube-line',
-  'text-direction-l',
-  'text-direction-r',
-  'text-spacing',
-  'text-wrap',
-  'text',
-  'thermometer-fill',
-  'thermometer-line',
-  'thumb-down-fill',
-  'thumb-down-line',
-  'thumb-up-fill',
-  'thumb-up-line',
-  'thunderstorms-fill',
-  'thunderstorms-line',
-  'ticket-2-fill',
-  'ticket-2-line',
-  'ticket-fill',
-  'ticket-line',
-  'time-fill',
-  'time-line',
-  'timer-2-fill',
-  'timer-2-line',
-  'timer-fill',
-  'timer-flash-fill',
-  'timer-flash-line',
-  'timer-line',
-  'todo-fill',
-  'todo-line',
-  'toggle-fill',
-  'toggle-line',
-  'tools-fill',
-  'tools-line',
-  'tornado-fill',
-  'tornado-line',
-  'trademark-fill',
-  'trademark-line',
-  'traffic-light-fill',
-  'traffic-light-line',
-  'train-fill',
-  'train-line',
-  'train-wifi-fill',
-  'train-wifi-line',
-  'translate-2',
-  'translate',
-  'travesti-fill',
-  'travesti-line',
-  'treasure-map-fill',
-  'treasure-map-line',
-  'trello-fill',
-  'trello-line',
-  'trophy-fill',
-  'trophy-line',
-  'truck-fill',
-  'truck-line',
-  'tumblr-fill',
-  'tumblr-line',
-  'tv-2-fill',
-  'tv-2-line',
-  'tv-fill',
-  'tv-line',
-  'twitch-fill',
-  'twitch-line',
-  'twitter-fill',
-  'twitter-line',
-  'typhoon-fill',
-  'typhoon-line',
-  'u-disk-fill',
-  'u-disk-line',
-  'ubuntu-fill',
-  'ubuntu-line',
-  'umbrella-fill',
-  'umbrella-line',
-  'underline',
-  'uninstall-fill',
-  'uninstall-line',
-  'unsplash-fill',
-  'unsplash-line',
-  'upload-2-fill',
-  'upload-2-line',
-  'upload-cloud-2-fill',
-  'upload-cloud-2-line',
-  'upload-cloud-fill',
-  'upload-cloud-line',
-  'upload-fill',
-  'upload-line',
-  'usb-fill',
-  'usb-line',
-  'user-2-fill',
-  'user-2-line',
-  'user-3-fill',
-  'user-3-line',
-  'user-4-fill',
-  'user-4-line',
-  'user-5-fill',
-  'user-5-line',
-  'user-6-fill',
-  'user-6-line',
-  'user-add-fill',
-  'user-add-line',
-  'user-fill',
-  'user-follow-fill',
-  'user-follow-line',
-  'user-heart-fill',
-  'user-heart-line',
-  'user-line',
-  'user-location-fill',
-  'user-location-line',
-  'user-received-2-fill',
-  'user-received-2-line',
-  'user-received-fill',
-  'user-received-line',
-  'user-search-fill',
-  'user-search-line',
-  'user-settings-fill',
-  'user-settings-line',
-  'user-shared-2-fill',
-  'user-shared-2-line',
-  'user-shared-fill',
-  'user-shared-line',
-  'user-smile-fill',
-  'user-smile-line',
-  'user-star-fill',
-  'user-star-line',
-  'user-unfollow-fill',
-  'user-unfollow-line',
-  'user-voice-fill',
-  'user-voice-line',
-  'video-add-fill',
-  'video-add-line',
-  'video-chat-fill',
-  'video-chat-line',
-  'video-download-fill',
-  'video-download-line',
-  'video-fill',
-  'video-line',
-  'video-upload-fill',
-  'video-upload-line',
-  'vidicon-2-fill',
-  'vidicon-2-line',
-  'vidicon-fill',
-  'vidicon-line',
-  'vimeo-fill',
-  'vimeo-line',
-  'vip-crown-2-fill',
-  'vip-crown-2-line',
-  'vip-crown-fill',
-  'vip-crown-line',
-  'vip-diamond-fill',
-  'vip-diamond-line',
-  'vip-fill',
-  'vip-line',
-  'virus-fill',
-  'virus-line',
-  'visa-fill',
-  'visa-line',
-  'voice-recognition-fill',
-  'voice-recognition-line',
-  'voiceprint-fill',
-  'voiceprint-line',
-  'volume-down-fill',
-  'volume-down-line',
-  'volume-mute-fill',
-  'volume-mute-line',
-  'volume-off-vibrate-fill',
-  'volume-off-vibrate-line',
-  'volume-up-fill',
-  'volume-up-line',
-  'volume-vibrate-fill',
-  'volume-vibrate-line',
-  'vuejs-fill',
-  'vuejs-line',
-  'walk-fill',
-  'walk-line',
-  'wallet-2-fill',
-  'wallet-2-line',
-  'wallet-3-fill',
-  'wallet-3-line',
-  'wallet-fill',
-  'wallet-line',
-  'water-flash-fill',
-  'water-flash-line',
-  'webcam-fill',
-  'webcam-line',
-  'wechat-2-fill',
-  'wechat-2-line',
-  'wechat-fill',
-  'wechat-line',
-  'wechat-pay-fill',
-  'wechat-pay-line',
-  'weibo-fill',
-  'weibo-line',
-  'whatsapp-fill',
-  'whatsapp-line',
-  'wheelchair-fill',
-  'wheelchair-line',
-  'wifi-fill',
-  'wifi-line',
-  'wifi-off-fill',
-  'wifi-off-line',
-  'window-2-fill',
-  'window-2-line',
-  'window-fill',
-  'window-line',
-  'windows-fill',
-  'windows-line',
-  'windy-fill',
-  'windy-line',
-  'wireless-charging-fill',
-  'wireless-charging-line',
-  'women-fill',
-  'women-line',
-  'wubi-input',
-  'xbox-fill',
-  'xbox-line',
-  'xing-fill',
-  'xing-line',
-  'youtube-fill',
-  'youtube-line',
-  'zcool-fill',
-  'zcool-line',
-  'zhihu-fill',
-  'zhihu-line',
-  'zoom-in-fill',
-  'zoom-in-line',
-  'zoom-out-fill',
-  'zoom-out-line',
-  'zzz-fill',
-  'zzz-line',
-]
-module.exports = [
-  {
-    url: '/remixIcon/getList',
-    type: 'post',
-    response(config) {
-      const { title, pageNo = 1, pageSize = 72 } = config.body
-      let mockList = data.filter((item) => {
-        if (title && item.indexOf(title) < 0) return false
-        return true
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: mockList.length,
-        data: pageList,
-      }
-    },
-  },
-]

+ 0 - 53
in-cloud-ui/mock/controller/roleManagement.js

@@ -1,53 +0,0 @@
-const totalCount = 2
-const List = [
-  {
-    id: '@id',
-    permission: 'admin',
-  },
-  {
-    id: '@id',
-    permission: 'editor',
-  },
-]
-module.exports = [
-  {
-    url: '/roleManagement/getList',
-    type: 'post',
-    response(config) {
-      const { title = '', pageNo = 1, pageSize = 20 } = config.body
-      let mockList = List.filter((item) => {
-        return !(title && item.title.indexOf(title) < 0)
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount,
-        data: pageList,
-      }
-    },
-  },
-  {
-    url: '/roleManagement/doEdit',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟保存成功',
-      }
-    },
-  },
-  {
-    url: '/roleManagement/doDelete',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟删除成功',
-      }
-    },
-  },
-]

+ 0 - 292
in-cloud-ui/mock/controller/router.js

@@ -1,292 +0,0 @@
-const data = [
-  {
-    path: '/',
-    component: 'Layout',
-    redirect: 'index',
-    children: [
-      {
-        path: 'index',
-        name: 'Index',
-        component: '@/views/index/index',
-        meta: {
-          title: '首页',
-          icon: 'home',
-          affix: true,
-        },
-      },
-    ],
-  },
-  {
-    path: '/personnelManagement',
-    component: 'Layout',
-    redirect: 'noRedirect',
-    name: 'PersonnelManagement',
-    meta: { title: '人员', icon: 'users-cog', permissions: ['admin'] },
-    children: [
-      {
-        path: 'userManagement',
-        name: 'UserManagement',
-        component: '@/views/personnelManagement/userManagement/index',
-        meta: { title: '用户管理' },
-      },
-      {
-        path: 'roleManagement',
-        name: 'RoleManagement',
-        component: '@/views/personnelManagement/roleManagement/index',
-        meta: { title: '角色管理' },
-      },
-      {
-        path: 'menuManagement',
-        name: 'MenuManagement',
-        component: '@/views/personnelManagement/menuManagement/index',
-        meta: { title: '菜单管理', badge: 'New' },
-      },
-    ],
-  },
-  {
-    path: '/vab',
-    component: 'Layout',
-    redirect: 'noRedirect',
-    name: 'Vab',
-    alwaysShow: true,
-    meta: { title: '组件', icon: 'cloud' },
-    children: [
-      {
-        path: 'permissions',
-        name: 'Permission',
-        component: '@/views/vab/permissions/index',
-        meta: {
-          title: '权限控制',
-          permissions: ['admin', 'editor'],
-          badge: 'New',
-        },
-      },
-      {
-        path: 'icon',
-        component: 'EmptyLayout',
-        redirect: 'noRedirect',
-        name: 'Icon',
-        meta: {
-          title: '图标',
-          permissions: ['admin'],
-        },
-        children: [
-          {
-            path: 'awesomeIcon',
-            name: 'AwesomeIcon',
-            component: '@/views/vab/icon/index',
-            meta: { title: '常规图标' },
-          },
-          {
-            path: 'colorfulIcon',
-            name: 'ColorfulIcon',
-            component: '@/views/vab/icon/colorfulIcon',
-            meta: { title: '多彩图标' },
-          },
-        ],
-      },
-      {
-        path: 'table',
-        component: '@/views/vab/table/index',
-        name: 'Table',
-        meta: {
-          title: '表格',
-          permissions: ['admin'],
-        },
-      },
-      {
-        path: 'map',
-        name: 'Map',
-        component: '@/views/vab/map/index',
-        meta: { title: '地图', permissions: ['admin'], badge: 'Pro' },
-      },
-      {
-        path: 'webSocket',
-        name: 'WebSocket',
-        component: '@/views/vab/webSocket/index',
-        meta: { title: 'webSocket', permissions: ['admin'] },
-      },
-      {
-        path: 'form',
-        name: 'Form',
-        component: '@/views/vab/form/index',
-        meta: { title: '表单', permissions: ['admin'] },
-      },
-      {
-        path: 'element',
-        name: 'Element',
-        component: '@/views/vab/element/index',
-        meta: { title: '常用组件', permissions: ['admin'] },
-      },
-      {
-        path: 'tree',
-        name: 'Tree',
-        component: '@/views/vab/tree/index',
-        meta: { title: '树', permissions: ['admin'] },
-      },
-      {
-        path: 'verify',
-        name: 'Verify',
-        component: '@/views/vab/verify/index',
-        meta: { title: '验证码', permissions: ['admin'] },
-      },
-      {
-        path: 'menu1',
-        component: '@/views/vab/nested/menu1/index',
-        name: 'Menu1',
-        alwaysShow: true,
-        meta: {
-          title: '嵌套路由 1',
-          permissions: ['admin'],
-        },
-        children: [
-          {
-            path: 'menu1-1',
-            name: 'Menu1-1',
-            alwaysShow: true,
-            meta: { title: '嵌套路由 1-1' },
-            component: '@/views/vab/nested/menu1/menu1-1/index',
-
-            children: [
-              {
-                path: 'menu1-1-1',
-                name: 'Menu1-1-1',
-                meta: { title: '嵌套路由 1-1-1' },
-                component: '@/views/vab/nested/menu1/menu1-1/menu1-1-1/index',
-              },
-            ],
-          },
-        ],
-      },
-      {
-        path: 'magnifier',
-        name: 'Magnifier',
-        component: '@/views/vab/magnifier/index',
-        meta: { title: '放大镜', permissions: ['admin'] },
-      },
-      {
-        path: 'loading',
-        name: 'Loading',
-        component: '@/views/vab/loading/index',
-        meta: { title: 'loading', permissions: ['admin'] },
-      },
-      {
-        path: 'player',
-        name: 'Player',
-        component: '@/views/vab/player/index',
-        meta: { title: '视频播放器', permissions: ['admin'] },
-      },
-      {
-        path: 'markdownEditor',
-        name: 'MarkdownEditor',
-        component: '@/views/vab/markdownEditor/index',
-        meta: { title: 'markdown编辑器', permissions: ['admin'] },
-      },
-      {
-        path: 'editor',
-        name: 'Editor',
-        component: '@/views/vab/editor/index',
-        meta: { title: '富文本编辑器', permissions: ['admin'], badge: 'New' },
-      },
-      {
-        path: 'backToTop',
-        name: 'BackToTop',
-        component: '@/views/vab/backToTop/index',
-        meta: { title: '返回顶部', permissions: ['admin'] },
-      },
-      {
-        path: 'lodash',
-        name: 'Lodash',
-        component: '@/views/vab/lodash/index',
-        meta: { title: 'lodash', permissions: ['admin'] },
-      },
-      {
-        path: 'smallComponents',
-        name: 'SmallComponents',
-        component: '@/views/vab/smallComponents/index',
-        meta: { title: '小组件', permissions: ['admin'] },
-      },
-
-      {
-        path: 'upload',
-        name: 'Upload',
-        component: '@/views/vab/upload/index',
-        meta: { title: '上传', permissions: ['admin'] },
-      },
-      {
-        path: 'log',
-        name: 'Log',
-        component: '@/views/vab/errorLog/index',
-        meta: { title: '错误日志模拟', permissions: ['admin'] },
-      },
-      {
-        path: 'more',
-        name: 'More',
-        component: '@/views/vab/more/index',
-        meta: { title: '关于', permissions: ['admin'] },
-      },
-    ],
-  },
-  {
-    path: '/mall',
-    component: 'Layout',
-    redirect: 'noRedirect',
-    name: 'Mall',
-    meta: {
-      title: '商城',
-      icon: 'shopping-cart',
-      permissions: ['admin'],
-    },
-
-    children: [
-      {
-        path: 'pay',
-        name: 'Pay',
-        component: '@/views/mall/pay/index',
-        meta: {
-          title: '支付',
-          noKeepAlive: true,
-        },
-        children: null,
-      },
-      {
-        path: 'goodsList',
-        name: 'GoodsList',
-        component: '@/views/mall/goodsList/index',
-        meta: {
-          title: '商品列表',
-        },
-      },
-    ],
-  },
-  {
-    path: '/error',
-    component: 'EmptyLayout',
-    redirect: 'noRedirect',
-    name: 'Error',
-    meta: { title: '错误页', icon: 'bug' },
-    children: [
-      {
-        path: '401',
-        name: 'Error401',
-        component: '@/views/401',
-        meta: { title: '401' },
-      },
-      {
-        path: '404',
-        name: 'Error404',
-        component: '@/views/404',
-        meta: { title: '404' },
-      },
-    ],
-  },
-]
-module.exports = [
-  {
-    url: '/menu/navigate',
-    type: 'post',
-    response() {
-      return { code: 200, msg: 'success', data: data }
-    },
-  },
-]

+ 0 - 88
in-cloud-ui/mock/controller/table.js

@@ -1,88 +0,0 @@
-const { mock } = require('mockjs')
-const { handleRandomImage } = require('../utils')
-
-const List = []
-const count = 999
-for (let i = 0; i < count; i++) {
-  List.push(
-    mock({
-      uuid: '@uuid',
-      id: '@id',
-      title: '@csentence(1, 2)',
-      'status|1': ['published', 'draft', 'deleted'],
-      author: '@cname',
-      datetime: '@datetime',
-      pageViews: '@integer(300, 5000)',
-      img: handleRandomImage(200, 200),
-      smallImg: handleRandomImage(40, 40),
-      switch: '@boolean',
-      percent: '@integer(80,99)',
-    })
-  )
-}
-
-module.exports = [
-  {
-    url: '/table/getList',
-    type: 'post',
-    response(config) {
-      if (!config.body) {
-        return {
-          code: 200,
-          msg: 'success',
-          totalCount: count,
-          data: mock({
-            'data|50': [
-              {
-                id: '@id',
-                title: '@csentence(1, 2)',
-                'status|1': ['published', 'draft', 'deleted'],
-                author: '@cname',
-                datetime: '@datetime',
-                pageViews: '@integer(300, 5000)',
-                img: handleRandomImage(200, 200),
-                smallImg: handleRandomImage(40, 40),
-                switch: '@boolean',
-                percent: '@integer(80,99)',
-              },
-            ],
-          }).data,
-        }
-      }
-      const { title = '', pageNo = 1, pageSize = 20 } = config.body
-      let mockList = List.filter((item) => {
-        return !(title && item.title.indexOf(title) < 0)
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount: count,
-        data: pageList,
-      }
-    },
-  },
-  {
-    url: '/table/doEdit',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟保存成功',
-      }
-    },
-  },
-  {
-    url: '/table/doDelete',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟删除成功',
-      }
-    },
-  },
-]

+ 0 - 54
in-cloud-ui/mock/controller/tree.js

@@ -1,54 +0,0 @@
-const data = [
-  {
-    id: '1',
-    parentId: '0',
-    name: 'root',
-    title: 'root',
-    text: 'root',
-    value: '1',
-    rank: 1,
-    children: [
-      {
-        id: '32816b88ff72423f960e7d492a386131',
-        parentId: '1',
-        name: '一级',
-        title: '一级',
-        text: '一级',
-        value: '32816b88ff72423f960e7d492a386131',
-        rank: 2,
-        children: [
-          {
-            id: '9e11afc35d55475fb0bd3164b9684cbe',
-            parentId: '32816b88ff72423f960e7d492a386131',
-            name: '二级',
-            title: '二级',
-            text: '二级',
-            value: '9e11afc35d55475fb0bd3164b9684cbe',
-            rank: 3,
-            children: [
-              {
-                id: '4cc1b04635e4444292526c5391699077',
-                parentId: '9e11afc35d55475fb0bd3164b9684cbe',
-                name: '三级',
-                title: '三级',
-                text: '三级',
-                value: '4cc1b04635e4444292526c5391699077',
-                rank: 4,
-                children: [],
-              },
-            ],
-          },
-        ],
-      },
-    ],
-  },
-]
-module.exports = [
-  {
-    url: '/tree/list',
-    type: 'post',
-    response() {
-      return { code: 200, msg: 'success', data }
-    },
-  },
-]

+ 0 - 95
in-cloud-ui/mock/controller/user.js

@@ -1,95 +0,0 @@
-const accessTokens = {
-  admin: 'admin-accessToken',
-  editor: 'editor-accessToken',
-  test: 'test-accessToken',
-}
-
-module.exports = [
-  {
-    url: '/publicKey',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: 'success',
-        data: {
-          mockServer: true,
-          publicKey:
-            'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBT2vr+dhZElF73FJ6xiP181txKWUSNLPQQlid6DUJhGAOZblluafIdLmnUyKE8mMHhT3R+Ib3ssZcJku6Hn72yHYj/qPkCGFv0eFo7G+GJfDIUeDyalBN0QsuiE/XzPHJBuJDfRArOiWvH0BXOv5kpeXSXM8yTt5Na1jAYSiQ/wIDAQAB',
-        },
-      }
-    },
-  },
-  {
-    url: '/login',
-    type: 'post',
-    response(config) {
-      const { username } = config.body
-      const accessToken = accessTokens[username]
-      if (!accessToken) {
-        return {
-          code: 500,
-          msg: '帐户或密码不正确。',
-        }
-      }
-      return {
-        code: 200,
-        msg: 'success',
-        data: { accessToken },
-      }
-    },
-  },
-  {
-    url: '/register',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟注册成功',
-      }
-    },
-  },
-  {
-    url: '/userInfo',
-    type: 'post',
-    response(config) {
-      const { accessToken } = config.body
-      let permissions = ['admin']
-      let username = 'admin'
-      if ('admin-accessToken' === accessToken) {
-        permissions = ['admin']
-        username = 'admin'
-      }
-      if ('editor-accessToken' === accessToken) {
-        permissions = ['editor']
-        username = 'editor'
-      }
-      if ('test-accessToken' === accessToken) {
-        permissions = ['admin', 'editor']
-        username = 'test'
-      }
-      return {
-        code: 200,
-        msg: 'success',
-        data: {
-          permissions,
-          username,
-          'avatar|1': [
-            'https://i.gtimg.cn/club/item/face/img/2/15922_100.gif',
-            'https://i.gtimg.cn/club/item/face/img/8/15918_100.gif',
-          ],
-        },
-      }
-    },
-  },
-  {
-    url: '/logout',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: 'success',
-      }
-    },
-  },
-]

+ 0 - 70
in-cloud-ui/mock/controller/userManagement.js

@@ -1,70 +0,0 @@
-const totalCount = 3
-const List = [
-  {
-    id: '@id',
-    username: 'admin',
-    password: 'admin',
-    email: '@email',
-    permissions: ['admin'],
-    datatime: '@datetime',
-  },
-  {
-    id: '@id',
-    username: 'editor',
-    password: 'editor',
-    email: '@email',
-    permissions: ['editor'],
-    datatime: '@datetime',
-  },
-  {
-    id: '@id',
-    username: 'test',
-    password: 'test',
-    email: '@email',
-    permissions: ['admin', 'editor'],
-    datatime: '@datetime',
-  },
-]
-module.exports = [
-  {
-    url: '/userManagement/getList',
-    type: 'post',
-    response(config) {
-      const { title = '', pageNo = 1, pageSize = 20 } = config.body
-      let mockList = List.filter((item) => {
-        if (title && item.title.indexOf(title) < 0) return false
-        return true
-      })
-      const pageList = mockList.filter(
-        (item, index) =>
-          index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
-      )
-      return {
-        code: 200,
-        msg: 'success',
-        totalCount,
-        data: pageList,
-      }
-    },
-  },
-  {
-    url: '/userManagement/doEdit',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟保存成功',
-      }
-    },
-  },
-  {
-    url: '/userManagement/doDelete',
-    type: 'post',
-    response() {
-      return {
-        code: 200,
-        msg: '模拟删除成功',
-      }
-    },
-  },
-]

+ 0 - 98
in-cloud-ui/mock/index.js

@@ -1,98 +0,0 @@
-const chokidar = require('chokidar')
-const bodyParser = require('body-parser')
-const chalk = require('chalk')
-const path = require('path')
-const { mock } = require('mockjs')
-const { baseURL } = require('../src/config')
-const mockDir = path.join(process.cwd(), 'mock')
-const { handleMockArray } = require('./utils')
-
-/**
- *
- * @param app
- * @returns {{mockStartIndex: number, mockRoutesLength: number}}
- */
-const registerRoutes = (app) => {
-  let mockLastIndex
-  const mocks = []
-  const mockArray = handleMockArray()
-  mockArray.forEach((item) => {
-    const obj = require(item)
-    mocks.push(...obj)
-  })
-  const mocksForServer = mocks.map((route) => {
-    return responseFake(route.url, route.type, route.response)
-  })
-  for (const mock of mocksForServer) {
-    app[mock.type](mock.url, mock.response)
-    mockLastIndex = app._router.stack.length
-  }
-  const mockRoutesLength = Object.keys(mocksForServer).length
-  return {
-    mockRoutesLength: mockRoutesLength,
-    mockStartIndex: mockLastIndex - mockRoutesLength,
-  }
-}
-
-/**
- *
- * @param url
- * @param type
- * @param respond
- * @returns {{response(*=, *=): void, type: (*|string), url: RegExp}}
- */
-const responseFake = (url, type, respond) => {
-  return {
-    url: new RegExp(`${baseURL}${url}`),
-    type: type || 'get',
-    response(req, res) {
-      res.status(200)
-      if (JSON.stringify(req.body) !== '{}') {
-        console.log(chalk.green(`> 请求地址:${req.path}`))
-        console.log(chalk.green(`> 请求参数:${JSON.stringify(req.body)}\n`))
-      } else {
-        console.log(chalk.green(`> 请求地址:${req.path}\n`))
-      }
-      res.json(mock(respond instanceof Function ? respond(req, res) : respond))
-    },
-  }
-}
-/**
- *
- * @param app
- */
-module.exports = (app) => {
-  app.use(bodyParser.json())
-  app.use(
-    bodyParser.urlencoded({
-      extended: true,
-    })
-  )
-
-  const mockRoutes = registerRoutes(app)
-  let mockRoutesLength = mockRoutes.mockRoutesLength
-  let mockStartIndex = mockRoutes.mockStartIndex
-  chokidar
-    .watch(mockDir, {
-      ignored: /mock-server/,
-      ignoreInitial: true,
-    })
-    .on('all', (event) => {
-      if (event === 'change' || event === 'add') {
-        try {
-          app._router.stack.splice(mockStartIndex, mockRoutesLength)
-
-          Object.keys(require.cache).forEach((item) => {
-            if (item.includes(mockDir)) {
-              delete require.cache[require.resolve(item)]
-            }
-          })
-          const mockRoutes = registerRoutes(app)
-          mockRoutesLength = mockRoutes.mockRoutesLength
-          mockStartIndex = mockRoutes.mockStartIndex
-        } catch (error) {
-          console.log(chalk.red(error))
-        }
-      }
-    })
-}

+ 0 - 43
in-cloud-ui/mock/utils/index.js

@@ -1,43 +0,0 @@
-const { Random } = require('mockjs')
-const { join } = require('path')
-const fs = require('fs')
-
-/**
- * @author https://gitee.com/chu1204505056/vue-admin-better (不想保留author可删除)
- * @description 随机生成图片url。
- * @param width
- * @param height
- * @returns {string}
- */
-function handleRandomImage(width = 50, height = 50) {
-  return `https://picsum.photos/${width}/${height}?random=${Random.guid()}`
-}
-
-/**
- * @author https://gitee.com/chu1204505056/vue-admin-better (不想保留author可删除)
- * @description 处理所有 controller 模块,npm run serve时在node环境中自动输出controller文件夹下Mock接口,请勿修改。
- * @returns {[]}
- */
-function handleMockArray() {
-  const mockArray = []
-  const getFiles = (jsonPath) => {
-    const jsonFiles = []
-    const findJsonFile = (path) => {
-      const files = fs.readdirSync(path)
-      files.forEach((item) => {
-        const fPath = join(path, item)
-        const stat = fs.statSync(fPath)
-        if (stat.isDirectory() === true) findJsonFile(item)
-        if (stat.isFile() === true) jsonFiles.push(item)
-      })
-    }
-    findJsonFile(jsonPath)
-    jsonFiles.forEach((item) => mockArray.push(`./controller/${item}`))
-  }
-  getFiles('mock/controller')
-  return mockArray
-}
-module.exports = {
-  handleRandomImage,
-  handleMockArray,
-}

+ 3 - 3
in-cloud-ui/public/index.html

@@ -15,7 +15,7 @@
       content="<%= VUE_APP_TITLE %>官网与文档基于vue-admin-beautiful构建,简称vab(是一款超棒的vue+element中后台前端快速开发框架),QQ群972435319,作者:<%= VUE_APP_AUTHOR %>"
     />
     <meta name="author" content="<%= VUE_APP_AUTHOR %>" />
-    <link rel="stylesheet" href="<%= BASE_URL %>static/css/loading.css" />
+<!--    <link rel="stylesheet" href="<%= BASE_URL %>static/css/loading.css" />-->
   </head>
   <body>
     <noscript>
@@ -23,7 +23,7 @@
       源代码,该系统基于vue-admin-better开发
     </noscript>
     <div id="vue-admin-beautiful">
-      <div class="first-loading-wrp">
+<!--      <div class="first-loading-wrp">
         <div class="loading-wrp">
           <span class="dot dot-spin">
             <i></i>
@@ -33,7 +33,7 @@
           </span>
         </div>
         <h1><%= VUE_APP_TITLE %></h1>
-      </div>
+      </div>-->
     </div>
     <script>
       ;/^http(s*):\/\//.test(location.href) ||

+ 1 - 1
in-cloud-ui/src/config/setting.config.js

@@ -7,7 +7,7 @@ const setting = {
   // 生产环境构建文件的目录名
   outputDir: 'dist',
   // 放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。
-  assetsDir: 'static',
+  assetsDir: 'stati',
   // 开发环境每次保存时是否输出为eslint编译警告
   lintOnSave: true,
   // 进行编译的依赖

+ 1 - 4
in-cloud-ui/src/main.js

@@ -12,10 +12,7 @@ Vue.use(VueCron);//使用方式:<vueCron></vueCron>
  * @description 生产环境默认都使用mock,如果正式用于生产环境时,记得去掉
  */
 
-if (process.env.NODE_ENV === 'production') {
-  const { mockXHR } = require('@/utils/static')
-  mockXHR()
-}
+
 
 Vue.config.productionTip = false
 

+ 0 - 52
in-cloud-ui/src/utils/static.js

@@ -1,52 +0,0 @@
-/**
- * @author https://gitee.com/chu1204505056/vue-admin-better
- * @description 导入所有 controller 模块,浏览器环境中自动输出controller文件夹下Mock接口,请勿修改。
- */
-import Mock from 'mockjs'
-import { paramObj } from '@/utils'
-
-const mocks = []
-const files = require.context('../../mock/controller', false, /\.js$/)
-
-files.keys().forEach((key) => {
-  mocks.push(...files(key))
-})
-
-export function mockXHR() {
-  Mock.XHR.prototype.proxy_send = Mock.XHR.prototype.send
-  Mock.XHR.prototype.send = function () {
-    if (this.custom.xhr) {
-      this.custom.xhr.withCredentials = this.withCredentials || false
-
-      if (this.responseType) {
-        this.custom.xhr.responseType = this.responseType
-      }
-    }
-    this.proxy_send(...arguments)
-  }
-
-  function XHRHttpRequst(respond) {
-    return function (options) {
-      let result
-      if (respond instanceof Function) {
-        const { body, type, url } = options
-        result = respond({
-          method: type,
-          body: JSON.parse(body),
-          query: paramObj(url),
-        })
-      } else {
-        result = respond
-      }
-      return Mock.mock(result)
-    }
-  }
-
-  mocks.forEach((item) => {
-    Mock.mock(
-      new RegExp(item.url),
-      item.type || 'get',
-      XHRHttpRequst(item.response)
-    )
-  })
-}

+ 216 - 209
in-cloud-ui/src/views/401.vue

@@ -43,254 +43,261 @@
 </template>
 
 <script>
-  export default {
-    name: 'Page401',
-    data() {
-      return {
-        jumpTime: 5,
-        oops: '抱歉!',
-        headline: '您没有操作权限...',
-        info: '当前帐号没有操作权限,请联系管理员。',
-        btn: '返回',
-        timer: 0,
-      }
-    },
-    mounted() {
-      this.timeChange()
-    },
-    beforeDestroy() {
-      clearInterval(this.timer)
-    },
-    methods: {
-      timeChange() {
-        this.timer = setInterval(() => {
-          if (this.jumpTime) {
-            this.jumpTime--
-          } else {
-            this.$router.push({ path: '/' })
-            this.$store.dispatch('tabsBar/delOthersRoutes', {
-              path: '/',
-            })
-            clearInterval(this.timer)
-          }
-        }, 1000)
-      },
+
+
+export default {
+  name: 'Page401',
+  data() {
+    return {
+      jumpTime: 5,
+      oops: '抱歉!',
+      headline: '您没有操作权限...',
+      info: '当前帐号没有操作权限,请联系管理员。',
+      btn: '返回',
+      timer: 0,
+    }
+  },
+  mounted() {
+    this.timeChange()
+
+
+
+
+  },
+  beforeDestroy() {
+    clearInterval(this.timer)
+  },
+  methods: {
+    timeChange() {
+
+      this.timer = setInterval(() => {
+        if (this.jumpTime) {
+          this.jumpTime--
+
+        } else {
+          this.$store.dispatch('user/resetAccessToken')
+          const fullPath = this.$route.fullPath
+          this.$router.push(`/login?redirect=${fullPath}`)
+          clearInterval(this.timer)
+        }
+      }, 1000)
     },
-  }
+  },
+}
 </script>
 
 <style lang="scss" scoped>
-  .error-container {
-    position: absolute;
-    top: 40%;
-    left: 50%;
-    transform: translate(-50%, -50%);
-
-    .error-content {
-      .pic-error {
-        position: relative;
-        float: left;
-        width: 120%;
-        overflow: hidden;
+.error-container {
+  position: absolute;
+  top: 40%;
+  left: 50%;
+  transform: translate(-50%, -50%);
 
-        &-parent {
-          width: 100%;
+  .error-content {
+    .pic-error {
+      position: relative;
+      float: left;
+      width: 120%;
+      overflow: hidden;
+
+      &-parent {
+        width: 100%;
+      }
+
+      &-child {
+        position: absolute;
+
+        &.left {
+          top: 17px;
+          left: 220px;
+          width: 80px;
+          opacity: 0;
+          animation-name: cloudLeft;
+          animation-duration: 2s;
+          animation-timing-function: linear;
+          animation-delay: 1s;
+          animation-fill-mode: forwards;
         }
 
-        &-child {
-          position: absolute;
+        &.mid {
+          top: 10px;
+          left: 420px;
+          width: 46px;
+          opacity: 0;
+          animation-name: cloudMid;
+          animation-duration: 2s;
+          animation-timing-function: linear;
+          animation-delay: 1.2s;
+          animation-fill-mode: forwards;
+        }
 
-          &.left {
+        &.right {
+          top: 100px;
+          left: 500px;
+          width: 62px;
+          opacity: 0;
+          animation-name: cloudRight;
+          animation-duration: 2s;
+          animation-timing-function: linear;
+          animation-delay: 1s;
+          animation-fill-mode: forwards;
+        }
+
+        @keyframes cloudLeft {
+          0% {
             top: 17px;
             left: 220px;
-            width: 80px;
             opacity: 0;
-            animation-name: cloudLeft;
-            animation-duration: 2s;
-            animation-timing-function: linear;
-            animation-delay: 1s;
-            animation-fill-mode: forwards;
           }
 
-          &.mid {
+          20% {
+            top: 33px;
+            left: 188px;
+            opacity: 1;
+          }
+
+          80% {
+            top: 81px;
+            left: 92px;
+            opacity: 1;
+          }
+
+          100% {
+            top: 97px;
+            left: 60px;
+            opacity: 0;
+          }
+        }
+
+        @keyframes cloudMid {
+          0% {
             top: 10px;
             left: 420px;
-            width: 46px;
             opacity: 0;
-            animation-name: cloudMid;
-            animation-duration: 2s;
-            animation-timing-function: linear;
-            animation-delay: 1.2s;
-            animation-fill-mode: forwards;
           }
 
-          &.right {
+          20% {
+            top: 40px;
+            left: 360px;
+            opacity: 1;
+          }
+
+          70% {
+            top: 130px;
+            left: 180px;
+            opacity: 1;
+          }
+
+          100% {
+            top: 160px;
+            left: 120px;
+            opacity: 0;
+          }
+        }
+
+        @keyframes cloudRight {
+          0% {
             top: 100px;
             left: 500px;
-            width: 62px;
             opacity: 0;
-            animation-name: cloudRight;
-            animation-duration: 2s;
-            animation-timing-function: linear;
-            animation-delay: 1s;
-            animation-fill-mode: forwards;
           }
 
-          @keyframes cloudLeft {
-            0% {
-              top: 17px;
-              left: 220px;
-              opacity: 0;
-            }
-
-            20% {
-              top: 33px;
-              left: 188px;
-              opacity: 1;
-            }
-
-            80% {
-              top: 81px;
-              left: 92px;
-              opacity: 1;
-            }
-
-            100% {
-              top: 97px;
-              left: 60px;
-              opacity: 0;
-            }
+          20% {
+            top: 120px;
+            left: 460px;
+            opacity: 1;
           }
 
-          @keyframes cloudMid {
-            0% {
-              top: 10px;
-              left: 420px;
-              opacity: 0;
-            }
-
-            20% {
-              top: 40px;
-              left: 360px;
-              opacity: 1;
-            }
-
-            70% {
-              top: 130px;
-              left: 180px;
-              opacity: 1;
-            }
-
-            100% {
-              top: 160px;
-              left: 120px;
-              opacity: 0;
-            }
+          80% {
+            top: 180px;
+            left: 340px;
+            opacity: 1;
           }
 
-          @keyframes cloudRight {
-            0% {
-              top: 100px;
-              left: 500px;
-              opacity: 0;
-            }
-
-            20% {
-              top: 120px;
-              left: 460px;
-              opacity: 1;
-            }
-
-            80% {
-              top: 180px;
-              left: 340px;
-              opacity: 1;
-            }
-
-            100% {
-              top: 200px;
-              left: 300px;
-              opacity: 0;
-            }
+          100% {
+            top: 200px;
+            left: 300px;
+            opacity: 0;
           }
         }
       }
+    }
 
-      .bullshit {
-        position: relative;
-        float: left;
-        width: 300px;
-        padding: 30px 0;
-        overflow: hidden;
-
-        &-oops {
-          margin-bottom: 20px;
-          font-size: 32px;
-          font-weight: bold;
-          line-height: 40px;
-          color: $base-color-blue;
-          opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-fill-mode: forwards;
-        }
+    .bullshit {
+      position: relative;
+      float: left;
+      width: 300px;
+      padding: 30px 0;
+      overflow: hidden;
 
-        &-headline {
-          margin-bottom: 10px;
-          font-size: 20px;
-          font-weight: bold;
-          line-height: 24px;
-          color: #222;
-          opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-delay: 0.1s;
-          animation-fill-mode: forwards;
-        }
+      &-oops {
+        margin-bottom: 20px;
+        font-size: 32px;
+        font-weight: bold;
+        line-height: 40px;
+        color: $base-color-blue;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-fill-mode: forwards;
+      }
 
-        &-info {
-          margin-bottom: 30px;
-          font-size: 13px;
-          line-height: 21px;
-          color: $base-color-gray;
-          opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-delay: 0.2s;
-          animation-fill-mode: forwards;
-        }
+      &-headline {
+        margin-bottom: 10px;
+        font-size: 20px;
+        font-weight: bold;
+        line-height: 24px;
+        color: #222;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-delay: 0.1s;
+        animation-fill-mode: forwards;
+      }
 
-        &-return-home {
-          display: block;
-          float: left;
-          width: 110px;
-          height: 36px;
-          font-size: 14px;
-          line-height: 36px;
-          color: #fff;
-          text-align: center;
-          cursor: pointer;
-          background: $base-color-blue;
-          border-radius: 100px;
+      &-info {
+        margin-bottom: 30px;
+        font-size: 13px;
+        line-height: 21px;
+        color: $base-color-gray;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-delay: 0.2s;
+        animation-fill-mode: forwards;
+      }
+
+      &-return-home {
+        display: block;
+        float: left;
+        width: 110px;
+        height: 36px;
+        font-size: 14px;
+        line-height: 36px;
+        color: #fff;
+        text-align: center;
+        cursor: pointer;
+        background: $base-color-blue;
+        border-radius: 100px;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-delay: 0.3s;
+        animation-fill-mode: forwards;
+      }
+
+      @keyframes slideUp {
+        0% {
           opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-delay: 0.3s;
-          animation-fill-mode: forwards;
+          transform: translateY(60px);
         }
 
-        @keyframes slideUp {
-          0% {
-            opacity: 0;
-            transform: translateY(60px);
-          }
-
-          100% {
-            opacity: 1;
-            transform: translateY(0);
-          }
+        100% {
+          opacity: 1;
+          transform: translateY(0);
         }
       }
     }
   }
+}
 </style>

+ 207 - 207
in-cloud-ui/src/views/404.vue

@@ -43,254 +43,254 @@
 </template>
 
 <script>
-  export default {
-    name: 'Page404',
-    data() {
-      return {
-        jumpTime: 5,
-        oops: '抱歉!',
-        headline: '当前页面不存在...',
-        info: '请检查您输入的网址是否正确,或点击下面的按钮返回首页。',
-        btn: '返回首页',
-        timer: 0,
-      }
-    },
-    mounted() {
-      this.timeChange()
-    },
-    beforeDestroy() {
-      clearInterval(this.timer)
-    },
-    methods: {
-      timeChange() {
-        this.timer = setInterval(() => {
-          if (this.jumpTime) {
-            this.jumpTime--
-          } else {
-            this.$router.push({ path: '/' })
-            this.$store.dispatch('tabsBar/delOthersRoutes', {
-              path: '/',
-            })
-            clearInterval(this.timer)
-          }
-        }, 1000)
-      },
+export default {
+  name: 'Page404',
+  data() {
+    return {
+      jumpTime: 5,
+      oops: '抱歉!',
+      headline: '当前页面不存在...',
+      info: '请检查您输入的网址是否正确,或点击下面的按钮返回首页。',
+      btn: '返回首页',
+      timer: 0,
+    }
+  },
+  mounted() {
+    this.timeChange()
+  },
+  beforeDestroy() {
+    clearInterval(this.timer)
+  },
+  methods: {
+    timeChange() {
+      this.timer = setInterval(() => {
+        if (this.jumpTime) {
+          this.jumpTime--
+        } else {
+          this.$router.push({ path: '/' })
+          this.$store.dispatch('tabsBar/delOthersRoutes', {
+            path: '/',
+          })
+          clearInterval(this.timer)
+        }
+      }, 1000)
     },
-  }
+  },
+}
 </script>
 
 <style lang="scss" scoped>
-  .error-container {
-    position: absolute;
-    top: 40%;
-    left: 50%;
-    transform: translate(-50%, -50%);
+.error-container {
+  position: absolute;
+  top: 40%;
+  left: 50%;
+  transform: translate(-50%, -50%);
 
-    .error-content {
-      .pic-error {
-        position: relative;
-        float: left;
-        width: 120%;
-        overflow: hidden;
+  .error-content {
+    .pic-error {
+      position: relative;
+      float: left;
+      width: 120%;
+      overflow: hidden;
+
+      &-parent {
+        width: 100%;
+      }
 
-        &-parent {
-          width: 100%;
+      &-child {
+        position: absolute;
+
+        &.left {
+          top: 17px;
+          left: 220px;
+          width: 80px;
+          opacity: 0;
+          animation-name: cloudLeft;
+          animation-duration: 2s;
+          animation-timing-function: linear;
+          animation-delay: 1s;
+          animation-fill-mode: forwards;
+        }
+
+        &.mid {
+          top: 10px;
+          left: 420px;
+          width: 46px;
+          opacity: 0;
+          animation-name: cloudMid;
+          animation-duration: 2s;
+          animation-timing-function: linear;
+          animation-delay: 1.2s;
+          animation-fill-mode: forwards;
         }
 
-        &-child {
-          position: absolute;
+        &.right {
+          top: 100px;
+          left: 500px;
+          width: 62px;
+          opacity: 0;
+          animation-name: cloudRight;
+          animation-duration: 2s;
+          animation-timing-function: linear;
+          animation-delay: 1s;
+          animation-fill-mode: forwards;
+        }
 
-          &.left {
+        @keyframes cloudLeft {
+          0% {
             top: 17px;
             left: 220px;
-            width: 80px;
             opacity: 0;
-            animation-name: cloudLeft;
-            animation-duration: 2s;
-            animation-timing-function: linear;
-            animation-delay: 1s;
-            animation-fill-mode: forwards;
           }
 
-          &.mid {
-            top: 10px;
-            left: 420px;
-            width: 46px;
-            opacity: 0;
-            animation-name: cloudMid;
-            animation-duration: 2s;
-            animation-timing-function: linear;
-            animation-delay: 1.2s;
-            animation-fill-mode: forwards;
+          20% {
+            top: 33px;
+            left: 188px;
+            opacity: 1;
           }
 
-          &.right {
-            top: 100px;
-            left: 500px;
-            width: 62px;
-            opacity: 0;
-            animation-name: cloudRight;
-            animation-duration: 2s;
-            animation-timing-function: linear;
-            animation-delay: 1s;
-            animation-fill-mode: forwards;
+          80% {
+            top: 81px;
+            left: 92px;
+            opacity: 1;
           }
 
-          @keyframes cloudLeft {
-            0% {
-              top: 17px;
-              left: 220px;
-              opacity: 0;
-            }
-
-            20% {
-              top: 33px;
-              left: 188px;
-              opacity: 1;
-            }
-
-            80% {
-              top: 81px;
-              left: 92px;
-              opacity: 1;
-            }
-
-            100% {
-              top: 97px;
-              left: 60px;
-              opacity: 0;
-            }
+          100% {
+            top: 97px;
+            left: 60px;
+            opacity: 0;
           }
+        }
 
-          @keyframes cloudMid {
-            0% {
-              top: 10px;
-              left: 420px;
-              opacity: 0;
-            }
+        @keyframes cloudMid {
+          0% {
+            top: 10px;
+            left: 420px;
+            opacity: 0;
+          }
 
-            20% {
-              top: 40px;
-              left: 360px;
-              opacity: 1;
-            }
+          20% {
+            top: 40px;
+            left: 360px;
+            opacity: 1;
+          }
 
-            70% {
-              top: 130px;
-              left: 180px;
-              opacity: 1;
-            }
+          70% {
+            top: 130px;
+            left: 180px;
+            opacity: 1;
+          }
 
-            100% {
-              top: 160px;
-              left: 120px;
-              opacity: 0;
-            }
+          100% {
+            top: 160px;
+            left: 120px;
+            opacity: 0;
           }
+        }
 
-          @keyframes cloudRight {
-            0% {
-              top: 100px;
-              left: 500px;
-              opacity: 0;
-            }
+        @keyframes cloudRight {
+          0% {
+            top: 100px;
+            left: 500px;
+            opacity: 0;
+          }
 
-            20% {
-              top: 120px;
-              left: 460px;
-              opacity: 1;
-            }
+          20% {
+            top: 120px;
+            left: 460px;
+            opacity: 1;
+          }
 
-            80% {
-              top: 180px;
-              left: 340px;
-              opacity: 1;
-            }
+          80% {
+            top: 180px;
+            left: 340px;
+            opacity: 1;
+          }
 
-            100% {
-              top: 200px;
-              left: 300px;
-              opacity: 0;
-            }
+          100% {
+            top: 200px;
+            left: 300px;
+            opacity: 0;
           }
         }
       }
+    }
 
-      .bullshit {
-        position: relative;
-        float: left;
-        width: 300px;
-        padding: 30px 0;
-        overflow: hidden;
+    .bullshit {
+      position: relative;
+      float: left;
+      width: 300px;
+      padding: 30px 0;
+      overflow: hidden;
 
-        &-oops {
-          margin-bottom: 20px;
-          font-size: 32px;
-          font-weight: bold;
-          line-height: 40px;
-          color: $base-color-blue;
-          opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-fill-mode: forwards;
-        }
+      &-oops {
+        margin-bottom: 20px;
+        font-size: 32px;
+        font-weight: bold;
+        line-height: 40px;
+        color: $base-color-blue;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-fill-mode: forwards;
+      }
 
-        &-headline {
-          margin-bottom: 10px;
-          font-size: 20px;
-          font-weight: bold;
-          line-height: 24px;
-          color: #222;
-          opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-delay: 0.1s;
-          animation-fill-mode: forwards;
-        }
+      &-headline {
+        margin-bottom: 10px;
+        font-size: 20px;
+        font-weight: bold;
+        line-height: 24px;
+        color: #222;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-delay: 0.1s;
+        animation-fill-mode: forwards;
+      }
 
-        &-info {
-          margin-bottom: 30px;
-          font-size: 13px;
-          line-height: 21px;
-          color: $base-color-gray;
-          opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-delay: 0.2s;
-          animation-fill-mode: forwards;
-        }
+      &-info {
+        margin-bottom: 30px;
+        font-size: 13px;
+        line-height: 21px;
+        color: $base-color-gray;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-delay: 0.2s;
+        animation-fill-mode: forwards;
+      }
 
-        &-return-home {
-          display: block;
-          float: left;
-          width: 110px;
-          height: 36px;
-          font-size: 14px;
-          line-height: 36px;
-          color: #fff;
-          text-align: center;
-          cursor: pointer;
-          background: $base-color-blue;
-          border-radius: 100px;
+      &-return-home {
+        display: block;
+        float: left;
+        width: 110px;
+        height: 36px;
+        font-size: 14px;
+        line-height: 36px;
+        color: #fff;
+        text-align: center;
+        cursor: pointer;
+        background: $base-color-blue;
+        border-radius: 100px;
+        opacity: 0;
+        animation-name: slideUp;
+        animation-duration: 0.5s;
+        animation-delay: 0.3s;
+        animation-fill-mode: forwards;
+      }
+
+      @keyframes slideUp {
+        0% {
           opacity: 0;
-          animation-name: slideUp;
-          animation-duration: 0.5s;
-          animation-delay: 0.3s;
-          animation-fill-mode: forwards;
+          transform: translateY(60px);
         }
 
-        @keyframes slideUp {
-          0% {
-            opacity: 0;
-            transform: translateY(60px);
-          }
-
-          100% {
-            opacity: 1;
-            transform: translateY(0);
-          }
+        100% {
+          opacity: 1;
+          transform: translateY(0);
         }
       }
     }
   }
+}
 </style>

+ 13 - 14
in-cloud/pom.xml

@@ -14,7 +14,6 @@
     <properties>
         <maven.compiler.source>8</maven.compiler.source>
         <maven.compiler.target>8</maven.compiler.target>
-        <minio.version>7.0.2</minio.version>
     </properties>
 
 
@@ -36,11 +35,13 @@
             <artifactId>mysql-connector-java</artifactId>
             <scope>runtime</scope>
         </dependency>
+
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <optional>true</optional>
         </dependency>
+
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
@@ -100,11 +101,7 @@
             <artifactId>c3p0</artifactId>
             <version>0.9.5.4</version>
         </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>test</scope>
-        </dependency>
+
 
 
         <dependency>
@@ -132,16 +129,18 @@
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
-                <configuration>
-                    <excludes>
-                        <exclude>
-                            <groupId>org.projectlombok</groupId>
-                            <artifactId>lombok</artifactId>
-                        </exclude>
-                    </excludes>
-                </configuration>
+                <version>2.6.7</version>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>repackage</goal>
+                        </goals>
+                    </execution>
+                </executions>
             </plugin>
         </plugins>
     </build>
 
+
+
 </project>

+ 0 - 34
in-cloud/src/main/java/com/jiayue/insu/incloud/config/MinioConfig.java

@@ -1,34 +0,0 @@
-package com.jiayue.insu.incloud.config;
-
-import io.minio.MinioClient;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@Slf4j
-public class MinioConfig {
-
-    @Value("${minio.endpoint.http}")
-    private String endpoint;
-    @Value("${minio.endpoint.accessKey}")
-    private String accessKey;
-    @Value("${minio.endpoint.secretKey}")
-    private String secretKey;
-
-    /**
-     * 注入minio 客户端
-     * @return
-     */
-    @Bean
-    public MinioClient minioClient() {
-        log.info("minioClient加载成功!");
-        return MinioClient.builder()
-                .endpoint(endpoint)
-                .credentials(accessKey, secretKey)
-                .build();
-
-    }
-}

+ 18 - 1
in-cloud/src/main/java/com/jiayue/insu/incloud/config/SaTokenConfigure.java

@@ -5,6 +5,7 @@ import cn.dev33.satoken.interceptor.SaRouteInterceptor;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.web.servlet.config.annotation.EnableWebMvc;
 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 /**
  * sa-token 配置类
@@ -25,8 +26,24 @@ public class SaTokenConfigure implements WebMvcConfigurer {
         // 注册Sa-Token的路由拦截器
         registry.addInterceptor(new SaRouteInterceptor())
                 .addPathPatterns("/**")
-                .excludePathPatterns("/login/doLogin","/file/**");
+                .excludePathPatterns("/login/doLogin","/file/**","/stati/**","/index.html");
     }
 
 
+    private static final String[] CLASSPATH_RESOURCE_LOCATIONS = {
+            "classpath:/META-INF/resources/", "classpath:/resources/",
+            "classpath:/static/", "classpath:/public/" };
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        if (!registry.hasMappingForPattern("/webjars/**")) {
+            registry.addResourceHandler("/webjars/**").addResourceLocations(
+                    "classpath:/META-INF/resources/webjars/");
+        }
+        if (!registry.hasMappingForPattern("/**")) {
+            registry.addResourceHandler("/**").addResourceLocations(
+                    CLASSPATH_RESOURCE_LOCATIONS);
+        }
+        WebMvcConfigurer.super.addResourceHandlers(registry);
+    }
 }

+ 0 - 23
in-cloud/src/main/java/com/jiayue/insu/incloud/controller/FileController.java

@@ -1,23 +0,0 @@
-package com.jiayue.insu.incloud.controller;
-
-import com.jiayue.insu.incloud.service.FileService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.servlet.http.HttpServletResponse;
-
-@RestController
-@RequestMapping("/file")
-public class FileController {
-    @Autowired
-    private FileService fileService;
-
-    @GetMapping("getFile/{code}")
-    public void downloadFile(@PathVariable("code") String stationCode, HttpServletResponse response){
-       fileService.download(stationCode, response);
-    }
-
-}

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