Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions backend/apps/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from apps.system.api import login, user, aimodel, workspace, assistant, parameter, apikey
from apps.terminology.api import terminology
from apps.settings.api import base
#from apps.audit.api import audit_api


api_router = APIRouter()
Expand All @@ -28,3 +29,5 @@
api_router.include_router(apikey.router)

api_router.include_router(recommended_problem.router)

#api_router.include_router(audit_api.router)
14 changes: 6 additions & 8 deletions backend/apps/chat/api/chat.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
from common.core.deps import CurrentAssistant, SessionDep, CurrentUser, Trans
from common.utils.command_utils import parse_quick_command
from common.utils.data_format import DataFormat
from sqlbot_xpack.audit.models.log_model import OperationType, OperationDetails, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import system_log, LogConfig
from sqlbot_xpack.audit.models.log_model import OperationType, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import LogConfig, system_log

router = APIRouter(tags=["Data Q&A"], prefix="/chat")

Expand Down Expand Up @@ -83,9 +83,8 @@ async def rename(session: SessionDep, chat: RenameChat):

@router.delete("/{chart_id}/{brief}", response_model=str, summary=f"{PLACEHOLDER_PREFIX}delete_chat")
@system_log(LogConfig(
operation_type=OperationType.DELETE_QA,
operation_detail=OperationDetails.DELETE_QA_DETAILS,
module=OperationModules.QA,
operation_type=OperationType.DELETE,
module=OperationModules.CHAT,
resource_id_expr="chart_id",
remark_expr="brief"
))
Expand All @@ -102,9 +101,8 @@ async def delete(session: SessionDep, chart_id: int, brief: str):
@router.post("/start", response_model=ChatInfo, summary=f"{PLACEHOLDER_PREFIX}start_chat")
@require_permissions(permission=SqlbotPermission(type='ds', keyExpression="create_chat_obj.datasource"))
@system_log(LogConfig(
operation_type=OperationType.CREATE_QA,
operation_detail=OperationDetails.CREATE_QA_DETAILS,
module=OperationModules.QA,
operation_type=OperationType.CREATE,
module=OperationModules.CHAT,
result_id_expr="id"
))
async def start_chat(session: SessionDep, current_user: CurrentUser, create_chat_obj: CreateChat):
Expand Down
13 changes: 5 additions & 8 deletions backend/apps/dashboard/api/dashboard_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
from apps.dashboard.crud.dashboard_service import list_resource, load_resource, \
create_resource, create_canvas, validate_name, delete_resource, update_resource, update_canvas
from apps.dashboard.models.dashboard_model import CreateDashboard, BaseDashboard, QueryDashboard, DashboardResponse
from sqlbot_xpack.audit.models.log_model import OperationType, OperationDetails, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import system_log, LogConfig
from sqlbot_xpack.audit.models.log_model import OperationType, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import LogConfig, system_log
from common.core.deps import SessionDep, CurrentUser

router = APIRouter(tags=["dashboard"], prefix="/dashboard")
Expand Down Expand Up @@ -32,8 +32,7 @@ async def update_resource_api(session: SessionDep, user: CurrentUser, dashboard:

@router.delete("/delete_resource/{resource_id}/{name}")
@system_log(LogConfig(
operation_type=OperationType.DELETE_DASHBOARD,
operation_detail=OperationDetails.DELETE_DASHBOARD_DETAILS,
operation_type=OperationType.DELETE,
module=OperationModules.DASHBOARD,
resource_id_expr="resource_id",
remark_expr="name"
Expand All @@ -44,8 +43,7 @@ async def delete_resource_api(session: SessionDep, resource_id: str, name: str):

@router.post("/create_canvas", response_model=BaseDashboard)
@system_log(LogConfig(
operation_type=OperationType.CREATE_DASHBOARD,
operation_detail=OperationDetails.CREATE_DASHBOARD_DETAILS,
operation_type=OperationType.CREATE,
module=OperationModules.DASHBOARD,
result_id_expr="id"
))
Expand All @@ -55,8 +53,7 @@ async def create_canvas_api(session: SessionDep, user: CurrentUser, dashboard: C

@router.post("/update_canvas", response_model=BaseDashboard)
@system_log(LogConfig(
operation_type=OperationType.UPDATE_DASHBOARD,
operation_detail=OperationDetails.UPDATE_DASHBOARD_DETAILS,
operation_type=OperationType.UPDATE,
module=OperationModules.DASHBOARD,
resource_id_expr="dashboard.id"
))
Expand Down
13 changes: 5 additions & 8 deletions backend/apps/datasource/api/datasource.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@
from ..crud.table import get_tables_by_ds_id
from ..models.datasource import CoreDatasource, CreateDatasource, TableObj, CoreTable, CoreField, FieldObj, \
TableSchemaResponse, ColumnSchemaResponse, PreviewResponse
from sqlbot_xpack.audit.models.log_model import OperationType, OperationDetails, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import system_log, LogConfig
from sqlbot_xpack.audit.models.log_model import OperationType, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import LogConfig, system_log

router = APIRouter(tags=["Datasource"], prefix="/datasource")
path = settings.EXCEL_PATH
Expand Down Expand Up @@ -72,8 +72,7 @@ def inner():

@router.post("/add", response_model=CoreDatasource, summary=f"{PLACEHOLDER_PREFIX}ds_add")
@system_log(LogConfig(
operation_type=OperationType.CREATE_DATASOURCE,
operation_detail=OperationDetails.CREATE_DATASOURCE_DETAILS,
operation_type=OperationType.CREATE,
module=OperationModules.DATASOURCE,
result_id_expr="id"
))
Expand All @@ -96,8 +95,7 @@ def inner():
@router.post("/update", response_model=CoreDatasource, summary=f"{PLACEHOLDER_PREFIX}ds_update")
@require_permissions(permission=SqlbotPermission(type='ds', keyExpression="ds.id"))
@system_log(LogConfig(
operation_type=OperationType.UPDATE_DATASOURCE,
operation_detail=OperationDetails.UPDATE_DATASOURCE_DETAILS,
operation_type=OperationType.UPDATE,
module=OperationModules.DATASOURCE,
resource_id_expr="ds.id"
))
Expand All @@ -111,8 +109,7 @@ def inner():
@router.post("/delete/{id}/{name}", response_model=None, summary=f"{PLACEHOLDER_PREFIX}ds_delete")
@require_permissions(permission=SqlbotPermission(type='ds', keyExpression="id"))
@system_log(LogConfig(
operation_type=OperationType.DELETE_DATASOURCE,
operation_detail=OperationDetails.DELETE_DATASOURCE_DETAILS,
operation_type=OperationType.DELETE,
module=OperationModules.DATASOURCE,
resource_id_expr="id",
remark_expr="name"
Expand Down
9 changes: 9 additions & 0 deletions backend/apps/system/api/login.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,18 @@
from common.core.config import settings
from common.core.schemas import Token
from sqlbot_xpack.authentication.manage import logout as xpack_logout

from sqlbot_xpack.audit.models.log_model import OperationType, OperationModules
from sqlbot_xpack.audit.schemas.logger_decorator import system_log, LogConfig

router = APIRouter(tags=["login"], prefix="/login")

@router.post("/access-token")
@system_log(LogConfig(
operation_type=OperationType.LOGIN,
module=OperationModules.USER,
result_id_expr="id"
))
async def local_login(
session: SessionDep,
trans: Trans,
Expand Down
1 change: 1 addition & 0 deletions backend/apps/system/schemas/system_schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ class BaseUserDTO(BaseUser, BaseCreatorDTO):
password: str
status: int = 1
origin: int = 0
name: str

def to_dict(self):
return {
Expand Down
56 changes: 23 additions & 33 deletions backend/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -125,44 +125,34 @@
"i18n_audit": {
"success": "Success",
"failed": "Failed",
"create_qa": "Create Q&A",
"delete_qa": "Delete Q&A",
"create_datasource": "Create Datasource",
"update_datasource": "Edit Datasource",
"delete_datasource": "Delete Datasource",
"create_dashboard": "Create Dashboard",
"update_dashboard": "Edit Dashboard",
"delete_dashboard": "Delete Dashboard",
"setting_create_user": "Add Member",
"setting_delete_user": "Remove Member",
"setting_create_rule": "Add Rule Group",
"setting_delete_rule": "Remove Rule Group",
"setting_update_rule": "Configure Rules",
"setting_update_rule_user": "Configure Users",
"setting_create_terminology": "Create Terminology",
"create_qa_details": "Create Q&A【{resource_name}】",
"delete_qa_details": "Delete Q&A【{resource_name}】",
"create_datasource_details": "Create Datasource【{resource_name}】",
"update_datasource_details": "Edit Datasource【{resource_name}】",
"delete_datasource_details": "Delete Datasource【{resource_name}】",
"create_dashboard_details": "Create Dashboard【{resource_name}】",
"update_dashboard_details": "Edit Dashboard【{resource_name}】",
"delete_dashboard_details": "Delete Dashboard【{resource_name}】",
"setting_create_user_details": "Add Member【{resource_name}】",
"setting_delete_user_details": "Remove Member【{resource_name}】",
"setting_create_rule_details": "Add Rule Group【{resource_name}】",
"setting_delete_rule_details": "Remove Rule Group【{resource_name}】",
"setting_update_rule_details": "Configure Rules【{resource_name}】",
"setting_update_rule_user_details": "Configure Users【{resource_name}】",
"setting_create_terminology_details": "Create Terminology【{resource_name}】",
"system_log": "System Log",
"system_log": "Operation Log",
"operation_type_name": "Operation Type",
"operation_detail_info": "Operation Details",
"user_name": "Operating User",
"user_name": "Operator",
"oid_name": "Workspace",
"operation_status_name": "Operation Status",
"error_message": "Error Message",
"ip_address": "IP Address",
"create_time": "Operation Time"
"create_time": "Operation Time",
"chat": "AI Q&A",
"datasource": "Datasource",
"dashboard": "Dashboard",
"member": "Member",
"permission": "Permission",
"terminology": "Terminology",
"data_training": "SQL Examples",
"prompt_words": "Prompt Words",
"user": "User",
"workspace": "Workspace",
"ai_model": "AI Model",
"application": "Application",
"theme": "Appearance Settings",
"create": "Create",
"delete": "Delete",
"update": "Update",
"edit": "Edit",
"login": "Login",
"export": "Export",
"import": "Import"
}
}
58 changes: 24 additions & 34 deletions backend/locales/ko-KR.json
Original file line number Diff line number Diff line change
Expand Up @@ -125,44 +125,34 @@
"i18n_audit": {
"success": "성공",
"failed": "실패",
"create_qa": "Q&A 생성",
"delete_qa": "Q&A 삭제",
"create_datasource": "데이터 소스 생성",
"update_datasource": "데이터 소스 편집",
"delete_datasource": "데이터 소스 삭제",
"create_dashboard": "대시보드 생성",
"update_dashboard": "대시보드 편집",
"delete_dashboard": "대시보드 삭제",
"setting_create_user": "멤버 추가",
"setting_delete_user": "멤버 제거",
"setting_create_rule": "규칙 그룹 추가",
"setting_delete_rule": "규칙 그룹 제거",
"setting_update_rule": "규칙 설정",
"setting_update_rule_user": "사용자 설정",
"setting_create_terminology": "용어 생성",
"create_qa_details": "Q&A 생성【{resource_name}】",
"delete_qa_details": "Q&A 삭제【{resource_name}】",
"create_datasource_details": "데이터 소스 생성【{resource_name}】",
"update_datasource_details": "데이터 소스 편집【{resource_name}】",
"delete_datasource_details": "데이터 소스 삭제【{resource_name}】",
"create_dashboard_details": "대시보드 생성【{resource_name}】",
"update_dashboard_details": "대시보드 편집【{resource_name}】",
"delete_dashboard_details": "대시보드 삭제【{resource_name}】",
"setting_create_user_details": "멤버 추가【{resource_name}】",
"setting_delete_user_details": "멤버 제거【{resource_name}】",
"setting_create_rule_details": "규칙 그룹 추가【{resource_name}】",
"setting_delete_rule_details": "규칙 그룹 제거【{resource_name}】",
"setting_update_rule_details": "규칙 설정【{resource_name}】",
"setting_update_rule_user_details": "사용자 설정【{resource_name}】",
"setting_create_terminology_details": "용어 생성【{resource_name}】",
"system_log": "시스템 로그",
"system_log": "작업 로그",
"operation_type_name": "작업 유형",
"operation_detail_info": "작업 상세 정보",
"user_name": "작업 사용자",
"operation_detail_info": "작업 상세",
"user_name": "작업자",
"oid_name": "작업 공간",
"operation_status_name": "작업 상태",
"error_message": "오류 메시지",
"ip_address": "IP 주소",
"create_time": "작업 시간"
"create_time": "작업 시간",
"chat": "지능형 질의",
"datasource": "데이터 소스",
"dashboard": "대시보드",
"member": "구성원",
"permission": "권한",
"terminology": "용어",
"data_training": "SQL 예제 라이브러리",
"prompt_words": "프롬프트 단어",
"user": "사용자",
"workspace": "작업 공간",
"ai_model": "AI 모델",
"application": "애플리케이션",
"theme": "외관 설정",
"create": "생성",
"delete": "삭제",
"update": "수정",
"edit": "편집",
"login": "로그인",
"export": "내보내기",
"import": "가져오기"
}
}
54 changes: 22 additions & 32 deletions backend/locales/zh-CN.json
Original file line number Diff line number Diff line change
Expand Up @@ -125,36 +125,6 @@
"i18n_audit": {
"success": "成功",
"failed": "失败",
"create_qa": "新建问数",
"delete_qa": "删除问数",
"create_datasource": "新建数据源",
"update_datasource": "编辑数据源",
"delete_datasource": "删除数据源",
"create_dashboard": "新建仪表板",
"update_dashboard": "编辑仪表板",
"delete_dashboard": "删除仪表板",
"setting_create_user": "添加成员",
"setting_delete_user": "移除成员",
"setting_create_rule": "添加规则组",
"setting_delete_rule": "移除规则组",
"setting_update_rule": "设置规则",
"setting_update_rule_user": "设置用户",
"setting_create_terminology": "新建术语",
"create_qa_details": "新建问数【{resource_name}】",
"delete_qa_details": "删除问数【{resource_name}】",
"create_datasource_details": "新建数据源【{resource_name}】",
"update_datasource_details": "编辑数据源【{resource_name}】",
"delete_datasource_details": "删除数据源【{resource_name}】",
"create_dashboard_details": "新建仪表板【{resource_name}】",
"update_dashboard_details": "编辑仪表板【{resource_name}】",
"delete_dashboard_details": "删除仪表板【{resource_name}】",
"setting_create_user_details": "添加成员【{resource_name}】",
"setting_delete_user_details": "移除成员【{resource_name}】",
"setting_create_rule_details": "添加规则组【{resource_name}】",
"setting_delete_rule_details": "移除规则组【{resource_name}】",
"setting_update_rule_details": "设置规则【{resource_name}】",
"setting_update_rule_user_details": "设置用户【{resource_name}】",
"setting_create_terminology_details": "新建术语【{resource_name}】",
"system_log": "操作日志",
"operation_type_name": "操作类型",
"operation_detail_info": "操作详情",
Expand All @@ -163,6 +133,26 @@
"operation_status_name": "操作状态",
"error_message": "错误信息",
"ip_address": "IP 地址",
"create_time": "操作时间"
"create_time": "操作时间",
"chat": "智能问数",
"datasource": "数据源",
"dashboard": "仪表板",
"member": "成员",
"permission": "权限",
"terminology": "术语",
"data_training": "SQL 示例库",
"prompt_words": "提示词",
"user": "用户",
"workspace": "工作空间",
"ai_model": "AI 模型",
"application": "应用",
"theme": "外观配置",
"create": "新建",
"delete": "删除",
"update": "更新",
"edit": "编辑",
"login": "登录",
"export": "导出",
"import": "导入"
}
}
}
1 change: 1 addition & 0 deletions frontend/src/api/audit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { request } from '@/utils/request'
export const audit = {
getList: (pageNum: any, pageSize: any, params: any) =>
request.get(`/system/audit/page/${pageNum}/${pageSize}${params}`),
getOptions: () => request.get(`/system/audit/get_options`),
export2Excel: (params: any) =>
request.get(`/system/audit/export`, {
params,
Expand Down
3 changes: 3 additions & 0 deletions frontend/src/assets/svg/log.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions frontend/src/assets/svg/menu/icon_log_filled.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading