add new module

This commit is contained in:
sonal arora
2020-07-21 10:09:46 +00:00
parent 800e7fdceb
commit c0d10e3fbe
1063 changed files with 243750 additions and 5 deletions

View File

@@ -0,0 +1,40 @@
OHRMS Disciplinary Action v13
==============================
Track the Disciplinary actions of Employees
Depends
=======
[oh_employee_creation_from_user] addon Open HRMS
[mail] addon Odoo
Tech
====
* [Python] - Models
* [XML] - Odoo views
Installation
============
- www.odoo.com/documentation/13.0/setup/install.html
- Install our custom addon
Bug Tracker
===========
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Credits
=======
* Cybrosys Techno Solutions <https://www.cybrosys.com>
Author
------
Developer: Ajmal J K @ cybrosys
Maintainer
----------
This module is maintained by Cybrosys Technologies.
For support and more information, please visit https://www.cybrosys.com.

View File

@@ -0,0 +1,2 @@
# -*- coding: utf-8 -*-
from . import models

View File

@@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
###################################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Ajmal JK(<https://www.cybrosys.com>)
#
# This program is free software: you can modify
# it under the terms of the GNU Affero General Public License (AGPL) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###################################################################################
{
'name': 'Open HRMS Disciplinary Tracking',
'version': '13.0.1.0.0',
'summary': """Employee Disciplinary Tracking Management""",
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'category': 'Generic Modules/Human Resources',
'website': "https://www.openhrms.com",
'depends': ['base', 'mail', 'oh_employee_creation_from_user'],
'data': ['views/disciplinary_action.xml',
'views/disciplinary_sequence.xml',
'views/category_view.xml',
'security/ir.model.access.csv',
'security/security.xml'],
'demo': ['data/demo_data.xml'],
'images': ['static/description/banner.png'],
'license': 'AGPL-3',
'installable': True,
'auto_install': False,
'application': False,
}

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="department_one" model="hr.department">
<field name="name">Marketing</field>
</record>
<record id="employee_discplinary" model="hr.employee">
<field name="name">Jack Mark Rose </field>
<field name="job_title">Sales Manager</field>
<field name="work_location">Building 1, Third Floor</field>
<field name="work_phone">(376)-3852-7987</field>
<field name="work_email">jack@example.com</field>
<field name="image_1920" type="base64" file="hr_disciplinary_tracking/static/image/employee_image.jpg"/>
</record>
<record id="discipline_categories_one" model="discipline.category">
<field name="name">Violation of Company Rules</field>
<field name="code">101</field>
<field name="category_type">disciplinary</field>
</record>
<record id="discipline_categories_two" model="discipline.category">
<field name="name">Mis-behaviour to Co-workers</field>
<field name="code">102</field>
<field name="category_type">action</field>
</record>
<record id="discipline_categories_three" model="discipline.category">
<field name="name">Damage to company properties</field>
<field name="code">103</field>
<field name="category_type">disciplinary</field>
</record>
<record id="disciplinary_action_one" model="disciplinary.action">
<field name="employee_name" ref="employee_discplinary"/>
<field name="department_name" ref="department_one"/>
<field name="joined_date">2020-03-02</field>
<field name="discipline_reason" ref="discipline_categories_one"/>
</record>
</data>
</odoo>

View File

@@ -0,0 +1,6 @@
## Module disciplinary_action
#### 10.10.2018
#### Version 13.0.1.0.0
##### ADD
- Initial Commit

View File

@@ -0,0 +1,526 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_disciplinary_tracking
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 13.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-02-12 08:42+0000\n"
"PO-Revision-Date: 2020-02-12 08:42+0000\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_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__action
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Action"
msgstr "عمل"
#. module: hr_disciplinary_tracking
#: model:ir.actions.act_window,name:hr_disciplinary_tracking.action_category_action_view
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.category_action_view_tree
msgid "Action Categories"
msgstr "فئات العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model,name:hr_disciplinary_tracking.model_action_category
#: model:ir.ui.menu,name:hr_disciplinary_tracking.action_category_view
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.category_action_view_form
msgid "Action Category"
msgstr "فئة العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__action_details
#: model:ir.ui.menu,name:hr_disciplinary_tracking.disciplinary_action_view
msgid "Action Details"
msgstr "تفاصيل العمل"
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Action Information"
msgstr "معلومات العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_needaction
msgid "Action Needed"
msgstr "الإجراءات اللازمة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields.selection,name:hr_disciplinary_tracking.selection__disciplinary_action__state__action
msgid "Action Validated"
msgstr "التحقق من صحة العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_ids
msgid "Activities"
msgstr "أنشطة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_exception_decoration
msgid "Activity Exception Decoration"
msgstr "نشاط استثناء الديكور"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_state
msgid "Activity State"
msgstr "حالة النشاط"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_attachment_count
msgid "Attachment Count"
msgstr "عدد المرفقات"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__attachment_ids
msgid "Attachments"
msgstr "مرفقات"
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Cancel"
msgstr "إلغاء"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields.selection,name:hr_disciplinary_tracking.selection__disciplinary_action__state__cancel
msgid "Cancelled"
msgstr "ألغيت"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__code
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__code
msgid "Code"
msgstr "الشفرة"
#. module: hr_disciplinary_tracking
#: model:ir.ui.menu,name:hr_disciplinary_tracking.disciplinary_action_create
msgid "Create Action"
msgstr "خلق العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__create_uid
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__create_uid
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__create_uid
msgid "Created by"
msgstr "انشأ من قبل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__create_date
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__create_date
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__create_date
msgid "Created on"
msgstr "تم إنشاؤها على"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__department_name
msgid "Department"
msgstr "قسم"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__description
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__description
msgid "Details"
msgstr "تفاصيل"
#. module: hr_disciplinary_tracking
#: model:ir.actions.act_window,name:hr_disciplinary_tracking.action_disciplinary_action
#: model:ir.model,name:hr_disciplinary_tracking.model_disciplinary_action
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_tree
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_form_inherit_disciplinary
msgid "Disciplinary Action"
msgstr "إجراءات تأديبية"
#. module: hr_disciplinary_tracking
#: model:ir.actions.act_window,name:hr_disciplinary_tracking.disciplinary_action_details_view
msgid "Disciplinary Action Details"
msgstr "تفاصيل الإجراءات التأديبية"
#. module: hr_disciplinary_tracking
#: model:ir.actions.act_window,name:hr_disciplinary_tracking.disciplinary_action_details
#: model:ir.ui.menu,name:hr_disciplinary_tracking.disciplinary_action
msgid "Disciplinary Actions"
msgstr "اجراءات تأديبية"
#. module: hr_disciplinary_tracking
#: model:ir.actions.act_window,name:hr_disciplinary_tracking.action_disciplinary_category_view
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.disciplinary_category_view_tree
msgid "Discipline Categories"
msgstr "فئات الانضباط"
#. module: hr_disciplinary_tracking
#: model:ir.ui.menu,name:hr_disciplinary_tracking.disciplinary_category_view
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.disciplinary_category_view_form
msgid "Discipline Category"
msgstr "فئة الانضباط"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_hr_employee__discipline_count
msgid "Discipline Count"
msgstr "عدد الانضباط"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__display_name
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__display_name
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__display_name
msgid "Display Name"
msgstr "اسم العرض"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields.selection,name:hr_disciplinary_tracking.selection__disciplinary_action__state__draft
msgid "Draft"
msgstr "مشروع"
#. module: hr_disciplinary_tracking
#: model:ir.model,name:hr_disciplinary_tracking.model_hr_employee
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__employee_name
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Employee"
msgstr "الموظف"
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Employee Information"
msgstr "معلومات الموظف"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__attachment_ids
msgid "Employee can submit any documents which supports their explanation"
msgstr "يمكن للموظف تقديم أي مستندات تدعم شرحهم"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__explanation
msgid ""
"Employee have to give Explanationto manager about the violation of "
"discipline"
msgstr ""
"يجب على الموظف إعطاء الشرح للمدير حول انتهاك"
"انضباط"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__explanation
msgid "Explanation by Employee"
msgstr "شرح الموظف"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_follower_ids
msgid "Followers"
msgstr "متابعون"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_channel_ids
msgid "Followers (Channels)"
msgstr "(المتابعون (القنوات"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_partner_ids
msgid "Followers (Partners)"
msgstr "(المتابعون (الشركاء"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__id
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__id
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__id
msgid "ID"
msgstr "هوية شخصية"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_exception_icon
msgid "Icon"
msgstr "أيقونة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__activity_exception_icon
msgid "Icon to indicate an exception activity."
msgstr ".أيقونة للإشارة إلى نشاط استثناء"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_needaction
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_unread
msgid "If checked, new messages require your attention."
msgstr ".إذا تم تحديد ذلك ، فإن الرسائل الجديدة تتطلب اهتمامك"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_has_error
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_has_sms_error
msgid "If checked, some messages have a delivery error."
msgstr ".إذا تم التحقق ، فبعض الرسائل بها خطأ في التسليم"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__note
msgid "Internal Note"
msgstr "مذكرة داخلية"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_is_follower
msgid "Is Follower"
msgstr "هو تابع"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__joined_date
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Joined Date"
msgstr "تاريخ الانضمام"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category____last_update
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action____last_update
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category____last_update
msgid "Last Modified on"
msgstr "آخر تعديل في"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__write_uid
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__write_uid
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__write_uid
msgid "Last Updated by"
msgstr "آخر تحديث بواسطة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__write_date
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__write_date
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__write_date
msgid "Last Updated on"
msgstr "آخر تحديث في"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_main_attachment_id
msgid "Main Attachment"
msgstr "المرفق الرئيسي"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_has_error
msgid "Message Delivery error"
msgstr "خطأ في تسليم الرسالة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_ids
msgid "Messages"
msgstr "رسائل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_action_category__name
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_discipline_category__name
msgid "Name"
msgstr "اسم"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "New"
msgstr "جديد"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_date_deadline
msgid "Next Activity Deadline"
msgstr "آخر نشاط الموعد النهائي"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_summary
msgid "Next Activity Summary"
msgstr "ملخص النشاط التالي"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_type_id
msgid "Next Activity Type"
msgstr "نوع النشاط التالي"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_needaction_counter
msgid "Number of Actions"
msgstr "عدد الإجراءات"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_has_error_counter
msgid "Number of errors"
msgstr "عدد الاخطاء"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_needaction_counter
msgid "Number of messages which requires an action"
msgstr "عدد الرسائل التي تتطلب إجراء"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_has_error_counter
msgid "Number of messages with delivery error"
msgstr "عدد الرسائل مع خطأ التسليم"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__message_unread_counter
msgid "Number of unread messages"
msgstr "عدد الرسائل غير المقروءة"
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Proceed"
msgstr "تقدم"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__read_only
msgid "Read Only"
msgstr "يقرأ فقط"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__discipline_reason
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Reason"
msgstr "السبب"
#. module: hr_disciplinary_tracking
#: model:ir.model,name:hr_disciplinary_tracking.model_discipline_category
msgid "Reason Category"
msgstr "السبب الفئة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__name
msgid "Reference"
msgstr "مرجع"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__activity_user_id
msgid "Responsible User"
msgstr "المستخدم المسؤول"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_has_sms_error
msgid "SMS Delivery error"
msgstr "خطأ في تسليم الرسائل القصيرة"
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Set to Draft"
msgstr "تعيين إلى مشروع"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__state
msgid "State"
msgstr "حالة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__activity_state
msgid ""
"Status based on activities\n"
"Overdue: Due date is already passed\n"
"Today: Activity date is today\n"
"Planned: Future activities."
msgstr ""
"الحالة على أساس الأنشطة\n"
"المتأخرة: تاريخ الاستحقاق مر\n"
"اليوم: تاريخ النشاط هو اليوم\n"
"المخطط: الأنشطة المستقبلية."
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Submit"
msgstr "إرسال"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__suspension_letter
msgid "Suspension Letter"
msgstr "رسالة تعليق"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__termination_letter
msgid "Termination Letter"
msgstr "خطاب إنهاء"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__activity_exception_decoration
msgid "Type of the exception activity on record."
msgstr ".نوع نشاط الاستثناء في السجل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_unread
msgid "Unread Messages"
msgstr "رسائل غير مقروءة"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__message_unread_counter
msgid "Unread Messages Counter"
msgstr "عداد الرسائل غير المقروءة"
#. module: hr_disciplinary_tracking
#: model_terms:ir.ui.view,arch_db:hr_disciplinary_tracking.employee_disciplinary_form
msgid "Validate Action"
msgstr "التحقق من صحة العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields.selection,name:hr_disciplinary_tracking.selection__disciplinary_action__state__submitted
msgid "Waiting Action"
msgstr "انتظار العمل"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields.selection,name:hr_disciplinary_tracking.selection__disciplinary_action__state__explain
msgid "Waiting Explanation"
msgstr "في انتظار التفسير"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__warning
msgid "Warning"
msgstr "تحذير"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__warning_letter
msgid "Warning Letter"
msgstr "رسالة تحذير"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,field_description:hr_disciplinary_tracking.field_disciplinary_action__website_message_ids
msgid "Website Messages"
msgstr "رسائل الموقع"
#. module: hr_disciplinary_tracking
#: model:ir.model.fields,help:hr_disciplinary_tracking.field_disciplinary_action__website_message_ids
msgid "Website communication history"
msgstr "سجل اتصالات الموقع"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You Can not edit a Validated Action !!"
msgstr "!! لا يمكنك تحرير إجراء تم التحقق منه"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You have to fill up the Action Information !!"
msgstr "!! لديك لملء معلومات العمل"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You have to fill up the Suspension Letter in Action Information !!"
msgstr "!! يجب عليك ملء خطاب التعليق في معلومات العمل"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You have to fill up the Termination Letter in Action Information !!"
msgstr "!! يجب عليك ملء خطاب الإنهاء في معلومات العمل"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You have to fill up the Warning Letter in Action Information !!"
msgstr "!! يجب عليك ملء خطاب الإنهاء في معلومات العمل"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You have to select an Action !!"
msgstr "!! يجب عليك تحديد إجراء"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "You must give an explanation !!"
msgstr "!! يجب أن تعطي تفسيرا"
#. module: hr_disciplinary_tracking
#: code:addons/hr_disciplinary_tracking/models/disciplinary_action.py:0
#, python-format
msgid "Your explanation must contain at least 5 words !!"
msgstr "!! يجب أن يحتوي تفسيرك على 5 كلمات على الأقل"

View File

@@ -0,0 +1,3 @@
# -*- coding: utf-8 -*-
from . import disciplinary_action

View File

@@ -0,0 +1,159 @@
# -*- coding: utf-8 -*-
from odoo import fields, models, api, _
from odoo.exceptions import ValidationError
class InheritEmployee(models.Model):
_inherit = 'hr.employee'
discipline_count = fields.Integer(compute="_compute_discipline_count")
def _compute_discipline_count(self):
all_actions = self.env['disciplinary.action'].read_group([
('employee_name', 'in', self.ids),
('state', '=', 'action'),
], fields=['employee_name'], groupby=['employee_name'])
mapping = dict([(action['employee_name'][0], action['employee_name_count']) for action in all_actions])
for employee in self:
employee.discipline_count = mapping.get(employee.id, 0)
class CategoryDiscipline(models.Model):
_name = 'discipline.category'
_description = 'Reason Category'
# Discipline Categories
code = fields.Char(string="Code", required=True, help="Category code")
name = fields.Char(string="Name", required=True, help="Category name")
category_type = fields.Selection([('disciplinary', 'Disciplinary Category'), ('action', 'Action Category')],
string="Category Type", help="Choose the category type disciplinary or action")
description = fields.Text(string="Details", help="Details for this category")
class DisciplinaryAction(models.Model):
_name = 'disciplinary.action'
_inherit = ['mail.thread', 'mail.activity.mixin']
_description = "Disciplinary Action"
state = fields.Selection([
('draft', 'Draft'),
('explain', 'Waiting Explanation'),
('submitted', 'Waiting Action'),
('action', 'Action Validated'),
('cancel', 'Cancelled'),
], default='draft', track_visibility='onchange')
name = fields.Char(string='Reference', required=True, copy=False, readonly=True,
default=lambda self: _('New'))
employee_name = fields.Many2one('hr.employee', string='Employee', required=True, help="Employee name")
department_name = fields.Many2one('hr.department', string='Department', required=True, help="Department name")
discipline_reason = fields.Many2one('discipline.category', string='Reason', required=True, help="Choose a disciplinary reason")
explanation = fields.Text(string="Explanation by Employee", help='Employee have to give Explanation'
'to manager about the violation of discipline')
action = fields.Many2one('discipline.category', string="Action", help="Choose an action for this disciplinary action")
read_only = fields.Boolean(compute="get_user", default=True)
warning_letter = fields.Html(string="Warning Letter")
suspension_letter = fields.Html(string="Suspension Letter")
termination_letter = fields.Html(string="Termination Letter")
warning = fields.Integer(default=False)
action_details = fields.Text(string="Action Details", help="Give the details for this action")
attachment_ids = fields.Many2many('ir.attachment', string="Attachments",
help="Employee can submit any documents which supports their explanation")
note = fields.Text(string="Internal Note")
joined_date = fields.Date(string="Joined Date", help="Employee joining date")
# assigning the sequence for the record
@api.model
def create(self, vals):
vals['name'] = self.env['ir.sequence'].next_by_code('disciplinary.action')
return super(DisciplinaryAction, self).create(vals)
# Check the user is a manager or employee
@api.depends('read_only')
def get_user(self):
if self.env.user.has_group('hr.group_hr_manager'):
self.read_only = True
else:
self.read_only = False
# Check the Action Selected
@api.onchange('action')
def onchange_action(self):
if self.action.name == 'Written Warning':
self.warning = 1
elif self.action.name == 'Suspend the Employee for one Week':
self.warning = 2
elif self.action.name == 'Terminate the Employee':
self.warning = 3
elif self.action.name == 'No Action':
self.warning = 4
else:
self.warning = 5
@api.onchange('employee_name')
@api.depends('employee_name')
def onchange_employee_name(self):
department = self.env['hr.employee'].search([('name', '=', self.employee_name.name)])
self.department_name = department.department_id.id
if self.state == 'action':
raise ValidationError(_('You Can not edit a Validated Action !!'))
@api.onchange('discipline_reason')
@api.depends('discipline_reason')
def onchange_reason(self):
if self.state == 'action':
raise ValidationError(_('You Can not edit a Validated Action !!'))
def assign_function(self):
for rec in self:
rec.state = 'explain'
def cancel_function(self):
for rec in self:
rec.state = 'cancel'
def set_to_function(self):
for rec in self:
rec.state = 'draft'
def action_function(self):
for rec in self:
if not rec.action:
raise ValidationError(_('You have to select an Action !!'))
if self.warning == 1:
if not rec.warning_letter or rec.warning_letter == '<p><br></p>':
raise ValidationError(_('You have to fill up the Warning Letter in Action Information !!'))
elif self.warning == 2:
if not rec.suspension_letter or rec.suspension_letter == '<p><br></p>':
raise ValidationError(_('You have to fill up the Suspension Letter in Action Information !!'))
elif self.warning == 3:
if not rec.termination_letter or rec.termination_letter == '<p><br></p>':
raise ValidationError(_('You have to fill up the Termination Letter in Action Information !!'))
elif self.warning == 4:
self.action_details = "No Action Proceed"
elif self.warning == 5:
if not rec.action_details:
raise ValidationError(_('You have to fill up the Action Information !!'))
rec.state = 'action'
def explanation_function(self):
for rec in self:
if not rec.explanation:
raise ValidationError(_('You must give an explanation !!'))
self.write({
'state': 'submitted'
})

View File

@@ -0,0 +1,8 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
view_disciplinary_action,view.disciplinary.action,model_disciplinary_action,hr.group_hr_manager,1,1,1,1
view_disciplinary_action_user,view.disciplinary.action.user,model_disciplinary_action,base.group_user,1,1,0,0
view_discipline_category,view.discipline.category,model_discipline_category,hr.group_hr_manager,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 view_disciplinary_action view.disciplinary.action model_disciplinary_action hr.group_hr_manager 1 1 1 1
3 view_disciplinary_action_user view.disciplinary.action.user model_disciplinary_action base.group_user 1 1 0 0
4 view_discipline_category view.discipline.category model_discipline_category hr.group_hr_manager 1 1 1 1

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<record id="disciplinary_action_employee" model="ir.rule">
<field name="name">Disciplinary Action Employee</field>
<field ref="model_disciplinary_action" name="model_id"/>
<field name="domain_force">[('employee_name.user_id.id','=',user.id)]</field>
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
</record>
<record id="disciplinary_action_manager" model="ir.rule">
<field name="name">Disciplinary Action Manager</field>
<field ref="model_disciplinary_action" name="model_id"/>
<field name="domain_force">[]</field>
<field name="groups" eval="[(4, ref('hr.group_hr_manager'))]"/>
</record>
</odoo>

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 612 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 408 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

View File

@@ -0,0 +1,532 @@
<div class="row"
style="margin: 0;position: relative;color: #000;background-position: center;background: #ffffff;border-bottom: 1px solid #e4e4e4;text-align: center; margin: auto; display: flex;justify-content: center;">
<a href="https://www.openhrms.com/" target="_blank"><img src="images/openhrms.png"
style=" width: 293px; padding: 1rem 0rem; margin: auto"
alt="cybrosys-logo"></a>
</div>
<div class="row"
style="margin:75px 0;position: relative;color: #000;background-position: center;background: #ffffff;border-bottom: 1px solid #e4e4e4; padding-bottom: 30px;">
<div class="col-md-7 col-sm-12 col-xs-12" style="padding: 0px">
<div style=" margin: 0 0 0px;padding: 20px 0 10;font-size: 23px;line-height: 35px;font-weight: 400;color: #000;border-top: 1px solid rgba(255,255,255,0.1);border-bottom: 1px solid rgba(255,255,255,0.11);text-align: left;">
<h1 style="font-size: 39px;font-weight: 600;margin: 0px !important;"> Employee Disciplinary Tracking </h1>
<h3 style="font-size: 21px;margin-top: 8px;position: relative;"> Track the Disciplinary actions of Employees. </h3>
</div>
<h2 style="font-weight: 600;font-size: 1.8rem;margin-top: 15px;">Key Highlights</h2>
<ul style=" padding: 0 1px; list-style: none; ">
<li style="display: flex;align-items: center;padding: 8px 0;font-size: 18px;"><img src="images/checked.png"
style=" width: 22px; margin-right: 6px; "
alt="check">
Manager can assign disciplinary issues to the employees.
</li>
<li style="display: flex;align-items: center;padding: 8px 0;font-size: 18px;"><img src="images/checked.png"
style=" width: 22px; margin-right: 6px; "
alt="check">
Employees give explanations and submit it to the manager.
</li>
<li style="display: flex;align-items: center;padding: 8px 0;font-size: 18px;"><img src="images/checked.png"
style=" width: 22px; margin-right: 6px; "
alt="check">
Manager can take the final action against the employee according to the Explanation.
</li>
</ul>
</div>
<div class="col-md-5 col-sm-12 col-xs-12"><img src="images/disc.png" class="img-responsive" alt=""></div>
</div>
<div>
<section class="oe_container" style="padding: 1rem 0rem 1rem; background-color: #ffffff !important;">
<div class="row py-4 px-3">
<div class="w-100" style="padding-top:30px;padding-bottom:45px;border-radius: 10px;">
<ul role="tablist" class="nav nav-pills justify-content-center" data-tabs="tabs" id="pills-tab"
style="border: none;background: unset;">
<li class="nav-item mr-1 mb-3"
style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #d31c22;background-color: #00438b;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;">
<a id="pills-home-tab" data-toggle="pill" href="#pills-home" role="tab"
aria-controls="pills-home" aria-selected="true" class="nav-link active show"
style="color: #fff;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center;">Overview </a>
</li>
<li class="nav-item mr-1 mb-3"
style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #d31c22;background-color: #00438b;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;">
<a id="pills-home-tab" data-toggle="pill" href="#pills-features" role="tab"
aria-controls="pills-home" aria-selected="true" class="nav-link "
style="color: #fff;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center;">Features </a>
</li>
<li class="nav-item mr-1 mb-3"
style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #ffffff;background-color: #00438b;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;">
<a class="nav-link" id="pills-profile-tab" data-toggle="pill" href="#pills-profile" role="tab"
aria-controls="pills-profile" aria-selected="false"
style="color: #fff;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center;">Screenshots </a>
</li>
</ul>
<div class="tab-content" id="pills-tabContent"
style="padding-top: 30px; padding-bottom: 30px; padding: 30px;">
<div class="px-3 pt-1 tab-pane fade active show" id="pills-home" role="tabpanel" aria-labelledby="
pills-home-tab">
<!-- Overview-->
<h2 style="font-weight: 600;text-align: center;width: 100%;">Overview</h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<h3 class="oe_slogan"
style="text-align: center;font-size: 19px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 31px;font-weight: 400;letter-spacing: .5px;margin-bottom: 21px;">
This module will help to track and maintain disciplinary actions of employees. Manager can assign disciplinary issues to the employees. Employees can give explanations against the issues and submit to the manager. According to the explanation of employee manager can take the final action.
</h3>
</div>
<div class="px-3 pt-1 tab-pane fade " id="pills-features" role="tabpanel" aria-labelledby="
pills-home-tab">
<!-- feature tab-->
<h2 style="font-weight: 600;text-align: center;width: 100%;">Employee Disciplinary Tracking </h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<ul>
<li class="mb8"
style="font-family: Roboto;color: #000;list-style-type: square;font-size: 19px;line-height: 50px; background-color: #3a34380d;padding-left: 20px;border-radius: 7px;list-style: none;">
<img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check">
Manager can assign disciplinary issues to the employees.
</li>
<li class="mb8"
style="font-family: Roboto;color: #000;list-style-type: square;font-size: 19px;line-height: 50px; background-color: #3a34380d;padding-left: 20px;border-radius: 7px;list-style: none;">
<img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check">
Employees give explanations and submit it to the manager.
</li>
<li class="mb8"
style="font-family: Roboto;color: #000;list-style-type: square;font-size: 19px;line-height: 50px; background-color: #3a34380d;padding-left: 20px;border-radius: 7px;list-style: none;">
<img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check">
Manager can take the final action against the employee according to the Explanation.
</li>
</ul>
</div>
<!-- Screenshot tab-->
<div class="px-3 tab-pane fade" id="pills-profile" role="tabpanel"
aria-labelledby="pills-profile-tab">
<div class="tab-pane">
<h2 style="font-weight: 600;text-align: center;width: 100%;">Screenshots</h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<div>
<section class="oe_container">
<div id="demo" class="row carousel slide mb32" data-ride="carousel">
<div class="carousel-inner">
<div class="carousel-item active" style="min-height: 0px;">
<div class="col-xs-12 col-sm-12 col-md-12 mb16 mt16"
style="float: left;">
<h3 class="alert"
style="font-weight:400;color: #091E42;background: #fff;text-align: left;border-radius: 0; font-size: 18px;">
<img src="images/checked.png"
style=" width: 22px; margin-right: 6px; " alt="check">
Create Disciplinary actions.
</h3>
<div style=""><img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/1disc.png"></div>
</div>
</div>
<div class="carousel-item" style="min-height: 0px;">
<div class="col-xs-12 col-sm-12 col-md-12 mb16 mt16"
style="float: left;">
<h3 class="alert"
style="font-weight:400;color: #091E42;background: #fff;text-align: left;border-radius: 0; font-size: 18px;">
<img src="images/checked.png"
style=" width: 22px; margin-right: 6px; " alt="check">
Click 'Discipline Category' menu to create new Discipline Category reasons
<br>
</h3>
<div style=""><img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/2disc.png"></div>
</div>
</div>
</div>
<a class="carousel-control-prev" href="#demo" data-slide="prev" style="left:-25px;width: 35px;color: #000;"> <span class="carousel-control-prev-icon"><i class="fa fa-chevron-left" style="font-size:24px"></i></span> </a> <a class="carousel-control-next" href="#demo" data-slide="next" style="right:-25px;width: 35px;color: #000;"> <span class="carousel-control-next-icon"><i class="fa fa-chevron-right" style="font-size:24px"></i></span> </a>
</div>
</section>
</div>
</div>
</div>
<!-- faq tab-->
<div class="px-2 px-lg-4 pt-3 tab-pane fade" id="pills-contact"
role="tabpanel"
aria-labelledby="pills-contact-tab">
<ul class="list-unstyled">
</ul>
</div>
</div>
</div>
</div>
</section>
<section class="oe_container" style="padding: 2rem 3rem 1rem;">
<h2 style="font-weight: 600;text-align: center;margin-bottom: 25px;width: 100%;">Suggested Products</h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<div id="demo1" class="row carousel slide" data-ride="carousel">
<!-- The slideshow -->
<div class="carousel-inner">
<div class="carousel-item active" style="min-height: 0px;">
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;">
<a
href="https://apps.odoo.com/apps/modules/13.0/ohrms_core/" target="_blank">
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;">
<img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/core_image.gif">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;">
<a
href="https://apps.odoo.com/apps/modules/13.0/hrms_dashboard/" target="_blank">
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;">
<img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/dash_image.gif">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;">
<a
href="https://apps.odoo.com/apps/modules/13.0/oh_hr_zk_attendance/" target="_blank">
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;">
<img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/bio_image.png">
</div>
</a>
</div>
</div>
<div class="carousel-item" style="min-height: 0px;">
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;">
<a
href="https://apps.odoo.com/apps/modules/13.0/oh_appraisal/" target="_blank">
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;">
<img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/appraisal_image.png">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;">
<a
href="https://apps.odoo.com/apps/modules/13.0/hr_employee_shift/" target="_blank">
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;">
<img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/shift_image.png">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;">
<a
href="https://apps.odoo.com/apps/modules/13.0/ohrms_salary_advance/" target="_blank">
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;">
<img class="img img-responsive center-block"
style="border-top-left-radius: 10px;border-top-right-radius: 10px;"
src="images/salary_image.png">
</div>
</a>
</div>
</div>
</div>
<!-- Left and right controls -->
<a class="carousel-control-prev" href="#demo1" data-slide="prev"
style="left:-25px;width: 35px;color: #000;"> <span class="carousel-control-prev-icon"><i
class="fa fa-chevron-left" style="font-size:24px"></i></span> </a> <a class="carousel-control-next"
href="#demo1"
data-slide="next"
style="right:-25px;width: 35px;color: #000;">
<span class="carousel-control-next-icon"><i class="fa fa-chevron-right" style="font-size:24px"></i></span>
</a>
</div>
</section>
<section class="row" style="padding: 2rem 3rem 1rem;margin:0px">
<h2 style="font-weight: 600;margin-bottom: 20px;text-align: center;width: 100%;">Our Service</h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<div class="row" style=" display: flex; justify-content: center; flex-wrap: wrap;width: 100%; ">
<!-- <div style="display:flex;padding-top: 20px;justify-content: space-between;"> -->
<div class="col-md-2 col-sm-6 col-xs-12">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a
href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-customization.png"
style="width: 100%;border-radius: 100%;"/> </a></div>
<h3 class="oe_slogan"
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Odoo Customization </a>
</h3>
</div>
<div class="col-md-2 col-sm-6 col-xs-12">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a
href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-erp-implementation.png"
style="width: 100%;border-radius: 100%;"/> </a></div>
<h3 class="oe_slogan"
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Odoo Implementation </a>
</h3>
</div>
<div class="col-md-2 col-sm-6 col-xs-12">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a
href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-erp-integration.png"
style="width: 100%;border-radius: 100%;"/> </a></div>
<h3 class="oe_slogan"
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Odoo Integration </a>
</h3>
</div>
<div class="col-md-2 col-sm-6 col-xs-12">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a
href="https://www.cybrosys.com/odoo-erp-support/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-erp-support.png"
style="width: 100%;border-radius: 100%;"/> </a></div>
<h3 class="oe_slogan"
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-erp-support/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Odoo Support</a>
</h3>
</div>
<div class="col-md-2 col-sm-6 col-xs-12">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a
href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank"> <img
src="https://www.cybrosys.com/images/hire-odoo-developer.png"
style="width: 100%;border-radius: 100%;"/> </a></div>
<h3 class="oe_slogan"
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Hire Odoo Developers</a>
</h3>
</a>
</div>
<!-- </div> -->
</div>
</section>
<section class="row" style="padding: 2rem 3rem 1rem;margin:0px">
<div class="row" style="margin: 0">
<h2 style="font-weight: 600;margin-bottom: 20px;text-align: center;width: 100%;">Our Industries</h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<!-- <div style="display:flex;justify-content: space-between;flex-wrap:wrap;"> -->
<div class="row" style="width: 100%">
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-index-industry-1.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank"
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;">
Trading </a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;">
Easily procure and sell your products.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/"
target="_blank"> <img src="https://www.cybrosys.com/images/odoo-index-industry-2.png"
alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</a>
</div>
</div>
<div style="width:70%;float:left;" style=" margin-bottom: 10px; ">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/"
target="_blank"
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;">
Manufacturing</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;font-family: 'Montserrat',sans-serif;">
Plan, track and schedule your operations.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank">
<img src="https://www.cybrosys.com/images/odoo-index-industry-3.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank"
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;">
Restaurant</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;font-family: 'Montserrat',sans-serif;">
Run your bar or restaurant methodical.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-index-industry-4.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank"
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;">
POS</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;font-family: 'Montserrat',sans-serif;">
Easy configuring and convivial selling.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-index-industry-5.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 0px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
E-commerce & Website</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;">
Mobile friendly, awe-inspiring product pages.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank">
<img src="https://www.cybrosys.com/images/odoo-index-industry-6.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Hotel Management</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;">
An all-inclusive hotel management application.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank">
<img src="https://www.cybrosys.com/images/odoo-index-industry-7.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Education</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;">
A Collaborative platform for educational management.
</h3>
</div>
</div>
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; ">
<div>
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank"> <img
src="https://www.cybrosys.com/images/odoo-index-industry-8.png" alt="Odoo Industry"
style=" border-radius: 100%;width:100%;"/> </a>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan"
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;">
<a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank"
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;">
Service Management</a>
</h3>
<h3 class="oe_slogan"
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;">
Keep track of services and invoice accordingly.
</h3>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="oe_container" style="padding: 0% 0% 6% 0%;">
<center>
<div class="col-md-12" style="margin: auto !important;
width: 70%;
padding: 30px;">
<h2 style="font-weight: 600;text-align: center;width: 100%;">Need Any Help?</h2>
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;">
<h4 style="font-size:16px;"> If you have anything to share with us based on your use of this module, please
let us know. We are ready to offer our support.
</h4>
<div class="col-md-6" style="float:left; padding:20px;">
<h4><i class="fa fa-envelope"></i>Email us </h4>
<p>odoo@cybrosys.com / info@cybrosys.com</p>
</div>
<div class="col-md-6" style="float:left; padding:20px;">
<h4><i class="fa fa-phone"></i> Contact Us </h4>
<a href="https://www.cybrosys.com/contact/" target="_blank"> www.cybrosys.com</a>
</div>
</div>
Suggested Products
</center>
</section>
<section class="oe_container" style="padding: 0% 0% 6% 0%;">
<div class="oe_slogan" style="margin-bottom: 0px;">
<div style=" display: flex; justify-content: center; flex-wrap: wrap; ">
</div>
<br>
<img src="https://www.cybrosys.com/images/logo.png" style="width: 190px; margin-bottom: 25px;margin-top: 30px;"
class="center-block">
<div style=" display: flex; justify-content: center; flex-wrap: wrap; "><a href="https://twitter.com/cybrosys"
target="_blank"><i
class="fa fa-2x fa-twitter"
style="color:white;background: #00a0d1;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a>
</td>
<a href="https://www.linkedin.com/company/cybrosys-technologies-pvt-ltd" target="_blank"><i
class="fa fa-2x fa-linkedin"
style="color:white;background: #31a3d6;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a>
</td>
<a href="https://www.facebook.com/cybrosystechnologies" target="_blank"><i class="fa fa-2x fa-facebook"
style="color:white;background: #3b5998;width:35px; height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a>
</td>
<a href="https://in.pinterest.com/cybrosys" target="_blank"><i class="fa fa-2x fa-pinterest"
style="color:white;background: #ac0f18;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a>
</td>
</div>
</div>
</section>
</div>

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -0,0 +1,116 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<!--Discipline Category Creation-->
<record id="discipline_category_care" model="discipline.category">
<field name="code">RULES</field>
<field name="name">Violation of Company Rules</field>
</record>
<record id="discipline_category_behave" model="discipline.category">
<field name="code">BEHAVE</field>
<field name="name">Misbehaviour to Co-workers</field>
</record>
<record id="discipline_category_damage" model="discipline.category">
<field name="code">DAMAGE</field>
<field name="name">Damage to Company Properties</field>
</record>
<record id="discipline_category_instruction" model="discipline.category">
<field name="code">INSTRUCTION</field>
<field name="name">Not Follow Management Instructions</field>
</record>
<record id="discipline_category_performence" model="discipline.category">
<field name="code">INSTRUCTION</field>
<field name="name">Work Performance Issues</field>
</record>
<!--Action Category Creation-->
<record id="action_category_noact" model="discipline.category">
<field name="code">NOACTION</field>
<field name="name">No Action</field>
</record>
<record id="action_category_verb" model="discipline.category">
<field name="code">VERBAL</field>
<field name="name">Verbal Warning</field>
</record>
<record id="action_category_wrt" model="discipline.category">
<field name="code">WRITTEN</field>
<field name="name">Written Warning</field>
</record>
<record id="action_category_meet" model="discipline.category">
<field name="code">MEET</field>
<field name="name">Meet the Manager</field>
</record>
<record id="action_category_susp" model="discipline.category">
<field name="code">SUSPENSION</field>
<field name="name">Suspend the Employee</field>
<field name="name">Suspend the Employee for one Week</field>
</record>
<record id="action_category_term" model="discipline.category">
<field name="code">TERMINATE</field>
<field name="name">Terminate the Employee</field>
</record>
<record id="disciplinary_search_view" model="ir.ui.view">
<field name="name">hr disciplinary category view</field>
<field name="model">discipline.category</field>
<field name="arch" type="xml">
<search string="Search information">
<field name="name"/>
<field name="code"/>
<field name="category_type"/>
<field name="description"/>
<group expand="1" string="Group By">
<filter string="Department" name="department_name" context="{'group_by':'category_type'}"/>
</group>
</search>
</field>
</record>
<!--Discipline Category View-->
<record id="disciplinary_category_view_tree" model="ir.ui.view">
<field name="name">discipline.category.tree</field>
<field name="model">discipline.category</field>
<field name="arch" type="xml">
<tree string="Discipline Categories">
<field name="name"/>
</tree>
</field>
</record>
<record id="disciplinary_category_view_form" model="ir.ui.view">
<field name="name">discipline.category.form</field>
<field name="model">discipline.category</field>
<field name="arch" type="xml">
<form string="Discipline Category">
<sheet>
<group>
<field name="name" required="True"/>
<field name="code" required="True"/>
<field name="category_type" required="True"/>
<field name="description"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="action_disciplinary_category_view" model="ir.actions.act_window">
<field name="name">Discipline Categories</field>
<field name="res_model">discipline.category</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem id="disciplinary_category_view" action="action_disciplinary_category_view" groups="hr.group_hr_manager" name="Discipline Category" parent="disciplinary_action"
sequence="3"/>
</data>
</odoo>

View File

@@ -0,0 +1,182 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="disciplinary_search_view" model="ir.ui.view">
<field name="name">hr disciplinary search view</field>
<field name="model">disciplinary.action</field>
<field name="arch" type="xml">
<search string="Search information">
<field name="employee_name"/>
<field name="department_name"/>
<field name="joined_date"/>
<field name="discipline_reason"/>
<filter string="Draft" name="draft" domain="[('state','=','draft')]"/>
<filter string="Waiting Explanation" name="explain" domain="[('state','=','explain')]"/>
<filter string="Waiting Action" name="submitted" domain="[('state','=','submitted')]"/>
<filter string="Action Validated" name="action" domain="[('state','=','action')]"/>
<filter string="Cancel" name="cancel" domain="[('state','=','cancel')]"/>
<separator/>
<group expand="1" string="Group By">
<filter string="State" name="state" context="{'group_by': 'state'}"/>
<filter string="Department" name="department_name" context="{'group_by':'department_name'}"/>
<filter string="Joined Date" name="joined_date" context="{'group_by': 'joined_date'}"/>
</group>
</search>
</field>
</record>
<record id="employee_disciplinary_tree" model="ir.ui.view">
<field name="name">disciplinary.action.tree</field>
<field name="model">disciplinary.action</field>
<field name="arch" type="xml">
<tree string="Disciplinary Action">
<field name="name"/>
<field name="employee_name" groups="hr.group_hr_manager"/>
<field name="state"/>
</tree>
</field>
</record>
<record id="employee_disciplinary_form" model="ir.ui.view">
<field name="name">disciplinary.action.form</field>
<field name="model">disciplinary.action</field>
<field name="arch" type="xml">
<form string="Disciplinary Action">
<header>
<button name="assign_function" type="object" string="Proceed" class="oe_highlight"
states="draft"/>
<button name="explanation_function" type="object" string="Submit" class="oe_highlight"
states="explain"/>
<button name="action_function" type="object" string="Validate Action" states="submitted"
class="oe_highlight" groups="hr.group_hr_manager"/>
<button name="cancel_function" type="object" string="Cancel" states="draft,submitted"
groups="hr.group_hr_manager"/>
<button name="set_to_function" type="object" string="Set to Draft" states="cancel"
groups="hr.group_hr_manager"/>
<field name="state" widget="statusbar" statusbar_visible="draft,explain,action"/>
</header>
<sheet>
<div class="oe_title">
<h1>
<field name="name" readonly="1"/>
</h1>
</div>
<h2>
<group colspan="4">
<field name="employee_name" string="Employee" required="True"
attrs="{'readonly': ['|',('read_only','!=',True),('state','=','action')]}"/>
</group>
</h2>
<group>
<group>
<field name="department_name" required="True"
attrs="{'readonly': [('state','=','action')]}" groups="hr.group_hr_manager"/>
<field name="joined_date" string="Joined Date"/>
<field name="read_only" invisible="True"/>
<field name="warning" invisible="True"/>
</group>
</group>
<notebook>
<page name="Disciplinary Information"
string="Disciplinary Information">
<group colspan="4">
<group>
<field name="discipline_reason" string="Reason" required="True"
attrs="{'readonly': [('read_only','!=',True)]}"
domain="[('category_type','=','disciplinary')]"/>
</group>
<group>
<field name="explanation"
attrs="{'invisible' :[('state','=','draft')],'readonly': [('state','=','action')]}"/>
</group>
<group>
<field name="attachment_ids" widget="many2many_binary" class="oe_inline"
attrs="{'invisible' :[('state','=','draft')],'readonly': [('state','=','action')]}"/>
</group>
</group>
<group>
<field name="note" attrs="{'readonly': [('state','=','action')]}"/>
</group>
</page>
<page name="action_information" states="submitted,action"
string="Action Information">
<group>
<field name="action" string="Action"
attrs="{'invisible': [('state','not in',['submitted','action'])],'readonly': [('state','=','action')]}"
domain="[('category_type','=','action')]" groups="hr.group_hr_manager"/>
</group>
<group>
<field name="warning_letter"
attrs="{'invisible' :[('warning','!=',1)],'readonly': [('state','=','action')],'readonly': [('read_only','!=',True)]}"/>
<field name="suspension_letter"
attrs="{'invisible' :[('warning','!=',2)],'readonly': [('state','=','action')],'readonly': [('read_only','!=',True)]}"/>
<field name="termination_letter"
attrs="{'invisible' :[('warning','!=',3)],'readonly': [('state','=','action')],'readonly': [('read_only','!=',True)]}"/>
<field name="action_details"
attrs="{'invisible' :[('warning','not in',[4,5])],'readonly': [('state','=','action')],'readonly': [('read_only','!=',True)]}"/>
</group>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers"/>
<field name="activity_ids" widget="mail_activity"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
<record id="action_disciplinary_action" model="ir.actions.act_window">
<field name="name">Disciplinary Action</field>
<field name="res_model">disciplinary.action</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('state','in',('draft','explain','submitted','action','cancel'))]</field>
</record>
<record id="disciplinary_action_details" model="ir.actions.act_window">
<field name="name">Disciplinary Actions</field>
<field name="res_model">disciplinary.action</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('state','=','action'),('employee_name.id', '=', active_id)]</field>
</record>
<record id="disciplinary_action_details_view" model="ir.actions.act_window">
<field name="name">Disciplinary Action Details</field>
<field name="res_model">disciplinary.action</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('state','!=','draft')]</field>
</record>
<record id="employee_form_inherit_disciplinary" model="ir.ui.view">
<field name="name">inherit.employee.form.view</field>
<field name="model">hr.employee</field>
<field name="inherit_id" ref="hr.view_employee_form"/>
<field name="arch" type="xml">
<!--Add Discipline button in the Employee Form-->
<xpath expr="//div[@name='button_box']" position="inside">
<button name="%(disciplinary_action_details)d"
class="oe_stat_button"
icon="fa-info-circle"
type="action"
>
<field string="Disciplinary Action" name="discipline_count" widget="statinfo"/>
</button>
</xpath>
</field>
</record>
<menuitem id="disciplinary_action" name="Disciplinary Actions" parent="hr.menu_hr_root"
sequence="23"/>
<menuitem id="disciplinary_action_create" action="action_disciplinary_action" groups="hr.group_hr_manager"
name="Disciplinary Action" parent="disciplinary_action"
sequence="1"/>
</data>
</odoo>

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<!-- Sequences for disciplinary.action -->
<record id="seq_disciplinary_action" model="ir.sequence">
<field name="name">Open HRMS Disciplinary Action</field>
<field name="code">disciplinary.action</field>
<field name="prefix">DIS</field>
<field name="padding">3</field>
</record>
</data>
</odoo>