/
aristeh
/
gui
Обзор
Документация
Войти
/
aristeh
/
gui
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/models/mod.rs
76 строк
3 KB
aristeh
отправка сообщений
11 фев 2026, 14:05
11 фев 2026, 14:05
e65862e
Код
Авторство
О чём код?
use serde::{Deserialize, Serialize}; // use chrono::{DateTime, NaiveDateTime, Utc}; // use uuid::Uuid; /// QueryRequest - Структура запроса к базе данных. #[derive(Debug, Clone, Serialize, Deserialize)] pub struct QueryRequest { pub query_id: String, pub sql: String, pub parameters: Option<serde_json::Value>, pub tip: String, // форма, чтение, запись, скрипт pub response_topic: String, pub data: Option<Vec<Vec<String>>>, } /// QueryResult - Структура результата запроса к базе данных. #[allow(dead_code)] #[derive(Debug, Clone, Serialize, Deserialize)] pub struct QueryResult { pub query_id: String, pub tip: String, // форма, чтение, запись, скрипт pub data: Option<Vec<Vec<String>>>, // результат запроса pub columns: Option<Vec<String>>, pub row_count: usize, pub execution_time_ms: f64, pub error_message: Option<String>, } /// TreeNode - Структура узла дерева. /// level - уровень вложенности узла в дереве /// parent - родительский узел в дереве /// is_leaf - является ли узел листом #[derive(Debug, Clone)] pub struct TreeNode { pub id: String, pub parent: Option<String>, pub name: String, pub level: usize, pub is_leaf: bool, } /// Структура для результата блока данных формы #[allow(dead_code)] pub struct FormBlockData { pub block_name: String, pub table: Vec<Vec<String>>, // [ [field_names...], [row1...], ... ] } #[derive(Debug, Clone, Serialize, Deserialize)] pub struct ServerRequest { pub id: String, pub func_name: String, pub params: Vec<Vec<String>>, // [ [field_names...], [row1...], ... ] pub response_topic: Option<String>, } #[derive(Debug, Clone, Serialize, Deserialize)] pub struct ServerResult { pub id: String, pub data: Option<Vec<Vec<String>>>, } /// Message - Структура сообщения между клиентом и сервером. /// QueryRequest - запрос на выполнение SQL-запроса /// QueryResult - результат выполнения SQL-запроса /// ServerRequest - запрос на выполнение серверной операции /// ServerResult - результат выполнения серверной операции #[allow(dead_code)] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] pub enum Message { QueryRequest(QueryRequest), QueryResult(QueryResult), ServerRequest(ServerRequest), ServerResult(ServerResult), }