feat:配置修改

This commit is contained in:
xiang
2026-03-22 10:20:18 +08:00
parent 6ebdec199b
commit cb9ddf4681
7 changed files with 28 additions and 173 deletions

View File

@@ -1,6 +1,5 @@
package com.xiang.xservice.auth.server.controller; package com.xiang.xservice.auth.server.controller;
import com.xiang.xservice.auth.api.api.TokenApi;
import com.xiang.xservice.auth.api.dto.req.LoginRequest; import com.xiang.xservice.auth.api.dto.req.LoginRequest;
import com.xiang.xservice.auth.api.dto.req.RefreshRequest; import com.xiang.xservice.auth.api.dto.req.RefreshRequest;
import com.xiang.xservice.auth.api.dto.req.RegisterRequest; import com.xiang.xservice.auth.api.dto.req.RegisterRequest;
@@ -29,7 +28,7 @@ import java.util.Objects;
@Slf4j @Slf4j
@RestController @RestController
@RequiredArgsConstructor @RequiredArgsConstructor
public class TokenController implements TokenApi { public class TokenController {
private final XUserService userService; private final XUserService userService;
private final XMenuService menuService; private final XMenuService menuService;
@@ -83,26 +82,6 @@ public class TokenController implements TokenApi {
return Result.error("操作失败"); return Result.error("操作失败");
} }
@Override
@GetMapping("/private/user/getUserId")
public Result<Long> getUserId(@RequestParam("token") String token) {
try {
return Result.data(userService.getUserId(token));
} catch (Exception e) {
return Result.error(e.getMessage());
}
}
@Override
@GetMapping("/private/user/getTenantId")
public Result<Long> getTenantId(@RequestParam("token") String token) {
try {
return Result.data(userService.getTenantId(token));
} catch (Exception e) {
return Result.error(e.getMessage());
}
}
@GetMapping("/private/menu/getRouter") @GetMapping("/private/menu/getRouter")

View File

@@ -11,6 +11,16 @@ spring:
main: main:
allow-bean-definition-overriding: true allow-bean-definition-overriding: true
headless: true headless: true
cloud:
loadbalancer:
retry:
enabled: false
cache:
enabled: true
cache:
type: caffeine
caffeine:
spec: initialCapacity=100,maximumSize=1000,expireAfterWrite=30s
mybatis: mybatis:
mapper-locations: mapper-locations:
@@ -21,4 +31,11 @@ pagehelper:
helperDialect: mysql helperDialect: mysql
reasonable: true reasonable: true
support-methods-arguments: true support-methods-arguments: true
params: count=countSql params: count=countSql
feign:
client:
config:
default:
connectTimeout: 1000
readTimeout: 3000

View File

@@ -1,102 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
<!-- 应用名称:和统一配置中的项目代码保持一致(小写) -->
<property name="APP_NAME" value="xservice-auth-center"/>
<contextName>${APP_NAME}</contextName>
<!--日志文件保留天数 -->
<property name="LOG_MAX_HISTORY" value="30"/>
<!--应用日志文件保存路径 -->
<!--在没有定义${LOG_HOME}系统变量的时候,可以设置此本地变量。提交测试、上线时,要将其注释掉,使用系统变量。 -->
<property name="LOG_HOME" value="logs/${APP_NAME}"/>
<!--<property name="LOG_HOME" msg="/home/logs/${APP_NAME}" />-->
<!--控制台输出appender-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<!--设置输出格式-->
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期%thread表示线程名%-5level级别从左显示5个字符宽度%msg日志消息%n是换行符-->
<pattern>%boldGreen(%contextName): %boldCyan(%d{yyyy-MM-dd HH:mm:ss:SSS}) %highlight([%c]) %boldMagenta([%t]) %boldCyan([%L]) %highlight([traceId:%X{traceId:-},spanId:%X{spanId:-},localIp:%X{localIp:-}]) %boldGreen([%p]) - %msg%n
</pattern>
<!--设置编码-->
<charset>UTF-8</charset>
</encoder>
</appender>
<!-- 按照每天生成日志文件:主项目日志 -->
<appender name="APP_DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名 -->
<FileNamePattern>${LOG_HOME}/debug-%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数 -->
<MaxHistory>${LOG_MAX_HISTORY}</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期%c类名%t表示线程名%L行 %p日志级别 %msg日志消息%n是换行符 -->
<pattern>%contextName: %d{yyyy-MM-dd HH:mm:ss.SSS} [%c][%t][%L][%p] [traceId:%X{traceId:-},spanId:%X{spanId:-},localIp:%X{localIp:-}] - %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
<!-- 此日志文件只记录debug级别的 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>debug</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 按照每天生成日志文件:主项目日志 -->
<appender name="APP_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名 -->
<FileNamePattern>${LOG_HOME}/info-%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数 -->
<MaxHistory>${LOG_MAX_HISTORY}</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期%c类名%t表示线程名%L行 %p日志级别 %msg日志消息%n是换行符 -->
<pattern>%contextName: %d{yyyy-MM-dd HH:mm:ss.SSS} [%c][%t][%L][%p] [traceId:%X{traceId:-},spanId:%X{spanId:-},localIp:%X{localIp:-}] - %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
<!-- 此日志文件只记录info级别的 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>info</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 按照每天生成日志文件:主项目日志 -->
<appender name="APP_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名 -->
<FileNamePattern>${LOG_HOME}/error-%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数 -->
<MaxHistory>${LOG_MAX_HISTORY}</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期%c类名%t表示线程名%L行 %p日志级别 %msg日志消息%n是换行符 -->
<pattern>%contextName: %d{yyyy-MM-dd HH:mm:ss.SSS} [%c][%t][%L][%p] [traceId:%X{traceId:-},spanId:%X{spanId:-},localIp:%X{localIp:-}] - %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
<!-- 此日志文件只记录error级别的 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>error</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!--日志输出到文件-->
<root level="info">
<appender-ref ref="APP_DEBUG"/>
<appender-ref ref="APP_INFO"/>
<appender-ref ref="APP_ERROR"/>
<appender-ref ref="console"/>
</root>
<!-- mybatis 日志级别 -->
<logger name="com.xiang" level="debug"/>
</configuration>

View File

@@ -1,9 +1,11 @@
package com.xiang.xservice.auth.service.entity; package com.xiang.xservice.auth.service.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@@ -20,6 +22,7 @@ public class XMenuDO {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** 菜单ID */ /** 菜单ID */
@TableId
private Long menuId; private Long menuId;
/** 菜单名称 */ /** 菜单名称 */

View File

@@ -21,13 +21,6 @@ public interface XUserMapper extends BaseMapper<XUser> {
*/ */
XUser selectByUsername(String username); XUser selectByUsername(String username);
/**
* 批量插入
* @param list
* @return
*/
int insertBatch(List<XUser> list);
/** /**
* 查询用户列表 * 查询用户列表
* @param user * @param user
@@ -42,12 +35,6 @@ public interface XUserMapper extends BaseMapper<XUser> {
*/ */
XUser getUserById(Long id); XUser getUserById(Long id);
/**
* 编辑用户
* @param user
* @return
*/
int update(XUser user);
/** /**
* 批量删除 * 批量删除

View File

@@ -165,7 +165,7 @@ public class XUserServiceImpl implements XUserService {
// 4. db 存储token // 4. db 存储token
user.setToken(token); user.setToken(token);
user.setRefreshToken(refreshToken); user.setRefreshToken(refreshToken);
userMapper.update(user); userMapper.updateById(user);
return loginResp; return loginResp;
} }
@@ -257,7 +257,7 @@ public class XUserServiceImpl implements XUserService {
user.setCreateTime(request.getDateTime()); user.setCreateTime(request.getDateTime());
user.setUpdateBy(request.getOperator()); user.setUpdateBy(request.getOperator());
user.setUpdateTime(request.getDateTime()); user.setUpdateTime(request.getDateTime());
return userMapper.update(user) > 0; return userMapper.updateById(user) > 0;
} }
@Override @Override
@@ -343,7 +343,7 @@ public class XUserServiceImpl implements XUserService {
// 更新 Redis 和 DB // 更新 Redis 和 DB
redisService.set(RedisConstant.LOGIN_TOKEN + request.getUsername(), newToken, 3, TimeUnit.HOURS); redisService.set(RedisConstant.LOGIN_TOKEN + request.getUsername(), newToken, 3, TimeUnit.HOURS);
user.setToken(newToken); user.setToken(newToken);
userMapper.update(user); userMapper.updateById(user);
LoginResp loginResp = new LoginResp(); LoginResp loginResp = new LoginResp();
loginResp.setToken(newToken); loginResp.setToken(newToken);
loginResp.setUsername(request.getUsername()); loginResp.setUsername(request.getUsername());
@@ -358,7 +358,7 @@ public class XUserServiceImpl implements XUserService {
throw new BusinessException(Code01UserErrorCode.USER_NOT_EXISTS); throw new BusinessException(Code01UserErrorCode.USER_NOT_EXISTS);
} }
user.setStatus(status); user.setStatus(status);
return userMapper.update(user) > 0; return userMapper.updateById(user) > 0;
} }
@Override @Override
@@ -391,6 +391,6 @@ public class XUserServiceImpl implements XUserService {
} }
String encodePwd = passwordEncoder.encode(password); String encodePwd = passwordEncoder.encode(password);
user.setPassword(encodePwd); user.setPassword(encodePwd);
return userMapper.update(user) > 0; return userMapper.updateById(user) > 0;
} }
} }

View File

@@ -44,40 +44,11 @@
token, token,
refresh_token refresh_token
</sql> </sql>
<insert id="insertBatch">
insert into x_user(name, username, password, email, phone, status, tenant_id) VALUES
<foreach collection="list" item="item" separator=",">
(#{item.name}, #{item.username}, #{item.password}, #{item.email}, #{item.phone}, #{item.status}, #{item.tenantId})
</foreach>
</insert>
<update id="delete" > <update id="del" >
update x_user set del_flag = 1 where id = #{id} update x_user set del_flag = 1 where id = #{id}
</update> </update>
<update id="update" parameterType="com.xiang.xservice.auth.service.entity.XUser">
UPDATE x_user
<set>
<if test="null != name and '' != name">name = #{name},</if>
<if test="null != username and '' != username">username = #{username},</if>
<if test="null != password and '' != password">password = #{password},</if>
<if test="null != email and '' != email">email = #{email},</if>
<if test="null != phone and '' != phone">phone = #{phone},</if>
<if test="null != avatar and '' != avatar">avatar = #{avatar},</if>
<if test="null != loginIp and '' != loginIp">login_ip = #{loginIp},</if>
<if test="null != loginDate ">login_date = #{loginDate},</if>
<if test="null != delFlag ">del_flag = #{delFlag},</if>
<if test="null != createBy and '' != createBy">create_by = #{createBy},</if>
<if test="null != createTime ">create_time = #{createTime},</if>
<if test="null != updateBy and '' != updateBy">update_by = #{updateBy},</if>
<if test="null != updateTime ">update_time = #{updateTime},</if>
<if test="null != tenantId ">tenant_id = #{tenantId},</if>
<if test="null != token and '' != token ">token = #{token},</if>
<if test="null != refreshToken and '' != refreshToken ">refresh_token = #{refreshToken},</if>
<if test="status != null">status = #{status}</if>
</set>
WHERE id = #{id}
</update>
<update id="deleteBatch"> <update id="deleteBatch">
update x_user set del_flag = 1, update_time = #{time}, update_by = #{operator} where id in update x_user set del_flag = 1, update_time = #{time}, update_by = #{operator} where id in
<foreach collection="ids" item="id" open="(" close=")" separator=","> <foreach collection="ids" item="id" open="(" close=")" separator=",">