[IMP] hr_payroll:removed 'Bank Advice' and 'Bank Advice Lines'

bzr revid: mtr@mtr-20110303100753-jdc0o3nddrlv21jv
This commit is contained in:
mtr 2011-03-03 15:37:53 +05:30
parent d840425793
commit 6f0f2e5325
3 changed files with 20 additions and 182 deletions

View File

@ -432,8 +432,8 @@ class payroll_register(osv.osv):
def final_verify_sheet(self, cr, uid, ids, context=None):
slip_pool = self.pool.get('hr.payslip')
advice_pool = self.pool.get('hr.payroll.advice')
advice_line_pool = self.pool.get('hr.payroll.advice.line')
# advice_pool = self.pool.get('hr.payroll.advice')
# advice_line_pool = self.pool.get('hr.payroll.advice.line')
sequence_pool = self.pool.get('ir.sequence')
users_pool = self.pool.get('res.users')
@ -444,25 +444,25 @@ class payroll_register(osv.osv):
wf_service.trg_validate(uid, 'hr.payslip', sid, 'final_verify_sheet', cr)
company_name = users_pool.browse(cr, uid, uid, context=context).company_id.name
for reg in self.browse(cr, uid, ids, context=context):
advice = {
'name': 'Payment Advice from %s' % (company_name),
'number': sequence_pool.get(cr, uid, 'payment.advice'),
'register_id':reg.id
}
pid = advice_pool.create(cr, uid, advice, context=context)
# for reg in self.browse(cr, uid, ids, context=context):
# advice = {
# 'name': 'Payment Advice from %s' % (company_name),
# 'number': sequence_pool.get(cr, uid, 'payment.advice'),
# 'register_id':reg.id
# }
# pid = advice_pool.create(cr, uid, advice, context=context)
for slip in reg.line_ids:
if not slip.employee_id.bank_account_id:
raise osv.except_osv(_('Error !'), _('Please define bank account for the %s employee') % (slip.employee_id.name))
pline = {
'advice_id':pid,
'name':slip.employee_id.bank_account_id.acc_number,
'employee_id':slip.employee_id.id,
'amount':slip.net,
'bysal':slip.net
}
id = advice_line_pool.create(cr, uid, pline, context=context)
# for slip in reg.line_ids:
# if not slip.employee_id.bank_account_id:
# raise osv.except_osv(_('Error !'), _('Please define bank account for the %s employee') % (slip.employee_id.name))
# pline = {
# 'advice_id':pid,
# 'name':slip.employee_id.bank_account_id.acc_number,
# 'employee_id':slip.employee_id.id,
# 'amount':slip.net,
# 'bysal':slip.net
# }
# id = advice_line_pool.create(cr, uid, pline, context=context)
self.write(cr, uid, ids, {'state':'confirm'}, context=context)
return True
@ -480,96 +480,6 @@ class payroll_register(osv.osv):
payroll_register()
class payroll_advice(osv.osv):
'''
Bank Advice Note
'''
_name = 'hr.payroll.advice'
_description = 'Bank Advice Note'
_columns = {
'register_id':fields.many2one('hr.payroll.register', 'Payroll Register', required=False),
'name':fields.char('Name', size=2048, required=True, readonly=False),
'note': fields.text('Description'),
'date': fields.date('Date'),
'state':fields.selection([
('draft','Draft Sheet'),
('confirm','Confirm Sheet'),
('cancel','Reject'),
],'State', select=True, readonly=True),
'number':fields.char('Number', size=64, required=False, readonly=True),
'line_ids':fields.one2many('hr.payroll.advice.line', 'advice_id', 'Employee Salary', required=False),
'chaque_nos':fields.char('Chaque Nos', size=256, required=False, readonly=False),
'company_id':fields.many2one('res.company', 'Company', required=False),
'bank_id': fields.related('register_id','bank_id', type='many2one', relation='res.bank', string='Bank', help="Select the Bank Address from whcih the salary is going to be paid"),
}
_defaults = {
'date': lambda *a: time.strftime('%Y-%m-%d'),
'state': lambda *a: 'draft',
'company_id': lambda self, cr, uid, context: \
self.pool.get('res.users').browse(cr, uid, uid,
context=context).company_id.id,
}
def confirm_sheet(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'confirm'}, context=context)
return True
def set_to_draft(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'draft'}, context=context)
return True
def cancel_sheet(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'cancel'}, context=context)
return True
def onchange_company_id(self, cr, uid, ids, company_id=False, context=None):
res = {}
if company_id:
company = self.pool.get('res.company').browse(cr, uid, company_id, context=context)
if company.partner_id.bank_ids:
res.update({'bank': company.partner_id.bank_ids[0].bank.name})
return {
'value':res
}
payroll_advice()
class payroll_advice_line(osv.osv):
'''
Bank Advice Lines
'''
_name = 'hr.payroll.advice.line'
_description = 'Bank Advice Lines'
_columns = {
'advice_id':fields.many2one('hr.payroll.advice', 'Bank Advice', required=False),
'name':fields.char('Bank Account A/C', size=64, required=True, readonly=False),
'employee_id':fields.many2one('hr.employee', 'Employee', required=True),
'amount': fields.float('Amount', digits=(16, 4)),
'bysal': fields.float('By Salary', digits=(16, 4)),
'flag':fields.char('D/C', size=8, required=True, readonly=False),
}
_defaults = {
'flag': lambda *a: 'C',
}
def onchange_employee_id(self, cr, uid, ids, ddate, employee_id, context=None):
vals = {}
slip_pool = self.pool.get('hr.payslip')
if employee_id:
dates = prev_bounds(ddate)
sids = False
sids = slip_pool.search(cr, uid, [('paid','=',False),('state','=','confirm'),('date','>=',dates[0]), ('employee_id','=',employee_id), ('date','<=',dates[1])], context=context)
if sids:
slip = slip_pool.browse(cr, uid, sids[0], context=context)
vals['name'] = slip.employee_id.identification_id
vals['amount'] = slip.net
vals['bysal'] = slip.net
return {
'value':vals
}
payroll_advice_line()
class contrib_register(osv.osv):
'''
Contribution Register

View File

@ -529,76 +529,6 @@
/>
<!-- End Payment Heads -->
<record id="view_hr_bank_advice_tree" model="ir.ui.view">
<field name="name">hr.payroll.advice.tree</field>
<field name="model">hr.payroll.advice</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Bank Advice">
<field name="number" select="1"/>
<field name="name" select="1"/>
<field name="date" select="1"/>
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
</tree>
</field>
</record>
<record id="view_hr_bank_advice_form" model="ir.ui.view">
<field name="name">hr.payroll.advice.form</field>
<field name="model">hr.payroll.advice</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Bank Advice">
<group col="6" colspan="4">
<field name="name" colspan="4" select="1"/>
<field name="number" select="1"/>
<field name="register_id"/>
<field name="bank_id"/>
</group>
<notebook colspan="4">
<page string="Paymeny Lines">
<field name="line_ids" colspan="4" nolabel="1">
<tree string="Payment Lines" editable="bottom">
<field name="employee_id" on_change="onchange_employee_id(parent.date, employee_id)"/>
<field name="name"/>
<field name="amount"/>
<field name="bysal"/>
<field name="flag"/>
</tree>
</field>
</page>
<page string="Letter Content">
<group colspan="4" col="6">
<field name="company_id" on_change="onchange_company_id(company_id)" groups="base.group_multi_company" widget="selection"/>
<field name="chaque_nos"/>
<field name="date" select="1"/>
</group>
<separator colspan="4" string="Letter Details"/>
<field name="note" colspan="4" nolabel="1"/>
</page>
</notebook>
<group col="6" colspan="6">
<field name="state"/>
<button name="cancel_sheet" string="Cancel Sheet" states="draft" icon="gtk-cancel" type="object"/>
<button name="confirm_sheet" icon="gtk-apply" string="Confirm Sheet" states="draft" type="object"/>
<button name="set_to_draft" string="Set to Draft" icon="gtk-convert" states="cancel,confirm" type="object"/>
</group>
</form>
</field>
</record>
<record id="action_view_hr_bank_advice_tree" model="ir.actions.act_window">
<field name="name">Payment Advice</field>
<field name="res_model">hr.payroll.advice</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_hr_bank_advice_tree"/>
</record>
<menuitem
action="action_view_hr_bank_advice_tree"
id="hr_menu_payment_advice"
parent="menu_hr_root_payroll"
/>
<record id="view_hr_payroll_register_tree" model="ir.ui.view">
<field name="name">hr.payroll.register.tree</field>
<field name="model">hr.payroll.register</field>

View File

@ -2,8 +2,6 @@
"access_hr_passport","hr.passport","model_hr_passport","base.group_hr_user",1,1,1,1
"access_hr_payroll_structure","hr.payroll.structure","model_hr_payroll_structure","base.group_hr_user",1,1,1,1
"access_hr_payroll_register","hr.payroll.register","model_hr_payroll_register","base.group_hr_user",1,1,1,1
"access_hr_payroll_advice","hr.payroll.advice","model_hr_payroll_advice","base.group_hr_user",1,1,1,1
"access_hr_payroll_advice_line","hr.payroll.advice.line","model_hr_payroll_advice_line","base.group_hr_user",1,1,1,1
"access_hr_contibution_register","hr.contibution.register","model_hr_contibution_register","base.group_hr_user",1,1,1,1
"access_hr_contibution_register_line","hr.contibution.register.line","model_hr_contibution_register_line","base.group_hr_user",1,1,1,1
"access_hr_salary_head","hr.salary.head","model_hr_salary_head","base.group_hr_user",1,1,1,1

1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_hr_passport hr.passport model_hr_passport base.group_hr_user 1 1 1 1
3 access_hr_payroll_structure hr.payroll.structure model_hr_payroll_structure base.group_hr_user 1 1 1 1
4 access_hr_payroll_register hr.payroll.register model_hr_payroll_register base.group_hr_user 1 1 1 1
access_hr_payroll_advice hr.payroll.advice model_hr_payroll_advice base.group_hr_user 1 1 1 1
access_hr_payroll_advice_line hr.payroll.advice.line model_hr_payroll_advice_line base.group_hr_user 1 1 1 1
5 access_hr_contibution_register hr.contibution.register model_hr_contibution_register base.group_hr_user 1 1 1 1
6 access_hr_contibution_register_line hr.contibution.register.line model_hr_contibution_register_line base.group_hr_user 1 1 1 1
7 access_hr_salary_head hr.salary.head model_hr_salary_head base.group_hr_user 1 1 1 1