pub struct AcpAvecMetriquesDto {
pub acp: AcpResponseDto,
pub buildings_count: i32,
pub units_count: i32,
pub declared_units_total: i32,
pub quota_sum: String,
}Expand description
Une ACP avec ses métriques, pour la table « Mes ACP » du syndic.
── Pourquoi un DTO distinct ────────────────────────────────────────────
AcpResponseDto est servi partout : sélecteurs, listes déroulantes, fiches.
Y ajouter quatre agrégats obligerait tous ces appelants à payer quatre
sous-requêtes par ligne pour des nombres qu’ils n’affichent pas.
── Ce que ces nombres disent, et pourquoi ils vont ensemble ───────────
units_count et declared_units_total mesurent des choses différentes —
les lots effectivement encodés, et ceux déclarés à l’acte de base. Les
afficher séparément était déjà source de confusion ailleurs dans le
produit (« 0 lots au total » à côté de « 8 Lots »). Ensemble, ils disent
l’écart.
quota_sum face à total_tantiemes dit la même chose côté quotités : tant
que la somme n’atteint pas le total de l’acte, les appels de fonds portent
sur une base incomplète.
Fields§
§acp: AcpResponseDto§buildings_count: i32Nombre de blocs rattachés à l’ACP.
units_count: i32Lots effectivement encodés, tous blocs confondus.
declared_units_total: i32Lots déclarés à l’acte de base, sommés sur les blocs.
quota_sum: StringSomme exacte des quotités générales.
Decimal sérialisé en chaîne : une quotité est juridiquement
opposable, et la passer en f64 introduirait une erreur de
représentation sur une valeur exacte (ADR-0007/0008).
Trait Implementations§
Source§impl Clone for AcpAvecMetriquesDto
impl Clone for AcpAvecMetriquesDto
Source§fn clone(&self) -> AcpAvecMetriquesDto
fn clone(&self) -> AcpAvecMetriquesDto
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ComposeSchema for AcpAvecMetriquesDto
impl ComposeSchema for AcpAvecMetriquesDto
Source§impl Debug for AcpAvecMetriquesDto
impl Debug for AcpAvecMetriquesDto
Source§impl<'de> Deserialize<'de> for AcpAvecMetriquesDto
impl<'de> Deserialize<'de> for AcpAvecMetriquesDto
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for AcpAvecMetriquesDto
impl Serialize for AcpAvecMetriquesDto
Auto Trait Implementations§
impl Freeze for AcpAvecMetriquesDto
impl RefUnwindSafe for AcpAvecMetriquesDto
impl Send for AcpAvecMetriquesDto
impl Sync for AcpAvecMetriquesDto
impl Unpin for AcpAvecMetriquesDto
impl UnsafeUnpin for AcpAvecMetriquesDto
impl UnwindSafe for AcpAvecMetriquesDto
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<T> Fake for T
impl<T> Fake for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more