[IMP] hr_payroll_account: removed unrequired objects and added fields as per etherpad

bzr revid: mtr@mtr-20110413131628-wp4km4zwuatfjn63
This commit is contained in:
mtr 2011-04-13 18:46:28 +05:30
parent 4dfb66a35a
commit 00495a0bf6
3 changed files with 184 additions and 192 deletions

View File

@ -46,7 +46,7 @@ Generic Payroll system Integrated with Accountings.
"hr_payroll_account_view.xml",
],
'demo_xml': [
'hr_payroll_demo.xml'
# 'hr_payroll_demo.xml'
],
'installable': True,
'active': False,

View File

@ -94,90 +94,90 @@ class hr_employee(osv.osv):
}
hr_employee()
class payroll_register(osv.osv):
_inherit = 'hr.payroll.register'
_description = 'Payroll Register'
#class payroll_register(osv.osv):
# _inherit = 'hr.payroll.register'
# _description = 'Payroll Register'
#
# _columns = {
# 'journal_id': fields.many2one('account.journal', 'Expense Journal'),
# 'bank_journal_id': fields.many2one('account.journal', 'Bank Journal'),
# 'period_id': fields.many2one('account.period', 'Force Period', domain=[('state','<>','done')], help="Keep empty to use the period of the validation(Payslip) date."),
# }
#
# def compute_sheet(self, cr, uid, ids, context=None):
# emp_pool = self.pool.get('hr.employee')
# slip_pool = self.pool.get('hr.payslip')
# func_pool = self.pool.get('hr.payroll.structure')
# slip_line_pool = self.pool.get('hr.payslip.line')
# wf_service = netsvc.LocalService("workflow")
# vals = self.browse(cr, uid, ids, context=context)[0]
# emp_ids = emp_pool.search(cr, uid, [])
#
# for emp in emp_pool.browse(cr, uid, emp_ids, context=context):
# old_slips = slip_pool.search(cr, uid, [('employee_id','=', emp.id), ('date','=',vals.date)])
# if old_slips:
# slip_pool.write(cr, uid, old_slips, {'register_id':ids[0]})
# for sid in old_slips:
# wf_service.trg_validate(uid, 'hr.payslip', sid, 'compute_sheet', cr)
# else:
# res = {
# 'employee_id':emp.id,
# 'basic':0.0,
# 'register_id':ids[0],
# 'name':vals.name,
# 'date':vals.date,
# 'journal_id':vals.journal_id.id,
# 'bank_journal_id':vals.bank_journal_id.id
# }
# slip_id = slip_pool.create(cr, uid, res)
# wf_service.trg_validate(uid, 'hr.payslip', slip_id, 'compute_sheet', cr)
#
# number = self.pool.get('ir.sequence').get(cr, uid, 'salary.register')
# self.write(cr, uid, ids, {'state':'draft', 'number':number})
# return True
#
#payroll_register()
_columns = {
'journal_id': fields.many2one('account.journal', 'Expense Journal'),
'bank_journal_id': fields.many2one('account.journal', 'Bank Journal'),
'period_id': fields.many2one('account.period', 'Force Period', domain=[('state','<>','done')], help="Keep empty to use the period of the validation(Payslip) date."),
}
def compute_sheet(self, cr, uid, ids, context=None):
emp_pool = self.pool.get('hr.employee')
slip_pool = self.pool.get('hr.payslip')
func_pool = self.pool.get('hr.payroll.structure')
slip_line_pool = self.pool.get('hr.payslip.line')
wf_service = netsvc.LocalService("workflow")
vals = self.browse(cr, uid, ids, context=context)[0]
emp_ids = emp_pool.search(cr, uid, [])
for emp in emp_pool.browse(cr, uid, emp_ids, context=context):
old_slips = slip_pool.search(cr, uid, [('employee_id','=', emp.id), ('date','=',vals.date)])
if old_slips:
slip_pool.write(cr, uid, old_slips, {'register_id':ids[0]})
for sid in old_slips:
wf_service.trg_validate(uid, 'hr.payslip', sid, 'compute_sheet', cr)
else:
res = {
'employee_id':emp.id,
'basic':0.0,
'register_id':ids[0],
'name':vals.name,
'date':vals.date,
'journal_id':vals.journal_id.id,
'bank_journal_id':vals.bank_journal_id.id
}
slip_id = slip_pool.create(cr, uid, res)
wf_service.trg_validate(uid, 'hr.payslip', slip_id, 'compute_sheet', cr)
number = self.pool.get('ir.sequence').get(cr, uid, 'salary.register')
self.write(cr, uid, ids, {'state':'draft', 'number':number})
return True
payroll_register()
class payroll_advice(osv.osv):
_inherit = 'hr.payroll.advice'
_description = 'Bank Advice Note'
_columns = {
'account_id': fields.many2one('account.account', 'Account'),
}
payroll_advice()
#class payroll_advice(osv.osv):
# _inherit = 'hr.payroll.advice'
# _description = 'Bank Advice Note'
#
# _columns = {
# 'account_id': fields.many2one('account.account', 'Account'),
# }
#payroll_advice()
class contrib_register(osv.osv):
_inherit = 'hr.contibution.register'
_inherit = 'hr.contribution.register'
_description = 'Contribution Register'
def _total_contrib(self, cr, uid, ids, field_names, arg, context=None):
line_pool = self.pool.get('hr.contibution.register.line')
# line_pool = self.pool.get('hr.contibution.register.line')
period_id = self.pool.get('account.period').search(cr,uid,[('date_start','<=',time.strftime('%Y-%m-%d')),('date_stop','>=',time.strftime('%Y-%m-%d'))])[0]
fiscalyear_id = self.pool.get('account.period').browse(cr, uid, period_id, context=context).fiscalyear_id
res = {}
for cur in self.browse(cr, uid, ids, context=context):
current = line_pool.search(cr, uid, [('period_id','=',period_id),('register_id','=',cur.id)])
years = line_pool.search(cr, uid, [('period_id.fiscalyear_id','=',fiscalyear_id.id), ('register_id','=',cur.id)])
e_month = 0.0
c_month = 0.0
for i in line_pool.browse(cr, uid, current, context=context):
e_month += i.emp_deduction
c_month += i.comp_deduction
e_year = 0.0
c_year = 0.0
for j in line_pool.browse(cr, uid, years, context=context):
e_year += i.emp_deduction
c_year += i.comp_deduction
res[cur.id]={
'monthly_total_by_emp':e_month,
'monthly_total_by_comp':c_month,
'yearly_total_by_emp':e_year,
'yearly_total_by_comp':c_year
}
# for cur in self.browse(cr, uid, ids, context=context):
# current = line_pool.search(cr, uid, [('period_id','=',period_id),('register_id','=',cur.id)])
# years = line_pool.search(cr, uid, [('period_id.fiscalyear_id','=',fiscalyear_id.id), ('register_id','=',cur.id)])
#
# e_month = 0.0
# c_month = 0.0
# for i in line_pool.browse(cr, uid, current, context=context):
# e_month += i.emp_deduction
# c_month += i.comp_deduction
#
# e_year = 0.0
# c_year = 0.0
# for j in line_pool.browse(cr, uid, years, context=context):
# e_year += i.emp_deduction
# c_year += i.comp_deduction
#
# res[cur.id]={
# 'monthly_total_by_emp':e_month,
# 'monthly_total_by_comp':c_month,
# 'yearly_total_by_emp':e_year,
# 'yearly_total_by_comp':c_year
# }
return res
_columns = {
@ -188,22 +188,22 @@ class contrib_register(osv.osv):
}
contrib_register()
class contrib_register_line(osv.osv):
_inherit = 'hr.contibution.register.line'
_description = 'Contribution Register Line'
#class contrib_register_line(osv.osv):
# _inherit = 'hr.contibution.register.line'
# _description = 'Contribution Register Line'
#
# _columns = {
# 'period_id': fields.many2one('account.period', 'Period'),
# }
#contrib_register_line()
_columns = {
'period_id': fields.many2one('account.period', 'Period'),
}
contrib_register_line()
class hr_holidays_status(osv.osv):
_inherit = 'hr.holidays.status'
_columns = {
'account_id': fields.many2one('account.account', 'Account'),
'analytic_account_id':fields.many2one('account.analytic.account', 'Analytic Account'),
}
hr_holidays_status()
#class hr_holidays_status(osv.osv):
# _inherit = 'hr.holidays.status'
# _columns = {
# 'account_id': fields.many2one('account.account', 'Account'),
# 'analytic_account_id':fields.many2one('account.analytic.account', 'Analytic Account'),
# }
#hr_holidays_status()
class hr_payslip(osv.osv):
'''
@ -449,11 +449,11 @@ class hr_payslip(osv.osv):
fiscal_year_objs = fiscalyear_pool.read(cr, uid, fiscal_year_ids, ['date_start','date_stop'], context=context)
year_exist = False
for fiscal_year in fiscal_year_objs:
if ((fiscal_year['date_start'] <= slip.date) and (fiscal_year['date_stop'] >= slip.date)):
if ((fiscal_year['date_start'] <= slip.date_from) and (fiscal_year['date_stop'] >= slip.date_to)):
year_exist = True
if not year_exist:
raise osv.except_osv(_('Warning !'), _('Fiscal Year is not defined for slip date %s') % slip.date)
search_periods = period_pool.search(cr,uid,[('date_start','<=',slip.date),('date_stop','>=',slip.date)], context=context)
search_periods = period_pool.search(cr,uid,[('date_start','=',slip.date_from),('date_stop','=',slip.date_to)], context=context)
if not search_periods:
raise osv.except_osv(_('Warning !'), _('Period is not defined for slip date %s') % slip.date)
period_id = search_periods[0]
@ -661,6 +661,17 @@ class hr_payslip_line(osv.osv):
}
hr_payslip_line()
class hr_salary_rule(osv.osv):
_inherit = 'hr.salary.rule'
_columns = {
# 'account_id': fields.many2one('account.account', 'General Account'),
'analytic_account_id':fields.many2one('account.analytic.account', 'Analytic Account'),
'account_tax_id':fields.many2one('account.tax.code', 'Tax Code'),
'account_debit': fields.many2one('account.account', 'Debit Account'),
'account_credit': fields.many2one('account.account', 'Credit Account'),
}
hr_salary_rule()
class account_move_link_slip(osv.osv):
'''
Account Move Link to Pay Slip
@ -675,4 +686,15 @@ class account_move_link_slip(osv.osv):
}
account_move_link_slip()
class hr_contract(osv.osv):
_inherit = 'hr.contract'
_description = 'Employee Contract'
_columns = {
'analytic_account_id':fields.many2one('account.analytic.account', 'Analytic Account'),
'journal_id': fields.many2one('account.journal', 'Journal'),
}
hr_contract()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -2,22 +2,6 @@
<openerp>
<data>
<record model="ir.ui.view" id="view_holiday_status_inherit_form1">
<field name="name">hr.holidays.status.inherit1</field>
<field name="model">hr.holidays.status</field>
<field name="inherit_id" ref="hr_payroll.view_holiday_status_form1"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field name="code" position="after">
<field name="analytic_account_id"/>
<newline/>
<field name="account_id"/>
<newline/>
</field>
</field>
</record>
<record model="ir.ui.view" id="view_hr_payslip_line_inherit_tree">
<field name="name">hr.payslip.line.inherit.tree</field>
<field name="model">hr.payslip.line</field>
@ -44,7 +28,7 @@
</field>
</record>
<record model="ir.ui.view" id="view_hr_employee_grade_inherit_form">
<!-- <record model="ir.ui.view" id="view_hr_employee_grade_inherit_form">
<field name="name">hr.employee.grade.inherit.form</field>
<field name="model">hr.payroll.structure</field>
<field name="inherit_id" ref="hr_payroll.view_hr_employee_grade_form"/>
@ -54,7 +38,7 @@
<field name="account_id" required="1"/>
</xpath>
</field>
</record>
</record>-->
<record model="ir.ui.view" id="view_hr_payslip_inherit_form">
<field name="name">hr.payslip.inherit.form</field>
@ -62,7 +46,7 @@
<field name="inherit_id" ref="hr_payroll.view_hr_payslip_form"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field name="date" position="before">
<field name="date_to" position="after">
<field name="journal_id" required="1"/>
<field name="bank_journal_id" domain="[('type','=','cash')]" required="1"/>
</field>
@ -87,51 +71,13 @@
</field>
</record>
<record model="ir.ui.view" id="view_hr_bank_advice_inherit_form">
<field name="name">hr.payroll.advice.inherit.form</field>
<field name="model">hr.payroll.advice</field>
<field name="inherit_id" ref="hr_payroll.view_hr_bank_advice_form"/>
<field name="type">form</field>
<record model="ir.ui.view" id="hr_contibution_register_inherit_tree">
<field name="name">hr.contribution.register.inherit.tree</field>
<field name="model">hr.contribution.register</field>
<field name="inherit_id" ref="hr_payroll.hr_contribution_register_tree"/>
<field name="type">tree</field>
<field name="arch" type="xml">
<field name="name" position="after">
<field name="account_id" required="1"/>
</field>
</field>
</record>
<record model="ir.ui.view" id="view_hr_payroll_register_inherit_tree">
<field name="name">hr.payroll.register.inherit.tree</field>
<field name="model">hr.payroll.register</field>
<field name="inherit_id" ref="hr_payroll.view_hr_payroll_register_tree"/>
<field name="type">tree</field>
<field name="arch" type="xml">
<field name="state" position="before">
<field name="journal_id" required="1"/>
<field name="bank_journal_id" required="1"/>
</field>
</field>
</record>
<record model="ir.ui.view" id="view_hr_payroll_register_inherit_form">
<field name="name">hr.payroll.register.inherit.form</field>
<field name="model">hr.payroll.register</field>
<field name="inherit_id" ref="hr_payroll.view_hr_payroll_register_form"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field name="number" position="after">
<field name="journal_id" required="1"/>
<field name="bank_journal_id" required="1"/>
</field>
</field>
</record>
<record model="ir.ui.view" id="hr_contibution_register_inherit_tree">
<field name="name">hr.contibution.register.inherit.tree</field>
<field name="model">hr.contibution.register</field>
<field name="inherit_id" ref="hr_payroll.hr_contibution_register_tree"/>
<field name="type">tree</field>
<field name="arch" type="xml">
<field name="monthly_total_by_comp" position="after">
<field name="yearly_total_by_emp"/>
<field name="yearly_total_by_comp"/>
</field>
@ -139,45 +85,35 @@
</record>
<record model="ir.ui.view" id="hr_contibution_register_inherit_form">
<field name="name">hr.contibution.register.inherit.form</field>
<field name="model">hr.contibution.register</field>
<field name="inherit_id" ref="hr_payroll.hr_contibution_register_form"/>
<field name="name">hr.contribution.register.inherit.form</field>
<field name="model">hr.contribution.register</field>
<field name="inherit_id" ref="hr_payroll.hr_contribution_register_form"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field name="name" position="after">
<field name="account_id" required="1"/>
<field name="analytic_account_id"/>
</field>
<xpath expr="/form/notebook" position="before">
<newline/>
<field name="account_id" required="1"/>
<field name="analytic_account_id"/>
</xpath>
</field>
</record>
<record model="ir.ui.view" id="hr_contibution_register_inherit1_form">
<field name="name">hr.contibution.register.inherit1.form</field>
<field name="model">hr.contibution.register</field>
<field name="inherit_id" ref="hr_payroll.hr_contibution_register_form"/>
<!-- <record model="ir.ui.view" id="hr_contibution_register_inherit1_form">
<field name="name">hr.contribution.register.inherit1.form</field>
<field name="model">hr.contribution.register</field>
<field name="inherit_id" ref="hr_payroll.hr_contribution_register_form"/>
<field name="type">form</field>
<field name="arch" type="xml">
<group name="Month" position="after">
<xpath expr="/form/notebook" position="before">
<group col="2" colspan="2">
<newline/>
<separator colspan="4" string="Year"/>
<field name="yearly_total_by_emp"/>
<field name="yearly_total_by_comp"/>
</group>
</group>
</xpath>
</field>
</record>
<record model="ir.ui.view" id="hr_contibution_register_line_inherit_form">
<field name="name">hr.contibution.register.line.form.inherit</field>
<field name="model">hr.contibution.register.line</field>
<field name="inherit_id" ref="hr_payroll.hr_contibution_register_line_form"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field name="employee_id" position="after">
<field name="period_id"/>
</field>
</field>
</record>
</record>-->
<record id="view_hr_payslip_form_inherit" model="ir.ui.view">
<field name="name">hr.payslip.form</field>
@ -185,7 +121,7 @@
<field name="type">form</field>
<field name="inherit_id" ref="hr_payroll.view_hr_payslip_form"/>
<field name="arch" type="xml">
<page string="Other Informations" position="replace">
<xpath expr="/form/notebook/page[@string='Other Information']" position="replace">
<page string="Accounting Details">
<group col="4" colspan="3">
<separator colspan="4" string="Accounting Informations"/>
@ -203,18 +139,18 @@
</field>
</group>
<group col="2" colspan="1">
<separator colspan="2" string="Other Informations"/>
<field name="paid" readonly="1"/>
<field name="company_id"/>
<field name="register_id"/>
<field name="deg_id"/>
<field name="contract_id" domain="[('employee_id','=',employee_id)]"/>
<separator colspan="4" string="Other Information"/>
<group col="5" colspan="2">
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
<newline/>
<field name="paid" readonly="1"/>
</group>
</group>
<separator colspan="4" string="Description"/>
<field name="note" colspan="4" nolabel="1"/>
<separator colspan="4" string="Notes"/>
<field name="note" colspan="4" nolabel="1"/>
</page>
</page>
</field>
</xpath>
</field>
</record>
<record id="view_hr_payslip_form_inherit1" model="ir.ui.view">
@ -251,5 +187,39 @@
</field>
</record>
<!-- Adding Account fields to the Salary Rules -->
<record id="hr_salary_rule_form_inherit" model="ir.ui.view">
<field name="name">hr.salary.rule.form.inherit</field>
<field name="model">hr.salary.rule</field>
<field name="inherit_id" ref="hr_payroll.hr_salary_rule_form"/>
<field name="arch" type="xml">
<xpath expr="/form/notebook/page[@string='Child Rules']" position="after">
<page string="Accounting">
<field name="account_debit" />
<field name="account_credit"/>
<field name="analytic_account_id"/>
<field name="account_tax_id"/>
</page>
</xpath>
</field>
</record>
<!-- Contract View -->
<record id="hr_contract_form_inherit" model="ir.ui.view">
<field name="name">hr.contract.view.form.inherit</field>
<field name="model">hr.contract</field>
<field name="type">form</field>
<field name="inherit_id" ref="hr_contract.hr_contract_view_form"/>
<field name="arch" type="xml">
<xpath expr="/form/notebook/page/group/field[@name='advantages']" position="after">
<separator colspan="4" string="Accounting"/>
<field name="analytic_account_id"/>
<field name="journal_id"/>
</xpath>
</field>
</record>
</data>
</openerp>