fache 0.1.351

发车工具箱
Documentation
use serde::{Deserialize, Serialize};
#[derive(PartialEq, Serialize, Deserialize, Debug, Clone)]
pub struct WxMiniLoginResponse {
    pub errcode: i32,
    pub errmsg: String,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub unionid: Option<String>,
    pub session_key: String,
    pub openid: String,
}
// 定义结构体来匹配 watermark 字段
#[derive(PartialEq, Serialize, Deserialize, Debug, Clone)]
pub struct Watermark {
    pub timestamp: i64,
    pub appid: String,
}

// 定义结构体来匹配 phone_info 字段
#[derive(PartialEq, Serialize, Deserialize, Debug, Clone)]
pub struct PhoneInfo {
    pub phone_number: String,
    pub pure_phone_number: String,
    pub country_code: i32,
    pub watermark: Watermark,
}

// 定义结构体来匹配返回的 JSON 数据
#[derive(PartialEq, Serialize, Deserialize, Debug, Clone)]
pub struct PhoneNumberResponse {
    pub errcode: i32,
    pub errmsg: String,
    pub phone_info: PhoneInfo,
}
// 定义一个结构体来接收 get_phone_number 函数的参数
#[derive(PartialEq, Serialize, Deserialize, Debug, Clone)]
pub struct GetPhoneNumber {
    pub code: String,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub openid: Option<String>,
}
// 请求生成微信小程序码的请求体内容
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct WxMiniQrCodeData {
    pub page: String,  //小程序页面路径
    pub scene: String, //小程序 场景信息
    pub check_path: bool,
    pub is_hyaline: bool, // 是否需要透明底色,默认为false
}

// 微信返回的 access_token 信息
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct WxMiniAccessTokenReData {
    pub access_token: String,
    pub expires_in: u64,
}

#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct WeChatTokenRes {
    pub access_token: String,
    pub expires_in: u64,
}

#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct ResMiniUserInfo {
    pub openid: Option<String>,
    pub session_key: Option<String>,
    pub unionid: Option<String>,
    pub errcode: Option<i32>,
    pub errmsg: Option<String>,
}