安全:隔离主数据并封闭单条删除

This commit is contained in:
焦龙言
2026-09-22 18:16:30 +08:00
parent af5428d0e3
commit b6f606d9f2
13 changed files with 1382 additions and 1131 deletions
@@ -12,6 +12,8 @@ from common.enums import BusinessType
from common.router import APIRouterPro
from common.vo import DataResponseModel, PageResponseModel, ResponseBaseModel
from module_admin.entity.vo.user_vo import CurrentUserModel
from module_business.dependency.test_batch_dependency import TestBatchScopeDependency
from module_business.domain.test_batch_scope import TestBatchScope
from module_business.entity.vo.master_vo import (
BusinessUserOptionModel,
DeleteSiteModel,
@@ -45,8 +47,9 @@ async def get_master_site_users(
request: Request,
site_id: Annotated[int, Path(gt=0, description='客户现场ID')],
query_db: Annotated[AsyncSession, DBSessionDependency()],
scope: Annotated[TestBatchScope, TestBatchScopeDependency()],
) -> Response:
users = await PalletService.list_site_users(query_db, site_id)
users = await PalletService.list_site_users(query_db, site_id, scope)
return ResponseUtil.success(data=users)
@@ -64,8 +67,9 @@ async def assign_master_site_users(
assignment: UserAssignModel,
query_db: Annotated[AsyncSession, DBSessionDependency()],
current_user: Annotated[CurrentUserModel, ASSIGN_CURRENT_USER()],
scope: Annotated[TestBatchScope, TestBatchScopeDependency(write=True)],
) -> Response:
result = await PalletService.assign_site_users(query_db, site_id, assignment)
result = await PalletService.assign_site_users(query_db, site_id, assignment, current_user, scope)
return ResponseUtil.success(msg=result.message)
@@ -80,8 +84,9 @@ async def get_master_site_list(
request: Request,
site_page_query: Annotated[SitePageQueryModel, Query()],
query_db: Annotated[AsyncSession, DBSessionDependency()],
scope: Annotated[TestBatchScope, TestBatchScopeDependency()],
) -> Response:
site_page_query_result = await MasterService.list_site(query_db, site_page_query, is_page=True)
site_page_query_result = await MasterService.list_site(query_db, site_page_query, scope, is_page=True)
return ResponseUtil.success(model_content=site_page_query_result)
@@ -97,8 +102,9 @@ async def query_detail_master_site(
request: Request,
site_id: Annotated[int, Path(gt=0, description='客户现场ID')],
query_db: Annotated[AsyncSession, DBSessionDependency()],
scope: Annotated[TestBatchScope, TestBatchScopeDependency()],
) -> Response:
site_detail_result = await MasterService.detail_site(query_db, site_id)
site_detail_result = await MasterService.detail_site(query_db, site_id, scope)
return ResponseUtil.success(data=site_detail_result)
@@ -116,13 +122,14 @@ async def add_master_site(
add_site: SiteModel,
query_db: Annotated[AsyncSession, DBSessionDependency()],
current_user: Annotated[CurrentUserModel, CurrentUserDependency()],
scope: Annotated[TestBatchScope, TestBatchScopeDependency(write=True)],
) -> Response:
current_time = datetime.now()
add_site.create_by = current_user.user.user_name
add_site.create_time = current_time
add_site.update_by = current_user.user.user_name
add_site.update_time = current_time
add_site_result = await MasterService.add_site(query_db, add_site)
add_site_result = await MasterService.add_site(query_db, add_site, current_user, scope)
return ResponseUtil.success(msg=add_site_result.message)
@@ -140,10 +147,11 @@ async def edit_master_site(
edit_site: SiteModel,
query_db: Annotated[AsyncSession, DBSessionDependency()],
current_user: Annotated[CurrentUserModel, CurrentUserDependency()],
scope: Annotated[TestBatchScope, TestBatchScopeDependency(write=True)],
) -> Response:
edit_site.update_by = current_user.user.user_name
edit_site.update_time = datetime.now()
edit_site_result = await MasterService.edit_site(query_db, edit_site)
edit_site_result = await MasterService.edit_site(query_db, edit_site, current_user, scope)
return ResponseUtil.success(msg=edit_site_result.message)