mirror of
https://github.com/fawney19/Aether.git
synced 2026-10-08 02:17:46 +08:00
refactor(runtime): 优化管理端摘要查询与维护聚合链路
- 为 provider catalog key 和 video task 列表增加 summary/page 查询与排序能力,减少列表场景读取重字段 - 将多处 SQL 结果读取改为流式收集,降低 `fetch_all` 的内存占用 - 把日/小时统计、钱包日用量等维护任务改为数据库侧 `CTE + upsert` 聚合 - 修复视频任务轮询更新时从本地 snapshot 回填稀疏字段,避免 `prompt` 和请求体信息丢失
This commit is contained in:
@@ -55,6 +55,15 @@ impl<'a> AdminAppState<'a> {
|
||||
crate::async_task::read_video_task_page(self.app, filter, page, page_size).await
|
||||
}
|
||||
|
||||
pub(crate) async fn read_video_task_page_summary(
|
||||
&self,
|
||||
filter: &aether_data_contracts::repository::video_tasks::VideoTaskQueryFilter,
|
||||
page: usize,
|
||||
page_size: usize,
|
||||
) -> Result<crate::async_task::VideoTaskPageResponse, GatewayError> {
|
||||
crate::async_task::read_video_task_page_summary(self.app, filter, page, page_size).await
|
||||
}
|
||||
|
||||
pub(crate) async fn read_video_task_stats(
|
||||
&self,
|
||||
filter: &aether_data_contracts::repository::video_tasks::VideoTaskQueryFilter,
|
||||
|
||||
@@ -69,6 +69,18 @@ impl<'a> AdminAppState<'a> {
|
||||
.await
|
||||
}
|
||||
|
||||
pub(crate) async fn list_provider_catalog_key_summaries_by_provider_ids(
|
||||
&self,
|
||||
provider_ids: &[String],
|
||||
) -> Result<
|
||||
Vec<aether_data_contracts::repository::provider_catalog::StoredProviderCatalogKey>,
|
||||
GatewayError,
|
||||
> {
|
||||
self.app
|
||||
.list_provider_catalog_key_summaries_by_provider_ids(provider_ids)
|
||||
.await
|
||||
}
|
||||
|
||||
pub(crate) async fn list_provider_catalog_keys_by_ids(
|
||||
&self,
|
||||
key_ids: &[String],
|
||||
|
||||
Reference in New Issue
Block a user