diff --git a/src/main/kotlin/com/lanyuanxiaoyao/digtal/market/runner/PushRunner.kt b/src/main/kotlin/com/lanyuanxiaoyao/digtal/market/runner/PushRunner.kt index aa2e22a..5772899 100644 --- a/src/main/kotlin/com/lanyuanxiaoyao/digtal/market/runner/PushRunner.kt +++ b/src/main/kotlin/com/lanyuanxiaoyao/digtal/market/runner/PushRunner.kt @@ -4,6 +4,7 @@ import com.lanyuanxiaoyao.digtal.market.ArticleRepository import com.lanyuanxiaoyao.digtal.market.sender.DingtalkSender import jakarta.annotation.Resource import org.slf4j.LoggerFactory +import org.springframework.data.domain.Sort import org.springframework.scheduling.annotation.Scheduled import org.springframework.stereotype.Service @@ -16,12 +17,12 @@ class PushRunner : Runner { @Scheduled(cron = "0 30 9,12,15,18,21 * * ?") override fun run() { - val articles = articleRepository.findAll { root, _, builder -> + val articles = articleRepository.findAll({ root, _, builder -> builder.or( builder.equal(root.get("pushed"), false), builder.isNull(root.get("pushed")), ) - } + }, Sort.by(Sort.Direction.DESC, "createTime")) try { DingtalkSender().send("近期要闻", mapOf("articles" to articles.take(10))) articles.forEach { articleRepository.updatePushedById(it.id, true) }