tomoya преди 2 години
родител
ревизия
e341fce66f
променени са 3 файла, в които са добавени 11 реда и са изтрити 37 реда
  1. 0 34
      backend/app/app/crud/crud_item.py
  2. 5 3
      frontend/src/api.ts
  3. 6 0
      frontend/src/interfaces/index.ts

+ 0 - 34
backend/app/app/crud/crud_item.py

@@ -1,34 +0,0 @@
-from typing import List
-
-from fastapi.encoders import jsonable_encoder
-from sqlalchemy.orm import Session
-
-from app.crud.base import CRUDBase
-from app.models.item import Item
-from app.schemas.item import ItemCreate, ItemUpdate
-
-
-class CRUDItem(CRUDBase[Item, ItemCreate, ItemUpdate]):
-    def create_with_owner(
-        self, db: Session, *, obj_in: ItemCreate, owner_id: int
-    ) -> Item:
-        obj_in_data = jsonable_encoder(obj_in)
-        db_obj = self.model(**obj_in_data, owner_id=owner_id)
-        db.add(db_obj)
-        db.commit()
-        db.refresh(db_obj)
-        return db_obj
-
-    def get_multi_by_owner(
-        self, db: Session, *, owner_id: int, skip: int = 0, limit: int = 100
-    ) -> List[Item]:
-        return (
-            db.query(self.model)
-            .filter(Item.owner_id == owner_id)
-            .offset(skip)
-            .limit(limit)
-            .all()
-        )
-
-
-item = CRUDItem(Item)

+ 5 - 3
frontend/src/api.ts

@@ -1,6 +1,6 @@
 import axios from "axios";
 import { apiUrl } from "@/env";
-import type { IUserProfile, IUserProfileUpdate, IUserProfileCreate, Video} from "@/interfaces";
+import type { IUserProfile, IUserProfileUpdate, IUserProfileCreate, Video, VideoCreate} from "@/interfaces";
 
 function authHeaders(token: string) {
   return {
@@ -57,9 +57,11 @@ export const api = {
     formData.append("file", file)
     return axios.post<{msg:string}>(`${apiUrl}/api/v1/utils/test-celery/file`, formData, authHeaders(token));
   },
-  async uploadPlot(token: string, title:string, file: File){
+  async uploadPlot(token: string, video_data:VideoCreate, file: File){
     const formData = new FormData();
-    formData.append("title", title)
+    formData.append("title", video_data.title)
+    formData.append("anchor_id", video_data.anchor_id.toString())
+    formData.append("lang_id", video_data.lang_id.toString())
     formData.append("upload_file", file)
     return axios.post<{msg:string}>(`${apiUrl}/api/v1/videos/`, formData, authHeaders(token));
   },

+ 6 - 0
frontend/src/interfaces/index.ts

@@ -44,4 +44,10 @@ export interface Video {
   title: string;
   stored_file_name: string;
   progress_state: string;
+}
+
+export interface VideoCreate{
+  title: string;
+  anchor_id: number;
+  lang_id: number;
 }