feat: implement biomarker models, reference rules, and data seeding logic

This commit is contained in:
2025-12-19 13:37:55 +05:30
parent 2b02470957
commit baccbee706
13 changed files with 2546 additions and 73 deletions

View File

@@ -4,7 +4,7 @@ use sea_orm::{ConnectionTrait, Database, DatabaseConnection, DbBackend, DbErr, S
use sea_orm::sea_query::SqliteQueryBuilder;
use crate::config::Config;
use crate::models::bio::{biomarker_entry, biomarker_type};
use crate::models::bio::{biomarker, biomarker_category, biomarker_entry, biomarker_reference_rule};
use crate::models::user::{role, session, user};
/// Connect to the SQLite database.
@@ -26,10 +26,12 @@ pub async fn run_migrations(db: &DatabaseConnection) -> Result<(), DbErr> {
// Create table statements (order matters for foreign keys)
let statements = vec![
schema.create_table_from_entity(role::Entity), // roles first
schema.create_table_from_entity(user::Entity), // users references roles
schema.create_table_from_entity(role::Entity),
schema.create_table_from_entity(user::Entity),
schema.create_table_from_entity(session::Entity),
schema.create_table_from_entity(biomarker_type::Entity),
schema.create_table_from_entity(biomarker_category::Entity),
schema.create_table_from_entity(biomarker::Entity),
schema.create_table_from_entity(biomarker_reference_rule::Entity),
schema.create_table_from_entity(biomarker_entry::Entity),
];