fix device group cache

Signed-off-by: 21pages <sunboeasy@gmail.com>
This commit is contained in:
21pages 2025-02-14 16:45:00 +08:00
parent b237338eb3
commit a8efd320e6

View File

@ -1965,6 +1965,16 @@ pub struct GroupUser {
pub name: String,
}
#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct DeviceGroup {
#[serde(
default,
deserialize_with = "deserialize_string",
skip_serializing_if = "String::is_empty"
)]
pub name: String,
}
#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct Group {
#[serde(
@ -1977,6 +1987,8 @@ pub struct Group {
pub users: Vec<GroupUser>,
#[serde(default, deserialize_with = "deserialize_vec_grouppeer")]
pub peers: Vec<GroupPeer>,
#[serde(default, deserialize_with = "deserialize_vec_devicegroup")]
pub device_groups: Vec<DeviceGroup>,
}
impl Group {
@ -2048,6 +2060,7 @@ deserialize_default!(deserialize_vec_abpeer, Vec<AbPeer>);
deserialize_default!(deserialize_vec_abentry, Vec<AbEntry>);
deserialize_default!(deserialize_vec_groupuser, Vec<GroupUser>);
deserialize_default!(deserialize_vec_grouppeer, Vec<GroupPeer>);
deserialize_default!(deserialize_vec_devicegroup, Vec<DeviceGroup>);
deserialize_default!(deserialize_keypair, KeyPair);
deserialize_default!(deserialize_size, Size);
deserialize_default!(deserialize_hashmap_string_string, HashMap<String, String>);