完善后台管理与测试支撑
1、为后台用户列表增加关键词和状态筛选,后端同步支持过滤与总数统计。 2、创建用户时要求填写初始密码,并补充前端校验和自动填充隔离。 3、优化项目管理列表角色展示、项目详情抽屉脏数据保护和审计详情抽屉关闭体验。 4、清理旧费用附件关联、统一测试模型注册,并更新迁移端点和注册筛选测试。
This commit is contained in:
@@ -16,7 +16,6 @@ from app.models.document import Document
|
||||
from app.models.document_version import DocumentVersion
|
||||
from app.models.distribution import Distribution
|
||||
from app.models.drug_shipment import DrugShipment
|
||||
from app.models.fee_attachment import FeeAttachment
|
||||
from app.models.finance import FinanceItem
|
||||
from app.models.kickoff_meeting import KickoffMeeting
|
||||
from app.models.precaution import Precaution
|
||||
@@ -33,7 +32,6 @@ from app.models.visit import Visit
|
||||
from app.schemas.site import SiteCreate, SiteUpdate
|
||||
|
||||
ATTACHMENT_ROOT = Path(__file__).resolve().parent.parent / "uploads"
|
||||
FEE_ATTACHMENT_ROOT = ATTACHMENT_ROOT / "fees"
|
||||
DOCUMENT_ATTACHMENT_ROOT = ATTACHMENT_ROOT / "documents"
|
||||
|
||||
|
||||
@@ -239,24 +237,7 @@ async def delete_site_and_related(db: AsyncSession, site: Site) -> None:
|
||||
)
|
||||
)
|
||||
|
||||
fee_attachment_paths: list[str] = []
|
||||
if contract_fee_ids:
|
||||
fee_attachment_paths.extend(
|
||||
(
|
||||
await db.execute(
|
||||
select(FeeAttachment.storage_key).where(
|
||||
FeeAttachment.entity_type == "contract_fee",
|
||||
FeeAttachment.entity_id.in_(contract_fee_ids),
|
||||
)
|
||||
)
|
||||
).scalars().all()
|
||||
)
|
||||
await db.execute(
|
||||
delete(FeeAttachment).where(
|
||||
FeeAttachment.entity_type == "contract_fee",
|
||||
FeeAttachment.entity_id.in_(contract_fee_ids),
|
||||
)
|
||||
)
|
||||
await db.execute(delete(ContractFeePayment).where(ContractFeePayment.contract_fee_id.in_(contract_fee_ids)))
|
||||
|
||||
if distribution_ids:
|
||||
@@ -311,7 +292,6 @@ async def delete_site_and_related(db: AsyncSession, site: Site) -> None:
|
||||
|
||||
await db.execute(delete(Site).where(Site.id == site_id))
|
||||
await _remove_files(attachment_paths, ATTACHMENT_ROOT)
|
||||
await _remove_files(fee_attachment_paths, FEE_ATTACHMENT_ROOT)
|
||||
await _remove_files(version_file_paths, DOCUMENT_ATTACHMENT_ROOT)
|
||||
await db.commit()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user