← Back to team overview

openerp-dev-web team mailing list archive

lp:~openerp-dev/openobject-addons/trunk-payroll-payslip-states-and-workflow-mtr into lp:~openerp-dev/openobject-addons/trunk-payroll

 

Meera Trambadia (OpenERP) has proposed merging lp:~openerp-dev/openobject-addons/trunk-payroll-payslip-states-and-workflow-mtr into lp:~openerp-dev/openobject-addons/trunk-payroll.

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

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-payroll-payslip-states-and-workflow-mtr/+merge/61230

hr_payroll:- improved payslip states and workflow: -
-> kept only draft, verify, done state and accordingly changed the workflow.
-> applied condition on transition of verify -> done.
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-payroll-payslip-states-and-workflow-mtr/+merge/61230
Your team OpenERP R&D Team is requested to review the proposed merge of lp:~openerp-dev/openobject-addons/trunk-payroll-payslip-states-and-workflow-mtr into lp:~openerp-dev/openobject-addons/trunk-payroll.
=== modified file 'hr_payroll/hr_payroll.py'
--- hr_payroll/hr_payroll.py	2011-05-12 11:57:19 +0000
+++ hr_payroll/hr_payroll.py	2011-05-17 11:16:01 +0000
@@ -255,12 +255,16 @@
         'date_from': fields.date('Date From', readonly=True, states={'draft': [('readonly', False)]}, required=True),
         'date_to': fields.date('Date To', readonly=True, states={'draft': [('readonly', False)]}, required=True),
         'state': fields.selection([
-            ('draft', 'Waiting for Verification'),
-            ('hr_check', 'Waiting for HR Verification'),
-            ('accont_check', 'Waiting for Account Verification'),
-            ('confirm', 'Confirm Sheet'),
-            ('done', 'Paid Salary'),
+            ('draft', 'Draft'),
+            ('verify', 'Verify'),
+            ('done', 'Done'),
             ('cancel', 'Reject'),
+#            ('draft', 'Waiting for Verification'),
+#            ('hr_check', 'Waiting for HR Verification'),
+#            ('accont_check', 'Waiting for Account Verification'),
+#            ('confirm', 'Confirm Sheet'),
+#            ('done', 'Paid Salary'),
+#            ('cancel', 'Reject'),
         ], 'State', select=True, readonly=True,
             help=' * When the payslip is created the state is \'Waiting for verification\'.\
             \n* It is varified by the user and payslip is sent for HR varification, the state is \'Waiting for HR Verification\'. \
@@ -310,21 +314,23 @@
 
     def account_check_sheet(self, cr, uid, ids, context=None):
         return self.write(cr, uid, ids, {'state': 'accont_check'}, context=context)
-
+    
     def hr_check_sheet(self, cr, uid, ids, context=None):
         return self.write(cr, uid, ids, {'state': 'hr_check'}, context=context)
-
+    
     def process_sheet(self, cr, uid, ids, context=None):
         return self.write(cr, uid, ids, {'paid': True, 'state': 'done'}, context=context)
 
+    def hr_verify_sheet(self, cr, uid, ids, context=None):
+        return self.write(cr, uid, ids, {'state': 'verify'}, context=context)
+    
     def refund_sheet(self, cr, uid, ids, context=None):
         mod_obj = self.pool.get('ir.model.data')
         wf_service = netsvc.LocalService("workflow")
         for id in ids:
             id_copy = self.copy(cr, uid, id, {'credit_note': True}, context=context)
             self.compute_sheet(cr, uid, [id_copy], context=context)
-            wf_service.trg_validate(uid, 'hr.payslip', id_copy, 'verify_sheet', cr)
-            wf_service.trg_validate(uid, 'hr.payslip', id_copy, 'final_verify_sheet', cr)
+            wf_service.trg_validate(uid, 'hr.payslip', id_copy, 'hr_verify_sheet', cr)
             wf_service.trg_validate(uid, 'hr.payslip', id_copy, 'process_sheet', cr)
 
         form_id = mod_obj.get_object_reference(cr, uid, 'hr_payroll', 'view_hr_payslip_form')
@@ -347,6 +353,9 @@
 
     def verify_sheet(self, cr, uid, ids, context=None):
         return self.write(cr, uid, ids, {'state': 'confirm'}, context=context)
+    
+    def check(self, cr, uid, ids, context=None):
+        return True
 
     #TODO move this function into hr_contract module, on hr.employee object
     def get_contract(self, cr, uid, employee, date_from, date_to, context=None):

=== modified file 'hr_payroll/hr_payroll_view.xml'
--- hr_payroll/hr_payroll_view.xml	2011-05-12 07:02:53 +0000
+++ hr_payroll/hr_payroll_view.xml	2011-05-17 11:16:01 +0000
@@ -329,13 +329,14 @@
                     </notebook>
                     <group col="10" colspan="4">
                         <field name="state"/>
-                        <button string="Cancel" icon="terp-dialog-close" name="cancel_sheet" states="draft,hr_check,confirm"/>
+                        <button string="Cancel" icon="terp-dialog-close" name="cancel_sheet" states="draft,hr_check,confirm,verify"/>
                         <button string="Compute Sheet" icon="terp-stock_format-scientific" name="compute_sheet" type="object" states="draft"/>
-                        <button string="Verify Sheet" icon="terp-camera_test" name="verify_sheet" states="draft"/>
+                        <!--<button string="Verify Sheet" icon="terp-camera_test" name="verify_sheet" states="draft"/>
                         <button string="Approve Sheet" icon="terp-camera_test" name="final_verify_sheet" states="hr_check"/>
-                        <button string="Pay Salary" icon="terp-dolar_ok!" name="process_sheet" states="confirm"/>
+                        <button string="Pay Salary" icon="terp-dolar_ok!" name="process_sheet" states="confirm"/>-->
                         <button string="Set to Draft" icon="terp-stock_effects-object-colorize" name="draft" states="cancel"/>
                         <button string="Refund" icon="gtk-execute" name="refund_sheet" states="confirm,done" type='object'/>
+                        <button string="Verify" icon="terp-camera_test" name="hr_verify_sheet" states="draft"/>
                     </group>
                 </form>
             </field>

=== modified file 'hr_payroll/hr_payroll_workflow.xml'
--- hr_payroll/hr_payroll_workflow.xml	2011-04-08 09:38:29 +0000
+++ hr_payroll/hr_payroll_workflow.xml	2011-05-17 11:16:01 +0000
@@ -14,22 +14,28 @@
             <field name="kind">function</field>
             <field name="action">write({'state': 'draft'})</field>
             <field name="split_mode">OR</field>
-
-        </record>
-
-        <record id="act_hr_check" model="workflow.activity">
+        </record>
+
+        <record id="act_verify" model="workflow.activity">
+            <field name="wkf_id" ref="wkf"/>
+            <field name="name">verify</field>
+            <field name="action">hr_verify_sheet()</field>
+            <field name="kind">function</field>
+        </record>
+
+     <!--   <record id="act_hr_check" model="workflow.activity">
             <field name="wkf_id" ref="wkf"/>
             <field name="name">hr_check</field>
             <field name="action">hr_check_sheet()</field>
             <field name="kind">function</field>
-        </record>
+        </record>-->
 
-        <record id="act_confirm" model="workflow.activity">
+        <!--<record id="act_confirm" model="workflow.activity">
             <field name="wkf_id" ref="wkf"/>
             <field name="name">confirm</field>
             <field name="action">verify_sheet()</field>
             <field name="kind">function</field>
-        </record>
+        </record>-->
 
         <record id="act_cancel" model="workflow.activity">
             <field name="wkf_id" ref="wkf"/>
@@ -46,52 +52,65 @@
             <field name="flow_stop">True</field>
         </record>
 
-        <record id="t2" model="workflow.transition">
+       <!-- <record id="t2" model="workflow.transition">
             <field name="act_from" ref="act_draft"/>
             <field name="act_to" ref="act_hr_check"/>
             <field name="signal">verify_sheet</field>
-        </record>
+        </record>-->
 
-        <record id="t3" model="workflow.transition">
+       <!-- <record id="t3" model="workflow.transition">
             <field name="act_from" ref="act_hr_check"/>
             <field name="act_to" ref="act_confirm"/>
             <field name="signal">final_verify_sheet</field>
-        </record>
+        </record>-->
 
-        <record id="t4" model="workflow.transition">
+        <!--<record id="t4" model="workflow.transition">
             <field name="act_from" ref="act_confirm"/>
             <field name="act_to" ref="act_done"/>
             <field name="signal">process_sheet</field>
-        </record>
-
-        <record id="t7" model="workflow.transition">
-            <field name="act_from" ref="act_draft"/>
-            <field name="act_to" ref="act_cancel"/>
-            <field name="signal">cancel_sheet</field>
-        </record>
-
-        <record id="t8" model="workflow.transition">
+        </record>-->
+
+       <!-- <record id="t8" model="workflow.transition">
             <field name="act_from" ref="act_hr_check"/>
             <field name="act_to" ref="act_cancel"/>
             <field name="signal">cancel_sheet</field>
-        </record>
+        </record>-->
 
-        <record id="t9" model="workflow.transition">
+       <!-- <record id="t9" model="workflow.transition">
             <field name="act_from" ref="act_confirm"/>
             <field name="act_to" ref="act_cancel"/>
             <field name="signal">cancel_sheet</field>
+        </record>-->
+        
+        <record id="t1" model="workflow.transition">
+            <field name="act_from" ref="act_draft"/>
+            <field name="act_to" ref="act_verify"/>
+            <field name="signal">hr_verify_sheet</field>
         </record>
 
-        <record id="t11" model="workflow.transition">
-            <field name="act_from" ref="act_done"/>
+        <record id="t2" model="workflow.transition">
+            <field name="act_from" ref="act_draft"/>
             <field name="act_to" ref="act_cancel"/>
             <field name="signal">cancel_sheet</field>
         </record>
-
-        <record id="t12" model="workflow.transition">
+        
+         <record id="t3" model="workflow.transition">
             <field name="act_from" ref="act_cancel"/>
             <field name="act_to" ref="act_draft"/>
             <field name="signal">draft</field>
         </record>
+        
+         <record id="t4" model="workflow.transition">
+            <field name="act_from" ref="act_verify"/>
+            <field name="act_to" ref="act_cancel"/>
+            <field name="signal">cancel_sheet</field>
+        </record>
+        
+        <record id="t5" model="workflow.transition">
+            <field name="act_from" ref="act_verify"/>
+            <field name="act_to" ref="act_done"/>
+            <field name="condition">check()</field>
+        </record>
+        
     </data>
 </openerp>


Follow ups