将struct从main移动到models
This commit is contained in:
45
src/main.rs
45
src/main.rs
@@ -1,53 +1,16 @@
|
||||
use actix_web::{App, HttpResponse, HttpServer, Responder, Result, post, web};
|
||||
use db::create_pool;
|
||||
use reqwest::Client;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use sqlx::postgres::PgPool;
|
||||
|
||||
mod db;
|
||||
mod models;
|
||||
|
||||
use db::insert_weather_data;
|
||||
use models::WeatherData;
|
||||
|
||||
// 定义请求体结构
|
||||
#[derive(Debug, Deserialize)]
|
||||
struct OpenIdRequest {
|
||||
openid: String,
|
||||
}
|
||||
|
||||
// 定义成功响应结构
|
||||
#[derive(Debug, Serialize)]
|
||||
struct UserIdResponse {
|
||||
user_id: i32,
|
||||
}
|
||||
|
||||
// 微信登录请求结构
|
||||
#[derive(Debug, Deserialize)]
|
||||
struct WeChatLoginRequest {
|
||||
code: String,
|
||||
}
|
||||
|
||||
// 微信API响应结构
|
||||
#[derive(Debug, Deserialize)]
|
||||
struct WeChatApiResponse {
|
||||
openid: Option<String>,
|
||||
errcode: Option<i32>,
|
||||
errmsg: Option<String>,
|
||||
}
|
||||
|
||||
// 我们的API响应结构
|
||||
#[derive(Debug, Serialize)]
|
||||
struct OpenIdResponse {
|
||||
openid: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize)]
|
||||
struct ErrorResponse {
|
||||
error: String,
|
||||
errcode: Option<i32>,
|
||||
errmsg: Option<String>,
|
||||
}
|
||||
use models::{
|
||||
ErrorResponse, OpenIdRequest, OpenIdResponse, UserIdResponse, WeChatApiResponse,
|
||||
WeChatLoginRequest, WeatherData,
|
||||
};
|
||||
|
||||
// 新增:根据openid获取用户ID的端点
|
||||
#[post("/getmyid")]
|
||||
|
||||
@@ -1,7 +1,43 @@
|
||||
use chrono::NaiveDate;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use sqlx::FromRow; // 处理日期类型
|
||||
use sqlx::FromRow;
|
||||
|
||||
// 新增:API请求/响应结构体
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct OpenIdRequest {
|
||||
pub openid: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize)]
|
||||
pub struct UserIdResponse {
|
||||
pub user_id: i32,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct WeChatLoginRequest {
|
||||
pub code: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct WeChatApiResponse {
|
||||
pub openid: Option<String>,
|
||||
pub errcode: Option<i32>,
|
||||
pub errmsg: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize)]
|
||||
pub struct OpenIdResponse {
|
||||
pub openid: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize)]
|
||||
pub struct ErrorResponse {
|
||||
pub error: String,
|
||||
pub errcode: Option<i32>,
|
||||
pub errmsg: Option<String>,
|
||||
}
|
||||
|
||||
// 天气数据结构体(已有)
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
pub struct WeatherData {
|
||||
#[serde(rename = "areaType")]
|
||||
|
||||
Reference in New Issue
Block a user