文档更新与代码优化
- 移除了过时的MapperScan注解,调整了相关服务的注解位置,以适应新的映射器配置。 - 对服务类中的日志对象创建方式进行了微调,采用companion object模式进行优化。 - 删除了与喝水提醒服务相关的多个文件,可能由于这些功能不再需要或被重构到其他文件中。
This commit is contained in:
parent
c141438048
commit
9755545639
@ -5,7 +5,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
import org.springframework.boot.runApplication
|
||||
|
||||
@SpringBootApplication
|
||||
@MapperScan("info.alinadace.sakuramiki.service.**.mapper")
|
||||
@MapperScan("info.alinadace.sakuramiki.service")
|
||||
class SakuramikiApplication
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
|
@ -29,7 +29,7 @@ class BotConfiguration {
|
||||
|
||||
@Bean("functionMap")
|
||||
fun botFunctionMap(services: List<Service<out Event>>): HashMap<KClass<out Event>, MutableList<Service<out Event>>> {
|
||||
val eventMap = HashMap<KClass<out Event>, MutableList<Service<out Event>>>();
|
||||
val eventMap = HashMap<KClass<out Event>, MutableList<Service<out Event>>>()
|
||||
for (service in services) {
|
||||
val clazz = service::class
|
||||
val annotations = clazz.annotations
|
||||
|
@ -23,7 +23,7 @@ class Initialization {
|
||||
lateinit var functionMap: HashMap<KClass<out Event>, MutableList<Service<Event>>>
|
||||
|
||||
@Resource
|
||||
lateinit var starter: Starter;
|
||||
lateinit var starter: Starter
|
||||
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
|
||||
|
@ -17,10 +17,12 @@ import org.slf4j.LoggerFactory
|
||||
@BotFunction(FriendMessageEvent::class, GroupMessageEvent::class)
|
||||
class ExampleService : Service<MessageV2Event> {
|
||||
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
@Resource
|
||||
lateinit var botConfig: BotConfig;
|
||||
lateinit var botConfig: BotConfig
|
||||
|
||||
/**
|
||||
* 服务入口
|
||||
@ -39,6 +41,7 @@ class ExampleService : Service<MessageV2Event> {
|
||||
* 服务行为
|
||||
*/
|
||||
override fun active(event: MessageV2Event) {
|
||||
log.info("ExampleService: sender:{}", event.sender.id)
|
||||
event.send("测试成功")
|
||||
}
|
||||
}
|
||||
|
@ -1,66 +0,0 @@
|
||||
package info.alinadace.sakuramiki.service.drink_water
|
||||
|
||||
import com.baomidou.mybatisplus.extension.kotlin.KtQueryWrapper
|
||||
import info.alinadace.sakuramiki.service.Service
|
||||
import info.alinadace.sakuramiki.service.drink_water.domain.DrinkWaterUser
|
||||
import info.alinadace.sakuramiki.service.drink_water.mapper.DrinkWaterMapper
|
||||
import io.github.kloping.qqbot.api.v2.FriendMessageEvent
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
/**
|
||||
* 定时喝水提醒关闭服务
|
||||
* @author Kane
|
||||
* @since 2024/9/18 13:27
|
||||
*/
|
||||
//@BotFunction(FriendMessageEvent::class)
|
||||
@Deprecated("限制无法实现")
|
||||
class DisableService : Service<FriendMessageEvent> {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
|
||||
@Resource
|
||||
lateinit var drinkWaterMapper: DrinkWaterMapper
|
||||
|
||||
/**
|
||||
* 服务入口
|
||||
*/
|
||||
override fun entrance(event: FriendMessageEvent): Boolean {
|
||||
val chain = event.message
|
||||
// val filter = chain.filter { it !is MessageSource }
|
||||
// if (filter.size == 1 && filter[0] is PlainText) {
|
||||
// if (filter[0].contentToString() == "关闭喝水提醒") {
|
||||
// return true
|
||||
// }
|
||||
// }
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
* 服务行为
|
||||
*/
|
||||
override fun active(event: FriendMessageEvent) {
|
||||
log.info("服务关闭请求 - DrinkWater - target:{}", event.sender.id)
|
||||
val one = drinkWaterMapper.selectOne(
|
||||
KtQueryWrapper(DrinkWaterUser())
|
||||
.eq(DrinkWaterUser::botId, event.sender.id)
|
||||
)
|
||||
if (one == null) {
|
||||
// event.subject.sendMessage("服务已关闭 - DrinkWater")
|
||||
log.info("服务已关闭 - DrinkWater - target:{} - 无记录", event.sender.id)
|
||||
return
|
||||
}
|
||||
if (one.enable == DrinkWaterUser.ENABLE) {
|
||||
one.enable = DrinkWaterUser.DISABLE
|
||||
val updateById = drinkWaterMapper.updateById(one)
|
||||
// event.subject.sendMessage("服务已关闭 - DrinkWater")
|
||||
log.info("服务已关闭 - DrinkWater - target:{} - 记录更新 - {}", event.sender.id, updateById)
|
||||
return
|
||||
}
|
||||
// event.subject.sendMessage("服务已关闭 - DrinkWater")
|
||||
}
|
||||
}
|
@ -1,71 +0,0 @@
|
||||
package info.alinadace.sakuramiki.service.drink_water
|
||||
|
||||
import com.baomidou.mybatisplus.extension.kotlin.KtQueryWrapper
|
||||
import info.alinadace.sakuramiki.service.Service
|
||||
import info.alinadace.sakuramiki.service.drink_water.domain.DrinkWaterUser
|
||||
import info.alinadace.sakuramiki.service.drink_water.mapper.DrinkWaterMapper
|
||||
import io.github.kloping.qqbot.api.v2.FriendMessageEvent
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
/**
|
||||
* 定时喝水提醒开启服务
|
||||
* @author Kane
|
||||
* @since 2024/9/18 13:27
|
||||
*/
|
||||
//@BotFunction(FriendMessageEvent::class)
|
||||
@Deprecated("限制无法实现")
|
||||
class EnableService : Service<FriendMessageEvent> {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
@Resource
|
||||
lateinit var drinkWaterMapper: DrinkWaterMapper
|
||||
|
||||
/**
|
||||
* 服务入口
|
||||
*/
|
||||
override fun entrance(event: FriendMessageEvent): Boolean {
|
||||
val chain = event.message
|
||||
// val filter = chain.filter { it !is MessageSource }
|
||||
// if (filter.size == 1 && filter[0] is PlainText) {
|
||||
// if (filter[0].contentToString() == "开启喝水提醒") {
|
||||
// return true
|
||||
// }
|
||||
// }
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
* 服务行为
|
||||
*/
|
||||
override fun active(event: FriendMessageEvent) {
|
||||
log.info("服务开启请求 - DrinkWater - target:{}", event.sender.id)
|
||||
val one = drinkWaterMapper.selectOne(
|
||||
KtQueryWrapper(DrinkWaterUser())
|
||||
.eq(DrinkWaterUser::botId, event.sender.id)
|
||||
)
|
||||
if (one == null) {
|
||||
val let = DrinkWaterUser().apply {
|
||||
// botId = event.sender.id
|
||||
enable = DrinkWaterUser.ENABLE
|
||||
}.let {
|
||||
drinkWaterMapper.insert(it)
|
||||
}
|
||||
// event.subject.sendMessage("服务已开启 - DrinkWater")
|
||||
log.info("服务开启请求 - DrinkWater - target:{} - 记录创建 - {}", event.sender.id, let)
|
||||
return
|
||||
}
|
||||
if (one.enable == DrinkWaterUser.DISABLE) {
|
||||
one.enable = DrinkWaterUser.ENABLE
|
||||
val updateById = drinkWaterMapper.updateById(one)
|
||||
// event.subject.sendMessage("服务已开启 - DrinkWater")
|
||||
log.info("服务开启请求 - DrinkWater - target:{} - 记录更新 - {}", event.sender.id, updateById)
|
||||
return
|
||||
}
|
||||
// event.subject.sendMessage("服务已开启 - DrinkWater")
|
||||
}
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
package info.alinadace.sakuramiki.service.drink_water.domain
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId
|
||||
|
||||
/**
|
||||
* 喝水提醒用户
|
||||
*/
|
||||
class DrinkWaterUser {
|
||||
@TableId
|
||||
var id: Long? = null
|
||||
var botId: Long? = null
|
||||
var enable: Byte? = null
|
||||
|
||||
companion object {
|
||||
const val ENABLE: Byte = 1
|
||||
const val DISABLE: Byte = 0
|
||||
}
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
package info.alinadace.sakuramiki.service.drink_water.mapper
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper
|
||||
import info.alinadace.sakuramiki.service.drink_water.domain.DrinkWaterUser
|
||||
|
||||
/**
|
||||
* 喝水提醒用户Mapper
|
||||
* @author Kane
|
||||
* @since 2024/9/18 13:39
|
||||
*/
|
||||
interface DrinkWaterMapper : BaseMapper<DrinkWaterUser>
|
@ -1,47 +0,0 @@
|
||||
package info.alinadace.sakuramiki.service.drink_water.task
|
||||
|
||||
import com.baomidou.mybatisplus.extension.kotlin.KtQueryWrapper
|
||||
import info.alinadace.sakuramiki.service.drink_water.domain.DrinkWaterUser
|
||||
import info.alinadace.sakuramiki.service.drink_water.mapper.DrinkWaterMapper
|
||||
import jakarta.annotation.Resource
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
/**
|
||||
* 定时喝水提醒服务
|
||||
* @author Kane
|
||||
* @since 2024/9/18 13:59
|
||||
*/
|
||||
//@Service
|
||||
@Deprecated("限制无法实现")
|
||||
class ReminderService {
|
||||
|
||||
companion object {
|
||||
val log: Logger = LoggerFactory.getLogger(this::class.java)
|
||||
}
|
||||
|
||||
// @Resource
|
||||
// lateinit var bot: Bot
|
||||
|
||||
@Resource
|
||||
lateinit var drinkWaterMapper: DrinkWaterMapper
|
||||
|
||||
// @Scheduled(cron = "0 0 0,8-23/2 * * *")
|
||||
suspend fun reminder() {
|
||||
log.info("定时喝水提醒服务 - 开始")
|
||||
val list = drinkWaterMapper.selectList(
|
||||
KtQueryWrapper(DrinkWaterUser())
|
||||
.eq(DrinkWaterUser::enable, DrinkWaterUser.ENABLE)
|
||||
)
|
||||
log.info("定时喝水提醒服务 - 查询结果 - {}", list)
|
||||
list.forEach {
|
||||
if (it.botId == null || it.botId == 0L) {
|
||||
return@forEach
|
||||
}
|
||||
// bot.getFriend(it.botId!!)?.sendMessage("请喝水")
|
||||
log.info("定时喝水提醒服务 - 发送消息 - {}", it.botId)
|
||||
}
|
||||
log.info("定时喝水提醒服务 - 结束")
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user