Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PORT] hr_employee_transfer #216

Closed
wants to merge 10 commits into from
82 changes: 82 additions & 0 deletions hr_employee_transfer/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3

=================
Employee Transfer
=================

This module allows us to transfer employees between jobs and departments


Installation
============

Install this module as usual by going to the install addon screen


Configuration
=============

No Additional Configuration Requirement is necessary


Usage
=====

To use this module, you need to:

* Go to Human Resources > Employee Transfer and create a transfer document

#. Go to ...

.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
:target: https://runbot.odoo-community.org/runbot/116/8.0


Known issues / Roadmap
======================



Bug Tracker
===========

Bugs are tracked on `GitHub Issues
<https://github.com/OCA/hr/issues>`_. In case of trouble, please
check there if your issue has already been reported. If you spotted it first,
help us smashing it by providing a detailed and welcomed `feedback
<https://github.com/OCA/
hr/issues/new?body=module:%20
hr_employee_transfer%0Aversion:%20
8.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Credits
=======

Images
------

* Odoo Community Association: `Icon <https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg>`_.

Contributors
------------

* Michael Telahun Makonnen <mmakonnen@gmail.com>'
* Salton Massally <salton.massally@gmail.com>

Maintainer
----------

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

To contribute to this module, please visit https://odoo-community.org.
4 changes: 4 additions & 0 deletions hr_employee_transfer/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# © 2013 Michael Telahun Makonnen <mmakonnen@gmail.com>.

from . import models
25 changes: 25 additions & 0 deletions hr_employee_transfer/__openerp__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
# © 2013 Michael Telahun Makonnen <mmakonnen@gmail.com>.

{
'name': 'Employee Transfer',
'version': '8.0.1.0.0',
'license': 'AGPL-3',
'category': 'Human Resources',
'summary': "Transfer Employees between Jobs and Departments",
'author': 'Michael Telahun Makonnen, '
'Odoo Community Association (OCA)',
'website': 'http://miketelahun.wordpress.com',
'depends': [
'hr_contract',
],
'data': [
'security/ir.model.access.csv',
'data/hr_transfer_cron.xml',
'data/hr_transfer_data.xml',
'views/hr_transfer_view.xml',
'data/hr_transfer_workflow.xml',
],

'installable': True,
}
18 changes: 18 additions & 0 deletions hr_employee_transfer/data/hr_transfer_cron.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>

<record model="ir.cron" id="hr_department_transfer_cron">
<field name="name">Departmental Transfers</field>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="numbercall">-1</field>
<field eval="(DateTime.now() + timedelta(hours= +(24-DateTime.now().hour))).strftime('%Y-%m-%d 0:01:00')" name="nextcall"/>
<field eval="True" name="doall"/>
<field eval="'hr.department.transfer'" name="model"/>
<field eval="'try_pending_department_transfers'" name="function"/>
<field eval="'()'" name="args"/>
</record>

</data>
</openerp>
26 changes: 26 additions & 0 deletions hr_employee_transfer/data/hr_transfer_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>

<!-- Alert-related subtypes for messaging / Chatter -->

<record id="mt_alert_xfer_confirmed" model="mail.message.subtype">
<field name="name">Department Transfer - Confirmed</field>
<field name="res_model">hr.department.transfer</field>
<field name="description">Transfer submitted</field>
</record>

<record id="mt_alert_xfer_pending" model="mail.message.subtype">
<field name="name">Department Transfer - Pending</field>
<field name="res_model">hr.department.transfer</field>
<field name="description">Transfer pending effective date</field>
</record>

<record id="mt_alert_xfer_done" model="mail.message.subtype">
<field name="name">Department Transfer - Completed</field>
<field name="res_model">hr.department.transfer</field>
<field name="description">Transfer complete</field>
</record>

</data>
</openerp>
100 changes: 100 additions & 0 deletions hr_employee_transfer/data/hr_transfer_workflow.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
<?xml version="1.0" encoding="utf-8" ?>
<openerp>
<data>

<!-- Workflow Definition -->
<record id="wkf_department_transfer" model="workflow">
<field name="name">hr.department.transfer.basic</field>
<field name="osv">hr.department.transfer</field>
<field name="on_create">True</field>
</record>

<!-- Workflow Activities (States) -->

<record id="act_draft" model="workflow.activity">
<field name="wkf_id" ref="wkf_department_transfer"/>
<field name="name">draft</field>
<field name="kind">function</field>
<field name="action">write({'state': 'draft'})</field>
<field name="flow_start">True</field>
</record>

<record id="act_confirm" model="workflow.activity">
<field name="wkf_id" ref="wkf_department_transfer"/>
<field name="name">confirm</field>
<field name="kind">function</field>
<field name="action">state_confirm()</field>
</record>

<record id="act_pending" model="workflow.activity">
<field name="wkf_id" ref="wkf_department_transfer"/>
<field name="name">pending</field>
<field name="kind">function</field>
<field name="action">write({'state': 'pending'})</field>
</record>

<record id="act_done" model="workflow.activity">
<field name="wkf_id" ref="wkf_department_transfer"/>
<field name="name">done</field>
<field name="kind">function</field>
<field name="action">state_done()</field>
<field name="flow_stop">True</field>
</record>

<record id="act_cancel" model="workflow.activity">
<field name="wkf_id" ref="wkf_department_transfer"/>
<field name="name">cancel</field>
<field name="kind">function</field>
<field name="action">write({'state': 'cancel'})</field>
<field name="flow_stop">True</field>
</record>

<!-- Workflow Transitions -->

<record id="draft2confirm" model="workflow.transition">
<field name="act_from" ref="act_draft"/>
<field name="act_to" ref="act_confirm"/>
<field name="signal">signal_confirm</field>
<field name="group_id" ref="base.group_hr_user"/>
</record>

<record id="confirm2pending" model="workflow.transition">
<field name="act_from" ref="act_confirm"/>
<field name="act_to" ref="act_pending"/>
<field name="condition">effective_date_in_future()</field>
<field name="signal">signal_pending</field>
<field name="group_id" ref="base.group_hr_manager"/>
</record>

<record id="confirm2done" model="workflow.transition">
<field name="act_from" ref="act_confirm"/>
<field name="act_to" ref="act_done"/>
<field name="condition">not effective_date_in_future()</field>
<field name="signal">signal_pending</field>
<field name="group_id" ref="base.group_hr_manager"/>
</record>

<record id="confirm2cancel" model="workflow.transition">
<field name="act_from" ref="act_confirm"/>
<field name="act_to" ref="act_cancel"/>
<field name="signal">signal_cancel</field>
<field name="group_id" ref="base.group_hr_manager"/>
</record>

<record id="pending2done" model="workflow.transition">
<field name="act_from" ref="act_pending"/>
<field name="act_to" ref="act_done"/>
<field name="condition">not effective_date_in_future()</field>
<field name="signal">signal_done</field>
<field name="group_id" ref="base.group_hr_manager"/>
</record>

<record id="pending2cancel" model="workflow.transition">
<field name="act_from" ref="act_pending"/>
<field name="act_to" ref="act_cancel"/>
<field name="signal">signal_cancel</field>
<field name="group_id" ref="base.group_hr_manager"/>
</record>

</data>
</openerp>
4 changes: 4 additions & 0 deletions hr_employee_transfer/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# © 2013 Michael Telahun Makonnen <mmakonnen@gmail.com>.

from . import hr_department_transfer
Loading