use crate::controllers::Entity;
use serde::{Deserialize, Serialize};
use crate::controllers::product_attribute_terms::{
AttributeTermCreateBuilder, AttributeTermUpdateBuilder, NoName,
};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct AttributeTerm {
pub id: i32,
pub name: String,
pub slug: String,
pub description: String,
pub menu_order: i32,
pub count: i32,
}
impl Entity for AttributeTerm {
fn endpoint() -> String {
String::new()
}
fn child_endpoint(parent_id: i32) -> String {
format!("products/attributes/{parent_id}/terms/")
}
}
impl AttributeTerm {
pub fn create() -> AttributeTermCreateBuilder<NoName> {
AttributeTermCreateBuilder::default()
}
pub fn update() -> AttributeTermUpdateBuilder {
AttributeTermUpdateBuilder::default()
}
}