mycommon_utils/utils/
time_util.rs1use chrono::{DateTime, Utc, Local, Duration, NaiveDateTime};
4use sea_orm::ActiveValue;
5
6pub fn get_local_now() -> DateTime<Local> {
12 Local::now()
13}
14
15pub fn get_local_now_naive_datetime() -> NaiveDateTime {
16 Local::now().naive_local()
17}
18
19pub fn add_days_to_local_now(days: i64) -> DateTime<Local> {
21 Local::now() + Duration::days(days)
22}
23
24pub fn diff_days_utc(start: DateTime<Utc>, end: DateTime<Utc>) -> i64 {
26 (end - start).num_days()
27}
28
29pub fn parse_from_str(s: &str) -> Option<DateTime<Utc>> {
31 DateTime::parse_from_str(s, "%Y%m%d%H%M%S")
32 .ok() .map(|datetime| datetime.with_timezone(&Utc)) }
35pub fn get_now_time() -> ActiveValue<Option<chrono::NaiveDateTime>> {
36 ActiveValue::Set(Some(Utc::now().naive_utc()))
37}