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

[16.0][MIG] hr_attendance_rfid: Migration to 16.0 #157

Merged
merged 24 commits into from
Nov 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
22b8474
[10.0] [ADD] hr_attendance_rfid
HviorForgeFlow Jul 6, 2018
c325508
[MIG] hr_attendance_rfid: Migration to 11.0
HviorForgeFlow Oct 8, 2018
2e0d555
[MIG] hr_attendance_rfid: Migration to 12.0
HviorForgeFlow Oct 26, 2018
a0cfecc
Added translation using Weblate (French)
May 23, 2019
b54a0a7
Translated using Weblate (French)
May 23, 2019
4136928
Added translation using Weblate (Spanish)
ruthbeat Jul 24, 2019
4e77c1e
Added translation using Weblate (Spanish)
ruthbeat Aug 12, 2019
09abed5
Translated using Weblate (Spanish)
ruthbeat Aug 12, 2019
dad931d
Deleted translation using Weblate (Spanish)
sbidoul Aug 28, 2019
d731bce
Added translation using Weblate (Spanish)
ruthbeat Sep 3, 2019
4cb9032
[IMP] hr_attendance_rfid: black, isort
JoanSForgeFlow Jan 9, 2020
326e5a0
[MIG] hr_attendance_rfid: Migration to 13.0
JoanSForgeFlow Jan 9, 2020
04f2a7d
[FIX] Correct website in manifest
MiquelRForgeFlow Feb 10, 2020
e88a9f0
[IMP] hr_attendance_rfid: Add record rule
brian10048 May 15, 2020
5aeaa33
[IMP] hr_attendance_rfid: Change to hr.employee.base
victoralmau Dec 10, 2020
aac1932
[FIX] hr_attendance_rfid: Don't copy employee RFID code
pedrobaeza Jan 14, 2021
5e16da7
[MIG] hr_attendance_rfid: Migration to 15.0
Jun 20, 2022
ccdc131
[IMP] hr_attendance_rfid: Add test to improve coverage.
lubusax Aug 29, 2022
db94dbc
[15.0][FIX] Handle ValidationError properly
lubusax May 30, 2023
2930055
Added translation using Weblate (Italian)
mymage Jul 4, 2023
4b855da
[IMP] hr_attendance_rfid: test performance improvement
josep-tecnativa Oct 19, 2023
0d78164
Translated using Weblate (Spanish)
Ivorra78 Nov 15, 2023
0623e37
[IMP] hr_attendance_rfid: pre-commit stuff
victoralmau Nov 22, 2023
3b13daf
[MIG] hr_attendance_rfid: Migration to 16.0
victoralmau Nov 22, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
113 changes: 113 additions & 0 deletions hr_attendance_rfid/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
==================
HR Attendance RFID
==================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:56304dc87406d93d9f9aa6f2187efff0ad08b03428e9d2d8f3c20de8677130d7
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr--attendance-lightgray.png?logo=github
:target: https://github.com/OCA/hr-attendance/tree/16.0/hr_attendance_rfid
:alt: OCA/hr-attendance
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/hr-attendance-16-0/hr-attendance-16-0-hr_attendance_rfid
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/hr-attendance&target_branch=16.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module extends the functionality of HR Attendance in order to allow
the logging of employee attendances using an RFID based employee
attendance system.

**Table of contents**

.. contents::
:local:

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

To use this module, you need to use an external system that calls the method
'register_attendance' of the model 'hr.employee' passing as parameter the
code of the RFID card.

Developers of a compatible RFID based employee attendance system should
be familiar with the outputs of this method and implement proper calls and
management of responses.

It is advisory to create an exclusive user to perform this task. As
user doesn't need several access, it is just essential to perform the check
in/out, a group has been created. Add your attendance device user to
RFID Attendance group.

Usage
=====

#. The HR employee responsible to set up new employees should go to
'Attendances -> Manage Attendances -> Employees' and register the
RFID card code of each of your employees. You can use an USB plugged
RFID reader connected to your computer for this purpose.
#. The employee should put his/her card to the RFID based employee
attendance system. It is expected that the system will provide some form
of output of the registration event.

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

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

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Comunitea
* ForgeFlow

Contributors
~~~~~~~~~~~~

* Omar Catiñeira Saavedra <[email protected]>
* Héctor Villarreal Ortega <[email protected]>
* Jordi Ballester Alomar <[email protected]>
* Brian McMaster <[email protected]>
* `Tecnativa <https://www.tecnativa.com>`_:

* Víctor Martínez
* Juany Davila <[email protected]>

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

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

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.

This module is part of the `OCA/hr-attendance <https://github.com/OCA/hr-attendance/tree/16.0/hr_attendance_rfid>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions hr_attendance_rfid/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
21 changes: 21 additions & 0 deletions hr_attendance_rfid/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Copyright 2017 Comunitea Servicios Tecnológicos S.L.
# Copyright 2018-19 ForgeFlow S.L. (https://www.forgeflow.com)
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html

{
"name": "HR Attendance RFID",
"version": "16.0.1.0.0",
"category": "Human Resources",
"website": "https://github.com/OCA/hr-attendance",
"author": "Comunitea, ForgeFlow, Odoo Community Association (OCA)",
"license": "AGPL-3",
"application": False,
"installable": True,
"depends": ["hr_attendance"],
"data": [
"security/hr_attendance_rfid.xml",
"security/ir.model.access.csv",
"data/ir_rule.xml",
"views/hr_employee_view.xml",
],
}
16 changes: 16 additions & 0 deletions hr_attendance_rfid/data/ir_rule.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<odoo noupdate="1">
<record id="hr_attendance_rfid_rule" model="ir.rule">
<field name="name">RFID Attendance Rule</field>
<field name="model_id" ref="hr_attendance.model_hr_attendance" />
<field name="global" eval="False" />
<field name="domain_force">[(1, '=', 1)]</field>
<field
name="groups"
eval="[(4, ref('hr_attendance_rfid.group_hr_attendance_rfid'))]"
/>
<field name="perm_read" eval="True" />
<field name="perm_write" eval="True" />
<field name="perm_create" eval="True" />
<field name="perm_unlink" eval="False" />
</record>
</odoo>
59 changes: 59 additions & 0 deletions hr_attendance_rfid/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_attendance_rfid
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2023-11-15 17:37+0000\n"
"Last-Translator: Ivorra78 <[email protected]>\n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "Attendance recorded for employee %s"
msgstr "Asistencia registrada para el empleado %s"

#. module: hr_attendance_rfid
#: model:ir.model,name:hr_attendance_rfid.model_hr_employee_base
msgid "Basic Employee"
msgstr "Empleado básico"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No attendance was recorded for employee %s"
msgstr "No se registró asistencia para el empleado %s"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No employee found with card %s"
msgstr "No se encontró ningún empleado con la tarjeta %s"

#. module: hr_attendance_rfid
#: model:res.groups,name:hr_attendance_rfid.group_hr_attendance_rfid
msgid "RFID Attendance"
msgstr "Asistencia RFID"

#. module: hr_attendance_rfid
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_base__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_public__rfid_card_code
msgid "RFID Card Code"
msgstr "Código de Tarjeta RFID"

#. module: hr_attendance_rfid
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_base_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_public_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_rfid_card_code_uniq
msgid "The rfid code should be unique."
msgstr "El código de la tarjeta RFID debe ser único."
57 changes: 57 additions & 0 deletions hr_attendance_rfid/i18n/es_ES.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_attendance_rfid
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: es_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "Attendance recorded for employee %s"
msgstr ""

#. module: hr_attendance_rfid
#: model:ir.model,name:hr_attendance_rfid.model_hr_employee_base
msgid "Basic Employee"
msgstr ""

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No attendance was recorded for employee %s"
msgstr ""

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No employee found with card %s"
msgstr ""

#. module: hr_attendance_rfid
#: model:res.groups,name:hr_attendance_rfid.group_hr_attendance_rfid
msgid "RFID Attendance"
msgstr ""

#. module: hr_attendance_rfid
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_base__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_public__rfid_card_code
msgid "RFID Card Code"
msgstr ""

#. module: hr_attendance_rfid
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_base_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_public_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_rfid_card_code_uniq
msgid "The rfid code should be unique."
msgstr ""
59 changes: 59 additions & 0 deletions hr_attendance_rfid/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_attendance_rfid
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2019-05-23 20:19+0000\n"
"Last-Translator: Kévin Allard <[email protected]>\n"
"Language-Team: none\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 3.6.1\n"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "Attendance recorded for employee %s"
msgstr "Présence enregistrée pour l'employé(e) %s"

#. module: hr_attendance_rfid
#: model:ir.model,name:hr_attendance_rfid.model_hr_employee_base
msgid "Basic Employee"
msgstr ""

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No attendance was recorded for employee %s"
msgstr "Aucune présence n'a été enregistrée pour l'employé(e) %s"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No employee found with card %s"
msgstr "Aucun employé(e) trouvé avec la carte %s"

#. module: hr_attendance_rfid
#: model:res.groups,name:hr_attendance_rfid.group_hr_attendance_rfid
msgid "RFID Attendance"
msgstr "Présence RFID"

#. module: hr_attendance_rfid
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_base__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_public__rfid_card_code
msgid "RFID Card Code"
msgstr "Code de carte RFID"

#. module: hr_attendance_rfid
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_base_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_public_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_rfid_card_code_uniq
msgid "The rfid code should be unique."
msgstr "Le code rfid doit être unique."
56 changes: 56 additions & 0 deletions hr_attendance_rfid/i18n/hr_attendance_rfid.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_attendance_rfid
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 15.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "Attendance recorded for employee %s"
msgstr ""

#. module: hr_attendance_rfid
#: model:ir.model,name:hr_attendance_rfid.model_hr_employee_base
msgid "Basic Employee"
msgstr ""

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No attendance was recorded for employee %s"
msgstr ""

#. module: hr_attendance_rfid
#: code:addons/hr_attendance_rfid/models/hr_employee.py:0
#, python-format
msgid "No employee found with card %s"
msgstr ""

#. module: hr_attendance_rfid
#: model:res.groups,name:hr_attendance_rfid.group_hr_attendance_rfid
msgid "RFID Attendance"
msgstr ""

#. module: hr_attendance_rfid
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_base__rfid_card_code
#: model:ir.model.fields,field_description:hr_attendance_rfid.field_hr_employee_public__rfid_card_code
msgid "RFID Card Code"
msgstr ""

#. module: hr_attendance_rfid
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_base_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_public_rfid_card_code_uniq
#: model:ir.model.constraint,message:hr_attendance_rfid.constraint_hr_employee_rfid_card_code_uniq
msgid "The rfid code should be unique."
msgstr ""
Loading
Loading