This commit is contained in:
admin
2026-05-14 22:02:06 +09:00
parent 78022b3b15
commit b9f994b1e1
22 changed files with 1225 additions and 126 deletions

View File

@@ -200,9 +200,10 @@ def get_bonus_data_for_period(
cur.execute("""
SELECT
e.employee_id, e.employee_code, e.name,
bp.bonus_year, bp.bonus_month, bp.bonus_type,
bp.bonus_year, bp.bonus_month, bp.bonus_type, bp.payment_date,
bp.base_bonus, bp.performance_bonus, bp.other_bonus, bp.total_bonus,
bp.health_insurance, bp.care_insurance, bp.pension_insurance, bp.employment_insurance,
COALESCE(bp.child_support, 0) as child_support,
bp.income_tax, bp.other_deduction, bp.total_deduction,
bp.net_bonus
FROM employees e
@@ -226,6 +227,7 @@ def get_bonus_data_for_period(
bonus_year=row.get("bonus_year"),
bonus_month=row.get("bonus_month"),
bonus_type=row.get("bonus_type", ""),
payment_date=str(row.get("payment_date")) if row.get("payment_date") else None,
# 支給項目
base_bonus=Decimal(str(row.get("base_bonus", 0))) if row.get("base_bonus") else Decimal(0),
performance_bonus=Decimal(str(row.get("performance_bonus", 0))) if row.get("performance_bonus") else Decimal(0),
@@ -236,6 +238,7 @@ def get_bonus_data_for_period(
care_insurance=Decimal(str(row.get("care_insurance", 0))) if row.get("care_insurance") else Decimal(0),
pension_insurance=Decimal(str(row.get("pension_insurance", 0))) if row.get("pension_insurance") else Decimal(0),
employment_insurance=Decimal(str(row.get("employment_insurance", 0))) if row.get("employment_insurance") else Decimal(0),
child_support=Decimal(str(row.get("child_support", 0))) if row.get("child_support") else Decimal(0),
income_tax=Decimal(str(row.get("income_tax", 0))) if row.get("income_tax") else Decimal(0),
other_deduction=Decimal(str(row.get("other_deduction", 0))) if row.get("other_deduction") else Decimal(0),
total_deduction=Decimal(str(row.get("total_deduction", 0))) if row.get("total_deduction") else Decimal(0),
@@ -254,23 +257,25 @@ def get_bonus_data_for_period(
bonus_year=row[3],
bonus_month=row[4],
bonus_type=row[5] if row[5] else "",
payment_date=str(row[6]) if row[6] else None,
# 支給項目
base_bonus=Decimal(str(row[6])) if row[6] else Decimal(0),
performance_bonus=Decimal(str(row[7])) if row[7] else Decimal(0),
other_bonus=Decimal(str(row[8])) if row[8] else Decimal(0),
total_bonus=Decimal(str(row[9])) if row[9] else Decimal(0),
base_bonus=Decimal(str(row[7])) if row[7] else Decimal(0),
performance_bonus=Decimal(str(row[8])) if row[8] else Decimal(0),
other_bonus=Decimal(str(row[9])) if row[9] else Decimal(0),
total_bonus=Decimal(str(row[10])) if row[10] else Decimal(0),
# 控除項目
health_insurance=Decimal(str(row[10])) if row[10] else Decimal(0),
care_insurance=Decimal(str(row[11])) if row[11] else Decimal(0),
pension_insurance=Decimal(str(row[12])) if row[12] else Decimal(0),
employment_insurance=Decimal(str(row[13])) if row[13] else Decimal(0),
income_tax=Decimal(str(row[14])) if row[14] else Decimal(0),
other_deduction=Decimal(str(row[15])) if row[15] else Decimal(0),
total_deduction=Decimal(str(row[16])) if row[16] else Decimal(0),
net_bonus=Decimal(str(row[17])) if row[17] else Decimal(0),
health_insurance=Decimal(str(row[11])) if row[11] else Decimal(0),
care_insurance=Decimal(str(row[12])) if row[12] else Decimal(0),
pension_insurance=Decimal(str(row[13])) if row[13] else Decimal(0),
employment_insurance=Decimal(str(row[14])) if row[14] else Decimal(0),
child_support=Decimal(str(row[15])) if row[15] else Decimal(0),
income_tax=Decimal(str(row[16])) if row[16] else Decimal(0),
other_deduction=Decimal(str(row[17])) if row[17] else Decimal(0),
total_deduction=Decimal(str(row[18])) if row[18] else Decimal(0),
net_bonus=Decimal(str(row[19])) if row[19] else Decimal(0),
# レガシー互換性用
bonus_amount=Decimal(str(row[9])) if row[9] else Decimal(0),
tax_amount=Decimal(str(row[16])) if row[16] else Decimal(0)
bonus_amount=Decimal(str(row[10])) if row[10] else Decimal(0),
tax_amount=Decimal(str(row[18])) if row[18] else Decimal(0)
)
data.append(bonus_obj)
return data