use super::post_send;
use crate::{wechat::WxApiRequestBuilder, SdkResult};
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
pub struct PhoneNumber {
phone_info: PhoneInfo,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct PhoneInfo {
pub phone_number: String,
pub pure_phone_number: String,
pub country_code: String,
pub watermark: Watermark,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Watermark {
pub appid: String,
pub timestamp: i64,
}
pub struct PhoneNumberModule<'a, T: WxApiRequestBuilder>(pub(crate) &'a T);
impl<'a, T: WxApiRequestBuilder> PhoneNumberModule<'a, T> {
pub async fn get_user_phone_number(&self, code: &str) -> SdkResult<PhoneNumber> {
let data = &serde_json::json!({ "code": code });
let url = "https://api.weixin.qq.com/wxa/business/getuserphonenumber";
post_send(self.0, url, data).await
}
}