小程序修正

This commit is contained in:
2025-12-23 13:27:36 +08:00
parent cfb160cf09
commit ce66812c82
48 changed files with 766 additions and 735 deletions

View File

@@ -60,7 +60,7 @@ public class GuestController {
@DubboReference(version = "1.0.0", group = "auth", timeout = 5000, check = false, retries = 0)
private AuthService authService;
@DubboReference(version = "1.0.0", group = "system", timeout = 5000, check = false, retries = 0)
@Autowired
private ModulePermissionService modulePermissionService;
@Autowired
@@ -128,9 +128,12 @@ public class GuestController {
// 设置登录类型为微信小程序
loginParam.setLoginType("wechat_miniprogram");
// 从 request 中提取客户端 IP 并设置到 loginParam
loginParam.setClientIp(getClientIP(request));
// 1. 尝试通过AuthService登录员工
ResultDomain<LoginDomain> loginResult = authService.login(loginParam, request);
ResultDomain<LoginDomain> loginResult = authService.login(loginParam);
if (loginResult.getSuccess() && loginResult.getData() != null) {
// 登录成功,是系统员工
return loginResult;
@@ -261,4 +264,24 @@ public class GuestController {
return loginDomain;
}
/**
* 获取客户端IP地址
*/
private String getClientIP(HttpServletRequest request) {
String ip = request.getHeader("X-Forwarded-For");
if (ip == null || ip.isEmpty() || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.isEmpty() || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.isEmpty() || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
if (ip != null && ip.contains(",")) {
ip = ip.split(",")[0].trim();
}
return ip;
}
}

View File

@@ -1,9 +1,10 @@
# ================== Server ==================
server:
port: 8082
servlet:
context-path: /urban-lifeline/system
port: 8182
# servlet:
# context-path: /urban-lifeline/system # 微服务架构下context-path由Gateway管理
# ================== Auth ====================
auth:
enabled: true
gateway-mode: true
@@ -28,13 +29,11 @@ auth:
# 健康检查
- /actuator/health
- /actuator/info
- /system/guest/identify
# 其他需要放行的路径
# - /public/**
# - /api/public/**
# ================== Security ==================
security:
aes:
# AES-256 密钥Base64编码
@@ -43,6 +42,17 @@ security:
# ================== Spring ==================
spring:
application:
name: system-service
# ================== Spring Cloud Nacos ==================
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
namespace: dev
group: DEFAULT_GROUP
# ================== DataSource ==================
datasource:
# 按你的实际库名改一下,比如 urban-lifeline_system
@@ -57,7 +67,7 @@ spring:
host: 127.0.0.1 # 如果是 docker 跑的 redis按实际 host / 端口改
port: 6379
database: 0
# password: "" # 如果有密码就填上,没密码可以去掉这一行
password: 123456 # 如果有密码就填上,没密码可以去掉这一行
# ================== SpringDoc ==================
springdoc:
api-docs:
@@ -103,3 +113,12 @@ dubbo:
mybatis-plus:
mapper-locations: classpath:mapper/**/*.xml
type-aliases-package: org.xyzh.common.dto, org.xyzh.api
# ================== Logging ==================
logging:
config: classpath:log4j2.xml
charset:
console: UTF-8
file: UTF-8
level:
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping: TRACE

View File

@@ -29,15 +29,14 @@ auth:
# 健康检查
- /actuator/health
- /actuator/info
- /system/guest/identify
# 其他需要放行的路径
# - /public/**
# - /api/public/**
security:
aes:
secret-key: 1234567890qwer
secret-key: MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=
# ================== Spring ==================
spring:
@@ -119,3 +118,5 @@ logging:
charset:
console: UTF-8
file: UTF-8
level:
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping: TRACE

View File

@@ -11,34 +11,12 @@
<appenders>
<console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
<ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/>
<ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/>
</console>
<RollingFile name="RollingFileInfo" fileName="${FILE_PATH}/${FILE_NAME}-info.log"
filePattern="${FILE_PATH}/${FILE_NAME}-INFO-%d{yyyy-MM-dd}_%i.log.gz">
<ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
<Policies>
<TimeBasedTriggeringPolicy interval="1"/>
<SizeBasedTriggeringPolicy size="100MB"/>
</Policies>
<DefaultRolloverStrategy max="30"/>
</RollingFile>
<RollingFile name="RollingFileWarn" fileName="${FILE_PATH}/${FILE_NAME}-warn.log"
filePattern="${FILE_PATH}/${FILE_NAME}-WARN-%d{yyyy-MM-dd}_%i.log.gz">
<ThresholdFilter level="warn" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
<Policies>
<TimeBasedTriggeringPolicy interval="1"/>
<SizeBasedTriggeringPolicy size="100MB"/>
</Policies>
<DefaultRolloverStrategy max="30"/>
</RollingFile>
<RollingFile name="RollingFileError" fileName="${FILE_PATH}/${FILE_NAME}-error.log"
filePattern="${FILE_PATH}/${FILE_NAME}-ERROR-%d{yyyy-MM-dd}_%i.log.gz">
<ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>
<RollingFile name="RollingFile" fileName="${FILE_PATH}/${FILE_NAME}.log"
filePattern="${FILE_PATH}/${FILE_NAME}-%d{yyyy-MM-dd}_%i.log.gz">
<ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
<Policies>
<TimeBasedTriggeringPolicy interval="1"/>
@@ -51,35 +29,37 @@
<loggers>
<logger name="com.alibaba.nacos" level="info" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFile"/>
</logger>
<logger name="org.mybatis" level="debug" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFile"/>
</logger>
<Logger name="org.springframework" level="info" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFile"/>
</Logger>
<Logger name="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" level="TRACE" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFile"/>
</Logger>
<Logger name="org.xyzh.system" level="debug" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFileInfo"/>
<AppenderRef ref="RollingFileWarn"/>
<AppenderRef ref="RollingFileError"/>
<AppenderRef ref="RollingFile"/>
</Logger>
<Logger name="org.xyzh.common" level="debug" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFileInfo"/>
<AppenderRef ref="RollingFileWarn"/>
<AppenderRef ref="RollingFileError"/>
<AppenderRef ref="RollingFile"/>
</Logger>
<root level="info">
<appender-ref ref="Console"/>
<appender-ref ref="RollingFileInfo"/>
<appender-ref ref="RollingFileWarn"/>
<appender-ref ref="RollingFileError"/>
<appender-ref ref="RollingFile"/>
</root>
</loggers>
</configuration>