rocie_client/models/user.rs
1// rocie - An enterprise grocery management system
2//
3// Copyright (C) 2026 Benedikt Peetz <benedikt.peetz@b-peetz.de>
4// SPDX-License-Identifier: GPL-3.0-or-later
5//
6// This file is part of Rocie.
7//
8// You should have received a copy of the License along with this program.
9// If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
10
11/*
12 * rocie-server
13 *
14 * An enterprise grocery management system - server
15 *
16 * The version of the OpenAPI document: 0.1.0
17 * Contact: benedikt.peetz@b-peetz.de
18 * Generated by: https://openapi-generator.tech
19 */
20
21use crate::models;
22use serde::{Deserialize, Serialize};
23
24/// User : The definition of an rocie user.
25#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
26pub struct User {
27 /// An description of this user.
28 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
29 pub description: Option<String>,
30 /// The unique ID for this user.
31 #[serde(rename = "id")]
32 pub id: models::UserId,
33 /// The user-displayed name of this user.
34 #[serde(rename = "name")]
35 pub name: String,
36 /// The hash of the user's password.
37 #[serde(rename = "password_hash")]
38 pub password_hash: models::PasswordHash,
39}
40
41impl User {
42 /// The definition of an rocie user.
43 pub fn new(id: models::UserId, name: String, password_hash: models::PasswordHash) -> User {
44 User {
45 description: None,
46 id,
47 name,
48 password_hash,
49 }
50 }
51}