You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.8 KiB
65 lines
1.8 KiB
# Legacy database API support |
|
# Этот модуль обеспечивает обратную совместимость со старым кодом |
|
|
|
from apiApp.crud import AudioCRUD, AiConclusionCRUD |
|
|
|
class AudioDB: |
|
""" |
|
Совместимый слой для старого API |
|
""" |
|
|
|
@staticmethod |
|
def list(): |
|
from apiApp.database import SessionLocal |
|
db = SessionLocal() |
|
try: |
|
return AudioCRUD.get_all(db) |
|
finally: |
|
db.close() |
|
|
|
@staticmethod |
|
def get(audio_id): |
|
from apiApp.database import SessionLocal |
|
db = SessionLocal() |
|
try: |
|
return AudioCRUD.get_by_id(db, audio_id) |
|
finally: |
|
db.close() |
|
|
|
@staticmethod |
|
def add(data): |
|
from apiApp.database import SessionLocal |
|
from apiApp.schemas import AudioCreate |
|
db = SessionLocal() |
|
try: |
|
audio_data = AudioCreate(**data) |
|
return AudioCRUD.create(db, audio_data, file_path=data.get('file_path', '')) |
|
finally: |
|
db.close() |
|
|
|
@staticmethod |
|
def put(audio_id, data): |
|
from apiApp.database import SessionLocal |
|
db = SessionLocal() |
|
try: |
|
return AudioCRUD.update(db, audio_id, data) |
|
finally: |
|
db.close() |
|
|
|
@staticmethod |
|
def delete(audio_id): |
|
from apiApp.database import SessionLocal |
|
db = SessionLocal() |
|
try: |
|
return AudioCRUD.delete(db, audio_id) |
|
finally: |
|
db.close() |
|
|
|
@staticmethod |
|
def update_recognition_result(audio_id, result): |
|
from apiApp.database import SessionLocal |
|
db = SessionLocal() |
|
try: |
|
return AudioCRUD.update_recognition_result(db, audio_id, result) |
|
finally: |
|
db.close()
|
|
|