[MERGE] HR Improvement
authorHarry (Open ERP) <hmo@tinyerp.com>
Fri, 19 Feb 2010 10:47:19 +0000 (16:17 +0530)
committerHarry (Open ERP) <hmo@tinyerp.com>
Fri, 19 Feb 2010 10:47:19 +0000 (16:17 +0530)
bzr revid: hmo@tinyerp.com-20100219104719-5e2pb5mweuqcuie6

1  2 
addons/crm_hr/crm_hr_menu.xml
addons/crm_hr/crm_hr_view.xml
addons/hr/hr.py
addons/hr/hr_view.xml
addons/hr_expense/hr_expense_view.xml
addons/hr_holidays/hr.py
addons/hr_holidays/hr_view.xml
addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml

          <field name="view_id" ref="crm_case_tree_view_job"/>
          <field name="act_window_id" ref="crm_case_categ0_act_job"/>
      </record>
-     <record model="ir.actions.act_window.view" id="action_crm_sec_calendar_view_act_job">
-         <field name="sequence" eval="2"/>
-         <field name="view_mode">calendar</field>
-         <field name="view_id" ref="crm_case_calendar_view_job"/>
-         <field name="act_window_id" ref="crm_case_categ0_act_job"/>
-     </record>
 -<!--    <record model="ir.actions.act_window.view" id="action_crm_sec_calendar_view_act_job">-->
 -<!--        <field name="sequence" eval="2"/>-->
 -<!--        <field name="view_mode">calendar</field>-->
 -<!--        <field name="view_id" ref="crm_case_calendar_view_job"/>-->
 -<!--        <field name="act_window_id" ref="crm_case_categ0_act_job"/>-->
 -<!--    </record>-->
      <record model="ir.actions.act_window.view" id="action_crm_sec_form_view_act_job">
          <field name="sequence" eval="3"/>
          <field name="view_mode">form</field>
@@@ -7,23 -7,23 +7,23 @@@
      # ------------------------------------------------------
  
      <record id="crm_job_categ_action" model="ir.actions.act_window">
--        <field name="name">Job Categories</field>
++        <field name="name">Applicant Categories</field>
          <field name="res_model">crm.case.categ</field>
          <field name="view_type">form</field>
-         <field name="view_id" ref="crm.crm_case_categ_tree-view"/>     
-               <field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
-               <field name="context">{'object_id':'crm.job'}</field>            
+         <field name="view_id" ref="crm.crm_case_categ_tree-view"/>
 -              <field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
 -              <field name="context">{'object_id':'crm.job'}</field>
++              <field name="domain">[('object_id.model', '=', 'crm.applicant')]</field>
++              <field name="context">{'object_id':'crm.applicant'}</field>
      </record>
-     # ------------------------------------------------------ 
+     # ------------------------------------------------------
         # Stage
-        # ------------------------------------------------------ 
+        # ------------------------------------------------------
            <record id="crm_job_stage_act" model="ir.actions.act_window">
--              <field name="name">Job Stages</field>
++              <field name="name">Applicant Stages</field>
                <field name="res_model">crm.case.stage</field>
                <field name="view_type">form</field>
                <field name="view_id"  ref="crm.crm_case_stage_tree"/>
--                      <field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
-                       <field name="context">{'object_id':'crm.job'}</field>                   
 -                      <field name="context">{'object_id':'crm.job'}</field>
++                      <field name="domain">[('object_id.model', '=', 'crm.applicant')]</field>
++                      <field name="context">{'object_id':'crm.applicant'}</field>
            </record>
          <menuitem action="crm_job_stage_act" id="menu_crm_job_stage_act" parent="crm.menu_crm_case_stage"/>
      # ------------------------------------------------------
@@@ -31,8 -31,8 +31,8 @@@
      # ------------------------------------------------------
  
      <record model="ir.ui.view" id="crm_case_tree_view_job">
--        <field name="name">CRM - Jobs Requests Tree</field>
-         <field name="model">crm.job</field>
++        <field name="name">Jobs - Recruitment Tree</field>
+         <field name="model">crm.applicant</field>
          <field name="type">tree</field>
          <field name="arch" type="xml">
              <tree string="Jobs - Recruitment Tree"  colors="red:state=='open';black:state in ('draft', 'cancel','done','pending')">
      </record>
  
      <record model="ir.ui.view" id="crm_case_form_view_job">
--        <field name="name">CRM - Jobs Requests Form</field>
-         <field name="model">crm.job</field>
++        <field name="name">Jobs - Recruitment Form</field>
+         <field name="model">crm.applicant</field>
          <field name="type">form</field>
          <field name="arch" type="xml">
              <form string="Jobs - Recruitment Form">
                  <group colspan="4" col="7">
                      <field name="name" string="Description" colspan="2"/>
-                     <field name="section_id" colspan="1" widget="selection"/>
+                     <field name="department_id" widget="selection"/>
                      <field name="user_id" string="Responsible" select="2"/>
+                     <button string="Schedule a Phone Call"
 -                        name="%(wizard_crm_job_reschedule_phone_call)d" icon="gtk-redo" type="action"  attrs="{'invisible':[('phonecall_id','!=',False)]}"/>
++                        name="%(wizard_crm_job_reschedule_phone_call)d" icon="gtk-redo" type="action"/>
                      <newline/>
                          <label string="Stage: " align="1.0"/>
                          <group colspan="1" col="2">
                     <page string="Internal Notes">
                         <field name="description" nolabel="1" colspan="4"/>
                     </page>
--                   <page string="History">
++                   <page string="History" groups="base.group_extended">
                         <field name="id" select="1"/>
                         <field name="active"/>
                         <field name="canal_id"/>
          </field>
      </record>
  
-     <record model="ir.ui.view" id="crm_case_calendar_view_job">
-         <field name="name">CRM - Jobs Requests Calendar</field>
-         <field name="model">crm.job</field>
-         <field name="type">calendar</field>
-         <field name="priority" eval="2"/>
-         <field name="arch" type="xml">
-             <calendar string="Meeting With Candidates" date_start="date" color="user_id" date_delay="duration">
-                 <field name="name"/>
-                 <field name="partner_name"/>
-                 <field name="partner_name2"/>
-             </calendar>
-         </field>
-     </record>
 -<!--    <record model="ir.ui.view" id="crm_case_calendar_view_job">-->
 -<!--        <field name="name">CRM - Jobs Requests Calendar</field>-->
 -<!--        <field name="model">crm.applicant</field>-->
 -<!--        <field name="type">calendar</field>-->
 -<!--        <field name="priority" eval="2"/>-->
 -<!--        <field name="arch" type="xml">-->
 -<!--            <calendar string="Meeting With Candidates" date_start="date" color="user_id" date_delay="duration">-->
 -<!--                <field name="name"/>-->
 -<!--                <field name="partner_name"/>-->
 -<!--                <field name="partner_name2"/>-->
 -<!--            </calendar>-->
 -<!--        </field>-->
 -<!--    </record>-->
  
      <record model="ir.ui.view" id="crm_case_graph_view_job">
--        <field name="name">CRM - Jobs Requests Graph</field>
-         <field name="model">crm.job</field>
++        <field name="name">Jobs - Recruitment Graph</field>
+         <field name="model">crm.applicant</field>
          <field name="type">graph</field>
          <field name="arch" type="xml">
                <graph string="Cases By Stage and Estimates" type="bar" orientation="vertical">
                  <field name="state" group="True"/>
              </graph>
          </field>
-     </record>    
+     </record>
  
      <record id="view_crm_case_jobs_filter" model="ir.ui.view">
--            <field name="name">CRM - Jobs Requests Search</field>
-             <field name="model">crm.job</field>
++            <field name="name">Jobs - Recruitment Search</field>
+             <field name="model">crm.applicant</field>
              <field name="type">search</field>
              <field name="arch" type="xml">
                  <search string="Search Jobs">
                                <field name="email_from" select='1' string="Email"/>
                         <field name="user_id" select="1" widget="selection"/>
                     </group>
-                                       <field name="section_id" select="1" widget="selection" string="Section">
+                                       <field name="department_id" select="1" widget="selection" string="Department">
 -<!--                                          <filter icon="terp-crm"-->
 -<!--                               domain="[('section_id','=',context.get('section_id',False))]"-->
 -<!--                               help="My section"-->
 -<!--                           />-->
 +                                              <filter icon="terp-crm"
-                                domain="[('section_id','=',context.get('section_id',False))]"
-                                help="My section"
-                            />                                 
-                                       </field>                         
++                              domain="[('department_id','=',context.get('department_id',False))]"
++                               help="My Department"/>
++
+                                       </field>
                 </search>
              </field>
          </record>
diff --cc addons/hr/hr.py
Simple merge
                  </tree>
              </field>
          </record>
+         <record id="view_employee_filter" model="ir.ui.view">
+               <field name="name">Employees</field>
+               <field name="model">hr.employee</field>
+               <field name="type">search</field>
+               <field name="arch" type="xml">
+                   <search string="Employees">
+                       <group col='6' colspan='2'>
+                               <field name="name"/>
+                               <field name="parent_id" widget="selection">
 -                               <filter icon="terp-partner" domain="[('user_id','=',uid)]"  help="My"/>
++                               <filter icon="terp-partner" domain="[('parent_id','child_of',uid)]"  help="Employees under me"/>
+                          </field>
+                       </group>
+                   </search>
+                </field>
+          </record>
          <record id="open_view_employee_tree" model="ir.actions.act_window">
              <field name="name">Employees Structure</field>
              <field name="res_model">hr.employee</field>
  
          <menuitem action="open_view_categ_tree" id="menu_view_employee_category_tree" parent="hr.menu_view_employee_category_form"/>
  
+               <record id="view_crm_job_form" model="ir.ui.view">
+             <field name="name">crm.job.form</field>
+             <field name="model">crm.job</field>
+             <field name="type">form</field>
+             <field name="arch" type="xml">
+                 <form string="Job">
+                     <field name="name" select="1"/>
+                     <field name="ref"/>
+                     <field name="department_id" select="1"/>
+                     <newline/>
+                     <notebook colspan="4">
+                         <page string="Employee">
+                               <field name="employee_ids" colspan='4' nolabel="1"  mode="tree,form"/>
+                                   <field name="expected_employees"/>
+                                   <field name="no_of_employee"/>
+                                               </page>
+                                               <page string="Description">
+                               <field name="description" colspan='4'/>
+                                   <field name="description"/>
+                                               </page>
+                                       </notebook>
+                 </form>
+             </field>
+         </record>
+               <record id="view_crm_job_tree" model="ir.ui.view">
+             <field name="name">crm.job.tree</field>
+             <field name="model">crm.job</field>
+             <field name="type">tree</field>
+             <field name="arch" type="xml">
+                 <tree string="Job">
+                     <field name="name" select="1"/>
+                     <field name="ref"/>
+                     <field name="expected_employees"/>
+                     <field name="department_id" />
+                     <field name="no_of_employee"/>
+                 </tree>
+             </field>
+         </record>
+         <record id="view_job_filter" model="ir.ui.view">
+               <field name="name">Job</field>
+               <field name="model">crm.job</field>
+               <field name="type">search</field>
+               <field name="arch" type="xml">
+                   <search string="Job">
 -                      <group col='5' colspan='4'>
++                      <group col='3' colspan='4'>
+                               <field name="name"/>
 -                              <field name="department_id" widget="selection"/>
++                              <field name="department_id" widget="selection">
++                                <filter icon="terp-crm"
++                                                              domain="[('department_id','=',context.get('department_id',False))]"
++                                                              help="My Departments Jobs"/>
++                        </field>
+                       </group>
+                   </search>
+                </field>
+          </record>
+         <record model="ir.actions.act_window" id="action_crm_job">
+               <field name="name">Job</field>
+               <field name="res_model">crm.job</field>
+               <field name="view_type">form</field>
+               <field name="view_mode">tree,form</field>
+               <field name="view_id" ref="view_crm_job_tree"/>
+               <field name="search_view_id" ref="view_job_filter"/>
+           </record>
+           <menuitem icon="terp-hr" id="base.menu_hr" name="Human Resources"/>
+           <menuitem
+               name="Recruitment"
+               id="base.menu_crm_case_job_req_main"
+               parent="base.menu_hr"/>
+         <menuitem name="Job" parent="base.menu_crm_case_job_req_main" id="menu_crm_job" action="action_crm_job" sequence="2"/>
      </data>
  </openerp>
                              domain="[('user_id','=',uid)]"/>
                        </field>
                        <field name="state" select="1"/>
+                       <field name="department_id" widget="selection">
+                               <filter icon="terp-crm"
 -                                                              domain="[('user_id', '=', uid)]"
 -                                                              help="My"/>
++                                                              domain="[('department_id','=',context.get('department_id',False))]"
++                                                              help="Expenses of My Department"/>
+                                               </field>
                   </group>
                   </search>
              </field>
@@@ -153,7 -157,8 +157,8 @@@ class hr_holidays(osv.osv)
          'allocation_type': fields.selection([('employee','Employee Request'),('company','Company Allocation')], 'Allocation Type', required=True, readonly=True, states={'draft':[('readonly',False)]}, help='This field is only for informative purposes, to depict if the leave request/allocation comes from an employee or from the company'),
          'parent_id': fields.many2one('hr.holidays', 'Parent'),
          'linked_request_ids': fields.one2many('hr.holidays', 'parent_id', 'Linked Requests',),
-         'holiday_user_id' : fields.many2one('res.users', 'User'),
 -        'holiday_user_id':fields.many2one('hr.holidays.per.user','Holiday per user'),
++        'holiday_user_id' : fields.many2one('hr.holidays.per.user', 'User'),
+         'department_id':fields.many2one('hr.department','Department'),
      }
  
      _defaults = {
              <field name="type">search</field>
              <field name="arch" type="xml">
                  <search string="Search Leave">
--                       <group col='6' colspan='4'>
--                           <filter icon="gtk-execute" string="My Leaves" domain="[('user_id','=',uid)]" separator="1" help="Leaves Related to Current User"/>
-                         <filter icon="gtk-execute" string="My Departments Leaves" domain="[('user_id','child_of',[uid])]" help="Leaves Related to Department"/>
++                       <group col='8' colspan='4'>
++                           <filter icon="terp-hr" domain="[('state','=','draft')]" string="To Confirm"/>
++                           <filter icon="terp-hr" domain="[('state','=','confirm')]" string="To Validate"/>
++                           <separator orientation="vertical"/> 
++                          <field name="name" select='1'/>
                            <field name="state" select="1">
--                              <filter icon="terp-hr" domain="[('state','=','confirm')]" help="Confirmed Holidays"/>
                                <filter icon="terp-hr" domain="[('state','=','refuse')]" help="Refused Holidays"/>
                                <filter icon="terp-hr" domain="[('state','=','validate')]" help="Validated Holidays"/>
 -                          </field>
 -                          <field name="name" select='1'/>
 -                          <field name="department_id" select="1" widget="selection"/>
++                          </field>                          
+                           <field name="user_id" select="1" widget="selection">
 -                                      <filter icon="gtk-execute" domain="[('user_id','child_of',[uid])]" help="Leaves Related to Department"/>
++                              <filter icon="gtk-execute" help="My Leaves" domain="[('user_id','=',uid)]" />  
++                          </field> 
++                          <field name="department_id" select="1" widget="selection">
++                                      <filter icon="gtk-execute" domain="[('department_id','=',context.get('department_id',False))]"
++                                                              help="My Departments Leaves"/>
                            </field>
-                           <field name="name" select='1'/>
-                           <field name="user_id" select="1" widget="selection"/>
                        </group>
                   </search>
              </field>
              <field name="type">search</field>
              <field name="arch" type="xml">
                  <search string="Search Timesheet">
--                   <group col="10" colspan="4">
--                              <filter icon="terp-partner" string="My Timesheets" domain="[('user_id','=',uid)]" help="My Timesheet"/>
-                               <filter icon="terp-crm" string="My departments timesheets"  domain="[('user_id', 'child_of', [uid])]" help="My Departments Timesheet"/>
--                                              <separator orientation="vertical"/>
++                   <group col="10" colspan="4">                                                                               
                                                <filter icon="terp-crm" string="Unvalidated" domain="[('state','&lt;&gt;','done'),('date_to','&lt;',time.strftime('%%Y-%%m-%%d'))]" help="Unvalidated Timesheets"/>
                                <separator orientation="vertical"/>
                                <field name="state">
                             <filter icon="terp-hr" domain="[('state','=','confirm')]" help="Confirmed Timesheets"/>
                                                </field>
                                                <field name="name" select="1"/>
--                                              <field name="user_id" select="1" widget="selection"/>
++                                              <field name="user_id" select="1" widget="selection">
++                            <filter icon="terp-partner" domain="[('user_id','=',uid)]" help="My Timesheet"/>
++                        </field>
+                                               <field name="department_id" widget="selection">
+                                                       <filter icon="terp-crm"
 -                                                              domain="[('user_id', 'child_of', [uid])]"
++                                                              domain="[('department_id','=',context.get('department_id',False))]"
+                                                               help="My Departments Timesheet"/>
+                                               </field>
                     </group>
                 </search>
              </field>