41 lines
1.4 KiB
Rust
41 lines
1.4 KiB
Rust
use crate::models::server;
|
|
use crate::routes::server::dto::{CreateServerRequest, ServerResponse, UpdateServerRequest};
|
|
use sea_orm::Set;
|
|
use uuid::Uuid;
|
|
|
|
pub fn server_model_to_server_response(model: server::Model) -> ServerResponse {
|
|
ServerResponse {
|
|
id: model.id,
|
|
name: model.name,
|
|
is_default: model.is_default,
|
|
created_at: model.created_at,
|
|
updated_at: model.updated_at,
|
|
default_server_permissions: model.default_server_permissions,
|
|
default_channel_permissions: model.default_channel_permissions,
|
|
default_voice_permissions: model.default_voice_permissions,
|
|
}
|
|
}
|
|
|
|
pub fn create_request_to_am(req: CreateServerRequest) -> server::ActiveModel {
|
|
server::ActiveModel {
|
|
id: Set(Uuid::new_v4()),
|
|
name: Set(req.name),
|
|
password: Set(req.password),
|
|
is_default: Set(req.is_default),
|
|
..Default::default()
|
|
}
|
|
}
|
|
|
|
pub fn update_request_to_am(id: Uuid, req: UpdateServerRequest) -> server::ActiveModel {
|
|
server::ActiveModel {
|
|
id: Set(id),
|
|
name: Set(req.name),
|
|
password: Set(req.password),
|
|
is_default: Set(req.is_default),
|
|
default_server_permissions: Set(req.default_server_permissions),
|
|
default_channel_permissions: Set(req.default_channel_permissions),
|
|
default_voice_permissions: Set(req.default_voice_permissions),
|
|
..Default::default()
|
|
}
|
|
}
|