Skip to content

Commit 4d3bea7

Browse files
committed
update apis
1 parent 508d131 commit 4d3bea7

File tree

2 files changed

+16
-35
lines changed

2 files changed

+16
-35
lines changed

backend/app/admin/api/v1/sys/config.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,9 @@ async def save_policy_config() -> ResponseModel:
7171
return response_base.success()
7272

7373

74-
@router.get('', summary='获取系统配置详情', dependencies=[DependsJwtAuth])
75-
async def get_config() -> ResponseModel:
76-
config = await config_service.get()
74+
@router.get('/{pk}', summary='获取系统配置详情', dependencies=[DependsJwtAuth])
75+
async def get_config(pk: Annotated[int, Path(...)]) -> ResponseModel:
76+
config = await config_service.get(pk)
7777
return response_base.success(data=config)
7878

7979

Lines changed: 13 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,38 @@
11
#!/usr/bin/env python3
22
# -*- coding: utf-8 -*-
3-
from backend.app.admin.conf import admin_settings
43
from backend.app.admin.crud.crud_config import config_dao
54
from backend.app.admin.model import Config
65
from backend.app.admin.schema.config import CreateConfigParam, UpdateConfigParam
76
from backend.common.exception import errors
87
from backend.database.db_mysql import async_db_session
9-
from backend.database.db_redis import redis_client
10-
from backend.utils.serializers import select_as_dict
118

129

1310
class ConfigService:
1411
@staticmethod
1512
async def get() -> Config | dict:
1613
async with async_db_session() as db:
17-
cache_config = await redis_client.hgetall(admin_settings.CONFIG_REDIS_KEY)
18-
if not cache_config:
19-
config = await config_dao.get_one(db)
20-
if not config:
21-
raise errors.NotFoundError(msg='系统配置不存在')
22-
data_map = select_as_dict(config)
23-
del data_map['created_time']
24-
del data_map['updated_time']
25-
await redis_client.hset(admin_settings.CONFIG_REDIS_KEY, mapping=data_map)
26-
return config
27-
else:
28-
return cache_config
14+
config = await config_dao.get(db)
15+
if not config:
16+
raise errors.NotFoundError(msg='配置不存在')
17+
return config
18+
19+
@staticmethod
20+
async def get_select(): ...
2921

3022
@staticmethod
3123
async def create(*, obj: CreateConfigParam) -> None:
32-
async with async_db_session.begin() as db:
33-
config = await config_dao.get_one(db)
34-
if config:
35-
raise errors.ForbiddenError(msg='系统配置已存在')
36-
await config_dao.create(db, obj)
37-
await redis_client.hset(admin_settings.CONFIG_REDIS_KEY, mapping=obj.model_dump())
24+
async with async_db_session.begin():
25+
...
3826

3927
@staticmethod
4028
async def update(*, pk: int, obj: UpdateConfigParam) -> int:
41-
async with async_db_session.begin() as db:
42-
count = await config_dao.update(db, pk, obj)
43-
await redis_client.hset(admin_settings.CONFIG_REDIS_KEY, mapping=obj.model_dump())
44-
return count
29+
async with async_db_session.begin():
30+
...
4531

4632
@staticmethod
4733
async def delete(*, pk: list[int]) -> int:
48-
async with async_db_session.begin() as db:
49-
configs = await config_dao.get_all(db)
50-
if len(configs) == 1:
51-
raise errors.ForbiddenError(msg='系统配置无法彻底删除')
52-
count = await config_dao.delete(db, pk)
53-
await redis_client.delete(admin_settings.CONFIG_REDIS_KEY)
54-
return count
34+
async with async_db_session.begin():
35+
...
5536

5637

5738
config_service: ConfigService = ConfigService()

0 commit comments

Comments
 (0)