Skip to content

Commit 0bbdd4f

Browse files
committed
feat: datasource i18n
1 parent 233c790 commit 0bbdd4f

File tree

4 files changed

+18
-15
lines changed

4 files changed

+18
-15
lines changed

backend/apps/datasource/api/datasource.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from fastapi import APIRouter, File, UploadFile, HTTPException
88

99
from apps.db.engine import create_table, get_data_engine, insert_data
10-
from common.core.deps import SessionDep, CurrentUser
10+
from common.core.deps import SessionDep, CurrentUser, Trans
1111
from ..crud.datasource import get_datasource_list, check_status, create_ds, update_ds, delete_ds, getTables, getFields, \
1212
execSql, update_table_and_fields, getTablesByDs, chooseTables, preview, updateTable, updateField, get_ds, fieldEnum
1313
from ..crud.field import get_fields_by_table_id
@@ -34,8 +34,8 @@ async def check(session: SessionDep, ds: CoreDatasource):
3434

3535

3636
@router.post("/add", response_model=CoreDatasource)
37-
async def add(session: SessionDep, user: CurrentUser, ds: CreateDatasource):
38-
return create_ds(session, user, ds)
37+
async def add(session: SessionDep, trans: Trans, user: CurrentUser, ds: CreateDatasource):
38+
return create_ds(session, trans, user, ds)
3939

4040

4141
@router.post("/chooseTables/{id}")
@@ -44,8 +44,8 @@ async def choose_tables(session: SessionDep, id: int, tables: List[CoreTable]):
4444

4545

4646
@router.post("/update", response_model=CoreDatasource)
47-
async def update(session: SessionDep,user: CurrentUser, ds: CoreDatasource):
48-
return update_ds(session,user, ds)
47+
async def update(session: SessionDep, trans: Trans, user: CurrentUser, ds: CoreDatasource):
48+
return update_ds(session, trans, user, ds)
4949

5050

5151
@router.post("/delete/{id}", response_model=CoreDatasource)

backend/apps/datasource/crud/datasource.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import json
33
from typing import List
44

5+
from fastapi import HTTPException
56
from sqlalchemy import and_, text, cast
67
from sqlalchemy.dialects.postgresql import JSONB
78
from sqlbot_xpack.permissions.models.ds_permission import DsPermission
@@ -13,7 +14,7 @@
1314
from apps.db.db import get_engine, get_tables, get_fields, exec_sql
1415
from apps.db.engine import get_engine_config, get_engine_conn
1516
from apps.db.type import db_type_relation
16-
from common.core.deps import SessionDep, CurrentUser
17+
from common.core.deps import SessionDep, CurrentUser, Trans
1718
from common.utils.utils import deepcopy_ignore_extra
1819
from .table import get_tables_by_ds_id
1920
from ..crud.field import delete_field_by_ds_id, update_field
@@ -45,23 +46,23 @@ def check_status(session: SessionDep, ds: CoreDatasource):
4546
return False
4647

4748

48-
def check_name(session: SessionDep, user: CurrentUser, ds: CoreDatasource):
49+
def check_name(session: SessionDep, trans: Trans, user: CurrentUser, ds: CoreDatasource):
4950
if ds.id is not None:
5051
ds_list = session.query(CoreDatasource).filter(
5152
and_(CoreDatasource.name == ds.name, CoreDatasource.id != ds.id, CoreDatasource.oid == user.oid)).all()
5253
if ds_list is not None and len(ds_list) > 0:
53-
raise 'Name exist'
54+
raise HTTPException(status_code=500, detail=trans('i18n_ds_name_exist'))
5455
else:
5556
ds_list = session.query(CoreDatasource).filter(
5657
and_(CoreDatasource.name == ds.name, CoreDatasource.oid == user.oid)).all()
5758
if ds_list is not None and len(ds_list) > 0:
58-
raise 'Name exist'
59+
raise HTTPException(status_code=500, detail=trans('i18n_ds_name_exist'))
5960

6061

61-
def create_ds(session: SessionDep, user: CurrentUser, create_ds: CreateDatasource):
62+
def create_ds(session: SessionDep, trans: Trans, user: CurrentUser, create_ds: CreateDatasource):
6263
ds = CoreDatasource()
6364
deepcopy_ignore_extra(create_ds, ds)
64-
check_name(session, user, ds)
65+
check_name(session, trans, user, ds)
6566
ds.create_time = datetime.datetime.now()
6667
# status = check_status(session, ds)
6768
ds.create_by = user.id
@@ -87,9 +88,9 @@ def chooseTables(session: SessionDep, id: int, tables: List[CoreTable]):
8788
updateNum(session, ds)
8889

8990

90-
def update_ds(session: SessionDep, user: CurrentUser, ds: CoreDatasource):
91+
def update_ds(session: SessionDep, trans: Trans, user: CurrentUser, ds: CoreDatasource):
9192
ds.id = int(ds.id)
92-
check_name(session, user, ds)
93+
check_name(session, trans, user, ds)
9394
status = check_status(session, ds)
9495
ds.status = "Success" if status is True else "Fail"
9596
record = session.exec(select(CoreDatasource).where(CoreDatasource.id == ds.id)).first()

backend/locales/en.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
{
2-
"i18n_default_workspace": "Default workspace"
2+
"i18n_default_workspace": "Default workspace",
3+
"i18n_ds_name_exist": "Name exist"
34
}

backend/locales/zh-CN.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
{
2-
"i18n_default_workspace": "默认工作空间"
2+
"i18n_default_workspace": "默认工作空间",
3+
"i18n_ds_name_exist": "名称已存在"
34
}

0 commit comments

Comments
 (0)