pub struct StatutoryLine {
pub name: String,
pub component_type: String,
pub amount: Decimal,
pub gl_account_id: Uuid,
pub source_kind: Option<&'static str>,
pub source_ref: Option<Uuid>,
}Expand description
A supplied Indonesia statutory component for a slip — PPh 21 / BPJS Kesehatan / BPJS Ketenagakerjaan deductions, or a THR earning. Computed by the deferred statutory overlay and supplied here like billing’s tax lines.
component_type mirrors the structure-component vocabulary ("earning" | "deduction"): an
earning raises gross (un-prorated — THR carries its own tenure pro-rating), a deduction subtracts.
The slip-line marks either as is_statutory: true so the GL grouping can tell statutory payables
apart from structure deductions; the deduction grouping filters component_type='deduction', so a
THR earning is never mis-routed to a payable account.
Fields§
§name: String§component_type: String§amount: Decimal§gl_account_id: Uuid§source_kind: Option<&'static str>Provenance: what produced the line (NULL = computed from the structure).
source_ref: Option<Uuid>The producing record’s id (e.g. the timesheet approval row).
Auto Trait Implementations§
impl Freeze for StatutoryLine
impl RefUnwindSafe for StatutoryLine
impl Send for StatutoryLine
impl Sync for StatutoryLine
impl Unpin for StatutoryLine
impl UnsafeUnpin for StatutoryLine
impl UnwindSafe for StatutoryLine
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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