fix storage

This commit is contained in:
jxxghp
2024-07-02 18:31:17 +08:00
parent 8530d54fcc
commit b37e50480a
6 changed files with 59 additions and 25 deletions

View File

@@ -1,4 +1,4 @@
from typing import List
from typing import List, Optional
from app import schemas
from app.db.systemconfig_oper import SystemConfigOper
@@ -21,3 +21,32 @@ class StorageHelper:
if not storage_confs:
return []
return [schemas.StorageConf(**s) for s in storage_confs]
def get_storage(self, storage: str) -> Optional[schemas.StorageConf]:
"""
获取指定存储配置
"""
storagies = self.get_storagies()
for s in storagies:
if s.type == storage:
return s
return None
def set_storage(self, storage: str, conf: dict):
"""
设置存储配置
"""
storagies = self.get_storagies()
if not storagies:
storagies = [
schemas.StorageConf(
type=storage,
config=conf
)
]
else:
for s in storagies:
if s.type == storage:
s.config = conf
break
self.systemconfig.set(SystemConfigKey.Storages, [s.dict() for s in storagies])