refactor: 重构日志记录方式并优化部分功能
All checks were successful
Sakura-Miki-build / Explore-Gitea-Actions (push) Successful in 1m30s
All checks were successful
Sakura-Miki-build / Explore-Gitea-Actions (push) Successful in 1m30s
- 移除各文件中的 Logger静态实例 - 在 util包下新增 LogUtil.kt 文件,提供统一的日志记录扩展属性 - 优化部分服务类中的逻辑结构 - 调整数据库查询方式,使用 KtQueryWrapper 替代 LambdaQueryWrapper
This commit is contained in:
parent
ceaebd100f
commit
4bc526d48c
@ -1,12 +1,11 @@
|
||||
package info.alinadace.sakuramiki.configuration
|
||||
|
||||
import info.alinadace.sakuramiki.service.Service
|
||||
import info.alinadace.sakuramiki.util.log
|
||||
import io.github.kloping.qqbot.Starter
|
||||
import io.github.kloping.qqbot.api.event.Event
|
||||
import io.github.kloping.qqbot.impl.ListenerHost
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
import org.springframework.boot.context.event.ApplicationReadyEvent
|
||||
import org.springframework.context.event.EventListener
|
||||
import kotlin.reflect.KClass
|
||||
@ -25,8 +24,6 @@ class Initialization {
|
||||
@Resource
|
||||
lateinit var starter: Starter
|
||||
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
|
||||
@EventListener(ApplicationReadyEvent::class)
|
||||
suspend fun initFunction() {
|
||||
val eventListener = object : ListenerHost() {
|
||||
|
@ -2,13 +2,12 @@ package info.alinadace.sakuramiki.service
|
||||
|
||||
import info.alinadace.sakuramiki.annotation.BotFunction
|
||||
import info.alinadace.sakuramiki.configuration.BotConfig
|
||||
import info.alinadace.sakuramiki.util.log
|
||||
import io.github.kloping.qqbot.api.v2.FriendMessageEvent
|
||||
import io.github.kloping.qqbot.api.v2.GroupMessageEvent
|
||||
import io.github.kloping.qqbot.api.v2.MessageV2Event
|
||||
import io.github.kloping.qqbot.entities.ex.PlainText
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
/**
|
||||
* @author Kane
|
||||
@ -17,9 +16,7 @@ import org.slf4j.LoggerFactory
|
||||
@BotFunction(FriendMessageEvent::class, GroupMessageEvent::class)
|
||||
class ExampleService : Service<MessageV2Event> {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
|
||||
@Resource
|
||||
lateinit var botConfig: BotConfig
|
||||
|
@ -6,12 +6,11 @@ import info.alinadace.sakuramiki.annotation.BotFunction
|
||||
import info.alinadace.sakuramiki.service.Service
|
||||
import info.alinadace.sakuramiki.service.mfa.domain.MFA
|
||||
import info.alinadace.sakuramiki.service.mfa.mapper.MFAMapper
|
||||
import info.alinadace.sakuramiki.util.log
|
||||
import io.github.kloping.qqbot.api.v2.FriendMessageEvent
|
||||
import io.github.kloping.qqbot.entities.ex.Image
|
||||
import io.github.kloping.qqbot.entities.ex.PlainText
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
import java.io.ByteArrayInputStream
|
||||
|
||||
/**
|
||||
@ -22,10 +21,6 @@ import java.io.ByteArrayInputStream
|
||||
@BotFunction(FriendMessageEvent::class)
|
||||
class MFABindService : Service<FriendMessageEvent> {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
@Resource
|
||||
private lateinit var mapper: MFAMapper
|
||||
|
||||
@ -41,7 +36,7 @@ class MFABindService : Service<FriendMessageEvent> {
|
||||
if (message[0] is PlainText && message[0].toString().startsWith("#mfa")){
|
||||
if (message.size == 1){
|
||||
val split = message[0].toString().split(" ")
|
||||
if (split.size != 4) {
|
||||
if (split.size < 4) {
|
||||
return false
|
||||
}
|
||||
if (split[1] != "bind"){
|
||||
@ -64,8 +59,14 @@ class MFABindService : Service<FriendMessageEvent> {
|
||||
if (message[0] is PlainText && message[0].toString().startsWith("#mfa")){
|
||||
if (message.size == 1){
|
||||
val split = message[0].toString().split(" ")
|
||||
val mfa = MFA(event.friend.id, split[2], split[3])
|
||||
var arg = ""
|
||||
for (argIndex in 3..<split.size){
|
||||
arg += split[argIndex]
|
||||
}
|
||||
arg.trim()
|
||||
val mfa = MFA(event.friend.id, split[2], arg)
|
||||
mapper.insert(mfa)
|
||||
log.info("${event.friend.id}绑定成功 - secret: ${mfa.secret}")
|
||||
event.send("绑定成功")
|
||||
return
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
package info.alinadace.sakuramiki.service.mfa
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
|
||||
import com.baomidou.mybatisplus.extension.kotlin.KtQueryWrapper
|
||||
import info.alinadace.sakuramiki.annotation.BotFunction
|
||||
import info.alinadace.sakuramiki.service.Service
|
||||
import info.alinadace.sakuramiki.service.mfa.domain.MFA
|
||||
@ -9,8 +9,6 @@ import info.alinadace.sakuramiki.util.MFAUtil
|
||||
import io.github.kloping.qqbot.api.v2.FriendMessageEvent
|
||||
import io.github.kloping.qqbot.entities.ex.PlainText
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
/**
|
||||
* MFA生成服务
|
||||
@ -20,9 +18,7 @@ import org.slf4j.LoggerFactory
|
||||
@BotFunction(FriendMessageEvent::class)
|
||||
class MFAGenerateService : Service<FriendMessageEvent> {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
|
||||
@Resource
|
||||
private lateinit var mapper: MFAMapper
|
||||
@ -50,9 +46,10 @@ class MFAGenerateService : Service<FriendMessageEvent> {
|
||||
override fun active(event: FriendMessageEvent) {
|
||||
val message = event.message
|
||||
if (message[0] is PlainText && message[0].toString().startsWith("mfa")){
|
||||
if (message.size == 1){
|
||||
val command = message[0].toString().split(" ")
|
||||
if (command.size == 1){
|
||||
val mfa = mapper.selectOne(
|
||||
LambdaQueryWrapper<MFA>()
|
||||
KtQueryWrapper(MFA::class.java)
|
||||
.eq(MFA::uid, event.friend.id)
|
||||
.eq(MFA::name, "default")
|
||||
)
|
||||
@ -63,16 +60,14 @@ class MFAGenerateService : Service<FriendMessageEvent> {
|
||||
event.send(MFAUtil.generate(mfa.secret, 30))
|
||||
return
|
||||
}
|
||||
if (message.size == 2){
|
||||
val split = message[0].toString().split(" ")
|
||||
if (split.size == 2){
|
||||
if (command.size == 2){
|
||||
val mfa = mapper.selectOne(
|
||||
LambdaQueryWrapper<MFA>()
|
||||
KtQueryWrapper(MFA::class.java)
|
||||
.eq(MFA::uid, event.friend.id)
|
||||
.eq(MFA::name, split[1])
|
||||
.eq(MFA::name, command[1])
|
||||
)
|
||||
if (mfa == null){
|
||||
event.send("您还没有绑定${split[1]} MFA,使用 #mfa bind ${split[1]} <secret> 绑定${split[1]} MFA")
|
||||
event.send("您还没有绑定${command[1]} MFA,使用 #mfa bind ${command[1]} <secret> 绑定${command[1]} MFA")
|
||||
return
|
||||
}
|
||||
event.send(MFAUtil.generate(mfa.secret, 30))
|
||||
@ -80,5 +75,4 @@ class MFAGenerateService : Service<FriendMessageEvent> {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -6,14 +6,13 @@ import info.alinadace.sakuramiki.service.Service
|
||||
import info.alinadace.sakuramiki.service.randomphoto.domain.FileList
|
||||
import info.alinadace.sakuramiki.service.randomphoto.domain.SingleFile
|
||||
import info.alinadace.sakuramiki.util.ImageUtil
|
||||
import info.alinadace.sakuramiki.util.log
|
||||
import io.github.kloping.qqbot.api.v2.FriendMessageEvent
|
||||
import io.github.kloping.qqbot.api.v2.GroupMessageEvent
|
||||
import io.github.kloping.qqbot.api.v2.MessageV2Event
|
||||
import io.github.kloping.qqbot.entities.ex.Image
|
||||
import io.github.kloping.qqbot.entities.ex.PlainText
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
import java.io.ByteArrayInputStream
|
||||
|
||||
/**
|
||||
@ -23,10 +22,6 @@ import java.io.ByteArrayInputStream
|
||||
@BotFunction(FriendMessageEvent::class, GroupMessageEvent::class)
|
||||
class RandomPhotoService : Service<MessageV2Event> {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
@Resource
|
||||
lateinit var alistService: AlistService
|
||||
|
||||
|
@ -59,7 +59,7 @@ class ImageUtil {
|
||||
|
||||
fun download(url: String): ByteArray? {
|
||||
val request = Request.Builder().get().url(url).build()
|
||||
return okHttpClient.newCall(request).execute().body?.bytes();
|
||||
return okHttpClient.newCall(request).execute().body?.bytes()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
14
src/main/kotlin/info/alinadace/sakuramiki/util/LogUtil.kt
Normal file
14
src/main/kotlin/info/alinadace/sakuramiki/util/LogUtil.kt
Normal file
@ -0,0 +1,14 @@
|
||||
package info.alinadace.sakuramiki.util
|
||||
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
/**
|
||||
* Log 扩展
|
||||
* @author Kane
|
||||
* @since 2025/3/20 17:50
|
||||
*/
|
||||
|
||||
inline val <reified T : Any> T.log: Logger
|
||||
get() = LoggerFactory.getLogger(T::class.java)
|
||||
|
Loading…
Reference in New Issue
Block a user