Commit 9dc70b88 authored by 邱阿朋's avatar 邱阿朋

fix(app): 修复增值税处理错误

- 将 va_tax 变量名更改为 vat_tax,以提高代码可读性
- 在处理小数据列表时使用正确的变量名
- 在推送数据时添加 vat_tax 字段
- 根据原始余额和总金额计算增值税,并使用新变量名
parent 1a86bb2d
......@@ -138,7 +138,7 @@ class Spa(AutoInterface):
return processed_items
def __process_small_items(self, item_list, relation_data, coop, va_tax):
def __process_small_items(self, item_list, relation_data, coop, vat_tax):
"""处理小数据列表 (item_list 长度 < 10)"""
processed_items = []
for _, item in item_list.iterrows():
......@@ -173,7 +173,7 @@ class Spa(AutoInterface):
processed_item["Group Name"] = relation.get("name")
processed_item['Group Code'] = relation.get("code")
processed_item["Original balance"] = original_balance
processed_item["vat"] = va_tax
processed_item["vat"] = vat_tax
processed_items.append(processed_item)
return processed_items
......@@ -270,7 +270,8 @@ class Spa(AutoInterface):
'type': 2, # 1 sheet1 2 其他sheet
'parent_id': parent_id, # sheet1 为Invoice ID 其他sheet为sheet名称
'order_no': item_row.get('Purchase Order', ""), # 订单号
'agreement_title': agreement_type
'agreement_title': agreement_type,
'vat_tax': item_row.get('vat_tax', 0)
}
# 推送数据
rabbit.send_message(push_data)
......@@ -312,24 +313,24 @@ class Spa(AutoInterface):
original_balance = coop.get("Original balance", 0.0)
original_balance = helper.extract_numeric_value(original_balance, self.country)
# 0 没有税 1 有税
va_tax = int(total_amount != original_balance)
vat_tax = int(total_amount != original_balance)
if len(item_dict) > 1:
for i, value in enumerate(item_dict.values(), start=1):
invoice_id_num = f"{invoice_id}-{i}"
processed_items = self.__process_large_items(value, relation_data, coop, va_tax)
processed_items = self.__process_large_items(value, relation_data, coop, vat_tax)
if processed_items:
large_sheet_data[invoice_id_num] = processed_items
else:
item_list = item_dict.get('Accrual For Current Period')
# 如果是列表且长度 >= 10 则新增sheet
if len(item_list) >= 10:
processed_items = self.__process_large_items(item_list, relation_data, coop, va_tax)
processed_items = self.__process_large_items(item_list, relation_data, coop, vat_tax)
if processed_items:
large_sheet_data[invoice_id] = processed_items
else:
# 如果是较小的列表
processed_items = self.__process_small_items(item_list, relation_data, coop, va_tax)
processed_items = self.__process_small_items(item_list, relation_data, coop, vat_tax)
sheet_data.extend(processed_items)
# 保存数据到 Excel 文件
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment