chore(db): 冻结推迟模块菜单迁移

This commit is contained in:
iven
2026-05-06 10:30:58 +08:00
parent f7bf5a86ea
commit 263bba264a
2 changed files with 65 additions and 0 deletions

View File

@@ -123,6 +123,7 @@ mod m20260505_000120_create_ai_knowledge_rules;
mod m20260505_000121_create_ai_knowledge_references;
mod m20260505_000122_create_ai_knowledge_guides;
mod m20260505_000123_update_ai_prompts_system_instruction;
mod m20260505_000124_freeze_deferred_menus;
pub struct Migrator;
@@ -253,6 +254,7 @@ impl MigratorTrait for Migrator {
Box::new(m20260505_000121_create_ai_knowledge_references::Migration),
Box::new(m20260505_000122_create_ai_knowledge_guides::Migration),
Box::new(m20260505_000123_update_ai_prompts_system_instruction::Migration),
Box::new(m20260505_000124_freeze_deferred_menus::Migration),
]
}
}

View File

@@ -0,0 +1,63 @@
//! 冻结推迟模块的菜单 — 将 visible 设为 false
use sea_orm_migration::prelude::*;
#[derive(DeriveMigrationName)]
pub struct Migration;
#[async_trait::async_trait]
impl MigrationTrait for Migration {
async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> {
let db = manager.get_connection();
let frozen_paths = [
"/health/care-plans",
"/health/shifts",
"/health/family-proxy",
"/health/medications",
"/health/dialysis",
"/health/schedules",
"/health/appointments",
];
for path in &frozen_paths {
db.execute(sea_orm::Statement::from_string(
sea_orm::DatabaseBackend::Postgres,
format!(
"UPDATE menus SET visible = false WHERE path = '{}'",
path
),
))
.await?;
}
Ok(())
}
async fn down(&self, manager: &SchemaManager) -> Result<(), DbErr> {
let db = manager.get_connection();
let frozen_paths = [
"/health/care-plans",
"/health/shifts",
"/health/family-proxy",
"/health/medications",
"/health/dialysis",
"/health/schedules",
"/health/appointments",
];
for path in &frozen_paths {
db.execute(sea_orm::Statement::from_string(
sea_orm::DatabaseBackend::Postgres,
format!(
"UPDATE menus SET visible = true WHERE path = '{}'",
path
),
))
.await?;
}
Ok(())
}
}