← Back to team overview

clearcorp team mailing list archive

[Merge] lp:~rr.clearcorp/openobject-addons/6.1-ccorp-hr_payroll into lp:~clearcorp-drivers/openobject-addons/6.1-ccorp

 

Ronald Rubi has proposed merging lp:~rr.clearcorp/openobject-addons/6.1-ccorp-hr_payroll into lp:~clearcorp-drivers/openobject-addons/6.1-ccorp.

Requested reviews:
  CLEARCORP drivers (clearcorp-drivers)

For more details, see:
https://code.launchpad.net/~rr.clearcorp/openobject-addons/6.1-ccorp-hr_payroll/+merge/146150

Fix unlink payslip run. Merge with patch, openerp support
-- 
https://code.launchpad.net/~rr.clearcorp/openobject-addons/6.1-ccorp-hr_payroll/+merge/146150
Your team CLEARCORP development team is subscribed to branch lp:~clearcorp-drivers/openobject-addons/6.1-ccorp.
=== modified file 'hr_payroll/hr_payroll.py'
--- hr_payroll/hr_payroll.py	2013-01-31 17:27:43 +0000
+++ hr_payroll/hr_payroll.py	2013-02-01 15:33:24 +0000
@@ -234,6 +234,22 @@
 
     def close_payslip_run(self, cr, uid, ids, context=None):
         return self.write(cr, uid, ids, {'state': 'close'}, context=context)
+    
+    def unlink(self, cr, uid, ids, context=None):
+        if context is None:
+            context = {}
+        toremove = []
+        payslip_obj = self.pool.get('hr.payslip')
+        for batches in self.browse(cr, uid, ids, context=context):
+            if batches['state'] != 'draft':
+                raise osv.except_osv(_('Warning !'), _('You can not delete a closed payslip batch "%s" ') % batches['name'])
+            payslip_ids = map(lambda x: x.id, batches.slip_ids)
+            for payslip in payslip_obj.browse(cr, uid, payslip_ids):
+                    if payslip.state != 'draft':
+                        raise osv.except_osv(_('Warning !'), _('You can not delete payslip batch "%s" due to any of the confirmed payslip') % batches['name'])            
+            payslip_obj.unlink(cr, uid, payslip_ids, context=context)
+            toremove.append(batches.id)
+        return super(hr_payslip_run, self).unlink(cr, uid, toremove, context)
 
 hr_payslip_run()
 


Follow ups