Forráskód Böngészése

添加登录用户信息显示

wangmh 7 éve
szülő
commit
0d59e057d3

+ 4 - 1
jpress-web-core/pom.xml

@@ -92,7 +92,10 @@
 			<type>jar</type>
 			<scope>compile</scope>
 		</dependency>
-		
+		<dependency>
+			<groupId>com.uas.account</groupId>
+			<artifactId>sso-core</artifactId>
+		</dependency>
 	</dependencies>
 
 	<build>

+ 3 - 0
jpress-web-core/src/main/config/sso.properties

@@ -0,0 +1,3 @@
+sso.app=cms
+sso.secret-key=0taQcW073Z7G628g5H
+sso.cookie.browser=false

+ 12 - 0
jpress-web-core/src/main/java/io/jpress/Config.java

@@ -15,6 +15,9 @@
  */
 package io.jpress;
 
+import com.jfinal.kit.PropKit;
+import com.uas.sso.SSOConfig;
+import com.uas.sso.SSOHelper;
 import io.jpress.core.Jpress;
 import io.jpress.core.JpressConfig;
 import io.jpress.message.Actions;
@@ -58,6 +61,15 @@ public class Config extends JpressConfig {
 
 		MessageKit.sendMessage(Actions.JPRESS_STARTED);
 
+		setSsoConfig();
+	}
+
+	private void setSsoConfig() {
+		PropKit.use("sso.properties");
+		SSOConfig ssoConfig = SSOHelper.getSSOService().getConfig();
+		ssoConfig.setAppName(PropKit.use("sso.properties").get("sso.app"));
+		ssoConfig.setSecretkey(PropKit.use("sso.properties").get("sso.secret-key"));
+		SSOHelper.getSSOService().getConfig().setCookieBrowser(PropKit.use("sso.properties").getBoolean("sso.cookie.browser"));
 	}
 
 

+ 47 - 0
jpress-web-front/src/main/java/io/jpress/front/controller/SsoLoginController.java

@@ -0,0 +1,47 @@
+package io.jpress.front.controller;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.uas.sso.SSOHelper;
+import com.uas.sso.SSOToken;
+import com.uas.sso.entity.UserAccount;
+import io.jpress.core.BaseFrontController;
+import io.jpress.router.RouterMapping;
+import io.jpress.router.RouterNotAllowConvert;
+import io.jpress.utils.StringUtils;
+
+import javax.servlet.http.HttpServletRequest;
+
+
+/**
+ * 登录控制器
+ *
+ * @author wangmh
+ * @create 2018-09-07 17:19
+ **/
+@RouterMapping(url = "/sso")
+@RouterNotAllowConvert
+public class SsoLoginController extends BaseFrontController {
+
+    public void index() {
+        UserAccount userAccount = getUserLoginState(getRequest());
+        System.out.println(userAccount);
+    }
+
+    public void loginInfo() {
+        UserAccount userAccount = getUserLoginState(getRequest());
+        JSONObject json = new JSONObject(2);
+        json.put("success", true);
+        json.put("userAccount", userAccount);
+        renderJson(json);
+    }
+
+    private UserAccount getUserLoginState(HttpServletRequest request) {
+        SSOToken ssoToken = SSOHelper.getToken(request);
+        if (ssoToken == null) {
+            return null;
+        } else {
+            return StringUtils.isBlank(ssoToken.getData()) ? null : JSON.parseObject(ssoToken.getData(), UserAccount.class);
+        }
+    }
+}

+ 9 - 9
jpress-web-template-mallcms/src/main/webapp/templates/mallcms/_layout.html

@@ -39,15 +39,15 @@
                 <div class="menu fl">
                     <a href="https://www.usoftchina.com/"><img src="${CTPATH}/assets/images/logo_uas_01.png" alt=""/></a>
                 </div>
-                <!--<div class="menu fr">-->
-                <!--<ul>-->
-                <!--&lt;!&ndash;未登录状态&ndash;&gt;-->
-                <!--<li style="margin-left: -10px;"><a href="">登录</a></li>-->
-                <!--<li><a href="">注册</a></li>-->
-                <!--&lt;!&ndash;已登录状态&ndash;&gt;-->
-                <!--<li><div>欢迎您,<span>SUPER_WING</span><span>【退出】</span></div></li>-->
-                <!--</ul>-->
-                <!--</div>-->
+                <div class="menu fr">
+                <ul>
+                <!--未登录状态-->
+                <li class="unLogin" style="margin-left: -10px;"><a class="a_login">登录</a></li>
+                <li class="unLogin"><a class="a_register">注册</a></li>
+                <!--已登录状态-->
+                <li class="login"><div>欢迎您,<span id="username">SUPER_WING</span><a class="a_logout">【退出】</a></div></li>
+                </ul>
+                </div>
             </div>
             <div class="bottom">
                 <ul>

+ 27 - 0
jpress-web-template-mallcms/src/main/webapp/templates/mallcms/assets/js/index.js

@@ -159,4 +159,31 @@ $(function () {
         $('body').animate({ scrollTop: 0 }, 1000);
         return false;
     })
+    $.ajax({
+        type: "GET",
+        url: "sso/loginInfo",
+        dataType: "json",
+        success: function (data) {
+            if (data.success && data.userAccount) {
+                $('#username').html(data.userAccount.vipName + ',' + data.userAccount.spaceName);
+                $('.login').show();
+                $('.unLogin').hide();
+            } else {
+                $('.login').hide();
+                $('.unLogin').show();
+            }
+        }
+    })
+
+    $('.a_login').click(function () {
+        window.location.href = 'https://sso.ubtob.com?appId=home&returnURL=' + window.location.href;
+    })
+
+    $('.a_logout').click(function () {
+        window.location.href = 'https://sso.ubtob.com/logquit?appId=home&returnURL=' + window.location.href;
+    })
+
+    $('.a_register').click(function () {
+        window.location.href = 'https://sso.ubtob.com/register/enterpriseRegistration?appId=home&returnURL=' + window.location.href;
+    })
 });

+ 5 - 0
pom.xml

@@ -135,6 +135,11 @@
 				<version>${mysql.version}</version>
 			</dependency>
 
+			<dependency>
+				<groupId>com.uas.account</groupId>
+				<artifactId>sso-core</artifactId>
+				<version>0.0.1-SNAPSHOT</version>
+			</dependency>
 		</dependencies>
 	</dependencyManagement>