From 6489265fe80bf0b24f0cb81931e6304e05fa263e Mon Sep 17 00:00:00 2001 From: Franklin Date: Fri, 14 Apr 2023 15:58:00 -0400 Subject: [PATCH] Added page visit domain obj --- src/domain/mod.rs | 1 + src/domain/visit.rs | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 src/domain/visit.rs diff --git a/src/domain/mod.rs b/src/domain/mod.rs index 54d1bbf..0f09b53 100644 --- a/src/domain/mod.rs +++ b/src/domain/mod.rs @@ -10,3 +10,4 @@ pub mod project_state; pub mod project_type; pub mod unit; pub mod unit_type; +pub mod visit; \ No newline at end of file diff --git a/src/domain/visit.rs b/src/domain/visit.rs new file mode 100644 index 0000000..5c707e1 --- /dev/null +++ b/src/domain/visit.rs @@ -0,0 +1,17 @@ +use chrono::{DateTime, Utc}; +use serde::{Serialize, Deserialize}; + + +/// A unit of measurement to define a page load +#[derive(Serialize, Deserialize, Default, Clone, PartialEq, Eq, PartialOrd, Ord)] +pub struct Visit { + pub id: i32, + pub ip_addr: String, + pub time_created: DateTime +} + +impl Visit { + pub fn new(ip_addr: String) -> Self { + Self { id: -1, ip_addr, time_created: Utc::now() } + } +} \ No newline at end of file