use crate::Request;
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Debug, Default)]
pub struct List {
#[serde(rename = "content")]
pub content: Option<Vec<Content>>,
#[serde(rename = "limit_type")]
pub limit_type: Option<i32>,
#[serde(rename = "value")]
pub value: Option<i64>,
}
#[derive(Serialize, Deserialize, Debug, Default)]
pub struct ServiceAreaList {
#[serde(rename = "city_id")]
pub city_id: Option<i32>,
#[serde(rename = "district_id")]
pub district_id: Option<i32>,
#[serde(rename = "province_id")]
pub province_id: Option<i32>,
#[serde(rename = "value")]
pub value: Option<i32>,
}
#[derive(Serialize, Deserialize, Debug, Default)]
pub struct CatList {
#[serde(rename = "cat_id3")]
pub cat_id3: Option<i64>,
#[serde(rename = "cat_id4")]
pub cat_id4: Option<i64>,
#[serde(rename = "list")]
pub list: Option<Vec<List>>,
}
#[derive(Serialize, Deserialize, Debug, Default)]
pub struct Content {
#[serde(rename = "max_pro")]
pub max_pro: Option<i64>,
#[serde(rename = "min_pro")]
pub min_pro: Option<i64>,
#[serde(rename = "price")]
pub price: Option<i64>,
}
#[derive(Serialize, Deserialize, Debug, Default)]
pub struct PddGoodsLogisticsSerTemplateUpdate {
#[serde(rename = "cat_list")]
pub cat_list: Option<Vec<CatList>>,
#[serde(rename = "price_unit")]
pub price_unit: Option<i32>,
#[serde(rename = "service_area_list")]
pub service_area_list: Option<Vec<ServiceAreaList>>,
#[serde(rename = "template_id")]
pub template_id: Option<String>,
#[serde(rename = "template_name")]
pub template_name: Option<String>,
#[serde(rename = "template_type")]
pub template_type: Option<i32>,
}
impl Request for PddGoodsLogisticsSerTemplateUpdate {
fn get_type() -> String {
"pdd.goods.logistics.ser.template.update".to_string()
}
fn get_response_name() -> String {
"goods_logistics_ser_template_update_response".to_string()
}
}