66 lines
1.8 KiB
Python
66 lines
1.8 KiB
Python
# 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()
|