Ankita Patel (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-addons/trunk-payroll-india-report-pat into 
lp:~openerp-dev/openobject-addons/trunk-payroll-india-mra.

Requested reviews:
  OpenERP R&D Team (openerp-dev)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-payroll-india-report-pat/+merge/113957

Hello,

      I improve on_change event for close button in l10n_in_hr_payroll.

Thanks,
Ankita Patel
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-payroll-india-report-pat/+merge/113957
Your team OpenERP R&D Team is requested to review the proposed merge of 
lp:~openerp-dev/openobject-addons/trunk-payroll-india-report-pat into 
lp:~openerp-dev/openobject-addons/trunk-payroll-india-mra.
=== modified file 'hr_payroll/hr_payroll.py'
--- hr_payroll/hr_payroll.py	2012-06-20 13:04:49 +0000
+++ hr_payroll/hr_payroll.py	2012-07-09 11:47:58 +0000
@@ -278,7 +278,7 @@
             \n* If the payslip is confirmed then state is set to \'Done\'.\
             \n* When user cancel payslip the state is \'Rejected\'.'),
 #        'line_ids': fields.one2many('hr.payslip.line', 'slip_id', 'Payslip Line', required=False, readonly=True, states={'draft': [('readonly', False)]}),
-        'line_ids': one2many_mod2('hr.payslip.line', 'slip_id', 'Payslip Lines', readonly=True, states={'draft':[('readonly',False)]}),
+        'line_ids': fields.one2many('hr.payslip.line', 'slip_id', 'Payslip Lines', readonly=True, states={'draft':[('readonly',False)]}),
         'company_id': fields.many2one('res.company', 'Company', required=False, readonly=True, states={'draft': [('readonly', False)]}),
         'worked_days_line_ids': fields.one2many('hr.payslip.worked_days', 'payslip_id', 'Payslip Worked Days', required=False, readonly=True, states={'draft': [('readonly', False)]}),
         'input_line_ids': fields.one2many('hr.payslip.input', 'payslip_id', 'Payslip Inputs', required=False, readonly=True, states={'draft': [('readonly', False)]}),

=== modified file 'hr_payroll/hr_payroll_view.xml'
--- hr_payroll/hr_payroll_view.xml	2012-06-29 12:36:18 +0000
+++ hr_payroll/hr_payroll_view.xml	2012-07-09 11:47:58 +0000
@@ -726,7 +726,7 @@
                 <header>
                     <button name="close_payslip_run" type="object" string="Close" states="draft" class="oe_highlight"/>
                     <button name="%(action_hr_payslip_by_employees)d" type="action" states="draft" string="Generate Payslips" class="oe_highlight"/>
-                    <button string="Set to Draft" name="draft_payslip_run" type="object" states="close" />
+                    <button name="draft_payslip_run" string="Set to Draft" type="object" states="close" />
                     <field name="state" widget="statusbar"/>
                 </header>
                 <sheet>

=== modified file 'l10n_in_hr_payroll/l10n_in_hr_payroll.py'
--- l10n_in_hr_payroll/l10n_in_hr_payroll.py	2012-07-04 05:17:41 +0000
+++ l10n_in_hr_payroll/l10n_in_hr_payroll.py	2012-07-09 11:47:58 +0000
@@ -109,7 +109,7 @@
     _name = 'hr.payroll.advice'
     _description = 'Bank Advice'
     _columns = {
-        'name':fields.char('Name', size=32, readonly=True, required=True, states={'draft': [('readonly', False)]},),
+        'name':fields.char('Name', size=32, required=True, readonly=True, states={'draft': [('readonly', False)]},),
         'note': fields.text('Description'),
         'date': fields.date('Date', readonly=True, required=True, states={'draft': [('readonly', False)]}, help="Advice Date is used to search Payslips"),
         'state':fields.selection([
@@ -211,6 +211,45 @@
 
 payroll_advice()
 
+class hr_payslip_run(osv.osv):
+
+    _inherit = 'hr.payslip.run'
+    _description = 'Payslip Batches'
+    _columns = {
+    }
+
+    def close_payslip_run(self, cr, uid, ids, context=None):
+
+        payslip_pool = self.pool.get('hr.payslip')
+        payslip_run_pool = self.pool.get('hr.payslip.run')
+        advice_line_pool = self.pool.get('hr.payroll.advice.line')
+        advice_pool = self.pool.get('hr.payroll.advice')
+        payslip_line_pool = self.pool.get('hr.payslip.line')
+
+        for advice in self.browse(cr, uid, ids, context=context):
+            for slip in advice.slip_ids:
+                if slip.id:
+                    line = payslip_line_pool.browse(cr, uid, ids, context=context)[0]
+                    advice_line = advice_pool.browse(cr, uid, ids, context=context)[0]
+                    adv = {
+                            'advice_id': advice.id,
+                            'name': slip.employee_id.name,
+                            'employee_id': slip.employee_id.id,
+                            }
+                    advice_record = advice_pool.create(cr, uid, adv, context=context)
+                    advice_line = {
+                            'advice_id': advice.id,
+                            'name': slip.employee_id.name,
+                            'employee_id': slip.employee_id.id,
+                            }
+                    adviceline_record = advice_line_pool.create(cr, uid, advice_line, context=context)
+                payslip_record = payslip_pool.write(cr, uid, ids, {'advice_id': advice.id, 'name': slip.employee_id.name, 'employee_id': slip.employee_id.id}, context=context)
+            return super(hr_payslip_run, self).close_payslip_run(cr, uid, ids, context=context)
+
+        return True
+
+hr_payslip_run()
+
 class payroll_advice_line(osv.osv):
     '''
     Bank Advice Lines
@@ -220,7 +259,7 @@
     _columns = {
         'advice_id': fields.many2one('hr.payroll.advice', 'Bank Advice'),
         'name': fields.char('Bank Account No.', size=32, required=True),
-        'employee_id': fields.many2one('hr.employee', 'Employee', required=True),
+        'employee_id': fields.many2one('hr.employee', required=True, 'Employee'),
         'bysal': fields.float('By Salary', digits_compute=dp.get_precision('Payroll')),
         'company_id': fields.related('advice_id', 'company_id', type='many2one', required=False, relation='res.company', string='Company', store=True),
     }
@@ -252,4 +291,4 @@
 
 res_company()
 
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to