[IMP]hr: Improve employee view kanban and leaves management

bzr revid: mma@tinyerp.com-20120529124748-l4nqh230k9zat6yq
This commit is contained in:
Mayur Maheshwari (OpenERP) 2012-05-29 18:17:48 +05:30
parent 099c4e574a
commit 3be6d4ef09
4 changed files with 34 additions and 14 deletions

View File

@ -209,6 +209,7 @@ class hr_employee(osv.osv):
'color': fields.integer('Color Index'),
'city': fields.related('address_id', 'city', type='char', string='City'),
'login': fields.related('user_id', 'login', type='char', string='Login', readonly=1),
'last_login': fields.related('user_id', 'date', type='datetime', string='Latest Connection', readonly=1),
}
def unlink(self, cr, uid, ids, context=None):

View File

@ -41,8 +41,6 @@
<page string="Personal Information">
<group col="2" colspan="2" groups="base.group_hr_user">
<separator colspan="2" string="Social IDs"/>
<field name="ssnid"/>
<field name="sinid"/>
<field name="identification_id"/>
<field name="passport_id"/>
<field name="otherid"/>
@ -65,12 +63,12 @@
</group>
<group col="2" colspan="2">
<separator string="Job Information" colspan="2"/>
<field name="job_id" domain="[('state','!=','old')]"/>
<field name="job_id" domain="[('state','!=','old')]" context="{'form_view_ref':'hr.view_hr_job_employee_form'}"/>
<field name="coach_id" />
</group>
</page>
<page string="Categories" groups="base.group_hr_user">
<field name="category_ids" nolabel="1"/>
<field name="category_ids" colspan="4" nolabel="1" widget="many2many_tags"/>
</page>
<page string="Notes" groups="base.group_hr_user">
<field colspan="4" nolabel="1" name="notes"/>
@ -130,6 +128,7 @@
<field name="type">kanban</field>
<field name="arch" type="xml">
<kanban>
<field name="last_login"/>
<templates>
<t t-name="kanban-box">
<div class="oe_employee_vignette">
@ -139,6 +138,11 @@
<div class="oe_employee_details">
<h4><a type="edit"><field name="name"/> (<field name="login"/>)</a></h4>
<ul>
<li t-if="record.last_login.raw_value">
<span t-if="record.last_login.raw_value &amp;&amp; record.last_login.raw_value.is().today()" class="oe_kanban_button" style="font-size: 100%%">
<t t-esc="record.last_login.raw_value.toString('HH:mm')"/>
</span>
</li>
<li t-if="record.job_id.raw_value"><field name="job_id"/></li>
<li t-if="record.work_location.raw_value"><field name="work_location"/></li>
<li t-if="record.work_phone.raw_value">Tel: <field name="work_phone"/></li>
@ -424,7 +428,27 @@
</search>
</field>
</record>
<record id="view_hr_job_employee_form" model="ir.ui.view">
<field name="name">hr.job.employee.form</field>
<field name="model">hr.job</field>
<field name="type">form</field>
<field name="priority">20</field>
<field name="arch" type="xml">
<form string="Job">
<field name="name" />
<field name="department_id" />
<newline/>
<notebook colspan="4">
<page string="Description">
<separator colspan="4" string="Job Description"/>
<field name="description" colspan="4" nolabel="1"/>
</page>
</notebook>
</form>
</field>
</record>
<record model="ir.actions.act_window" id="action_hr_job">
<field name="name">Job Positions</field>
<field name="res_model">hr.job</field>

View File

@ -513,7 +513,6 @@ class hr_employee(osv.osv):
'current_leave_id': fields.function(_get_leave_status, multi="leave_status", string="Current Leave Type",type='many2one', relation='hr.holidays.status'),
'leave_date_from': fields.function(_get_leave_status, multi='leave_status', type='date', string='From Date'),
'leave_date_to': fields.function(_get_leave_status, multi='leave_status', type='date', string='To Date'),
'last_login': fields.related('user_id', 'date', type='datetime', string='Latest Connection', readonly=1)
}
hr_employee()

View File

@ -303,7 +303,7 @@
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<menuitem name="Leave Requests" parent="menu_open_ask_holidays" id="menu_open_ask_holidays_new" action="open_ask_holidays"/>
<menuitem name="My Leave Requests" parent="menu_open_ask_holidays" id="menu_open_ask_holidays_new" action="open_ask_holidays"/>
<record model="ir.actions.act_window" id="request_approve_holidays">
<field name="name">Requests Approve</field>
@ -512,8 +512,8 @@
<field name="arch" type="xml">
<field name="coach_id" position="after">
<field name="remaining_leaves"/>
<field name="current_leave_id"/>
<field name="current_leave_state" attrs="{'invisible':[('current_leave_id','=',False)]}"/>
<field name="current_leave_id" invisible="1"/>
<field name="current_leave_state" invisible="1"/>
</field>
</field>
</record>
@ -525,20 +525,16 @@
<field name="arch" type="xml">
<xpath expr="//templates" position="before">
<field name="current_leave_state"/>
<field name="last_login"/>
<field name="leave_date_from"/>
<field name="leave_date_to"/>
</xpath>
<xpath expr="//div[@class='oe_employee_details']/ul/li" position="before">
<li t-if="record.current_leave_id.raw_value || record.last_login.raw_value">
<li t-if="record.current_leave_id.raw_value">
<span t-if="record.current_leave_id.raw_value" t-att-class="record.current_leave_state.raw_value=='validate'?'oe_kanban_color_3':'oe_kanban_color_2'">
<span class="oe_kanban_button" style="font-size: 100%%" t-att-title="record.leave_date_from.raw_value.toString('ddd dS MMM') + ' - ' + record.leave_date_to.raw_value.toString('ddd dS MMM')" >
<field name="current_leave_id"/>
</span>
</span>
<span t-if="record.last_login.raw_value &amp;&amp; record.last_login.raw_value.is().today()" class="oe_kanban_button" style="font-size: 100%%">
<t t-esc="record.last_login.raw_value.toString('HH:mm')"/>
</span>
</li>
</xpath>
</field>