[MOD] board_hr : remaining holidays by user, instead of leaves by type
authorVir (Open ERP) <vir@tinyerp.com>
Tue, 6 Apr 2010 13:24:56 +0000 (18:54 +0530)
committerVir (Open ERP) <vir@tinyerp.com>
Tue, 6 Apr 2010 13:24:56 +0000 (18:54 +0530)
bzr revid: vir@tinyerp.com-20100406132456-kfz5d1fkyc26p42d

addons/board_hr/board_hr_view.xml
addons/hr_holidays/report/hr_holidays_report.py
addons/hr_holidays/report/hr_holidays_report_view.xml

index 2a587c0..b2c1056 100644 (file)
                        <field name="view_id" ref="hr_timesheet_sheet.view_timesheet_report_graph"/>
                </record>
 
-               <record id="action_hr_holidays_by_type_all" model="ir.actions.act_window">
-                       <field name="name">Leaves by Type</field>
+               <record id="action_hr_holidays_remaining_leaves_user_all" model="ir.actions.act_window">
+                       <field name="name">Remaining Leaves by User</field>
                        <field name="type">ir.actions.act_window</field>
-                       <field name="res_model">hr.holidays.by.type</field>
+                       <field name="res_model">hr.holidays.remaining.leaves.user</field>
                        <field name="view_type">form</field>
                        <field name="view_mode">graph,tree</field>
-                       <field name="view_id" ref="hr_holidays.view_hr_holidays_by_type_graph"/>
+                       <field name="domain">[('user_id','=',uid)]</field>
+                       <field name="view_id" ref="hr_holidays.view_hr_holidays_remaining_leaves_user_graph"/>
                </record>
         <record id="board_hr_form" model="ir.ui.view">
             <field name="name">board.hr.form</field>
                     <hpaned>
                         <child1>
                             <action colspan="4" height="220" name="%(act_hr_current_timesheet_sheet_form)d" string="My current timesheet"  width="510"/>
-                                                       <action colspan="4" height="220" name="%(action_timesheet_report_all)d" string="Timesheets by Month" />
-                                               <action colspan="4" height="220" name="%(action_hr_holidays_by_type_all)d" string="Leaves by Type" />
+                                                   <action colspan="4" height="220" name="%(action_view_holiday_status_board)d" string="My Leaves"/>
+                            <action colspan="4" height="220" name="%(action_my_expense)d" string="My Expenses" />
                         </child1>
                         <child2>
-                            <action colspan="4" height="220" name="%(action_view_holiday_status_board)d" string="My Leaves"/>
-                            <action colspan="4" height="220" name="%(action_my_expense)d" string="My Expenses" />
+                               <action colspan="4" height="220" name="%(action_timesheet_report_all)d" string="Timesheets by Month" />
+                                               <action colspan="4" height="220" name="%(action_hr_holidays_remaining_leaves_user_all)d" string="Leaves by Type" />
                         </child2>
                     </hpaned>
                 </form>
index 5652d32..4bae007 100644 (file)
@@ -71,29 +71,31 @@ class hr_holidays_report(osv.osv):
         """)
 hr_holidays_report()
 
-class hr_holidays_by_type(osv.osv):
-    _name = "hr.holidays.by.type"
+class hr_holidays_remaining_leaves_user(osv.osv):
+    _name = "hr.holidays.remaining.leaves.user"
     _description = "Total holidays by type"
     _auto = False
     _columns = {
-        'name': fields.char('Leave Type',size=64),
-        'no_of_leaves' : fields.integer('Total leaves'),
+        'name': fields.char('Employee',size=64),
+        'no_of_leaves' : fields.integer('Remaining leaves'),
+        'user_id':fields.many2one('res.users','User'),
 
     }
     def init(self, cr):
-        tools.drop_view_if_exists(cr, 'hr_holidays_by_type')
+        tools.drop_view_if_exists(cr, 'hr_holidays_remaining_leaves_user')
         cr.execute("""
-            create or replace view hr_holidays_by_type as (
+            create or replace view hr_holidays_remaining_leaves_user as (
                  select
-                     min(hhl.id) as id,
-                     hhs.name as name,
-                     sum(hhl.number_of_days) * -1 as no_of_leaves
+                    min(hrs.id) as id,
+                    rr.name as name,
+                    sum(hrs.number_of_days) as no_of_leaves,
+                    hrs.user_id
                 from
-                    hr_holidays as hhl,hr_holidays_status as hhs
+                    hr_holidays as hrs, hr_employee as hre, resource_resource as rr
                 where
-                    hhs.id = hhl.holiday_status_id and number_of_days < 0
+                    hrs.employee_id = hre.id and hre.resource_id =  rr.id
                 group by
-                    hhs.name,hhl.holiday_status_id
+                    rr.name,hrs.user_id
             )
         """)
-hr_holidays_by_type()
+hr_holidays_remaining_leaves_user()
index a70db03..7c15f77 100644 (file)
@@ -90,9 +90,9 @@
 
     <menuitem action="action_hr_holidays_report_all" id="menu_hr_holidays_report_all" parent="menu_hr_reporting_holidays" sequence="0"/>
 
-       <record id="view_hr_holidays_by_type_tree" model="ir.ui.view">
-        <field name="name">hr.holidays.by.type.tree</field>
-        <field name="model">hr.holidays.by.type</field>
+       <record id="view_hr_holidays_remaining_leaves_user_tree" model="ir.ui.view">
+        <field name="name">hr.holidays.remaining.leaves.user.tree</field>
+        <field name="model">hr.holidays.remaining.leaves.user</field>
         <field name="type">tree</field>
         <field name="arch" type="xml">
             <tree string="Leaves by Type">
         </field>
     </record>
 
-    <record id="view_hr_holidays_by_type_graph" model="ir.ui.view">
-        <field name="name">hr.holidays.by.type.graph</field>
-        <field name="model">hr.holidays.by.type</field>
+    <record id="view_hr_holidays_remaining_leaves_user_graph" model="ir.ui.view">
+        <field name="name">hr.holidays.remaining.leaves.user.graph</field>
+        <field name="model">hr.holidays.remaining.leaves.user</field>
         <field name="type">graph</field>
         <field name="arch" type="xml">
             <graph string="Leaves by Type" type="bar">