cscart_rs/service/
order_service.rs

1use crate::prelude::*;
2use crate::service::config::ServiceConfig;
3use crate::types::Order;
4use crate::{
5    impl_create_method, impl_delete_by_id_method, impl_get_all_method, impl_get_by_id_method,
6    impl_update_by_id_method,
7};
8use serde::Deserialize;
9use serde_json::Value;
10
11pub struct OrderService {
12    config: ServiceConfig<Authenticated>,
13}
14
15impl OrderService {
16    pub fn with_config(service: ServiceConfig<Authenticated>) -> OrderService {
17        Self { config: service }
18    }
19}
20
21#[derive(Deserialize, Debug)]
22pub struct GetAllOrderResponse {
23    pub orders: Vec<Order>,
24}
25
26impl_create_method!(OrderService, Order);
27impl_get_by_id_method!(OrderService, Order);
28impl_get_all_method!(OrderService, GetAllOrderResponse);
29impl_update_by_id_method!(OrderService, Value);
30impl_delete_by_id_method!(OrderService, Value);