diff --git a/mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenService.java b/mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenService.java index 958f7177..7e513e7d 100644 --- a/mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenService.java +++ b/mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import vip.mate.auth.pat.repository.PersonalAccessTokenMapper; import vip.mate.exception.MateClawException; import java.nio.charset.StandardCharsets; diff --git a/mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenMapper.java b/mateclaw-server/src/main/java/vip/mate/auth/pat/repository/PersonalAccessTokenMapper.java similarity index 56% rename from mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenMapper.java rename to mateclaw-server/src/main/java/vip/mate/auth/pat/repository/PersonalAccessTokenMapper.java index a30dcefd..23dc8a28 100644 --- a/mateclaw-server/src/main/java/vip/mate/auth/pat/PersonalAccessTokenMapper.java +++ b/mateclaw-server/src/main/java/vip/mate/auth/pat/repository/PersonalAccessTokenMapper.java @@ -1,11 +1,17 @@ -package vip.mate.auth.pat; +package vip.mate.auth.pat.repository; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; +import vip.mate.auth.pat.PersonalAccessTokenEntity; /** * RFC-03 Lane I1 — MyBatis Plus mapper for {@link PersonalAccessTokenEntity}. * + *
Located under {@code repository} so {@code @MapperScan("vip.mate.**.repository")} + * (declared on {@code MateClawApplication}) discovers it; outside that + * package Spring won't auto-register the mapper bean and constructor + * injection into {@code PersonalAccessTokenService} fails at startup. + * *
Lookup queries live in the service layer via {@code LambdaQueryWrapper}; * the only custom requirement is uniqueness on {@code token_hash}, which is * enforced by the database (UNIQUE index in V76 migration).