23 lines
877 B
Python
23 lines
877 B
Python
from sqlalchemy.orm import Session
|
|
from . import models, dto
|
|
|
|
class TransportModeService:
|
|
@staticmethod
|
|
def get_transport_mode_by_key(db: Session, mode_key: str):
|
|
return db.query(models.TransportMode).filter(models.TransportMode.mode_key == mode_key).first()
|
|
|
|
@staticmethod
|
|
def create_transport_mode(db: Session, transport_mode_data: dto.TransportModeCreateDTO):
|
|
new_transport_mode = models.TransportMode(**transport_mode_data.dict())
|
|
db.add(new_transport_mode)
|
|
db.commit()
|
|
db.refresh(new_transport_mode)
|
|
return new_transport_mode
|
|
|
|
@staticmethod
|
|
def delete_transport_mode(db: Session, mode_key: str):
|
|
transport_mode = TransportModeService.get_transport_mode_by_key(db, mode_key)
|
|
if transport_mode:
|
|
db.delete(transport_mode)
|
|
db.commit()
|
|
return transport_mode |