Compare commits
2 Commits
2.0.17-sco
...
2.0.17-tes
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ffc7220944 | ||
|
|
411969192f |
@@ -1,17 +0,0 @@
|
|||||||
stages:
|
|
||||||
- deploy
|
|
||||||
|
|
||||||
deploy-jar:
|
|
||||||
stage: deploy
|
|
||||||
tags:
|
|
||||||
- zengos
|
|
||||||
rules:
|
|
||||||
- if: $CI_COMMIT_TAG
|
|
||||||
script:
|
|
||||||
- mvn clean deploy -Dmaven.test.skip -DaltDeploymentRepository=master::default::file:$TAG_REPO_FOLDER
|
|
||||||
- cd $TAG_REPO_FOLDER
|
|
||||||
- git checkout master
|
|
||||||
- git pull
|
|
||||||
- git add .
|
|
||||||
- git commit -m "deploy $CI_PROJECT_NAME $CI_COMMIT_TAG"
|
|
||||||
- git push origin master
|
|
||||||
18
pom.xml
18
pom.xml
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<name>springboot-parent</name>
|
<name>springboot-parent</name>
|
||||||
<description>杭州铁晟科技有限公司基础依赖</description>
|
<description>杭州铁晟科技有限公司基础依赖</description>
|
||||||
@@ -58,49 +58,49 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-database</artifactId>
|
<artifactId>springboot-database</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-login</artifactId>
|
<artifactId>springboot-login</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-web</artifactId>
|
<artifactId>springboot-web</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-util</artifactId>
|
<artifactId>springboot-util</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-platform</artifactId>
|
<artifactId>springboot-platform</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-message</artifactId>
|
<artifactId>springboot-message</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-role</artifactId>
|
<artifactId>springboot-role</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-annotation</artifactId>
|
<artifactId>springboot-annotation</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|||||||
@@ -6,11 +6,11 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-ademo</artifactId>
|
<artifactId>springboot-ademo</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<maven.compiler.source>8</maven.compiler.source>
|
<maven.compiler.source>8</maven.compiler.source>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-annotation</artifactId>
|
<artifactId>springboot-annotation</artifactId>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-database</artifactId>
|
<artifactId>springboot-database</artifactId>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-login</artifactId>
|
<artifactId>springboot-login</artifactId>
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ public class LoginController {
|
|||||||
extra = "";
|
extra = "";
|
||||||
}
|
}
|
||||||
String configUrl = globalConfig.buildPath("/login/wxmp/oauth2/" + service + "?extra=" + extra);
|
String configUrl = globalConfig.buildPath("/login/wxmp/oauth2/" + service + "?extra=" + extra);
|
||||||
String authorizationUrl = platformWxmpConfig.buildAuthorizationUrl(service, configUrl, "snsapi_userinfo");
|
String authorizationUrl = platformWxmpConfig.buildAuthorizationUrl(service, configUrl);
|
||||||
response.sendRedirect(authorizationUrl);
|
response.sendRedirect(authorizationUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-message</artifactId>
|
<artifactId>springboot-message</artifactId>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-platform</artifactId>
|
<artifactId>springboot-platform</artifactId>
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author hao
|
* @author hao
|
||||||
@@ -122,12 +123,12 @@ public class PlatformWxmpConfig {
|
|||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String buildAuthorizationUrl(String service, String redirectUrl, String scope) {
|
public String buildAuthorizationUrl(String service, String redirectUrl) {
|
||||||
WxConfigBean configBean = getConfigBean(service);
|
WxConfigBean configBean = getConfigBean(service);
|
||||||
return "https://open.weixin.qq.com/connect/oauth2/authorize"
|
return "https://open.weixin.qq.com/connect/oauth2/authorize"
|
||||||
+ "?appid=" + configBean.getAppId()
|
+ "?appid=" + configBean.getAppId()
|
||||||
+ "&redirect_uri=" + URLUtil.encodeAll(redirectUrl)
|
+ "&redirect_uri=" + URLUtil.encodeAll(redirectUrl)
|
||||||
+ "&response_type=code&scope=" + scope
|
+ "&response_type=code&scope=" + configBean.getScope()
|
||||||
+ "&state=STATE#wechat_redirect";
|
+ "&state=STATE#wechat_redirect";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -141,7 +142,15 @@ public class PlatformWxmpConfig {
|
|||||||
public WxUserInfo getOAuth2AccessToken(String service, String code) {
|
public WxUserInfo getOAuth2AccessToken(String service, String code) {
|
||||||
WxConfigBean configBean = getConfigBean(service);
|
WxConfigBean configBean = getConfigBean(service);
|
||||||
WxOAuth2AccessToken wxOAuth2AccessToken = WxOAuth2AccessToken.create(configBean.getAppId(), configBean.getAppSecret(), code);
|
WxOAuth2AccessToken wxOAuth2AccessToken = WxOAuth2AccessToken.create(configBean.getAppId(), configBean.getAppSecret(), code);
|
||||||
WxUserInfo wxUserInfo = WxUserInfo.create(wxOAuth2AccessToken);
|
|
||||||
|
WxUserInfo wxUserInfo = null;
|
||||||
|
if (Objects.equals(configBean.getScope(), "snsapi_userinfo")) {
|
||||||
|
wxUserInfo = WxUserInfo.create(wxOAuth2AccessToken);
|
||||||
|
} else {
|
||||||
|
wxUserInfo = new WxUserInfo();
|
||||||
|
wxUserInfo.setOpenid(wxOAuth2AccessToken.getOpenid());
|
||||||
|
wxUserInfo.setRealUser(wxOAuth2AccessToken.isRealUser());
|
||||||
|
}
|
||||||
wxUserInfo.setAppId(configBean.getAppId());
|
wxUserInfo.setAppId(configBean.getAppId());
|
||||||
return wxUserInfo;
|
return wxUserInfo;
|
||||||
}
|
}
|
||||||
@@ -162,7 +171,8 @@ public class PlatformWxmpConfig {
|
|||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// setter\getter
|
// setter\getter
|
||||||
///////////////////////////////////////////////////////////////////////////
|
|
||||||
|
/// ////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
public Map<String, WxConfigBean> getConfigs() {
|
public Map<String, WxConfigBean> getConfigs() {
|
||||||
return configs;
|
return configs;
|
||||||
|
|||||||
@@ -7,10 +7,12 @@ public class WxConfigBean {
|
|||||||
|
|
||||||
private String appId;
|
private String appId;
|
||||||
private String appSecret;
|
private String appSecret;
|
||||||
|
private String scope = "snsapi_userinfo";
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// setter\getter
|
// setter\getter
|
||||||
///////////////////////////////////////////////////////////////////////////
|
|
||||||
|
/// ////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
public String getAppId() {
|
public String getAppId() {
|
||||||
return appId;
|
return appId;
|
||||||
@@ -27,4 +29,12 @@ public class WxConfigBean {
|
|||||||
public void setAppSecret(String appSecret) {
|
public void setAppSecret(String appSecret) {
|
||||||
this.appSecret = appSecret;
|
this.appSecret = appSecret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getScope() {
|
||||||
|
return scope;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScope(String scope) {
|
||||||
|
this.scope = scope;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ public class WxOAuth2AccessToken {
|
|||||||
|
|
||||||
private String accessToken;
|
private String accessToken;
|
||||||
private String openid;
|
private String openid;
|
||||||
|
private String isSnapshotuser;
|
||||||
|
|
||||||
public static WxOAuth2AccessToken create(String appId, String secret, String code) {
|
public static WxOAuth2AccessToken create(String appId, String secret, String code) {
|
||||||
String response = OkHttpUtil.get("https://api.weixin.qq.com/sns/oauth2/access_token" +
|
String response = OkHttpUtil.get("https://api.weixin.qq.com/sns/oauth2/access_token" +
|
||||||
@@ -23,10 +24,20 @@ public class WxOAuth2AccessToken {
|
|||||||
return oAuth2AccessToken;
|
return oAuth2AccessToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否是真实用户
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public boolean isRealUser() {
|
||||||
|
return !"1".equals(isSnapshotuser);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// setter\getter
|
// setter\getter
|
||||||
///////////////////////////////////////////////////////////////////////////
|
|
||||||
|
/// ////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
public String getAccessToken() {
|
public String getAccessToken() {
|
||||||
return accessToken;
|
return accessToken;
|
||||||
@@ -43,4 +54,12 @@ public class WxOAuth2AccessToken {
|
|||||||
public void setOpenid(String openid) {
|
public void setOpenid(String openid) {
|
||||||
this.openid = openid;
|
this.openid = openid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getIsSnapshotuser() {
|
||||||
|
return isSnapshotuser;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIsSnapshotuser(String isSnapshotuser) {
|
||||||
|
this.isSnapshotuser = isSnapshotuser;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ public class WxUserInfo {
|
|||||||
private String headimgurl;
|
private String headimgurl;
|
||||||
private String openid;
|
private String openid;
|
||||||
private String appId;
|
private String appId;
|
||||||
|
private boolean isRealUser;
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// 逻辑方法
|
// 逻辑方法
|
||||||
@@ -33,13 +34,16 @@ public class WxUserInfo {
|
|||||||
String s = OkHttpUtil.get("https://api.weixin.qq.com/sns/userinfo"
|
String s = OkHttpUtil.get("https://api.weixin.qq.com/sns/userinfo"
|
||||||
+ "?access_token=" + oAuth2AccessToken.getAccessToken()
|
+ "?access_token=" + oAuth2AccessToken.getAccessToken()
|
||||||
+ "&openid=" + oAuth2AccessToken.getOpenid() + "&lang=zh_CN");
|
+ "&openid=" + oAuth2AccessToken.getOpenid() + "&lang=zh_CN");
|
||||||
return JSON.parseObject(s, WxUserInfo.class);
|
WxUserInfo wxUserInfo = JSON.parseObject(s, WxUserInfo.class);
|
||||||
|
wxUserInfo.setRealUser(oAuth2AccessToken.isRealUser());
|
||||||
|
return wxUserInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// setter\getter
|
// setter\getter
|
||||||
///////////////////////////////////////////////////////////////////////////
|
|
||||||
|
/// ////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
public String getAccessToken() {
|
public String getAccessToken() {
|
||||||
return accessToken;
|
return accessToken;
|
||||||
@@ -112,4 +116,12 @@ public class WxUserInfo {
|
|||||||
public void setAppId(String appId) {
|
public void setAppId(String appId) {
|
||||||
this.appId = appId;
|
this.appId = appId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isRealUser() {
|
||||||
|
return isRealUser;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRealUser(boolean realUser) {
|
||||||
|
isRealUser = realUser;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-role</artifactId>
|
<artifactId>springboot-role</artifactId>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-util</artifactId>
|
<artifactId>springboot-util</artifactId>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.tiesheng.springboot-parent</groupId>
|
<groupId>com.tiesheng.springboot-parent</groupId>
|
||||||
<artifactId>springboot-parent</artifactId>
|
<artifactId>springboot-parent</artifactId>
|
||||||
<version>2.0.17</version>
|
<version>2.0.17-test2</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>springboot-web</artifactId>
|
<artifactId>springboot-web</artifactId>
|
||||||
|
|||||||
Reference in New Issue
Block a user