更新了README文件,添加了版本信息和更新日志

This commit is contained in:
侯欢 2025-05-02 19:58:27 +08:00
parent 71ca90ba6e
commit 693c17283b
25 changed files with 875 additions and 41 deletions

View File

@ -27,6 +27,11 @@ class UnitConverter:
'multiplier': 10, # 数量乘以10 'multiplier': 10, # 数量乘以10
'target_unit': '', # 目标单位 'target_unit': '', # 目标单位
'description': '特殊处理:数量*10单位转换为瓶' 'description': '特殊处理:数量*10单位转换为瓶'
},
'6921168593804': {
'multiplier': 30, # 数量乘以30
'target_unit': '', # 目标单位
'description': 'NFC产品特殊处理每箱30瓶'
} }
# 可以添加更多特殊条码的配置 # 可以添加更多特殊条码的配置
} }
@ -53,6 +58,13 @@ class UnitConverter:
""" """
从数量字符串中提取单位 从数量字符串中提取单位
支持的格式:
1. "2箱" -> (2, "")
2. "3件" -> (3, "")
3. "1.5提" -> (1.5, "")
4. "数量: 5盒" -> (5, "")
5. "× 2瓶" -> (2, "")
Args: Args:
quantity_str: 数量字符串"2箱""5件" quantity_str: 数量字符串"2箱""5件"
@ -62,13 +74,29 @@ class UnitConverter:
if not quantity_str or not isinstance(quantity_str, str): if not quantity_str or not isinstance(quantity_str, str):
return None, None return None, None
# 匹配数字+单位格式 # 清理字符串,移除前后空白和一些常见前缀
match = re.match(r'^([\d\.]+)\s*([^\d\s\.]+)$', quantity_str.strip()) cleaned_str = quantity_str.strip()
if match: for prefix in ['数量:', '数量:', '×', 'x', 'X', '*']:
cleaned_str = cleaned_str.replace(prefix, '').strip()
# 匹配数字+单位格式 (基本格式)
basic_match = re.match(r'^([\d\.]+)\s*([^\d\s\.]+)$', cleaned_str)
if basic_match:
try: try:
num = float(match.group(1)) num = float(basic_match.group(1))
unit = match.group(2) unit = basic_match.group(2)
logger.info(f"从数量提取单位: {quantity_str} -> 数量={num}, 单位={unit}") logger.info(f"从数量提取单位(基本格式): {quantity_str} -> 数量={num}, 单位={unit}")
return num, unit
except ValueError:
pass
# 匹配更复杂的格式,如包含其他文本的情况
complex_match = re.search(r'([\d\.]+)\s*([箱|件|瓶|提|盒|袋|桶|包|kg|g|升|毫升|L|ml|个])', cleaned_str)
if complex_match:
try:
num = float(complex_match.group(1))
unit = complex_match.group(2)
logger.info(f"从数量提取单位(复杂格式): {quantity_str} -> 数量={num}, 单位={unit}")
return num, unit return num, unit
except ValueError: except ValueError:
pass pass
@ -115,6 +143,13 @@ class UnitConverter:
""" """
从商品名称中推断规格 从商品名称中推断规格
规则:
1. "xx入纸箱" -> 1*xx ("15入纸箱" -> 1*15)
2. 直接包含规格 "1*15" -> 1*15
3. "xx纸箱" -> 1*xx ("15纸箱" -> 1*15)
4. "xx白膜" -> 1*xx ("12白膜" -> 1*12)
5. "xxL" 容量单位特殊处理
Args: Args:
name: 商品名称 name: 商品名称
@ -124,34 +159,53 @@ class UnitConverter:
if not name or not isinstance(name, str): if not name or not isinstance(name, str):
return None return None
# 特殊模式的名称处理 # 记录原始商品名称,用于日志
# 如"445水溶C血橙15入纸箱" -> "1*15" original_name = name
pattern1 = r'.*(\d+)入'
match = re.match(pattern1, name) # 特殊模式1: "xx入纸箱" 格式,如"445水溶C血橙15入纸箱" -> "1*15"
pattern1 = r'.*?(\d+)入纸箱'
match = re.search(pattern1, name)
if match: if match:
inferred_spec = f"1*{match.group(1)}" inferred_spec = f"1*{match.group(1)}"
logger.info(f"从名称推断规格(入): {name} -> {inferred_spec}") logger.info(f"从名称推断规格(入纸箱): {original_name} -> {inferred_spec}")
return inferred_spec return inferred_spec
# 如"500-东方树叶-绿茶1*15-纸箱装" -> "1*15" # 特殊模式2: 直接包含规格,如"500-东方树叶-乌龙茶1*15-纸箱装" -> "1*15"
pattern2 = r'.*(\d+)[*xX×](\d+).*' pattern2 = r'.*?(\d+)[*xX×](\d+).*'
match = re.match(pattern2, name) match = re.search(pattern2, name)
if match: if match:
inferred_spec = f"{match.group(1)}*{match.group(2)}" inferred_spec = f"{match.group(1)}*{match.group(2)}"
logger.info(f"从名称推断规格(直接): {name} -> {inferred_spec}") logger.info(f"从名称推断规格(直接格式): {original_name} -> {inferred_spec}")
return inferred_spec return inferred_spec
# 如"12.9L桶装水" -> "12.9L*1" # 特殊模式3: "xx纸箱" 格式,如"500茶π蜜桃乌龙15纸箱" -> "1*15"
pattern3 = r'.*?([\d\.]+)L.*' pattern3 = r'.*?(\d+)纸箱'
match = re.match(pattern3, name) match = re.search(pattern3, name)
if match:
inferred_spec = f"1*{match.group(1)}"
logger.info(f"从名称推断规格(纸箱): {original_name} -> {inferred_spec}")
return inferred_spec
# 特殊模式4: "xx白膜" 格式,如"1.5L水12白膜" 或 "550水24白膜" -> "1*12" 或 "1*24"
pattern4 = r'.*?(\d+)白膜'
match = re.search(pattern4, name)
if match:
inferred_spec = f"1*{match.group(1)}"
logger.info(f"从名称推断规格(白膜): {original_name} -> {inferred_spec}")
return inferred_spec
# 特殊模式5: 容量单位如"12.9L桶装水" -> "12.9L*1"
pattern5 = r'.*?([\d\.]+)L.*'
match = re.search(pattern5, name)
if match: if match:
inferred_spec = f"{match.group(1)}L*1" inferred_spec = f"{match.group(1)}L*1"
logger.info(f"从名称推断规格(L): {name} -> {inferred_spec}") logger.info(f"从名称推断规格(容量): {original_name} -> {inferred_spec}")
return inferred_spec return inferred_spec
# 从名称中提取规格 # 尝试通用模式匹配
spec = self.extract_specification(name) spec = self.extract_specification(name)
if spec: if spec:
logger.info(f"从名称推断规格(通用模式): {original_name} -> {spec}")
return spec return spec
return None return None

View File

@ -270,6 +270,10 @@ class ExcelProcessor:
logger.info(f"列名映射结果: {mapped_columns}") logger.info(f"列名映射结果: {mapped_columns}")
# 检查是否有规格列
has_specification_column = 'specification' in mapped_columns
logger.info(f"是否存在规格列: {has_specification_column}")
# 提取商品信息 # 提取商品信息
products = [] products = []
@ -298,13 +302,6 @@ class ExcelProcessor:
product['name'] = f"商品 ({product['barcode']})" product['name'] = f"商品 ({product['barcode']})"
logger.info(f"商品名称为空,使用条码作为名称: {product['name']}") logger.info(f"商品名称为空,使用条码作为名称: {product['name']}")
# 推断规格
if not product['specification'] and product['name']:
inferred_spec = self.unit_converter.infer_specification_from_name(product['name'])
if inferred_spec:
product['specification'] = inferred_spec
logger.info(f"从商品名称推断规格: {product['name']} -> {inferred_spec}")
# 单位处理:如果单位为空但数量包含单位信息 # 单位处理:如果单位为空但数量包含单位信息
quantity_str = str(row.get(mapped_columns.get('quantity', ''), '')) quantity_str = str(row.get(mapped_columns.get('quantity', ''), ''))
if not product['unit'] and 'quantity' in mapped_columns: if not product['unit'] and 'quantity' in mapped_columns:
@ -316,6 +313,13 @@ class ExcelProcessor:
if num is not None: if num is not None:
product['quantity'] = num product['quantity'] = num
# 推断规格:如果规格为空或不存在规格列,尝试从商品名称推断
if (not product['specification'] or not has_specification_column) and product['name']:
inferred_spec = self.unit_converter.infer_specification_from_name(product['name'])
if inferred_spec:
product['specification'] = inferred_spec
logger.info(f"从商品名称推断规格: {product['name']} -> {inferred_spec}")
# 应用单位转换规则 # 应用单位转换规则
product = self.unit_converter.process_unit_conversion(product) product = self.unit_converter.process_unit_conversion(product)

View File

@ -0,0 +1 @@
{}

View File

@ -0,0 +1,3 @@
{
"D:\\My Documents\\python\\orc-order-v2\\data\\input\\微信图片_20250502191502.jpg": "D:\\My Documents\\python\\orc-order-v2\\data\\output\\微信图片_20250502191502.xlsx"
}

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -49,3 +49,40 @@
2025-05-02 18:38:56,890 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250227193150(1).xls 2025-05-02 18:38:56,890 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250227193150(1).xls
2025-05-02 18:41:16,744 - __main__ - INFO - 处理Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250227193150(1).xlsx 2025-05-02 18:41:16,744 - __main__ - INFO - 处理Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250227193150(1).xlsx
2025-05-02 18:41:17,402 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250227193150(1).xls 2025-05-02 18:41:17,402 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250227193150(1).xls
2025-05-02 19:15:17,472 - __main__ - INFO - 批量处理模式
2025-05-02 19:15:19,393 - __main__ - INFO - 批量处理完成,总计: 1成功: 1
2025-05-02 19:15:43,270 - __main__ - INFO - 处理最新的Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:15:51,442 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:33:54,964 - __main__ - INFO - === 流程步骤 1: OCR识别 ===
2025-05-02 19:33:54,964 - __main__ - INFO - 批量处理所有图片
2025-05-02 19:33:54,965 - __main__ - WARNING - 没有找到需要处理的图片
2025-05-02 19:33:54,966 - __main__ - INFO - === 流程步骤 2: Excel处理 ===
2025-05-02 19:33:54,967 - __main__ - WARNING - 未找到可处理的Excel文件
2025-05-02 19:35:48,764 - __main__ - INFO - === 流程步骤 1: OCR识别 ===
2025-05-02 19:35:48,764 - __main__ - INFO - 批量处理所有图片
2025-05-02 19:35:48,766 - __main__ - WARNING - 没有找到需要处理的图片
2025-05-02 19:35:48,766 - __main__ - INFO - === 流程步骤 2: Excel处理 ===
2025-05-02 19:35:48,817 - __main__ - WARNING - 未找到可处理的Excel文件
2025-05-02 19:36:15,986 - __main__ - INFO - === 流程步骤 1: OCR识别 ===
2025-05-02 19:36:15,986 - __main__ - INFO - 批量处理所有图片
2025-05-02 19:36:15,987 - __main__ - WARNING - 没有找到需要处理的图片
2025-05-02 19:36:15,988 - __main__ - INFO - === 流程步骤 2: Excel处理 ===
2025-05-02 19:36:15,989 - __main__ - WARNING - 未找到可处理的Excel文件
2025-05-02 19:42:19,207 - __main__ - INFO - === 流程步骤 1: OCR识别 ===
2025-05-02 19:42:19,208 - __main__ - INFO - 批量处理所有图片
2025-05-02 19:42:21,167 - __main__ - INFO - OCR处理完成总计: 1成功: 1
2025-05-02 19:42:21,167 - __main__ - INFO - === 流程步骤 2: Excel处理 ===
2025-05-02 19:42:21,167 - __main__ - INFO - 处理最新的Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:42:36,439 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:42:36,440 - __main__ - INFO - === 流程步骤 3: 订单合并 ===
2025-05-02 19:42:36,441 - __main__ - INFO - 合并所有采购单文件: 1 个
2025-05-02 19:42:36,457 - __main__ - ERROR - 订单合并失败
2025-05-02 19:53:27,942 - __main__ - INFO - === 流程步骤 1: OCR识别 ===
2025-05-02 19:53:27,942 - __main__ - INFO - 批量处理所有图片
2025-05-02 19:53:29,683 - __main__ - INFO - OCR处理完成总计: 1成功: 1
2025-05-02 19:53:29,683 - __main__ - INFO - === 流程步骤 2: Excel处理 ===
2025-05-02 19:53:29,684 - __main__ - INFO - 处理最新的Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:53:47,770 - __main__ - INFO - Excel处理成功输出文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:53:47,770 - __main__ - INFO - === 流程步骤 3: 订单合并 ===
2025-05-02 19:53:47,771 - __main__ - INFO - 合并所有采购单文件: 1 个
2025-05-02 19:53:47,786 - __main__ - ERROR - 订单合并失败

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -143,3 +143,188 @@
2025-05-02 18:41:17,314 - app.core.excel.converter - INFO - 从名称推断规格(入): 450ml轻乳茶大红袍乌龙12入纸箱 -> 1*2 2025-05-02 18:41:17,314 - app.core.excel.converter - INFO - 从名称推断规格(入): 450ml轻乳茶大红袍乌龙12入纸箱 -> 1*2
2025-05-02 18:41:17,315 - app.core.excel.converter - INFO - 解析二级规格: 1*2 -> 1*2 2025-05-02 18:41:17,315 - app.core.excel.converter - INFO - 解析二级规格: 1*2 -> 1*2
2025-05-02 18:41:17,315 - app.core.excel.converter - INFO - 提/盒单位(二级规格)处理: 保持原样 数量: 1.0, 单价: 65.0, 单位: 提 2025-05-02 18:41:17,315 - app.core.excel.converter - INFO - 提/盒单位(二级规格)处理: 保持原样 数量: 1.0, 单价: 65.0, 单位: 提
2025-05-02 19:15:43,873 - app.core.excel.converter - INFO - 从名称推断规格(入): 450果园30%橙子15入纸箱 -> 1*5
2025-05-02 19:15:43,874 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,874 - app.core.excel.converter - INFO - 解析二级规格: 1*5 -> 1*5
2025-05-02 19:15:43,874 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 5.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:15:43,875 - app.core.excel.converter - INFO - 从名称推断规格(入): 450果园30%葡萄15入纸箱 -> 1*5
2025-05-02 19:15:43,876 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,876 - app.core.excel.converter - INFO - 解析二级规格: 1*5 -> 1*5
2025-05-02 19:15:43,876 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 5.0, 单价: 56.0 -> 11.2, 单位: 箱 -> 瓶
2025-05-02 19:15:43,876 - app.core.excel.converter - INFO - 从名称推断规格(入): 450果园30%楂苹梅15入纸箱 -> 1*5
2025-05-02 19:15:43,876 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,877 - app.core.excel.converter - INFO - 解析二级规格: 1*5 -> 1*5
2025-05-02 19:15:43,877 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 5.0, 单价: 56.0 -> 11.2, 单位: 箱 -> 瓶
2025-05-02 19:15:43,877 - app.core.excel.converter - INFO - 从名称推断规格(直接): 500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装 -> 1*15
2025-05-02 19:15:43,944 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,944 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:15:43,944 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 55.0 -> 3.6666666666666665, 单位: 箱 -> 瓶
2025-05-02 19:15:43,945 - app.core.excel.converter - INFO - 从名称推断规格(直接): 500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装 -> 1*15
2025-05-02 19:15:43,945 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,946 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:15:43,946 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:15:43,946 - app.core.excel.converter - INFO - 从名称推断规格(入): 900树叶茉莉花茶12入纸箱 -> 1*2
2025-05-02 19:15:43,946 - app.core.excel.converter - INFO - 从数量提取单位: 5箱 -> 数量=5.0, 单位=箱
2025-05-02 19:15:43,946 - app.core.excel.converter - INFO - 解析二级规格: 1*2 -> 1*2
2025-05-02 19:15:43,947 - app.core.excel.converter - INFO - 箱单位处理: 数量: 5.0 -> 10.0, 单价: 62.0 -> 31.0, 单位: 箱 -> 瓶
2025-05-02 19:15:43,947 - app.core.excel.converter - INFO - 从名称推断规格(入): 900树叶青柑普洱12入纸箱 -> 1*2
2025-05-02 19:15:43,947 - app.core.excel.converter - INFO - 从数量提取单位: 2箱 -> 数量=2.0, 单位=箱
2025-05-02 19:15:43,948 - app.core.excel.converter - INFO - 解析二级规格: 1*2 -> 1*2
2025-05-02 19:15:43,948 - app.core.excel.converter - INFO - 箱单位处理: 数量: 2.0 -> 4.0, 单价: 62.0 -> 31.0, 单位: 箱 -> 瓶
2025-05-02 19:15:43,949 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,950 - app.core.excel.converter - INFO - 从名称推断规格(直接): 300NFC橙3*10纸箱 -> 3*10
2025-05-02 19:15:43,950 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:43,950 - app.core.excel.converter - INFO - 解析二级规格: 3*10 -> 3*10
2025-05-02 19:15:43,950 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 10.0, 单价: 180.0 -> 18.0, 单位: 箱 -> 瓶
2025-05-02 19:15:47,199 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:47,200 - app.core.excel.converter - INFO - 从名称推断规格(L): 1.5L水12白膜 -> 1.5L*1
2025-05-02 19:15:47,200 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:47,201 - app.core.excel.converter - INFO - 解析容量规格: 1.5L*1 -> 1.5L*1
2025-05-02 19:15:47,201 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 1.0, 单价: 28.0 -> 28.0, 单位: 箱 -> 瓶
2025-05-02 19:15:47,202 - app.core.excel.converter - INFO - 从名称推断规格(L): 2L水8白膜 -> 2L*1
2025-05-02 19:15:47,202 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:47,202 - app.core.excel.converter - INFO - 解析容量规格: 2L*1 -> 2.0L*1
2025-05-02 19:15:47,202 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 1.0, 单价: 23.0 -> 23.0, 单位: 箱 -> 瓶
2025-05-02 19:15:47,202 - app.core.excel.converter - INFO - 从名称推断规格(入): 6L水4入纸箱 -> 1*4
2025-05-02 19:15:47,202 - app.core.excel.converter - INFO - 从数量提取单位: 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:15:47,203 - app.core.excel.converter - INFO - 解析二级规格: 1*4 -> 1*4
2025-05-02 19:15:47,203 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 4.0, 单价: 33.0 -> 8.25, 单位: 箱 -> 瓶
2025-05-02 19:15:47,203 - app.core.excel.converter - INFO - 从名称推断规格(L): 12.9L桶装水 -> 12.9L*1
2025-05-02 19:15:47,203 - app.core.excel.converter - INFO - 从数量提取单位: 2桶 -> 数量=2.0, 单位=桶
2025-05-02 19:15:47,203 - app.core.excel.converter - INFO - 解析容量规格: 12.9L*1 -> 12.9L*1
2025-05-02 19:15:47,203 - app.core.excel.converter - INFO - 其他单位处理: 保持原样 数量: 2.0, 单价: 16.0, 单位: 桶
2025-05-02 19:15:47,204 - app.core.excel.converter - INFO - 从数量提取单位: 2箱 -> 数量=2.0, 单位=箱
2025-05-02 19:15:47,204 - app.core.excel.converter - INFO - 从数量提取单位: 5箱 -> 数量=5.0, 单位=箱
2025-05-02 19:42:21,807 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:21,808 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 450果园30%橙子15入纸箱 -> 1*15
2025-05-02 19:42:21,810 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:42:21,810 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:42:21,812 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:21,812 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 450果园30%葡萄15入纸箱 -> 1*15
2025-05-02 19:42:21,813 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:42:21,813 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 56.0 -> 3.7333333333333334, 单位: 箱 -> 瓶
2025-05-02 19:42:21,814 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:21,814 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 450果园30%楂苹梅15入纸箱 -> 1*15
2025-05-02 19:42:21,815 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:42:21,816 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 56.0 -> 3.7333333333333334, 单位: 箱 -> 瓶
2025-05-02 19:42:21,816 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:21,895 - app.core.excel.converter - INFO - 从名称推断规格(直接格式): 500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装 -> 1*15
2025-05-02 19:42:21,896 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:42:21,896 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 55.0 -> 3.6666666666666665, 单位: 箱 -> 瓶
2025-05-02 19:42:21,897 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:21,898 - app.core.excel.converter - INFO - 从名称推断规格(直接格式): 500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装 -> 1*15
2025-05-02 19:42:21,898 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:42:21,898 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:42:21,899 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 5箱 -> 数量=5.0, 单位=箱
2025-05-02 19:42:21,899 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 900树叶茉莉花茶12入纸箱 -> 1*12
2025-05-02 19:42:21,899 - app.core.excel.converter - INFO - 解析二级规格: 1*12 -> 1*12
2025-05-02 19:42:21,900 - app.core.excel.converter - INFO - 箱单位处理: 数量: 5.0 -> 60.0, 单价: 62.0 -> 5.166666666666667, 单位: 箱 -> 瓶
2025-05-02 19:42:21,900 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 2箱 -> 数量=2.0, 单位=箱
2025-05-02 19:42:21,900 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 900树叶青柑普洱12入纸箱 -> 1*12
2025-05-02 19:42:21,901 - app.core.excel.converter - INFO - 解析二级规格: 1*12 -> 1*12
2025-05-02 19:42:21,901 - app.core.excel.converter - INFO - 箱单位处理: 数量: 2.0 -> 24.0, 单价: 62.0 -> 5.166666666666667, 单位: 箱 -> 瓶
2025-05-02 19:42:21,901 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:21,902 - app.core.excel.converter - INFO - 从名称推断规格(纸箱): 500茶π蜜桃乌龙15纸箱 -> 1*15
2025-05-02 19:42:21,902 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:42:21,902 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 56.0 -> 3.7333333333333334, 单位: 箱 -> 瓶
2025-05-02 19:42:21,902 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:26,109 - app.core.excel.converter - INFO - 从名称推断规格(直接格式): 300NFC橙3*10纸箱 -> 3*10
2025-05-02 19:42:26,109 - app.core.excel.converter - INFO - 解析二级规格: 3*10 -> 3*10
2025-05-02 19:42:26,109 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 10.0, 单价: 180.0 -> 18.0, 单位: 箱 -> 瓶
2025-05-02 19:42:26,110 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:26,110 - app.core.excel.converter - INFO - 从名称推断规格(纸箱): 380水24纸箱 -> 1*24
2025-05-02 19:42:26,110 - app.core.excel.converter - INFO - 解析二级规格: 1*24 -> 1*24
2025-05-02 19:42:26,111 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 24.0, 单价: 26.0 -> 1.0833333333333333, 单位: 箱 -> 瓶
2025-05-02 19:42:26,111 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 1.5L水12白膜 -> 1*12
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 解析二级规格: 1*12 -> 1*12
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 12.0, 单价: 28.0 -> 2.3333333333333335, 单位: 箱 -> 瓶
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 2L水8白膜 -> 1*8
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 解析二级规格: 1*8 -> 1*8
2025-05-02 19:42:26,112 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 8.0, 单价: 23.0 -> 2.875, 单位: 箱 -> 瓶
2025-05-02 19:42:26,113 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:42:26,113 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 6L水4入纸箱 -> 1*4
2025-05-02 19:42:26,113 - app.core.excel.converter - INFO - 解析二级规格: 1*4 -> 1*4
2025-05-02 19:42:26,113 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 4.0, 单价: 33.0 -> 8.25, 单位: 箱 -> 瓶
2025-05-02 19:42:26,114 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 2桶 -> 数量=2.0, 单位=桶
2025-05-02 19:42:26,114 - app.core.excel.converter - INFO - 从名称推断规格(容量): 12.9L桶装水 -> 12.9L*1
2025-05-02 19:42:29,206 - app.core.excel.converter - INFO - 解析容量规格: 12.9L*1 -> 12.9L*1
2025-05-02 19:42:29,206 - app.core.excel.converter - INFO - 其他单位处理: 保持原样 数量: 2.0, 单价: 16.0, 单位: 桶
2025-05-02 19:42:29,207 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 2箱 -> 数量=2.0, 单位=箱
2025-05-02 19:42:29,207 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 550水24白膜 -> 1*24
2025-05-02 19:42:29,207 - app.core.excel.converter - INFO - 解析二级规格: 1*24 -> 1*24
2025-05-02 19:42:29,208 - app.core.excel.converter - INFO - 箱单位处理: 数量: 2.0 -> 48.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:42:29,208 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 5箱 -> 数量=5.0, 单位=箱
2025-05-02 19:42:29,208 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 550水24白膜 -> 1*24
2025-05-02 19:42:29,208 - app.core.excel.converter - INFO - 解析二级规格: 1*24 -> 1*24
2025-05-02 19:42:29,209 - app.core.excel.converter - INFO - 箱单位处理: 数量: 5.0 -> 120.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:53:30,448 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:30,449 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 450果园30%橙子15入纸箱 -> 1*15
2025-05-02 19:53:30,450 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:53:30,450 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:53:30,451 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:30,451 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 450果园30%葡萄15入纸箱 -> 1*15
2025-05-02 19:53:30,451 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:53:30,451 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 56.0 -> 3.7333333333333334, 单位: 箱 -> 瓶
2025-05-02 19:53:30,452 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:30,452 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 450果园30%楂苹梅15入纸箱 -> 1*15
2025-05-02 19:53:30,452 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:53:30,452 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 56.0 -> 3.7333333333333334, 单位: 箱 -> 瓶
2025-05-02 19:53:30,452 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:30,525 - app.core.excel.converter - INFO - 从名称推断规格(直接格式): 500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装 -> 1*15
2025-05-02 19:53:30,525 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:53:30,526 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 55.0 -> 3.6666666666666665, 单位: 箱 -> 瓶
2025-05-02 19:53:30,526 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:30,527 - app.core.excel.converter - INFO - 从名称推断规格(直接格式): 500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装 -> 1*15
2025-05-02 19:53:30,527 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:53:30,527 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:53:30,528 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 5箱 -> 数量=5.0, 单位=箱
2025-05-02 19:53:30,528 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 900树叶茉莉花茶12入纸箱 -> 1*12
2025-05-02 19:53:30,529 - app.core.excel.converter - INFO - 解析二级规格: 1*12 -> 1*12
2025-05-02 19:53:30,529 - app.core.excel.converter - INFO - 箱单位处理: 数量: 5.0 -> 60.0, 单价: 62.0 -> 5.166666666666667, 单位: 箱 -> 瓶
2025-05-02 19:53:30,530 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 2箱 -> 数量=2.0, 单位=箱
2025-05-02 19:53:30,530 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 900树叶青柑普洱12入纸箱 -> 1*12
2025-05-02 19:53:30,530 - app.core.excel.converter - INFO - 解析二级规格: 1*12 -> 1*12
2025-05-02 19:53:30,530 - app.core.excel.converter - INFO - 箱单位处理: 数量: 2.0 -> 24.0, 单价: 62.0 -> 5.166666666666667, 单位: 箱 -> 瓶
2025-05-02 19:53:30,531 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:30,531 - app.core.excel.converter - INFO - 从名称推断规格(纸箱): 500茶π蜜桃乌龙15纸箱 -> 1*15
2025-05-02 19:53:30,531 - app.core.excel.converter - INFO - 解析二级规格: 1*15 -> 1*15
2025-05-02 19:53:30,531 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 15.0, 单价: 56.0 -> 3.7333333333333334, 单位: 箱 -> 瓶
2025-05-02 19:53:30,532 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:35,279 - app.core.excel.converter - INFO - 从名称推断规格(直接格式): 300NFC橙3*10纸箱 -> 3*10
2025-05-02 19:53:35,279 - app.core.excel.converter - INFO - 特殊条码处理: 6921168593804, 数量: 1.0 -> 30.0, 单价: 180.0 -> 6.0, 单位: 箱 -> 瓶
2025-05-02 19:53:35,280 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:35,280 - app.core.excel.converter - INFO - 从名称推断规格(纸箱): 380水24纸箱 -> 1*24
2025-05-02 19:53:35,280 - app.core.excel.converter - INFO - 解析二级规格: 1*24 -> 1*24
2025-05-02 19:53:35,281 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 24.0, 单价: 26.0 -> 1.0833333333333333, 单位: 箱 -> 瓶
2025-05-02 19:53:35,281 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:35,282 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 1.5L水12白膜 -> 1*12
2025-05-02 19:53:35,282 - app.core.excel.converter - INFO - 解析二级规格: 1*12 -> 1*12
2025-05-02 19:53:35,282 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 12.0, 单价: 28.0 -> 2.3333333333333335, 单位: 箱 -> 瓶
2025-05-02 19:53:35,283 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:35,283 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 2L水8白膜 -> 1*8
2025-05-02 19:53:35,284 - app.core.excel.converter - INFO - 解析二级规格: 1*8 -> 1*8
2025-05-02 19:53:35,284 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 8.0, 单价: 23.0 -> 2.875, 单位: 箱 -> 瓶
2025-05-02 19:53:35,285 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 1箱 -> 数量=1.0, 单位=箱
2025-05-02 19:53:35,285 - app.core.excel.converter - INFO - 从名称推断规格(入纸箱): 6L水4入纸箱 -> 1*4
2025-05-02 19:53:35,285 - app.core.excel.converter - INFO - 解析二级规格: 1*4 -> 1*4
2025-05-02 19:53:35,285 - app.core.excel.converter - INFO - 箱单位处理: 数量: 1.0 -> 4.0, 单价: 33.0 -> 8.25, 单位: 箱 -> 瓶
2025-05-02 19:53:35,286 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 2桶 -> 数量=2.0, 单位=桶
2025-05-02 19:53:35,287 - app.core.excel.converter - INFO - 从名称推断规格(容量): 12.9L桶装水 -> 12.9L*1
2025-05-02 19:53:39,726 - app.core.excel.converter - INFO - 解析容量规格: 12.9L*1 -> 12.9L*1
2025-05-02 19:53:39,727 - app.core.excel.converter - INFO - 其他单位处理: 保持原样 数量: 2.0, 单价: 16.0, 单位: 桶
2025-05-02 19:53:39,728 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 2箱 -> 数量=2.0, 单位=箱
2025-05-02 19:53:39,728 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 550水24白膜 -> 1*24
2025-05-02 19:53:39,729 - app.core.excel.converter - INFO - 解析二级规格: 1*24 -> 1*24
2025-05-02 19:53:39,729 - app.core.excel.converter - INFO - 箱单位处理: 数量: 2.0 -> 48.0, 单价: 0 -> 0, 单位: 箱 -> 瓶
2025-05-02 19:53:39,729 - app.core.excel.converter - INFO - 从数量提取单位(基本格式): 5箱 -> 数量=5.0, 单位=箱
2025-05-02 19:53:39,729 - app.core.excel.converter - INFO - 从名称推断规格(白膜): 550水24白膜 -> 1*24
2025-05-02 19:53:39,730 - app.core.excel.converter - INFO - 解析二级规格: 1*24 -> 1*24
2025-05-02 19:53:39,730 - app.core.excel.converter - INFO - 箱单位处理: 数量: 5.0 -> 120.0, 单价: 0 -> 0, 单位: 箱 -> 瓶

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -52,3 +52,37 @@
2025-05-02 18:38:52,881 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls 2025-05-02 18:38:52,881 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 18:41:16,743 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger 2025-05-02 18:41:16,743 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 18:41:16,743 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls 2025-05-02 18:41:16,743 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:15:17,472 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:15:17,472 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:15:43,268 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:15:43,269 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:33:54,963 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:33:54,964 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:35:48,763 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:35:48,764 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:36:15,985 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:36:15,986 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:42:19,206 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:42:19,207 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:42:36,440 - app.core.excel.merger - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的采购单Excel文件
2025-05-02 19:42:36,441 - app.core.excel.merger - INFO - 找到 1 个采购单Excel文件
2025-05-02 19:42:36,441 - app.core.excel.merger - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的采购单Excel文件
2025-05-02 19:42:36,442 - app.core.excel.merger - INFO - 找到 1 个采购单Excel文件
2025-05-02 19:42:36,451 - app.core.excel.merger - INFO - 成功读取采购单文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:42:36,455 - app.core.excel.merger - INFO - 列名映射结果: {'条码': '条码(必填)', '采购量': '采购量(必填)', '采购单价': '采购单价(必填)', '赠送量': '赠送量'}
2025-05-02 19:42:36,456 - app.core.excel.merger - INFO - 开始合并 1 个采购单文件
2025-05-02 19:42:36,456 - app.core.excel.merger - WARNING - 数据帧 0 缺少必要的列: ['条码', '采购量', '采购单价']
2025-05-02 19:42:36,456 - app.core.excel.merger - WARNING - 没有有效的数据帧用于合并
2025-05-02 19:42:36,457 - app.core.excel.merger - ERROR - 合并采购单失败
2025-05-02 19:53:27,941 - app.core.excel.merger - INFO - 初始化PurchaseOrderMerger
2025-05-02 19:53:27,941 - app.core.excel.merger - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:53:47,770 - app.core.excel.merger - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的采购单Excel文件
2025-05-02 19:53:47,771 - app.core.excel.merger - INFO - 找到 1 个采购单Excel文件
2025-05-02 19:53:47,771 - app.core.excel.merger - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的采购单Excel文件
2025-05-02 19:53:47,772 - app.core.excel.merger - INFO - 找到 1 个采购单Excel文件
2025-05-02 19:53:47,780 - app.core.excel.merger - INFO - 成功读取采购单文件: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:53:47,784 - app.core.excel.merger - INFO - 列名映射结果: {'条码': '条码(必填)', '采购量': '采购量(必填)', '采购单价': '采购单价(必填)', '赠送量': '赠送量'}
2025-05-02 19:53:47,784 - app.core.excel.merger - INFO - 开始合并 1 个采购单文件
2025-05-02 19:53:47,785 - app.core.excel.merger - WARNING - 数据帧 0 缺少必要的列: ['条码', '采购量', '采购单价']
2025-05-02 19:53:47,785 - app.core.excel.merger - WARNING - 没有有效的数据帧用于合并
2025-05-02 19:53:47,785 - app.core.excel.merger - ERROR - 合并采购单失败

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -457,3 +457,384 @@
2025-05-02 18:41:17,396 - app.core.excel.processor - INFO - 条码 6973497202360 填充:仅有赠品,采购量=0赠品数量=1.0 2025-05-02 18:41:17,396 - app.core.excel.processor - INFO - 条码 6973497202360 填充:仅有赠品,采购量=0赠品数量=1.0
2025-05-02 18:41:17,396 - app.core.excel.processor - INFO - 条码 6973497202889 填充:仅有赠品,采购量=0赠品数量=1.0 2025-05-02 18:41:17,396 - app.core.excel.processor - INFO - 条码 6973497202889 填充:仅有赠品,采购量=0赠品数量=1.0
2025-05-02 18:41:17,400 - app.core.excel.processor - INFO - 采购单已保存到: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250227193150(1).xls 2025-05-02 18:41:17,400 - app.core.excel.processor - INFO - 采购单已保存到: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250227193150(1).xls
2025-05-02 19:15:17,470 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:15:17,471 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:15:43,268 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:15:43,268 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:15:43,269 - app.core.excel.processor - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的Excel文件
2025-05-02 19:15:43,269 - app.core.excel.processor - INFO - 找到最新的Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:15:43,270 - app.core.excel.processor - INFO - 开始处理Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:15:43,855 - app.core.excel.processor - INFO - 成功读取Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx, 共 18 行
2025-05-02 19:15:43,857 - app.core.excel.processor - INFO - 找到可能的表头行: 第1行评分: 35
2025-05-02 19:15:43,857 - app.core.excel.processor - INFO - 识别到表头在第 1 行
2025-05-02 19:15:43,871 - app.core.excel.processor - INFO - 使用表头行重新读取数据,共 17 行有效数据
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 移除空行后,有效数据行数: 17
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 找到精确匹配的条码列: 条形码
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 使用条码列: 条形码
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 找到name列: 商品名称
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 找到quantity列: 订单数量
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 找到price列: 销售价
2025-05-02 19:15:43,872 - app.core.excel.processor - INFO - 列名映射结果: {'barcode': '条形码', 'name': '商品名称', 'quantity': '订单数量', 'price': '销售价'}
2025-05-02 19:15:43,873 - app.core.excel.processor - INFO - 第1行: 提取商品信息 条码=6921168532001, 名称=450果园30%橙子15入纸箱, 规格=, 数量=1.0, 单位=, 单价=0
2025-05-02 19:15:43,874 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%橙子15入纸箱 -> 1*5
2025-05-02 19:15:43,874 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,875 - app.core.excel.processor - INFO - 第2行: 提取商品信息 条码=6921168594672, 名称=450果园30%葡萄15入纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:15:43,875 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%葡萄15入纸箱 -> 1*5
2025-05-02 19:15:43,876 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,876 - app.core.excel.processor - INFO - 第3行: 提取商品信息 条码=6921168598755, 名称=450果园30%楂苹梅15入纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:15:43,876 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%楂苹梅15入纸箱 -> 1*5
2025-05-02 19:15:43,876 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,877 - app.core.excel.processor - INFO - 第4行: 提取商品信息 条码=6921168596348, 名称=500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装, 规格=, 数量=1.0, 单位=, 单价=55.0
2025-05-02 19:15:43,877 - app.core.excel.processor - INFO - 从商品名称推断规格: 500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装 -> 1*15
2025-05-02 19:15:43,944 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,945 - app.core.excel.processor - INFO - 第5行: 提取商品信息 条码=6921168558032, 名称=500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装, 规格=, 数量=1.0, 单位=, 单价=0
2025-05-02 19:15:43,945 - app.core.excel.processor - INFO - 从商品名称推断规格: 500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装 -> 1*15
2025-05-02 19:15:43,945 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,946 - app.core.excel.processor - INFO - 第6行: 提取商品信息 条码=6921168598427, 名称=900树叶茉莉花茶12入纸箱, 规格=, 数量=5.0, 单位=, 单价=62.0
2025-05-02 19:15:43,946 - app.core.excel.processor - INFO - 从商品名称推断规格: 900树叶茉莉花茶12入纸箱 -> 1*2
2025-05-02 19:15:43,946 - app.core.excel.processor - INFO - 从数量提取单位: 5箱 -> 箱
2025-05-02 19:15:43,947 - app.core.excel.processor - INFO - 第7行: 提取商品信息 条码=6921168598649, 名称=900树叶青柑普洱12入纸箱, 规格=, 数量=2.0, 单位=, 单价=62.0
2025-05-02 19:15:43,947 - app.core.excel.processor - INFO - 从商品名称推断规格: 900树叶青柑普洱12入纸箱 -> 1*2
2025-05-02 19:15:43,948 - app.core.excel.processor - INFO - 从数量提取单位: 2箱 -> 箱
2025-05-02 19:15:43,948 - app.core.excel.processor - INFO - 第8行: 提取商品信息 条码=6921168593569, 名称=500茶π蜜桃乌龙15纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:15:43,950 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,950 - app.core.excel.processor - INFO - 第9行: 提取商品信息 条码=6921168593804, 名称=300NFC橙3*10纸箱, 规格=, 数量=1.0, 单位=, 单价=180.0
2025-05-02 19:15:43,950 - app.core.excel.processor - INFO - 从商品名称推断规格: 300NFC橙3*10纸箱 -> 3*10
2025-05-02 19:15:43,950 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:43,951 - app.core.excel.processor - INFO - 第10行: 提取商品信息 条码=6921168511280, 名称=380水24纸箱, 规格=, 数量=1.0, 单位=, 单价=26.0
2025-05-02 19:15:47,199 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:47,200 - app.core.excel.processor - INFO - 第11行: 提取商品信息 条码=6921168520015, 名称=1.5L水12白膜, 规格=, 数量=1.0, 单位=, 单价=28.0
2025-05-02 19:15:47,200 - app.core.excel.processor - INFO - 从商品名称推断规格: 1.5L水12白膜 -> 1.5L*1
2025-05-02 19:15:47,200 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:47,201 - app.core.excel.processor - INFO - 第12行: 提取商品信息 条码=6921168593521, 名称=2L水8白膜, 规格=, 数量=1.0, 单位=, 单价=23.0
2025-05-02 19:15:47,202 - app.core.excel.processor - INFO - 从商品名称推断规格: 2L水8白膜 -> 2L*1
2025-05-02 19:15:47,202 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:47,202 - app.core.excel.processor - INFO - 第13行: 提取商品信息 条码=6921168598113, 名称=6L水4入纸箱, 规格=, 数量=1.0, 单位=, 单价=33.0
2025-05-02 19:15:47,202 - app.core.excel.processor - INFO - 从商品名称推断规格: 6L水4入纸箱 -> 1*4
2025-05-02 19:15:47,203 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:15:47,203 - app.core.excel.processor - INFO - 第14行: 提取商品信息 条码=6921168594054, 名称=12.9L桶装水, 规格=, 数量=2.0, 单位=, 单价=16.0
2025-05-02 19:15:47,203 - app.core.excel.processor - INFO - 从商品名称推断规格: 12.9L桶装水 -> 12.9L*1
2025-05-02 19:15:47,203 - app.core.excel.processor - INFO - 从数量提取单位: 2桶 -> 桶
2025-05-02 19:15:47,204 - app.core.excel.processor - INFO - 第15行: 提取商品信息 条码=6921168509256, 名称=550水24白膜, 规格=, 数量=2.0, 单位=, 单价=0
2025-05-02 19:15:47,204 - app.core.excel.processor - INFO - 从数量提取单位: 2箱 -> 箱
2025-05-02 19:15:47,204 - app.core.excel.processor - INFO - 第16行: 提取商品信息 条码=6921168509256, 名称=550水24白膜, 规格=, 数量=5.0, 单位=, 单价=0
2025-05-02 19:15:47,204 - app.core.excel.processor - INFO - 从数量提取单位: 5箱 -> 箱
2025-05-02 19:15:47,204 - app.core.excel.processor - INFO - 提取到 16 个商品信息
2025-05-02 19:15:47,211 - app.core.excel.processor - INFO - 开始处理16 个产品信息
2025-05-02 19:15:47,211 - app.core.excel.processor - INFO - 处理商品: 条码=6921168532001, 数量=5.0, 单价=0, 是否赠品=True
2025-05-02 19:15:49,015 - app.core.excel.processor - INFO - 发现赠品条码6921168532001, 数量=5.0
2025-05-02 19:15:49,016 - app.core.excel.processor - INFO - 处理商品: 条码=6921168594672, 数量=5.0, 单价=11.2, 是否赠品=False
2025-05-02 19:15:49,016 - app.core.excel.processor - INFO - 发现正常商品条码6921168594672, 数量=5.0, 单价=11.2
2025-05-02 19:15:49,016 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598755, 数量=5.0, 单价=11.2, 是否赠品=False
2025-05-02 19:15:49,016 - app.core.excel.processor - INFO - 发现正常商品条码6921168598755, 数量=5.0, 单价=11.2
2025-05-02 19:15:49,016 - app.core.excel.processor - INFO - 处理商品: 条码=6921168596348, 数量=15.0, 单价=3.6666666666666665, 是否赠品=False
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 发现正常商品条码6921168596348, 数量=15.0, 单价=3.6666666666666665
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 处理商品: 条码=6921168558032, 数量=15.0, 单价=0, 是否赠品=True
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 发现赠品条码6921168558032, 数量=15.0
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598427, 数量=10.0, 单价=31.0, 是否赠品=False
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 发现正常商品条码6921168598427, 数量=10.0, 单价=31.0
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598649, 数量=4.0, 单价=31.0, 是否赠品=False
2025-05-02 19:15:49,017 - app.core.excel.processor - INFO - 发现正常商品条码6921168598649, 数量=4.0, 单价=31.0
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593569, 数量=1.0, 单价=56.0, 是否赠品=False
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 发现正常商品条码6921168593569, 数量=1.0, 单价=56.0
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593804, 数量=10.0, 单价=18.0, 是否赠品=False
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 发现正常商品条码6921168593804, 数量=10.0, 单价=18.0
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 处理商品: 条码=6921168511280, 数量=1.0, 单价=26.0, 是否赠品=False
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 发现正常商品条码6921168511280, 数量=1.0, 单价=26.0
2025-05-02 19:15:49,018 - app.core.excel.processor - INFO - 处理商品: 条码=6921168520015, 数量=1.0, 单价=28.0, 是否赠品=False
2025-05-02 19:15:49,019 - app.core.excel.processor - INFO - 发现正常商品条码6921168520015, 数量=1.0, 单价=28.0
2025-05-02 19:15:49,019 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593521, 数量=1.0, 单价=23.0, 是否赠品=False
2025-05-02 19:15:49,019 - app.core.excel.processor - INFO - 发现正常商品条码6921168593521, 数量=1.0, 单价=23.0
2025-05-02 19:15:49,019 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598113, 数量=4.0, 单价=8.25, 是否赠品=False
2025-05-02 19:15:49,019 - app.core.excel.processor - INFO - 发现正常商品条码6921168598113, 数量=4.0, 单价=8.25
2025-05-02 19:15:49,020 - app.core.excel.processor - INFO - 处理商品: 条码=6921168594054, 数量=2.0, 单价=16.0, 是否赠品=False
2025-05-02 19:15:49,020 - app.core.excel.processor - INFO - 发现正常商品条码6921168594054, 数量=2.0, 单价=16.0
2025-05-02 19:15:49,020 - app.core.excel.processor - INFO - 处理商品: 条码=6921168509256, 数量=2.0, 单价=0, 是否赠品=True
2025-05-02 19:15:49,020 - app.core.excel.processor - INFO - 发现赠品条码6921168509256, 数量=2.0
2025-05-02 19:15:49,020 - app.core.excel.processor - INFO - 处理商品: 条码=6921168509256, 数量=5.0, 单价=0, 是否赠品=True
2025-05-02 19:15:49,021 - app.core.excel.processor - INFO - 发现赠品条码6921168509256, 数量=5.0
2025-05-02 19:15:49,021 - app.core.excel.processor - INFO - 分组后共15 个不同条码的商品
2025-05-02 19:15:49,021 - app.core.excel.processor - INFO - 条码 6921168532001 处理结果:只有赠品,数量=5.0
2025-05-02 19:15:49,021 - app.core.excel.processor - INFO - 条码 6921168594672 处理结果正常商品数量5.0单价11.2赠品数量0
2025-05-02 19:15:49,021 - app.core.excel.processor - INFO - 条码 6921168598755 处理结果正常商品数量5.0单价11.2赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168596348 处理结果正常商品数量15.0单价3.6666666666666665赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168558032 处理结果:只有赠品,数量=15.0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168598427 处理结果正常商品数量10.0单价31.0赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168598649 处理结果正常商品数量4.0单价31.0赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168593569 处理结果正常商品数量1.0单价56.0赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168593804 处理结果正常商品数量10.0单价18.0赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168511280 处理结果正常商品数量1.0单价26.0赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168520015 处理结果正常商品数量1.0单价28.0赠品数量0
2025-05-02 19:15:51,235 - app.core.excel.processor - INFO - 条码 6921168593521 处理结果正常商品数量1.0单价23.0赠品数量0
2025-05-02 19:15:51,236 - app.core.excel.processor - INFO - 条码 6921168598113 处理结果正常商品数量4.0单价8.25赠品数量0
2025-05-02 19:15:51,236 - app.core.excel.processor - INFO - 条码 6921168594054 处理结果正常商品数量2.0单价16.0赠品数量0
2025-05-02 19:15:51,236 - app.core.excel.processor - INFO - 条码 6921168509256 处理结果:只有赠品,数量=7.0
2025-05-02 19:15:51,236 - app.core.excel.processor - INFO - 条码 6921168532001 填充:仅有赠品,采购量=0赠品数量=5.0
2025-05-02 19:15:51,236 - app.core.excel.processor - INFO - 条码 6921168558032 填充:仅有赠品,采购量=0赠品数量=15.0
2025-05-02 19:15:51,236 - app.core.excel.processor - INFO - 条码 6921168509256 填充:仅有赠品,采购量=0赠品数量=7.0
2025-05-02 19:15:51,239 - app.core.excel.processor - INFO - 采购单已保存到: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:15:51,441 - app.core.excel.processor - INFO - 已自动打开输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:33:54,963 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:33:54,963 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:33:54,966 - app.core.excel.processor - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的Excel文件
2025-05-02 19:33:54,967 - app.core.excel.processor - WARNING - 未在 D:\My Documents\python\orc-order-v2\data\output 目录下找到未处理的Excel文件
2025-05-02 19:35:48,762 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:35:48,763 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:35:48,766 - app.core.excel.processor - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的Excel文件
2025-05-02 19:35:48,817 - app.core.excel.processor - WARNING - 未在 D:\My Documents\python\orc-order-v2\data\output 目录下找到未处理的Excel文件
2025-05-02 19:36:15,984 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:36:15,985 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:36:15,988 - app.core.excel.processor - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的Excel文件
2025-05-02 19:36:15,988 - app.core.excel.processor - WARNING - 未在 D:\My Documents\python\orc-order-v2\data\output 目录下找到未处理的Excel文件
2025-05-02 19:42:19,205 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:42:19,206 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:42:21,167 - app.core.excel.processor - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的Excel文件
2025-05-02 19:42:21,167 - app.core.excel.processor - INFO - 找到最新的Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:42:21,168 - app.core.excel.processor - INFO - 开始处理Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:42:21,792 - app.core.excel.processor - INFO - 成功读取Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx, 共 18 行
2025-05-02 19:42:21,794 - app.core.excel.processor - INFO - 找到可能的表头行: 第1行评分: 35
2025-05-02 19:42:21,795 - app.core.excel.processor - INFO - 识别到表头在第 1 行
2025-05-02 19:42:21,805 - app.core.excel.processor - INFO - 使用表头行重新读取数据,共 17 行有效数据
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 移除空行后,有效数据行数: 17
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 找到精确匹配的条码列: 条形码
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 使用条码列: 条形码
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 找到name列: 商品名称
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 找到quantity列: 订单数量
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 找到price列: 销售价
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 列名映射结果: {'barcode': '条形码', 'name': '商品名称', 'quantity': '订单数量', 'price': '销售价'}
2025-05-02 19:42:21,806 - app.core.excel.processor - INFO - 是否存在规格列: False
2025-05-02 19:42:21,807 - app.core.excel.processor - INFO - 第1行: 提取商品信息 条码=6921168532001, 名称=450果园30%橙子15入纸箱, 规格=, 数量=1.0, 单位=, 单价=0
2025-05-02 19:42:21,808 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:21,808 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%橙子15入纸箱 -> 1*15
2025-05-02 19:42:21,811 - app.core.excel.processor - INFO - 第2行: 提取商品信息 条码=6921168594672, 名称=450果园30%葡萄15入纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:42:21,812 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:21,813 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%葡萄15入纸箱 -> 1*15
2025-05-02 19:42:21,814 - app.core.excel.processor - INFO - 第3行: 提取商品信息 条码=6921168598755, 名称=450果园30%楂苹梅15入纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:42:21,814 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:21,815 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%楂苹梅15入纸箱 -> 1*15
2025-05-02 19:42:21,816 - app.core.excel.processor - INFO - 第4行: 提取商品信息 条码=6921168596348, 名称=500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装, 规格=, 数量=1.0, 单位=, 单价=55.0
2025-05-02 19:42:21,895 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:21,896 - app.core.excel.processor - INFO - 从商品名称推断规格: 500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装 -> 1*15
2025-05-02 19:42:21,897 - app.core.excel.processor - INFO - 第5行: 提取商品信息 条码=6921168558032, 名称=500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装, 规格=, 数量=1.0, 单位=, 单价=0
2025-05-02 19:42:21,897 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:21,898 - app.core.excel.processor - INFO - 从商品名称推断规格: 500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装 -> 1*15
2025-05-02 19:42:21,899 - app.core.excel.processor - INFO - 第6行: 提取商品信息 条码=6921168598427, 名称=900树叶茉莉花茶12入纸箱, 规格=, 数量=5.0, 单位=, 单价=62.0
2025-05-02 19:42:21,899 - app.core.excel.processor - INFO - 从数量提取单位: 5箱 -> 箱
2025-05-02 19:42:21,899 - app.core.excel.processor - INFO - 从商品名称推断规格: 900树叶茉莉花茶12入纸箱 -> 1*12
2025-05-02 19:42:21,900 - app.core.excel.processor - INFO - 第7行: 提取商品信息 条码=6921168598649, 名称=900树叶青柑普洱12入纸箱, 规格=, 数量=2.0, 单位=, 单价=62.0
2025-05-02 19:42:21,900 - app.core.excel.processor - INFO - 从数量提取单位: 2箱 -> 箱
2025-05-02 19:42:21,900 - app.core.excel.processor - INFO - 从商品名称推断规格: 900树叶青柑普洱12入纸箱 -> 1*12
2025-05-02 19:42:21,901 - app.core.excel.processor - INFO - 第8行: 提取商品信息 条码=6921168593569, 名称=500茶π蜜桃乌龙15纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:42:21,901 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:21,902 - app.core.excel.processor - INFO - 从商品名称推断规格: 500茶π蜜桃乌龙15纸箱 -> 1*15
2025-05-02 19:42:21,902 - app.core.excel.processor - INFO - 第9行: 提取商品信息 条码=6921168593804, 名称=300NFC橙3*10纸箱, 规格=, 数量=1.0, 单位=, 单价=180.0
2025-05-02 19:42:26,108 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:26,109 - app.core.excel.processor - INFO - 从商品名称推断规格: 300NFC橙3*10纸箱 -> 3*10
2025-05-02 19:42:26,110 - app.core.excel.processor - INFO - 第10行: 提取商品信息 条码=6921168511280, 名称=380水24纸箱, 规格=, 数量=1.0, 单位=, 单价=26.0
2025-05-02 19:42:26,110 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:26,110 - app.core.excel.processor - INFO - 从商品名称推断规格: 380水24纸箱 -> 1*24
2025-05-02 19:42:26,111 - app.core.excel.processor - INFO - 第11行: 提取商品信息 条码=6921168520015, 名称=1.5L水12白膜, 规格=, 数量=1.0, 单位=, 单价=28.0
2025-05-02 19:42:26,111 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:26,112 - app.core.excel.processor - INFO - 从商品名称推断规格: 1.5L水12白膜 -> 1*12
2025-05-02 19:42:26,112 - app.core.excel.processor - INFO - 第12行: 提取商品信息 条码=6921168593521, 名称=2L水8白膜, 规格=, 数量=1.0, 单位=, 单价=23.0
2025-05-02 19:42:26,112 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:26,112 - app.core.excel.processor - INFO - 从商品名称推断规格: 2L水8白膜 -> 1*8
2025-05-02 19:42:26,112 - app.core.excel.processor - INFO - 第13行: 提取商品信息 条码=6921168598113, 名称=6L水4入纸箱, 规格=, 数量=1.0, 单位=, 单价=33.0
2025-05-02 19:42:26,113 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:42:26,113 - app.core.excel.processor - INFO - 从商品名称推断规格: 6L水4入纸箱 -> 1*4
2025-05-02 19:42:26,113 - app.core.excel.processor - INFO - 第14行: 提取商品信息 条码=6921168594054, 名称=12.9L桶装水, 规格=, 数量=2.0, 单位=, 单价=16.0
2025-05-02 19:42:26,114 - app.core.excel.processor - INFO - 从数量提取单位: 2桶 -> 桶
2025-05-02 19:42:26,114 - app.core.excel.processor - INFO - 从商品名称推断规格: 12.9L桶装水 -> 12.9L*1
2025-05-02 19:42:29,207 - app.core.excel.processor - INFO - 第15行: 提取商品信息 条码=6921168509256, 名称=550水24白膜, 规格=, 数量=2.0, 单位=, 单价=0
2025-05-02 19:42:29,207 - app.core.excel.processor - INFO - 从数量提取单位: 2箱 -> 箱
2025-05-02 19:42:29,207 - app.core.excel.processor - INFO - 从商品名称推断规格: 550水24白膜 -> 1*24
2025-05-02 19:42:29,208 - app.core.excel.processor - INFO - 第16行: 提取商品信息 条码=6921168509256, 名称=550水24白膜, 规格=, 数量=5.0, 单位=, 单价=0
2025-05-02 19:42:29,208 - app.core.excel.processor - INFO - 从数量提取单位: 5箱 -> 箱
2025-05-02 19:42:29,208 - app.core.excel.processor - INFO - 从商品名称推断规格: 550水24白膜 -> 1*24
2025-05-02 19:42:29,209 - app.core.excel.processor - INFO - 提取到 16 个商品信息
2025-05-02 19:42:29,220 - app.core.excel.processor - INFO - 开始处理16 个产品信息
2025-05-02 19:42:29,220 - app.core.excel.processor - INFO - 处理商品: 条码=6921168532001, 数量=15.0, 单价=0, 是否赠品=True
2025-05-02 19:42:29,220 - app.core.excel.processor - INFO - 发现赠品条码6921168532001, 数量=15.0
2025-05-02 19:42:29,220 - app.core.excel.processor - INFO - 处理商品: 条码=6921168594672, 数量=15.0, 单价=3.7333333333333334, 是否赠品=False
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 发现正常商品条码6921168594672, 数量=15.0, 单价=3.7333333333333334
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598755, 数量=15.0, 单价=3.7333333333333334, 是否赠品=False
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 发现正常商品条码6921168598755, 数量=15.0, 单价=3.7333333333333334
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 处理商品: 条码=6921168596348, 数量=15.0, 单价=3.6666666666666665, 是否赠品=False
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 发现正常商品条码6921168596348, 数量=15.0, 单价=3.6666666666666665
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 处理商品: 条码=6921168558032, 数量=15.0, 单价=0, 是否赠品=True
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 发现赠品条码6921168558032, 数量=15.0
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598427, 数量=60.0, 单价=5.166666666666667, 是否赠品=False
2025-05-02 19:42:29,221 - app.core.excel.processor - INFO - 发现正常商品条码6921168598427, 数量=60.0, 单价=5.166666666666667
2025-05-02 19:42:29,222 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598649, 数量=24.0, 单价=5.166666666666667, 是否赠品=False
2025-05-02 19:42:29,222 - app.core.excel.processor - INFO - 发现正常商品条码6921168598649, 数量=24.0, 单价=5.166666666666667
2025-05-02 19:42:29,222 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593569, 数量=15.0, 单价=3.7333333333333334, 是否赠品=False
2025-05-02 19:42:29,222 - app.core.excel.processor - INFO - 发现正常商品条码6921168593569, 数量=15.0, 单价=3.7333333333333334
2025-05-02 19:42:29,222 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593804, 数量=10.0, 单价=18.0, 是否赠品=False
2025-05-02 19:42:32,851 - app.core.excel.processor - INFO - 发现正常商品条码6921168593804, 数量=10.0, 单价=18.0
2025-05-02 19:42:32,851 - app.core.excel.processor - INFO - 处理商品: 条码=6921168511280, 数量=24.0, 单价=1.0833333333333333, 是否赠品=False
2025-05-02 19:42:32,851 - app.core.excel.processor - INFO - 发现正常商品条码6921168511280, 数量=24.0, 单价=1.0833333333333333
2025-05-02 19:42:32,851 - app.core.excel.processor - INFO - 处理商品: 条码=6921168520015, 数量=12.0, 单价=2.3333333333333335, 是否赠品=False
2025-05-02 19:42:32,851 - app.core.excel.processor - INFO - 发现正常商品条码6921168520015, 数量=12.0, 单价=2.3333333333333335
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593521, 数量=8.0, 单价=2.875, 是否赠品=False
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 发现正常商品条码6921168593521, 数量=8.0, 单价=2.875
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598113, 数量=4.0, 单价=8.25, 是否赠品=False
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 发现正常商品条码6921168598113, 数量=4.0, 单价=8.25
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 处理商品: 条码=6921168594054, 数量=2.0, 单价=16.0, 是否赠品=False
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 发现正常商品条码6921168594054, 数量=2.0, 单价=16.0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 处理商品: 条码=6921168509256, 数量=48.0, 单价=0, 是否赠品=True
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 发现赠品条码6921168509256, 数量=48.0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 处理商品: 条码=6921168509256, 数量=120.0, 单价=0, 是否赠品=True
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 发现赠品条码6921168509256, 数量=120.0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 分组后共15 个不同条码的商品
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 条码 6921168532001 处理结果:只有赠品,数量=15.0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 条码 6921168594672 处理结果正常商品数量15.0单价3.7333333333333334赠品数量0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 条码 6921168598755 处理结果正常商品数量15.0单价3.7333333333333334赠品数量0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 条码 6921168596348 处理结果正常商品数量15.0单价3.6666666666666665赠品数量0
2025-05-02 19:42:32,852 - app.core.excel.processor - INFO - 条码 6921168558032 处理结果:只有赠品,数量=15.0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168598427 处理结果正常商品数量60.0单价5.166666666666667赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168598649 处理结果正常商品数量24.0单价5.166666666666667赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168593569 处理结果正常商品数量15.0单价3.7333333333333334赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168593804 处理结果正常商品数量10.0单价18.0赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168511280 处理结果正常商品数量24.0单价1.0833333333333333赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168520015 处理结果正常商品数量12.0单价2.3333333333333335赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168593521 处理结果正常商品数量8.0单价2.875赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168598113 处理结果正常商品数量4.0单价8.25赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168594054 处理结果正常商品数量2.0单价16.0赠品数量0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168509256 处理结果:只有赠品,数量=168.0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168532001 填充:仅有赠品,采购量=0赠品数量=15.0
2025-05-02 19:42:32,853 - app.core.excel.processor - INFO - 条码 6921168558032 填充:仅有赠品,采购量=0赠品数量=15.0
2025-05-02 19:42:36,293 - app.core.excel.processor - INFO - 条码 6921168509256 填充:仅有赠品,采购量=0赠品数量=168.0
2025-05-02 19:42:36,299 - app.core.excel.processor - INFO - 采购单已保存到: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:42:36,439 - app.core.excel.processor - INFO - 已自动打开输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:53:27,940 - app.core.excel.processor - INFO - 初始化ExcelProcessor
2025-05-02 19:53:27,941 - app.core.excel.processor - INFO - 初始化完成,模板文件: templates\银豹-采购单模板.xls
2025-05-02 19:53:29,683 - app.core.excel.processor - INFO - 搜索目录 D:\My Documents\python\orc-order-v2\data\output 中的Excel文件
2025-05-02 19:53:29,684 - app.core.excel.processor - INFO - 找到最新的Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:53:29,684 - app.core.excel.processor - INFO - 开始处理Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:53:30,430 - app.core.excel.processor - INFO - 成功读取Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx, 共 18 行
2025-05-02 19:53:30,432 - app.core.excel.processor - INFO - 找到可能的表头行: 第1行评分: 35
2025-05-02 19:53:30,432 - app.core.excel.processor - INFO - 识别到表头在第 1 行
2025-05-02 19:53:30,442 - app.core.excel.processor - INFO - 使用表头行重新读取数据,共 17 行有效数据
2025-05-02 19:53:30,443 - app.core.excel.processor - INFO - 移除空行后,有效数据行数: 17
2025-05-02 19:53:30,444 - app.core.excel.processor - INFO - 找到精确匹配的条码列: 条形码
2025-05-02 19:53:30,444 - app.core.excel.processor - INFO - 使用条码列: 条形码
2025-05-02 19:53:30,444 - app.core.excel.processor - INFO - 找到name列: 商品名称
2025-05-02 19:53:30,445 - app.core.excel.processor - INFO - 找到quantity列: 订单数量
2025-05-02 19:53:30,445 - app.core.excel.processor - INFO - 找到price列: 销售价
2025-05-02 19:53:30,445 - app.core.excel.processor - INFO - 列名映射结果: {'barcode': '条形码', 'name': '商品名称', 'quantity': '订单数量', 'price': '销售价'}
2025-05-02 19:53:30,446 - app.core.excel.processor - INFO - 是否存在规格列: False
2025-05-02 19:53:30,447 - app.core.excel.processor - INFO - 第1行: 提取商品信息 条码=6921168532001, 名称=450果园30%橙子15入纸箱, 规格=, 数量=1.0, 单位=, 单价=0
2025-05-02 19:53:30,449 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:30,449 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%橙子15入纸箱 -> 1*15
2025-05-02 19:53:30,450 - app.core.excel.processor - INFO - 第2行: 提取商品信息 条码=6921168594672, 名称=450果园30%葡萄15入纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:53:30,451 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:30,451 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%葡萄15入纸箱 -> 1*15
2025-05-02 19:53:30,451 - app.core.excel.processor - INFO - 第3行: 提取商品信息 条码=6921168598755, 名称=450果园30%楂苹梅15入纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:53:30,452 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:30,452 - app.core.excel.processor - INFO - 从商品名称推断规格: 450果园30%楂苹梅15入纸箱 -> 1*15
2025-05-02 19:53:30,452 - app.core.excel.processor - INFO - 第4行: 提取商品信息 条码=6921168596348, 名称=500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装, 规格=, 数量=1.0, 单位=, 单价=55.0
2025-05-02 19:53:30,524 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:30,525 - app.core.excel.processor - INFO - 从商品名称推断规格: 500-东方树叶-青柑普洱1*15-纸
箱装-开盖活动装 -> 1*15
2025-05-02 19:53:30,526 - app.core.excel.processor - INFO - 第5行: 提取商品信息 条码=6921168558032, 名称=500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装, 规格=, 数量=1.0, 单位=, 单价=0
2025-05-02 19:53:30,527 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:30,527 - app.core.excel.processor - INFO - 从商品名称推断规格: 500-东方树叶-乌龙茶1*15-纸箱
装-开盖活动装 -> 1*15
2025-05-02 19:53:30,528 - app.core.excel.processor - INFO - 第6行: 提取商品信息 条码=6921168598427, 名称=900树叶茉莉花茶12入纸箱, 规格=, 数量=5.0, 单位=, 单价=62.0
2025-05-02 19:53:30,528 - app.core.excel.processor - INFO - 从数量提取单位: 5箱 -> 箱
2025-05-02 19:53:30,529 - app.core.excel.processor - INFO - 从商品名称推断规格: 900树叶茉莉花茶12入纸箱 -> 1*12
2025-05-02 19:53:30,529 - app.core.excel.processor - INFO - 第7行: 提取商品信息 条码=6921168598649, 名称=900树叶青柑普洱12入纸箱, 规格=, 数量=2.0, 单位=, 单价=62.0
2025-05-02 19:53:30,530 - app.core.excel.processor - INFO - 从数量提取单位: 2箱 -> 箱
2025-05-02 19:53:30,530 - app.core.excel.processor - INFO - 从商品名称推断规格: 900树叶青柑普洱12入纸箱 -> 1*12
2025-05-02 19:53:30,531 - app.core.excel.processor - INFO - 第8行: 提取商品信息 条码=6921168593569, 名称=500茶π蜜桃乌龙15纸箱, 规格=, 数量=1.0, 单位=, 单价=56.0
2025-05-02 19:53:30,531 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:30,531 - app.core.excel.processor - INFO - 从商品名称推断规格: 500茶π蜜桃乌龙15纸箱 -> 1*15
2025-05-02 19:53:30,532 - app.core.excel.processor - INFO - 第9行: 提取商品信息 条码=6921168593804, 名称=300NFC橙3*10纸箱, 规格=, 数量=1.0, 单位=, 单价=180.0
2025-05-02 19:53:35,279 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:35,279 - app.core.excel.processor - INFO - 从商品名称推断规格: 300NFC橙3*10纸箱 -> 3*10
2025-05-02 19:53:35,280 - app.core.excel.processor - INFO - 第10行: 提取商品信息 条码=6921168511280, 名称=380水24纸箱, 规格=, 数量=1.0, 单位=, 单价=26.0
2025-05-02 19:53:35,280 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:35,280 - app.core.excel.processor - INFO - 从商品名称推断规格: 380水24纸箱 -> 1*24
2025-05-02 19:53:35,281 - app.core.excel.processor - INFO - 第11行: 提取商品信息 条码=6921168520015, 名称=1.5L水12白膜, 规格=, 数量=1.0, 单位=, 单价=28.0
2025-05-02 19:53:35,282 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:35,282 - app.core.excel.processor - INFO - 从商品名称推断规格: 1.5L水12白膜 -> 1*12
2025-05-02 19:53:35,283 - app.core.excel.processor - INFO - 第12行: 提取商品信息 条码=6921168593521, 名称=2L水8白膜, 规格=, 数量=1.0, 单位=, 单价=23.0
2025-05-02 19:53:35,283 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:35,284 - app.core.excel.processor - INFO - 从商品名称推断规格: 2L水8白膜 -> 1*8
2025-05-02 19:53:35,284 - app.core.excel.processor - INFO - 第13行: 提取商品信息 条码=6921168598113, 名称=6L水4入纸箱, 规格=, 数量=1.0, 单位=, 单价=33.0
2025-05-02 19:53:35,285 - app.core.excel.processor - INFO - 从数量提取单位: 1箱 -> 箱
2025-05-02 19:53:35,285 - app.core.excel.processor - INFO - 从商品名称推断规格: 6L水4入纸箱 -> 1*4
2025-05-02 19:53:35,286 - app.core.excel.processor - INFO - 第14行: 提取商品信息 条码=6921168594054, 名称=12.9L桶装水, 规格=, 数量=2.0, 单位=, 单价=16.0
2025-05-02 19:53:35,286 - app.core.excel.processor - INFO - 从数量提取单位: 2桶 -> 桶
2025-05-02 19:53:35,287 - app.core.excel.processor - INFO - 从商品名称推断规格: 12.9L桶装水 -> 12.9L*1
2025-05-02 19:53:39,728 - app.core.excel.processor - INFO - 第15行: 提取商品信息 条码=6921168509256, 名称=550水24白膜, 规格=, 数量=2.0, 单位=, 单价=0
2025-05-02 19:53:39,728 - app.core.excel.processor - INFO - 从数量提取单位: 2箱 -> 箱
2025-05-02 19:53:39,729 - app.core.excel.processor - INFO - 从商品名称推断规格: 550水24白膜 -> 1*24
2025-05-02 19:53:39,729 - app.core.excel.processor - INFO - 第16行: 提取商品信息 条码=6921168509256, 名称=550水24白膜, 规格=, 数量=5.0, 单位=, 单价=0
2025-05-02 19:53:39,729 - app.core.excel.processor - INFO - 从数量提取单位: 5箱 -> 箱
2025-05-02 19:53:39,729 - app.core.excel.processor - INFO - 从商品名称推断规格: 550水24白膜 -> 1*24
2025-05-02 19:53:39,730 - app.core.excel.processor - INFO - 提取到 16 个商品信息
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 开始处理16 个产品信息
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 处理商品: 条码=6921168532001, 数量=15.0, 单价=0, 是否赠品=True
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 发现赠品条码6921168532001, 数量=15.0
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 处理商品: 条码=6921168594672, 数量=15.0, 单价=3.7333333333333334, 是否赠品=False
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 发现正常商品条码6921168594672, 数量=15.0, 单价=3.7333333333333334
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598755, 数量=15.0, 单价=3.7333333333333334, 是否赠品=False
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 发现正常商品条码6921168598755, 数量=15.0, 单价=3.7333333333333334
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 处理商品: 条码=6921168596348, 数量=15.0, 单价=3.6666666666666665, 是否赠品=False
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 发现正常商品条码6921168596348, 数量=15.0, 单价=3.6666666666666665
2025-05-02 19:53:39,736 - app.core.excel.processor - INFO - 处理商品: 条码=6921168558032, 数量=15.0, 单价=0, 是否赠品=True
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 发现赠品条码6921168558032, 数量=15.0
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598427, 数量=60.0, 单价=5.166666666666667, 是否赠品=False
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 发现正常商品条码6921168598427, 数量=60.0, 单价=5.166666666666667
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598649, 数量=24.0, 单价=5.166666666666667, 是否赠品=False
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 发现正常商品条码6921168598649, 数量=24.0, 单价=5.166666666666667
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593569, 数量=15.0, 单价=3.7333333333333334, 是否赠品=False
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 发现正常商品条码6921168593569, 数量=15.0, 单价=3.7333333333333334
2025-05-02 19:53:39,737 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593804, 数量=30.0, 单价=6.0, 是否赠品=False
2025-05-02 19:53:44,260 - app.core.excel.processor - INFO - 发现正常商品条码6921168593804, 数量=30.0, 单价=6.0
2025-05-02 19:53:44,260 - app.core.excel.processor - INFO - 处理商品: 条码=6921168511280, 数量=24.0, 单价=1.0833333333333333, 是否赠品=False
2025-05-02 19:53:44,260 - app.core.excel.processor - INFO - 发现正常商品条码6921168511280, 数量=24.0, 单价=1.0833333333333333
2025-05-02 19:53:44,260 - app.core.excel.processor - INFO - 处理商品: 条码=6921168520015, 数量=12.0, 单价=2.3333333333333335, 是否赠品=False
2025-05-02 19:53:44,260 - app.core.excel.processor - INFO - 发现正常商品条码6921168520015, 数量=12.0, 单价=2.3333333333333335
2025-05-02 19:53:44,260 - app.core.excel.processor - INFO - 处理商品: 条码=6921168593521, 数量=8.0, 单价=2.875, 是否赠品=False
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 发现正常商品条码6921168593521, 数量=8.0, 单价=2.875
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 处理商品: 条码=6921168598113, 数量=4.0, 单价=8.25, 是否赠品=False
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 发现正常商品条码6921168598113, 数量=4.0, 单价=8.25
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 处理商品: 条码=6921168594054, 数量=2.0, 单价=16.0, 是否赠品=False
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 发现正常商品条码6921168594054, 数量=2.0, 单价=16.0
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 处理商品: 条码=6921168509256, 数量=48.0, 单价=0, 是否赠品=True
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 发现赠品条码6921168509256, 数量=48.0
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 处理商品: 条码=6921168509256, 数量=120.0, 单价=0, 是否赠品=True
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 发现赠品条码6921168509256, 数量=120.0
2025-05-02 19:53:44,261 - app.core.excel.processor - INFO - 分组后共15 个不同条码的商品
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168532001 处理结果:只有赠品,数量=15.0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168594672 处理结果正常商品数量15.0单价3.7333333333333334赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168598755 处理结果正常商品数量15.0单价3.7333333333333334赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168596348 处理结果正常商品数量15.0单价3.6666666666666665赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168558032 处理结果:只有赠品,数量=15.0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168598427 处理结果正常商品数量60.0单价5.166666666666667赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168598649 处理结果正常商品数量24.0单价5.166666666666667赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168593569 处理结果正常商品数量15.0单价3.7333333333333334赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168593804 处理结果正常商品数量30.0单价6.0赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168511280 处理结果正常商品数量24.0单价1.0833333333333333赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168520015 处理结果正常商品数量12.0单价2.3333333333333335赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168593521 处理结果正常商品数量8.0单价2.875赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168598113 处理结果正常商品数量4.0单价8.25赠品数量0
2025-05-02 19:53:44,262 - app.core.excel.processor - INFO - 条码 6921168594054 处理结果正常商品数量2.0单价16.0赠品数量0
2025-05-02 19:53:44,263 - app.core.excel.processor - INFO - 条码 6921168509256 处理结果:只有赠品,数量=168.0
2025-05-02 19:53:44,263 - app.core.excel.processor - INFO - 条码 6921168532001 填充:仅有赠品,采购量=0赠品数量=15.0
2025-05-02 19:53:44,263 - app.core.excel.processor - INFO - 条码 6921168558032 填充:仅有赠品,采购量=0赠品数量=15.0
2025-05-02 19:53:47,621 - app.core.excel.processor - INFO - 条码 6921168509256 填充:仅有赠品,采购量=0赠品数量=168.0
2025-05-02 19:53:47,624 - app.core.excel.processor - INFO - 采购单已保存到: D:\My Documents\python\orc-order-v2\data\output\采购单_微信图片_20250502191502.xls
2025-05-02 19:53:47,769 - app.core.excel.processor - INFO - 已自动打开输出目录: D:\My Documents\python\orc-order-v2\data\output

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -4,3 +4,6 @@
2025-05-02 16:34:26,260 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌 2025-05-02 16:34:26,260 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌
2025-05-02 16:55:26,799 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌 2025-05-02 16:55:26,799 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌
2025-05-02 17:08:58,897 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌 2025-05-02 17:08:58,897 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌
2025-05-02 19:15:17,843 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌
2025-05-02 19:42:19,449 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌
2025-05-02 19:53:28,299 - app.core.ocr.baidu_ocr - INFO - 成功获取访问令牌

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -103,3 +103,55 @@
2025-05-02 18:41:16,740 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output 2025-05-02 18:41:16,740 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 18:41:16,740 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp 2025-05-02 18:41:16,740 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 18:41:16,741 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output 2025-05-02 18:41:16,741 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:15:17,469 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:15:17,470 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:15:17,470 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:15:17,470 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:15:17,473 - app.core.ocr.table_ocr - INFO - 找到 1 个图片文件,其中 1 个未处理
2025-05-02 19:15:17,473 - app.core.ocr.table_ocr - INFO - 处理批次 1/1, 大小: 1
2025-05-02 19:15:17,475 - app.core.ocr.table_ocr - INFO - 开始处理图片: D:\My Documents\python\orc-order-v2\data\input\微信图片_20250502191502.jpg
2025-05-02 19:15:19,390 - app.core.ocr.table_ocr - INFO - 图片处理成功: D:\My Documents\python\orc-order-v2\data\input\微信图片_20250502191502.jpg, 输出文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:15:19,393 - app.core.ocr.table_ocr - INFO - 批次处理完成, 成功: 1/1
2025-05-02 19:15:19,393 - app.core.ocr.table_ocr - INFO - 所有图片处理完成, 总计: 1, 成功: 1
2025-05-02 19:15:43,267 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:15:43,267 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:15:43,267 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:15:43,268 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:33:54,960 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:33:54,961 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:33:54,961 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:33:54,962 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:33:54,965 - app.core.ocr.table_ocr - INFO - 找到 0 个图片文件,其中 0 个未处理
2025-05-02 19:33:54,965 - app.core.ocr.table_ocr - WARNING - 没有需要处理的图片
2025-05-02 19:35:48,760 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:35:48,761 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:35:48,761 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:35:48,761 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:35:48,765 - app.core.ocr.table_ocr - INFO - 找到 1 个图片文件,其中 0 个未处理
2025-05-02 19:35:48,765 - app.core.ocr.table_ocr - WARNING - 没有需要处理的图片
2025-05-02 19:36:15,983 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:36:15,983 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:36:15,983 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:36:15,984 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:36:15,987 - app.core.ocr.table_ocr - INFO - 找到 1 个图片文件,其中 0 个未处理
2025-05-02 19:36:15,987 - app.core.ocr.table_ocr - WARNING - 没有需要处理的图片
2025-05-02 19:42:19,204 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:42:19,204 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:42:19,204 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:42:19,205 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:42:19,208 - app.core.ocr.table_ocr - INFO - 找到 1 个图片文件,其中 1 个未处理
2025-05-02 19:42:19,209 - app.core.ocr.table_ocr - INFO - 处理批次 1/1, 大小: 1
2025-05-02 19:42:19,210 - app.core.ocr.table_ocr - INFO - 开始处理图片: D:\My Documents\python\orc-order-v2\data\input\微信图片_20250502191502.jpg
2025-05-02 19:42:21,164 - app.core.ocr.table_ocr - INFO - 图片处理成功: D:\My Documents\python\orc-order-v2\data\input\微信图片_20250502191502.jpg, 输出文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:42:21,166 - app.core.ocr.table_ocr - INFO - 批次处理完成, 成功: 1/1
2025-05-02 19:42:21,166 - app.core.ocr.table_ocr - INFO - 所有图片处理完成, 总计: 1, 成功: 1
2025-05-02 19:53:27,939 - app.core.ocr.table_ocr - INFO - 使用输入目录: D:\My Documents\python\orc-order-v2\data\input
2025-05-02 19:53:27,940 - app.core.ocr.table_ocr - INFO - 使用输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:53:27,940 - app.core.ocr.table_ocr - INFO - 使用临时目录: D:\My Documents\python\orc-order-v2\data\temp
2025-05-02 19:53:27,940 - app.core.ocr.table_ocr - INFO - OCR处理器初始化完成输入目录: D:\My Documents\python\orc-order-v2\data\input, 输出目录: D:\My Documents\python\orc-order-v2\data\output
2025-05-02 19:53:27,942 - app.core.ocr.table_ocr - INFO - 找到 1 个图片文件,其中 1 个未处理
2025-05-02 19:53:27,942 - app.core.ocr.table_ocr - INFO - 处理批次 1/1, 大小: 1
2025-05-02 19:53:27,944 - app.core.ocr.table_ocr - INFO - 开始处理图片: D:\My Documents\python\orc-order-v2\data\input\微信图片_20250502191502.jpg
2025-05-02 19:53:29,681 - app.core.ocr.table_ocr - INFO - 图片处理成功: D:\My Documents\python\orc-order-v2\data\input\微信图片_20250502191502.jpg, 输出文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:53:29,683 - app.core.ocr.table_ocr - INFO - 批次处理完成, 成功: 1/1
2025-05-02 19:53:29,683 - app.core.ocr.table_ocr - INFO - 所有图片处理完成, 总计: 1, 成功: 1

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:15 Active since: 2025-05-02 19:53:27

View File

@ -1,3 +1,6 @@
2025-05-02 16:34:28,699 - app.core.utils.file_utils - ERROR - 创建目录失败: , 错误: [WinError 3] 系统找不到指定的路径。: '' 2025-05-02 16:34:28,699 - app.core.utils.file_utils - ERROR - 创建目录失败: , 错误: [WinError 3] 系统找不到指定的路径。: ''
2025-05-02 16:55:29,252 - app.core.utils.file_utils - ERROR - 创建目录失败: , 错误: [WinError 3] 系统找不到指定的路径。: '' 2025-05-02 16:55:29,252 - app.core.utils.file_utils - ERROR - 创建目录失败: , 错误: [WinError 3] 系统找不到指定的路径。: ''
2025-05-02 17:09:01,344 - app.core.utils.file_utils - ERROR - 创建目录失败: , 错误: [WinError 3] 系统找不到指定的路径。: '' 2025-05-02 17:09:01,344 - app.core.utils.file_utils - ERROR - 创建目录失败: , 错误: [WinError 3] 系统找不到指定的路径。: ''
2025-05-02 19:33:54,966 - app.core.utils.file_utils - WARNING - 未在目录 D:\My Documents\python\orc-order-v2\data\output 中找到符合条件的文件
2025-05-02 19:35:48,767 - app.core.utils.file_utils - WARNING - 未在目录 D:\My Documents\python\orc-order-v2\data\output 中找到符合条件的文件
2025-05-02 19:36:15,988 - app.core.utils.file_utils - WARNING - 未在目录 D:\My Documents\python\orc-order-v2\data\output 中找到符合条件的文件

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -51,3 +51,23 @@
2025-05-02 18:38:52,879 - app.services.ocr_service - INFO - OCRService初始化完成 2025-05-02 18:38:52,879 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 18:41:16,739 - app.services.ocr_service - INFO - 初始化OCRService 2025-05-02 18:41:16,739 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 18:41:16,741 - app.services.ocr_service - INFO - OCRService初始化完成 2025-05-02 18:41:16,741 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:15:17,468 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:15:17,470 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:15:17,472 - app.services.ocr_service - INFO - OCRService开始批量处理图片, batch_size=None, max_workers=None
2025-05-02 19:15:43,266 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:15:43,268 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:33:54,958 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:33:54,962 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:33:54,964 - app.services.ocr_service - INFO - OCRService开始批量处理图片, batch_size=None, max_workers=None
2025-05-02 19:35:48,758 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:35:48,762 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:35:48,764 - app.services.ocr_service - INFO - OCRService开始批量处理图片, batch_size=None, max_workers=None
2025-05-02 19:36:15,981 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:36:15,984 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:36:15,987 - app.services.ocr_service - INFO - OCRService开始批量处理图片, batch_size=None, max_workers=None
2025-05-02 19:42:19,203 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:42:19,205 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:42:19,208 - app.services.ocr_service - INFO - OCRService开始批量处理图片, batch_size=None, max_workers=None
2025-05-02 19:53:27,938 - app.services.ocr_service - INFO - 初始化OCRService
2025-05-02 19:53:27,940 - app.services.ocr_service - INFO - OCRService初始化完成
2025-05-02 19:53:27,942 - app.services.ocr_service - INFO - OCRService开始批量处理图片, batch_size=None, max_workers=None

View File

@ -1 +1 @@
Active since: 2025-05-02 18:41:16 Active since: 2025-05-02 19:53:27

View File

@ -59,3 +59,22 @@
2025-05-02 18:41:16,741 - app.services.order_service - INFO - 初始化OrderService 2025-05-02 18:41:16,741 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 18:41:16,743 - app.services.order_service - INFO - OrderService初始化完成 2025-05-02 18:41:16,743 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 18:41:16,744 - app.services.order_service - INFO - OrderService开始处理指定Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250227193150(1).xlsx 2025-05-02 18:41:16,744 - app.services.order_service - INFO - OrderService开始处理指定Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250227193150(1).xlsx
2025-05-02 19:15:17,470 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:15:17,472 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:15:43,268 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:15:43,269 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:15:43,270 - app.services.order_service - INFO - OrderService开始处理指定Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:33:54,962 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:33:54,964 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:35:48,762 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:35:48,764 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:36:15,984 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:36:15,986 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:42:19,205 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:42:19,207 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:42:21,167 - app.services.order_service - INFO - OrderService开始处理指定Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:42:36,441 - app.services.order_service - INFO - OrderService开始合并所有采购单
2025-05-02 19:53:27,940 - app.services.order_service - INFO - 初始化OrderService
2025-05-02 19:53:27,942 - app.services.order_service - INFO - OrderService初始化完成
2025-05-02 19:53:29,684 - app.services.order_service - INFO - OrderService开始处理指定Excel文件: D:\My Documents\python\orc-order-v2\data\output\微信图片_20250502191502.xlsx
2025-05-02 19:53:47,771 - app.services.order_service - INFO - OrderService开始合并所有采购单

View File

@ -428,6 +428,35 @@ def clean_data_files(log_widget):
add_to_log(log_widget, f"清理完成,共删除 {files_deleted} 个文件\n") add_to_log(log_widget, f"清理完成,共删除 {files_deleted} 个文件\n")
messagebox.showinfo("清理完成", f"共删除 {files_deleted} 个文件") messagebox.showinfo("清理完成", f"共删除 {files_deleted} 个文件")
def clean_cache(log_widget):
"""清除缓存,重置处理记录"""
add_to_log(log_widget, "开始清除缓存...\n")
cache_files = [
"data/processed_files.json", # OCR处理记录
"data/output/processed_files.json" # Excel处理记录
]
for cache_file in cache_files:
try:
if os.path.exists(cache_file):
# 创建备份
backup_file = f"{cache_file}.bak"
shutil.copy2(cache_file, backup_file)
# 清空或删除缓存文件
with open(cache_file, 'w') as f:
f.write('{}') # 写入空的JSON对象
add_to_log(log_widget, f"已清除缓存文件: {cache_file},并创建备份: {backup_file}\n")
else:
add_to_log(log_widget, f"缓存文件不存在: {cache_file}\n")
except Exception as e:
add_to_log(log_widget, f"清除缓存文件时出错: {cache_file}, 错误: {e}\n")
add_to_log(log_widget, "缓存清除完成,系统将重新处理所有文件\n")
messagebox.showinfo("缓存清除", "缓存已清除,系统将重新处理所有文件。")
def main(): def main():
"""主函数""" """主函数"""
# 确保必要的目录结构存在并转移旧目录内容 # 确保必要的目录结构存在并转移旧目录内容
@ -435,8 +464,8 @@ def main():
# 创建窗口 # 创建窗口
root = tk.Tk() root = tk.Tk()
root.title("OCR订单处理系统 v1.0") root.title("益选-OCR订单处理系统 v1.0")
root.geometry("1200x600") # 增加窗口宽度以容纳日志 root.geometry("1200x800") # 增加窗口宽度以容纳日志
# 创建主区域分割 # 创建主区域分割
main_pane = tk.PanedWindow(root, orient=tk.HORIZONTAL) main_pane = tk.PanedWindow(root, orient=tk.HORIZONTAL)
@ -447,7 +476,7 @@ def main():
main_pane.add(left_frame) main_pane.add(left_frame)
# 标题 # 标题
tk.Label(left_frame, text="OCR订单处理系统", font=("Arial", 16)).pack(pady=10) tk.Label(left_frame, text="益选-OCR订单处理系统", font=("Arial", 16)).pack(pady=10)
# 功能按钮区域 # 功能按钮区域
buttons_frame = tk.Frame(left_frame) buttons_frame = tk.Frame(left_frame)
@ -466,7 +495,7 @@ def main():
log_text.configure(state=tk.DISABLED) # 设置为只读 log_text.configure(state=tk.DISABLED) # 设置为只读
# 日志初始内容 # 日志初始内容
add_to_log(log_text, "OCR订单处理系统启动器 v1.0\n") add_to_log(log_text, "益选-OCR订单处理系统启动器 v1.0\n")
add_to_log(log_text, f"当前工作目录: {os.getcwd()}\n") add_to_log(log_text, f"当前工作目录: {os.getcwd()}\n")
add_to_log(log_text, "系统已准备就绪,请选择要执行的操作。\n") add_to_log(log_text, "系统已准备就绪,请选择要执行的操作。\n")
@ -515,6 +544,15 @@ def main():
command=lambda: run_command_with_logging(["python", "run.py", "pipeline"], log_text) command=lambda: run_command_with_logging(["python", "run.py", "pipeline"], log_text)
).pack(pady=5) ).pack(pady=5)
# 清除缓存按钮
tk.Button(
buttons_frame,
text="清除处理缓存",
width=20,
height=2,
command=lambda: clean_cache(log_text)
).pack(pady=5)
# 整理文件按钮 # 整理文件按钮
tk.Button( tk.Button(
buttons_frame, buttons_frame,
@ -558,7 +596,7 @@ def main():
).pack(pady=5) ).pack(pady=5)
# 底部说明 # 底部说明
tk.Label(left_frame, text="© 2025 OCR订单处理系统 v1.0", font=("Arial", 10)).pack(side=tk.BOTTOM, pady=10) tk.Label(left_frame, text="© 2025 益选-OCR订单处理系统 v1.0", font=("Arial", 10)).pack(side=tk.BOTTOM, pady=10)
# 启动主循环 # 启动主循环
root.mainloop() root.mainloop()