38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
from sqlalchemy.orm import Session
|
|
from models import SystemSettings, PKISetting
|
|
from schemas import SystemSettingsUpdate, PKISettingUpdate
|
|
|
|
def get_system_settings(db: Session):
|
|
settings = db.query(SystemSettings).first()
|
|
if not settings:
|
|
settings = SystemSettings()
|
|
db.add(settings)
|
|
db.commit()
|
|
db.refresh(settings)
|
|
return settings
|
|
|
|
def update_system_settings(db: Session, settings_in: SystemSettingsUpdate):
|
|
settings = get_system_settings(db)
|
|
for key, value in settings_in.model_dump(exclude_unset=True).items():
|
|
setattr(settings, key, value)
|
|
db.commit()
|
|
db.refresh(settings)
|
|
return settings
|
|
|
|
def get_pki_settings(db: Session):
|
|
settings = db.query(PKISetting).first()
|
|
if not settings:
|
|
settings = PKISetting()
|
|
db.add(settings)
|
|
db.commit()
|
|
db.refresh(settings)
|
|
return settings
|
|
|
|
def update_pki_settings(db: Session, settings_in: PKISettingUpdate):
|
|
settings = get_pki_settings(db)
|
|
for key, value in settings_in.model_dump(exclude_unset=True).items():
|
|
setattr(settings, key, value)
|
|
db.commit()
|
|
db.refresh(settings)
|
|
return settings
|