|
@@ -0,0 +1,54 @@
|
|
|
|
+from fastapi import APIRouter, Form, Depends, HTTPException, File, UploadFile
|
|
|
|
+from typing import List
|
|
|
|
+from fastapi.responses import FileResponse
|
|
|
|
+from random import randint
|
|
|
|
+from fastapi.security import OAuth2PasswordRequestForm
|
|
|
|
+from app.models.models import User,Favorite_course,News,Article_list
|
|
|
|
+from app.api import deps
|
|
|
|
+from sqlalchemy.orm import Session
|
|
|
|
+from typing import Any, Dict
|
|
|
|
+import secrets
|
|
|
|
+from fastapi_login.exceptions import InvalidCredentialsException
|
|
|
|
+from fastapi_login import LoginManager
|
|
|
|
+from datetime import timedelta,datetime
|
|
|
|
+from jose import jwt
|
|
|
|
+from emails.template import JinjaTemplate
|
|
|
|
+from tortoise.queryset import Q
|
|
|
|
+from fastapi.responses import HTMLResponse
|
|
|
|
+
|
|
|
|
+news = APIRouter()
|
|
|
|
+
|
|
|
|
+@news.get("/get_news")
|
|
|
|
+async def search_news(
|
|
|
|
+ news_id : int = None
|
|
|
|
+):
|
|
|
|
+ try:
|
|
|
|
+ if news_id :
|
|
|
|
+ news_list = await News.filter(id=news_id).all()
|
|
|
|
+ else:
|
|
|
|
+ news_list = await News.all()
|
|
|
|
+
|
|
|
|
+ news_objs = []
|
|
|
|
+ for news_obj in news_list:
|
|
|
|
+ news_tmp = {
|
|
|
|
+ "news_id": news_obj.id,
|
|
|
|
+ "title": news_obj.title,
|
|
|
|
+ "category": news_obj.category,
|
|
|
|
+ "create_time" : news_obj.create_time,
|
|
|
|
+ "click_time" : news_obj.click_time,
|
|
|
|
+ "content" : news_obj.content,
|
|
|
|
+ "files" : news_obj.files,
|
|
|
|
+ "URL" : news_obj.URL,
|
|
|
|
+ "tags" : news_obj.tags
|
|
|
|
+ }
|
|
|
|
+ news_objs.append(news_tmp)
|
|
|
|
+
|
|
|
|
+ return {"msg": "success", "code": 200, "news": news_objs}
|
|
|
|
+ except Exception as e:
|
|
|
|
+ return {"msg": str(e), "code": 500}
|
|
|
|
+
|
|
|
|
+# @news.post("/insert_news")
|
|
|
|
+# async def insert_news(
|
|
|
|
+
|
|
|
|
+# ):
|
|
|
|
+
|