Centralise files related to talking to the Toggl apis to the toggl_api module

This commit is contained in:
Joshua Coles 2024-03-01 21:21:33 +00:00
parent 1df76ea573
commit ee21753411
6 changed files with 11 additions and 8 deletions

View File

@ -1,5 +1,5 @@
use crate::entity::{client, project, time_entry}; use crate::entity::{client, project, time_entry};
use crate::types::{Project, ProjectClient, ReportEntry, TimeEntry}; use crate::toggl_api::types::{Project, ProjectClient, ReportEntry, TimeEntry};
use sea_orm::sea_query::OnConflict; use sea_orm::sea_query::OnConflict;
use sea_orm::{NotSet, Set}; use sea_orm::{NotSet, Set};

View File

@ -1,8 +1,8 @@
use crate::api_client::TogglApiClient; use crate::toggl_api::TogglApiClient;
use crate::entity::prelude::TimeEntry; use crate::entity::prelude::TimeEntry;
use crate::entity::time_entry; use crate::entity::time_entry;
use crate::entity::time_entry::ActiveModel; use crate::entity::time_entry::ActiveModel;
use crate::types::{Current, Project, ProjectClient, ReportEntry, TogglQuery}; use crate::toggl_api::types::{Current, Project, ProjectClient, ReportEntry, TogglQuery};
use anyhow::anyhow; use anyhow::anyhow;
use axum::extract::multipart::Field; use axum::extract::multipart::Field;
use axum::extract::{Multipart, Query}; use axum::extract::{Multipart, Query};
@ -25,13 +25,12 @@ use std::net::SocketAddr;
use tower_http::trace::TraceLayer; use tower_http::trace::TraceLayer;
use tracing::{debug, instrument}; use tracing::{debug, instrument};
mod api_client;
mod db; mod db;
mod entity; mod entity;
mod poll; mod poll;
mod types;
mod utils; mod utils;
mod csv_parser; mod csv_parser;
mod toggl_api;
#[derive(Debug, Clone, Parser)] #[derive(Debug, Clone, Parser)]
struct Config { struct Config {

View File

@ -1,6 +1,6 @@
use crate::api_client::TogglApiClient; use crate::toggl_api::TogglApiClient;
use crate::entity::{client, project, time_entry}; use crate::entity::{client, project, time_entry};
use crate::types::{Project, ProjectClient, TogglQuery}; use crate::toggl_api::types::{Project, ProjectClient, TogglQuery};
use sea_orm::{DatabaseConnection, EntityTrait, QuerySelect}; use sea_orm::{DatabaseConnection, EntityTrait, QuerySelect};
use tracing::instrument; use tracing::instrument;
use crate::{day_exclusivity_condition, utils}; use crate::{day_exclusivity_condition, utils};

View File

@ -5,7 +5,7 @@ use std::time::Duration;
use hyper::HeaderMap; use hyper::HeaderMap;
use tracing::instrument; use tracing::instrument;
use tracing::log::debug; use tracing::log::debug;
use crate::types::{Current, Project, ProjectClient, ReportEntry, TogglQuery}; use crate::toggl_api::types::{Current, Project, ProjectClient, ReportEntry, TogglQuery};
#[derive(Debug, Clone)] #[derive(Debug, Clone)]
pub struct TogglApiClient { pub struct TogglApiClient {

4
src/toggl_api/mod.rs Normal file
View File

@ -0,0 +1,4 @@
pub mod api_client;
pub mod types;
pub use api_client::TogglApiClient;