diff --git a/kinit-admin/src/api/vadmin/system/settings.ts b/kinit-admin/src/api/vadmin/system/settings.ts index 24883e2..65e4745 100644 --- a/kinit-admin/src/api/vadmin/system/settings.ts +++ b/kinit-admin/src/api/vadmin/system/settings.ts @@ -1,7 +1,7 @@ import request from '@/config/axios' -export const getSystemSettingsTabsApi = (params: any): Promise => { - return request.get({ url: '/vadmin/system/settings/tabs', params }) +export const getSystemSettingsTabsApi = (data: any): Promise => { + return request.post({ url: '/vadmin/system/settings/tabs', data }) } export const getSystemSettingsApi = (params: any): Promise => { diff --git a/kinit-admin/src/views/Vadmin/System/Dict/Type/DictType.vue b/kinit-admin/src/views/Vadmin/System/Dict/Type/DictType.vue index 9e9d560..176a59f 100644 --- a/kinit-admin/src/views/Vadmin/System/Dict/Type/DictType.vue +++ b/kinit-admin/src/views/Vadmin/System/Dict/Type/DictType.vue @@ -239,7 +239,7 @@ const save = async () => { const emit = defineEmits(['updateDictTypeId']) const handleCurrentChange = async (val: any | undefined) => { - emit('updateDictTypeId', val.id) + emit('updateDictTypeId', val ? val.id : val) } const clearCurrentRow = async () => { diff --git a/kinit-admin/src/views/Vadmin/System/Settings/Settings.vue b/kinit-admin/src/views/Vadmin/System/Settings/Settings.vue index efe0472..d13c800 100644 --- a/kinit-admin/src/views/Vadmin/System/Settings/Settings.vue +++ b/kinit-admin/src/views/Vadmin/System/Settings/Settings.vue @@ -6,6 +6,7 @@ import Privacy from './components/Privacy.vue' import Agreement from './components/Agreement.vue' import WXClient from './components/WechatServer.vue' import Email from './components/Email.vue' +import SMS from './components/SMS.vue' import { ContentWrap } from '@/components/ContentWrap' import { getSystemSettingsTabsApi } from '@/api/vadmin/system/settings' @@ -18,7 +19,7 @@ const activeName = ref('web_basic') const tabs = ref([] as Recordable[]) const getList = async () => { - const res = await getSystemSettingsTabsApi({ classify: 'web' }) + const res = await getSystemSettingsTabsApi(['web', 'aliyun']) if (res) { tabs.value = res.data } @@ -37,6 +38,7 @@ getList() + diff --git a/kinit-admin/src/views/Vadmin/System/Settings/components/SMS.vue b/kinit-admin/src/views/Vadmin/System/Settings/components/SMS.vue new file mode 100644 index 0000000..1aece23 --- /dev/null +++ b/kinit-admin/src/views/Vadmin/System/Settings/components/SMS.vue @@ -0,0 +1,197 @@ + + + + + diff --git a/kinit-api/application/settings.py b/kinit-api/application/settings.py index d778260..fdcd042 100644 --- a/kinit-api/application/settings.py +++ b/kinit-api/application/settings.py @@ -11,7 +11,7 @@ from fastapi.security import OAuth2PasswordBearer """ 系统版本 """ -VERSION = "3.1.0" +VERSION = "3.2.0" """安全警告: 不要在生产中打开调试运行!""" DEBUG = False @@ -24,6 +24,7 @@ DEMO_WHITE_LIST_PATH = [ "/auth/token/refresh", "/auth/wx/login", "/vadmin/system/dict/types/details", + "/vadmin/system/settings/tabs", "/vadmin/resource/images", "/vadmin/auth/user/export/query/list/to/excel" ] diff --git a/kinit-api/apps/vadmin/system/views.py b/kinit-api/apps/vadmin/system/views.py index f4c2fea..83d5a08 100644 --- a/kinit-api/apps/vadmin/system/views.py +++ b/kinit-api/apps/vadmin/system/views.py @@ -145,9 +145,9 @@ async def sms_send(telephone: str, rd: Redis = Depends(redis_getter), auth: Auth ########################################################### # 系统配置管理 ########################################################### -@app.get("/settings/tabs", summary="获取系统配置标签列表") -async def get_settings_tabs(classify: str, auth: Auth = Depends(FullAdminAuth())): - return SuccessResponse(await crud.SettingsTabDal(auth.db).get_datas(limit=0, classify=classify)) +@app.post("/settings/tabs", summary="获取系统配置标签列表") +async def get_settings_tabs(classifys: list[str] = Body(...), auth: Auth = Depends(FullAdminAuth())): + return SuccessResponse(await crud.SettingsTabDal(auth.db).get_datas(limit=0, classify=("in", classifys))) @app.get("/settings/tabs/values", summary="获取系统配置标签下的信息") diff --git a/kinit-api/core/exception.py b/kinit-api/core/exception.py index cffe60a..98b4316 100644 --- a/kinit-api/core/exception.py +++ b/kinit-api/core/exception.py @@ -87,6 +87,8 @@ def register_exception(app: FastAPI): msg = f"类型错误,提交参数应该为整数!" elif msg == "value could not be parsed to a boolean": msg = f"类型错误,提交参数应该为布尔值!" + elif msg == "Input should be a valid list": + msg = f"类型错误,输入应该是一个有效的列表!" return JSONResponse( status_code=200, content=jsonable_encoder( diff --git a/kinit-api/scripts/initialize/data/init.xlsx b/kinit-api/scripts/initialize/data/init.xlsx index 62be0f3..70bb31f 100644 Binary files a/kinit-api/scripts/initialize/data/init.xlsx and b/kinit-api/scripts/initialize/data/init.xlsx differ