1 use crate::newtypes::{PersonBlockId, PersonId};
2 use serde::{Deserialize, Serialize};
4 #[cfg(feature = "full")]
5 use crate::schema::person_block;
7 #[derive(Clone, PartialEq, Eq, Debug, Serialize, Deserialize)]
8 #[cfg_attr(feature = "full", derive(Queryable, Associations, Identifiable))]
9 #[cfg_attr(feature = "full", diesel(belongs_to(crate::source::person::Person)))]
10 #[cfg_attr(feature = "full", diesel(table_name = person_block))]
11 pub struct PersonBlock {
12 pub id: PersonBlockId,
13 pub person_id: PersonId,
14 pub target_id: PersonId,
15 pub published: chrono::NaiveDateTime,
18 #[cfg_attr(feature = "full", derive(Insertable, AsChangeset))]
19 #[cfg_attr(feature = "full", diesel(table_name = person_block))]
20 pub struct PersonBlockForm {
21 pub person_id: PersonId,
22 pub target_id: PersonId,