瀏覽代碼

后台应用管理页面数据获取和展示2

huxz 8 年之前
父節點
當前提交
d015241e06

+ 1 - 0
sso-common/build.gradle

@@ -2,6 +2,7 @@ apply from: "$rootDir/gradle/publish.gradle"
 
 dependencies {
     compile("com.uas.account:sso-core:0.0.1-SNAPSHOT")
+    compile("org.springframework.boot:spring-boot-starter-data-jpa:1.5.9.RELEASE")
     compile("org.springframework:spring-beans:4.3.3.RELEASE")
     compile("org.springframework:spring-context:4.3.3.RELEASE")
     compile("org.apache.tomcat.embed:tomcat-embed-core:8.5.5")

+ 1 - 0
sso-manage-console-web/package.json

@@ -11,6 +11,7 @@
     "build": "node build/build.js"
   },
   "dependencies": {
+    "axios": "^0.17.1",
     "bootstrap": "3",
     "font-awesome": "^4.7.0",
     "vue": "^2.5.2",

+ 22 - 260
sso-manage-console-web/src/components/app/AppHome.vue

@@ -20,273 +20,18 @@
               <!-- tab start -->
               <div id="app_list" class="x-chunk-list">
 
-                <div class="x-item">
+                <div class="x-item" v-for="app in appList">
                   <div class="x-icon">
                     <i class="fa fa-file-o"></i>
                   </div>
                   <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="b2b">优软平台</a>
+                    <a class="x-text x-editor-trigger" href="javascript:void(0)" :data-id="app.uid" v-text="app.description"></a>
                   </p>
                   <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>b2b</span>
+                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>{{app.uid}}</span>
                   </div>
                   <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="cities">智慧产城</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>cities</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="city">产城管理</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>city</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="diymall">定制商城</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>diymall</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="donate">一元捐</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>donate</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="finance">金融服务</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>finance</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="help">客服中心</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>help</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="home">优软首页</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>home</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="im">UU互联</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>im</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="mall">优软商城</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>mall</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="member">会员中心</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>member</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="pan">优软云盘</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>pan</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="public">公共服务</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>public</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="saas">优企云服</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>saas</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="sso">账户中心</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>sso</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="uas">优软UAS</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>uas</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>110</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="uuzc">优软众创</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>uuzc</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
-                  </div>
-                </div>
-
-                <div class="x-item">
-                  <div class="x-icon">
-                    <i class="fa fa-file-o"></i>
-                  </div>
-                  <p class="x-title">
-                    <a class="x-text x-editor-trigger" href="javascript:;" data-id="warehouse">物流仓储</a>
-                  </p>
-                  <div class="text-muted">
-                    <span class="x-text"> <i class="fa fa-fw fa-check-square-o"></i>warehouse</span>
-                  </div>
-                  <div class="x-text-muted">
-                    绑定企业<b>0</b>
+                    绑定企业<b v-text="app.usCount">0</b>
                   </div>
                 </div>
 
@@ -312,12 +57,29 @@
 </template>
 
 <script>
+import axios from 'axios'
+
 export default {
   name: 'AppHome',
   data () {
     return {
-      msg: '应用管理'
+      msg: '应用管理',
+      appList: []
+    }
+  },
+  methods: {
+    loadAppsList() {
+      axios.get('/api/app//showAllApps').then(response => {
+        console.log(response)
+        this.appList = response.data
+        console.log(this.appList[0])
+      }, response => {
+        console.log('error', response)
+      })
     }
+  },
+  mounted () {
+    this.loadAppsList()
   }
 }
 </script>

+ 19 - 0
sso-manage-console-web/yarn.lock

@@ -248,6 +248,13 @@ aws4@^1.2.1:
   version "1.6.0"
   resolved "http://registry.npm.taobao.org/aws4/download/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
 
+axios@^0.17.1:
+  version "0.17.1"
+  resolved "http://registry.npm.taobao.org/axios/download/axios-0.17.1.tgz#2d8e3e5d0bdbd7327f91bc814f5c57660f81824d"
+  dependencies:
+    follow-redirects "^1.2.5"
+    is-buffer "^1.1.5"
+
 babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
   version "6.26.0"
   resolved "http://registry.npm.taobao.org/babel-code-frame/download/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
@@ -1597,6 +1604,12 @@ debug@2.6.9, debug@^2.1.1, debug@^2.2.0, debug@^2.6.6, debug@^2.6.8, debug@^2.6.
   dependencies:
     ms "2.0.0"
 
+debug@^3.1.0:
+  version "3.1.0"
+  resolved "http://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
+  dependencies:
+    ms "2.0.0"
+
 decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2:
   version "1.2.0"
   resolved "http://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
@@ -2370,6 +2383,12 @@ flush-write-stream@^1.0.0:
     inherits "^2.0.1"
     readable-stream "^2.0.4"
 
+follow-redirects@^1.2.5:
+  version "1.3.0"
+  resolved "http://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.3.0.tgz#f684871fc116d2e329fda55ef67687f4fabc905c"
+  dependencies:
+    debug "^3.1.0"
+
 font-awesome@^4.7.0:
   version "4.7.0"
   resolved "http://registry.npm.taobao.org/font-awesome/download/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133"

+ 2 - 1
sso-manage-console/build.gradle

@@ -1,10 +1,11 @@
 plugins {
 	id "eclipse"
-	id "org.springframework.boot" version "1.4.7.RELEASE"
+	id "org.springframework.boot" version "1.5.9.RELEASE"
 }
 
 dependencies {
     // Custom Libraries
+    compile project(":sso-common")
     compile("com.uas.sso:sso-persist:0.0.1-SNAPSHOT")
 
 	compile("org.springframework.boot:spring-boot-starter-web")

+ 23 - 0
sso-manage-console/src/main/java/com/uas/sso/sso/backend/api/AppManagerController.java

@@ -1,5 +1,28 @@
 package com.uas.sso.sso.backend.api;
 
+import com.uas.sso.entity.App;
+import com.uas.sso.sso.backend.service.AppService;
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping(path = "/api/app")
 public class AppManagerController {
 
+    private final AppService appService;
+
+    @Autowired
+    public AppManagerController(AppService appService) {
+        this.appService = appService;
+    }
+
+    @RequestMapping(method = RequestMethod.GET, path = "//showAllApps",
+            produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    public List<App> showAllUsers() {
+        return appService.findAllApps();
+    }
 }

+ 15 - 1
sso-manage-console/src/main/java/com/uas/sso/sso/backend/service/impl/AppServiceImpl.java

@@ -1,9 +1,13 @@
 package com.uas.sso.sso.backend.service.impl;
 
+import com.uas.sso.dao.AppDao;
 import com.uas.sso.entity.App;
 import com.uas.sso.sso.backend.service.AppService;
+import java.util.Collections;
 import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 /**
  * An implementations of {@code AppService}.
@@ -15,8 +19,18 @@ public class AppServiceImpl implements AppService {
 
     private final AppDao appDao;
 
+    @Autowired
+    public AppServiceImpl(AppDao appDao) {
+        this.appDao = appDao;
+    }
+
     @Override
     public List<App> findAllApps() {
-        return null;
+        List<App> apps = appDao.findAll();
+
+        if (CollectionUtils.isEmpty(apps)) {
+            apps = Collections.emptyList();
+        }
+        return apps;
     }
 }

+ 2 - 0
sso-server/build.gradle

@@ -36,5 +36,7 @@ dependencies {
     compile("org.apache.zookeeper:zookeeper:3.4.6")
     compile("com.github.sgroschupf:zkclient:0.1")
 
+    compile("com.belerweb:pinyin4j:2.5.1")
+
     testCompile("org.springframework.boot:spring-boot-starter-test")
 }