feat: add contract template v3 api and legacy oss migration
This commit is contained in:
@@ -52,6 +52,24 @@ class OssPathUtils:
|
||||
prefix = f"{Region}/" if Region else ""
|
||||
return f"{prefix}rules/{RuleType}/{VersionNo}/validation_report.json"
|
||||
|
||||
@staticmethod
|
||||
def BuildContractTemplateKey(
|
||||
CategoryName: str,
|
||||
TemplateCode: str,
|
||||
FileRole: str,
|
||||
FileName: str,
|
||||
) -> str:
|
||||
"""生成合同模板 object key。"""
|
||||
ext = Path(FileName).suffix or ""
|
||||
safe_category = OssPathUtils.BuildSafeFileStem(CategoryName or "uncategorized")
|
||||
safe_template_code = OssPathUtils.BuildSafeFileStem(TemplateCode or "template")
|
||||
safe_stem = OssPathUtils.BuildSafeFileStem(FileName)
|
||||
safe_role = OssPathUtils.BuildSafeFileStem(FileRole or "file")
|
||||
return (
|
||||
f"contract-templates/{safe_category}/{safe_template_code}/"
|
||||
f"{safe_role}__{safe_stem}{ext}"
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def BuildSafeFileStem(FileName: str) -> str:
|
||||
"""生成适合放进 object key 的可读文件名主体。"""
|
||||
|
||||
Reference in New Issue
Block a user