pub struct DayUpload {
pub date: NaiveDate,
pub started_at: DateTime<FixedOffset>,
pub ended_at: Option<DateTime<FixedOffset>>,
pub pauses: Vec<PauseUpload>,
pub tasks: Vec<TaskUpload>,
pub tasks_are_complete: bool,
}Expand description
One day as the agent recorded it.
Fields§
§date: NaiveDateThe employee’s local calendar date, YYYY-MM-DD. Sent explicitly
rather than derived from started_at: which day work belongs to is the
agent’s call, and near midnight the two disagree.
started_at: DateTime<FixedOffset>When the day started, with the agent’s UTC offset.
ended_at: Option<DateTime<FixedOffset>>When it ended; absent while the day is still open.
pauses: Vec<PauseUpload>§tasks: Vec<TaskUpload>§tasks_are_complete: boolWhether tasks is everything the agent holds for this date.
When set, a task the server stored on this date and the agent no longer sends is one the employee deleted, and it is removed here too. Tasks on other dates are untouched - they are matched by id and outlive a single day, so wiping by date alone would take yesterday’s copy with it.
Defaults to false: an older agent, which cannot know about this flag, must never have its silence read as “delete the rest”.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for DayUpload
impl<'de> Deserialize<'de> for DayUpload
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>,
Auto Trait Implementations§
impl Freeze for DayUpload
impl RefUnwindSafe for DayUpload
impl Send for DayUpload
impl Sync for DayUpload
impl Unpin for DayUpload
impl UnsafeUnpin for DayUpload
impl UnwindSafe for DayUpload
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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