Compare commits

..

5 Commits

Author SHA1 Message Date
丁磊
0f524274c3 publish 2.0.17-scope-0.2-test
All checks were successful
/ local-deploy (push) Successful in 19s
2025-06-10 10:09:18 +08:00
丁磊
7b7aee2495 refactor(login): 调整微信公众号 OAuth2 登录流程- 注释掉原有的授权 URL生成和重定向逻辑
- 新增测试用 TokenBean 对象,用于模拟登录成功后的处理
- 修改重定向 URL,增加测试参数
2025-06-10 10:08:44 +08:00
丁磊
82c8076724 publish 2.0.17-scope-0.1
All checks were successful
/ local-deploy (push) Successful in 20s
2025-06-09 18:11:51 +08:00
丁磊
7fe1b1d79b fix(login): 修改微信公众号授权类型
- 将 snsapi_userinfo 修改为 snsapi_base
-优化了微信公众号登录的授权流程
2025-06-09 18:11:21 +08:00
丁磊
64127f3802 build: 更新 plugin repository
-将 kepai-repo-plugin 修改为 tiesheng-repo-plugin
- 更新 URL 为 https://git.tieshengkeji.com/api/packages/tieshengkeji/maven
2025-06-09 18:10:52 +08:00
19 changed files with 55 additions and 89 deletions

View File

@@ -50,7 +50,7 @@
<repositories>
<repository>
<id>kepai-repo</id>
<url>https://git.tieshengkeji.com/api/packages/tieshengkeji/maven</url>
<url>http://git.kepai365.com/tiesheng/repository/raw/master</url>
</repository>
</repositories>
```

18
pom.xml
View File

@@ -6,7 +6,7 @@
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
<packaging>pom</packaging>
<name>springboot-parent</name>
<description>杭州铁晟科技有限公司基础依赖</description>
@@ -58,49 +58,49 @@
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-database</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-login</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-web</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-util</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-platform</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-message</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-role</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-annotation</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</dependency>
<dependency>

View File

@@ -6,11 +6,11 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-ademo</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
@@ -46,8 +46,8 @@
<repositories>
<repository>
<id>tiesheng-repo</id>
<url>https://git.tieshengkeji.com/api/packages/tieshengkeji/maven</url>
<id>kepai-repo</id>
<url>http://git.kepai365.com/tiesheng/repository/raw/master</url>
</repository>
</repositories>

View File

@@ -12,7 +12,6 @@ import com.alibaba.fastjson.JSONObject;
import com.tiesheng.annotation.role.RoleAuthority;
import com.tiesheng.annotation.token.TokenIgnore;
import com.tiesheng.database.config.DbBackupConfig;
import com.tiesheng.demo.pojos.CustTokenBean;
import com.tiesheng.demo.pojos.JsonTest;
import com.tiesheng.demo.pojos.PoiBean;
import com.tiesheng.platform.config.ding.PlatformDingConfig;
@@ -44,6 +43,7 @@ import java.util.function.Consumer;
*/
@RestController
@RequestMapping("/test")
@RoleAuthority(value = "test", group = "test")
public class TestController {
@Autowired
@@ -65,6 +65,7 @@ public class TestController {
@RequestMapping("/index")
@TokenIgnore
public void index(HttpServletResponse response) {
globalConfig.redirectWithVer("mobile", "/test", response);
}
@@ -112,9 +113,8 @@ public class TestController {
@GetMapping("/send")
public ApiResp<String> sendMessage(CustTokenBean tokenBean) {
tokenBean.test();
@TokenIgnore
public ApiResp<String> sendMessage() {
// MessageReqResp reqResp = coreMessageService.send(new UserChannel("13567116463", "sms"),
// JSONUtil.createObj().putOpt("action", "sms-visitor-invite"));

View File

@@ -1,12 +0,0 @@
package com.tiesheng.demo.pojos;
import com.tiesheng.util.pojos.TokenBean;
public class CustTokenBean extends TokenBean {
public void test() {
System.out.println("test: " + getId());
}
}

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-annotation</artifactId>

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-database</artifactId>

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-login</artifactId>

View File

@@ -1,6 +1,5 @@
package com.tiesheng.login.config;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import com.tiesheng.annotation.token.TokenIgnore;
@@ -41,7 +40,7 @@ public class TokenWebMvcConfigurer implements WebMvcConfigurer {
resolvers.add(new HandlerMethodArgumentResolver() {
@Override
public boolean supportsParameter(MethodParameter parameter) {
return TokenBean.class.isAssignableFrom(parameter.getParameterType());
return parameter.getParameterType().isAssignableFrom(TokenBean.class);
}
@Override
@@ -55,9 +54,7 @@ public class TokenWebMvcConfigurer implements WebMvcConfigurer {
TokenIgnore annotation = method.getAnnotation(TokenIgnore.class);
thrExp = annotation == null;
}
TokenBean tokenBean = tsTokenConfig.validToken(header, thrExp);
return BeanUtil.copyProperties(tokenBean, parameter.getParameterType());
return tsTokenConfig.validToken(header, thrExp);
}
});
}

View File

@@ -170,8 +170,9 @@ public class LoginController {
extra = "";
}
String configUrl = globalConfig.buildPath("/login/wxmp/oauth2/" + service + "?extra=" + extra);
String authorizationUrl = platformWxmpConfig.buildAuthorizationUrl(service, configUrl, "snsapi_userinfo");
response.sendRedirect(authorizationUrl);
// String authorizationUrl = platformWxmpConfig.buildAuthorizationUrl(service, configUrl, "snsapi_base");
// response.sendRedirect(authorizationUrl);
response.sendRedirect(configUrl+"&to=mobile&code=200");
}
@@ -181,9 +182,13 @@ public class LoginController {
@RequestMapping("/wxmp/oauth2/{service}")
@OperationIgnore
public void wxmpOauth2(@PathVariable String service, CodeExtraDTO dto, HttpServletResponse response) {
WxUserInfo wxUserInfo = platformWxmpConfig.getOAuth2AccessToken(service, dto.getCode());
TokenBean tokenBean = corePlatformUniqueService.login(new DoLoginInfo(wxUserInfo.getAppId(),
wxUserInfo.getOpenid(), "wxmp", JSON.toJSONString(wxUserInfo)));
// WxUserInfo wxUserInfo = platformWxmpConfig.getOAuth2AccessToken(service, dto.getCode());
// TokenBean tokenBean = corePlatformUniqueService.login(new DoLoginInfo(wxUserInfo.getAppId(),
// wxUserInfo.getOpenid(), "wxmp", JSON.toJSONString(wxUserInfo)));
TokenBean tokenBean = new TokenBean();
tokenBean.setId("testid");
tokenBean.setRoleId("testroleid");
tokenBean.setExtra("testextra");
corePlatformUniqueService.redirect(tokenBean, dto.getTo(), dto.getExtra(), response);
}

View File

@@ -68,7 +68,7 @@ public interface TsLoginConfigurer {
/**
* 获取登录失败的次数,默认0次不校验
* 获取登录失败的次数,默认5次
*
* @return
*/

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-message</artifactId>

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-platform</artifactId>

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-role</artifactId>

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-util</artifactId>

View File

@@ -16,7 +16,7 @@ import javax.annotation.PostConstruct;
@ConfigurationProperties(prefix = "tiesheng.ip2region")
public class Ip2regionConfig {
private String dbUrl = "https://git.tieshengkeji.com/tieshengkeji/Ip2region/raw/branch/main/ip2region.xdb";
private String dbUrl = "http://git.kepai365.com/tiesheng/repository/raw/master/ipdb/ip2region.xdb";
private String dbPath = System.getProperty("user.dir") + "/runtime/ip2region/ip2region.xdb";
///////////////////////////////////////////////////////////////////////////

View File

@@ -6,7 +6,7 @@
<parent>
<groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId>
<version>2.0.23</version>
<version>2.0.17-scope-0.2-test</version>
</parent>
<artifactId>springboot-web</artifactId>

View File

@@ -51,7 +51,7 @@ public class CoreConfigService extends TsServiceBase<CoreConfigSystemMapper, Cor
oneByColumn.setId(configKey);
oneByColumn.setConfigKey(configKey);
oneByColumn.setConfigVal(defaultValue);
oneByColumn.setRemark(configKey);
oneByColumn.setRemark(defaultValue);
oneByColumn.setConfigType(0);
save(oneByColumn);
}
@@ -68,20 +68,19 @@ public class CoreConfigService extends TsServiceBase<CoreConfigSystemMapper, Cor
* @param dto
*/
public void updateConfigSystem(ConfigSystemDTO dto) {
CoreConfigSystem coreConfigSystem = getOneByColumn("config_key", dto.getConfigKey());
if (coreConfigSystem == null) {
CoreConfigSystem configKey = getOneByColumn("config_key", dto.getConfigKey());
if (configKey == null) {
throw new ApiException("该配置不存在,请检查");
}
if (coreConfigSystem.getReadOnly() == 1) {
if (configKey.getReadOnly() == 1) {
throw new ApiException("该配置只读,不可修改");
}
coreConfigSystem.setConfigVal(dto.getConfigVal());
coreConfigSystem.setRemark(dto.getRemark());
coreConfigSystem.setExtra(dto.getExtra());
updateById(coreConfigSystem);
configKey.setConfigVal(dto.getConfigVal());
configKey.setRemark(dto.getRemark());
configKey.setExtra(dto.getExtra());
updateById(configKey);
tsCacheService.putObj(CONFIG_SYSTEM_PREFIX + coreConfigSystem.getConfigKey(),
coreConfigSystem, 10 * 60);
tsCacheService.putObj(CONFIG_SYSTEM_PREFIX + configKey, configKey, 10 * 60);
}

View File

@@ -2,6 +2,7 @@ package com.tiesheng.web.service;
import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.tiesheng.web.mapper.CoreLogApiMapper;
import com.tiesheng.web.pojos.dao.CoreLogApi;
@@ -11,8 +12,6 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import javax.validation.constraints.NotNull;
import java.io.IOException;
import java.util.Objects;
@Component
public class OkHttpLogInterceptor implements Interceptor {
@@ -23,14 +22,11 @@ public class OkHttpLogInterceptor implements Interceptor {
@NotNull
@Override
public Response intercept(@NotNull Chain chain) throws IOException {
Request request = chain.request();
if (Objects.equals(request.header("skipApiLog"), "true")) {
return chain.proceed(request);
}
public Response intercept(@NotNull Chain chain) {
CoreLogApi logApi = new CoreLogApi();
Request request = chain.request();
logApi.setUrl(request.url().toString());
logApi.setContent(requestBody2String(request));
@@ -51,29 +47,10 @@ public class OkHttpLogInterceptor implements Interceptor {
}
} catch (Exception e) {
JSONObject object = new JSONObject();
object.put("code", 500);
object.put("message", e.getMessage());
object.put("code", -1);
object.put("message", JSON.toJSONString(e));
object.put("exception", e);
logApi.setRespBody(object.toJSONString());
response = new Response.Builder()
// 必须设置请求对象
.request(chain.request())
// 指定协议版本
.protocol(Protocol.HTTP_1_1)
// 设置HTTP状态码
.code(object.getInteger("code"))
// 状态信息
.message(object.getString("message"))
// 设置响应体
.body(ResponseBody.create(MediaType.parse("application/json"), object.toJSONString()))
.headers(new Headers.Builder().build()) // 可选:设置响应头
.build();
}
ThreadUtil.execute(() -> coreLogApiMapper.insert(logApi));