提交 a1690dc7 authored 作者: 贺阳's avatar 贺阳

增加识别的格式

上级 78a30a90
...@@ -68,6 +68,10 @@ ...@@ -68,6 +68,10 @@
# OCR可能将:识别为多个空格,如"DATETIMEOFRELEASE 1623420-SEP-2025"把:识别成了2 1333113-NOV-2025,把:识别成了3 # OCR可能将:识别为多个空格,如"DATETIMEOFRELEASE 1623420-SEP-2025"把:识别成了2 1333113-NOV-2025,把:识别成了3
r'DATETIMEOFRELEASE\s+(\d)(\d)[2,3](\d{2})(\d{2})-([A-Z]{3})-(\d{4})', r'DATETIMEOFRELEASE\s+(\d)(\d)[2,3](\d{2})(\d{2})-([A-Z]{3})-(\d{4})',
r'DATETIMEQFRELEASE\s+(\d)(\d)[2,3](\d{2})(\d{2})-([A-Z]{3})-(\d{4})', r'DATETIMEQFRELEASE\s+(\d)(\d)[2,3](\d{2})(\d{2})-([A-Z]{3})-(\d{4})',
r'DATE\.?TIME\.?OF\.?RELEASE[^\n]*?(\d{2}:\d{2})\s+(\d{2}-[A-Z]{3}-\d{4})',
r'DATETIME\.OFRELEASE(\d{2}:\d{2})\s+(\d{2}-[A-Z]{3}-\d{4})',
r'DATETIME\.OFRELEASE(\d)(\d)(\d{2})(\d{2})-([A-Z]{3})-(\d{4})',
r'DATETIME\.OFRELEASE\s+(\d)(\d)(\d{2})(\d{2})-([A-Z]{3})-(\d{4})',
]</field> ]</field>
</record> </record>
</data> </data>
......
...@@ -2410,25 +2410,6 @@ class BatchGetPodInfoWizard(models.TransientModel): ...@@ -2410,25 +2410,6 @@ class BatchGetPodInfoWizard(models.TransientModel):
}) })
attachment_id = attachment.id attachment_id = attachment.id
_logger.info(f"已创建临时附件存储文件: {attachment.name}, ID: {attachment_id}") _logger.info(f"已创建临时附件存储文件: {attachment.name}, ID: {attachment_id}")
# 验证附件创建后数据是否正确
created_attachment = self.env['ir.attachment'].browse(attachment_id)
if created_attachment.datas:
# 比较解码后的数据长度,而不是直接比较字符串
try:
original_decoded = base64.b64decode(file_data)
attachment_decoded = base64.b64decode(created_attachment.datas)
if len(original_decoded) == len(attachment_decoded):
_logger.info(f"附件数据验证成功,解码后长度: {len(original_decoded)}")
else:
_logger.warning(
f"附件数据长度不匹配: 原始={len(original_decoded)}, 附件={len(attachment_decoded)}")
except Exception as e:
_logger.warning(f"附件数据验证失败: {str(e)}")
else:
_logger.error(f"附件数据为空")
except Exception as e: except Exception as e:
_logger.error(f"创建临时附件失败: {str(e)}") _logger.error(f"创建临时附件失败: {str(e)}")
else: else:
...@@ -2486,20 +2467,6 @@ class BatchGetPodInfoWizard(models.TransientModel): ...@@ -2486,20 +2467,6 @@ class BatchGetPodInfoWizard(models.TransientModel):
file_data = attachment.datas file_data = attachment.datas
_logger.info( _logger.info(
f"从附件读取文件: {attachment.name}, ID: {attachment_id}, 数据长度: {len(file_data) if file_data else 0}") f"从附件读取文件: {attachment.name}, ID: {attachment_id}, 数据长度: {len(file_data) if file_data else 0}")
# 验证数据格式
if file_data:
_logger.info(f"附件数据格式: 前100个字符: {file_data[:100]}")
# 验证是否为有效的 base64 数据
try:
import base64
# 尝试解码验证 base64 格式
decoded = base64.b64decode(file_data)
_logger.info(f"Base64 解码成功,解码后数据长度: {len(decoded)}")
except Exception as e:
_logger.error(f"Base64 解码失败: {str(e)}")
else:
_logger.warning(f"附件 {attachment_id} 的数据为空")
else: else:
_logger.warning(f"附件不存在: {attachment_id}") _logger.warning(f"附件不存在: {attachment_id}")
except Exception as e: except Exception as e:
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论