use crate::common::watch_mode::WatchMode; use sea_orm::entity::prelude::*; use time::OffsetDateTime; use uuid::Uuid; #[sea_orm::model] #[derive(Clone, Debug, PartialEq, Eq, DeriveEntityModel)] #[sea_orm(table_name = "issue_watch")] pub struct Model { #[sea_orm(primary_key, auto_increment = false)] pub id: Uuid, #[sea_orm(unique_key = "issue_user")] pub issue_id: Option, // project 模块暂时移除后保留列,恢复时加回 belongs_to(同 comment/issue_event_line/issue_pin/issue_reaction) #[sea_orm(unique_key = "project_user")] pub project_id: Option, #[sea_orm(unique_key = "issue_user")] #[sea_orm(unique_key = "project_user")] pub user_id: i64, pub mode: WatchMode, pub created_at: OffsetDateTime, pub updated_at: Option, #[sea_orm(belongs_to, from = "issue_id", to = "id")] pub issue: BelongsTo>, #[sea_orm(belongs_to, from = "user_id", to = "uid")] pub user: BelongsTo, } impl ActiveModelBehavior for ActiveModel {}