Initial commit
This commit is contained in:
60
fusion_payroll/models/tax_yearly_rates.py
Normal file
60
fusion_payroll/models/tax_yearly_rates.py
Normal file
@@ -0,0 +1,60 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from odoo import models, fields, api
|
||||
|
||||
|
||||
class TaxYearlyRates(models.Model):
|
||||
_name = 'tax.yearly.rates'
|
||||
_description = 'Yearly Tax Rates'
|
||||
_order = 'id'
|
||||
|
||||
# === Selection Options ===
|
||||
TAX_TYPE_SELECTION = [
|
||||
('federal', 'Federal Taxes'),
|
||||
('provincial', 'Provincial Taxes'),
|
||||
]
|
||||
|
||||
DEDUCTION_TYPE_SELECTION = [
|
||||
('cpp', 'Canada Pension Plan'),
|
||||
('ei', 'Employment Insurance'),
|
||||
]
|
||||
|
||||
# === Core Fields ===
|
||||
fiscal_year = fields.Many2one(
|
||||
'account.fiscal.year',
|
||||
string='Fiscal Year',
|
||||
)
|
||||
tax_type = fields.Selection(
|
||||
selection=TAX_TYPE_SELECTION,
|
||||
string='Tax Type',
|
||||
)
|
||||
ded_type = fields.Selection(
|
||||
selection=DEDUCTION_TYPE_SELECTION,
|
||||
string='Deduction Type',
|
||||
)
|
||||
|
||||
# === Tax Bracket Lines ===
|
||||
tax_yearly_rate_ids = fields.One2many(
|
||||
'tax.yearly.rate.line',
|
||||
'tax_id',
|
||||
string='Tax Lines',
|
||||
)
|
||||
|
||||
# === Federal/Provincial Tax Fields ===
|
||||
fed_tax_credit = fields.Float(string='Federal Tax Credit')
|
||||
provincial_tax_credit = fields.Float(string='Provincial Tax Credit')
|
||||
canada_emp_amount = fields.Float(string='Canada Employment Amount')
|
||||
exemption = fields.Float(string='Exemption Amount')
|
||||
|
||||
# === CPP (Canada Pension Plan) Fields ===
|
||||
cpp_date = fields.Date(string='CPP Date')
|
||||
max_cpp = fields.Float(string='Maximum CPP')
|
||||
emp_contribution_rate = fields.Float(string='Employee Contribution Rate')
|
||||
employer_contribution_rate = fields.Float(string='Employer Contribution Rate')
|
||||
|
||||
# === EI (Employment Insurance) Fields ===
|
||||
ei_date = fields.Date(string='EI Date')
|
||||
ei_rate = fields.Float(string='EI Rate')
|
||||
ei_earnings = fields.Float(string='Maximum EI Earnings')
|
||||
emp_ei_amount = fields.Float(string='Employee EI Amount')
|
||||
employer_ei_amount = fields.Float(string='Employer EI Amount')
|
||||
Reference in New Issue
Block a user