Browse Source

[ADD] Initial Commit

pull/164/head
AjmalCybro 5 years ago
parent
commit
35731cfb19
  1. 48
      barcode_scanning_sale_purchase/README.rst
  2. 23
      barcode_scanning_sale_purchase/__init__.py
  3. 40
      barcode_scanning_sale_purchase/__manifest__.py
  4. 6
      barcode_scanning_sale_purchase/doc/RELEASE_NOTES.md
  5. 24
      barcode_scanning_sale_purchase/models/__init__.py
  6. 16
      barcode_scanning_sale_purchase/models/purchase_order.py
  7. 16
      barcode_scanning_sale_purchase/models/sale_order.py
  8. BIN
      barcode_scanning_sale_purchase/static/description/banner.png
  9. BIN
      barcode_scanning_sale_purchase/static/description/icon.png
  10. BIN
      barcode_scanning_sale_purchase/static/description/images/banner_lifeline_for_task.jpeg
  11. BIN
      barcode_scanning_sale_purchase/static/description/images/banner_project_report_xls_pdf.png
  12. BIN
      barcode_scanning_sale_purchase/static/description/images/banner_project_status_report.png
  13. BIN
      barcode_scanning_sale_purchase/static/description/images/banner_subtask.jpeg
  14. BIN
      barcode_scanning_sale_purchase/static/description/images/banner_task_deadline_reminder.jpeg
  15. BIN
      barcode_scanning_sale_purchase/static/description/images/banner_task_statusbar.jpeg
  16. BIN
      barcode_scanning_sale_purchase/static/description/images/barcode.png
  17. BIN
      barcode_scanning_sale_purchase/static/description/images/barcode1.png
  18. BIN
      barcode_scanning_sale_purchase/static/description/images/barcode2.png
  19. BIN
      barcode_scanning_sale_purchase/static/description/images/barcode3.png
  20. BIN
      barcode_scanning_sale_purchase/static/description/images/checked.png
  21. BIN
      barcode_scanning_sale_purchase/static/description/images/cybrosys.png
  22. 297
      barcode_scanning_sale_purchase/static/description/index.html
  23. 15
      barcode_scanning_sale_purchase/views/purchase_order_line.xml
  24. 15
      barcode_scanning_sale_purchase/views/sale_order_line.xml
  25. 47
      employee_orientation/README.rst
  26. 24
      employee_orientation/__init__.py
  27. 49
      employee_orientation/__manifest__.py
  28. 6
      employee_orientation/doc/RELEASE_NOTES.md
  29. 28
      employee_orientation/models/__init__.py
  30. 90
      employee_orientation/models/employee_orientation.py
  31. 124
      employee_orientation/models/employee_training.py
  32. 43
      employee_orientation/models/orientation_checklist.py
  33. 31
      employee_orientation/models/orientation_checklist_line.py
  34. 88
      employee_orientation/models/orientation_checklist_request.py
  35. 50
      employee_orientation/models/report.py
  36. 8
      employee_orientation/security/ir.model.access.csv
  37. BIN
      employee_orientation/static/description/banner.png
  38. BIN
      employee_orientation/static/description/cybro_logo.png
  39. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-1.jpg
  40. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-10.jpg
  41. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-2.jpg
  42. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-3.jpg
  43. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-4.jpg
  44. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-5.jpg
  45. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-6.jpg
  46. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-7.jpg
  47. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-8.jpg
  48. BIN
      employee_orientation/static/description/employee-orientation-cybrosys-9.jpg
  49. BIN
      employee_orientation/static/description/hr_orientation_1.png
  50. BIN
      employee_orientation/static/description/hr_orientation_10.png
  51. BIN
      employee_orientation/static/description/hr_orientation_11.png
  52. BIN
      employee_orientation/static/description/hr_orientation_12.png
  53. BIN
      employee_orientation/static/description/hr_orientation_13.png
  54. BIN
      employee_orientation/static/description/hr_orientation_2.png
  55. BIN
      employee_orientation/static/description/hr_orientation_3.png
  56. BIN
      employee_orientation/static/description/hr_orientation_4.png
  57. BIN
      employee_orientation/static/description/hr_orientation_5.png
  58. BIN
      employee_orientation/static/description/hr_orientation_6.png
  59. BIN
      employee_orientation/static/description/hr_orientation_7.png
  60. BIN
      employee_orientation/static/description/hr_orientation_8.png
  61. BIN
      employee_orientation/static/description/hr_orientation_9.png
  62. BIN
      employee_orientation/static/description/icon.png
  63. 389
      employee_orientation/static/description/index.html
  64. 111
      employee_orientation/views/employee_orientation.xml
  65. 105
      employee_orientation/views/employee_training.xml
  66. 85
      employee_orientation/views/orientation_checklist.xml
  67. 84
      employee_orientation/views/orientation_checklist_line.xml
  68. 14
      employee_orientation/views/orientation_checklist_sequence.xml
  69. 83
      employee_orientation/views/orientation_checklists_request.xml
  70. 90
      employee_orientation/views/orientation_request_mail_template.xml
  71. 25
      employee_orientation/views/print_pack_certificates_template.xml
  72. 12
      employee_orientation/views/report.xml
  73. 23
      employee_orientation/wizard/__init__.py
  74. 49
      employee_orientation/wizard/orientation_complete.py
  75. 23
      employee_orientation/wizard/orientation_complete.xml
  76. 44
      timesheets_by_employee/README.rst
  77. 23
      timesheets_by_employee/__init__.py
  78. 44
      timesheets_by_employee/__manifest__.py
  79. 6
      timesheets_by_employee/doc/RELEASE_NOTES.md
  80. 22
      timesheets_by_employee/report/__init__.py
  81. 95
      timesheets_by_employee/report/report_timesheets.py
  82. 42
      timesheets_by_employee/report/report_timesheets.xml
  83. 12
      timesheets_by_employee/report/timesheet_pdf.xml
  84. 2
      timesheets_by_employee/security/ir.model.access.csv
  85. BIN
      timesheets_by_employee/static/description/banner.png
  86. BIN
      timesheets_by_employee/static/description/cybro_logo.png
  87. BIN
      timesheets_by_employee/static/description/icon.png
  88. BIN
      timesheets_by_employee/static/description/icosadan.png
  89. 346
      timesheets_by_employee/static/description/index.html
  90. BIN
      timesheets_by_employee/static/description/timesheet-by-employee-cybrosys-1.png
  91. BIN
      timesheets_by_employee/static/description/timesheet-by-employee-cybrosys-2.png
  92. BIN
      timesheets_by_employee/static/description/timesheet-by-employee-cybrosys-3.png
  93. 23
      timesheets_by_employee/wizard/__init__.py
  94. 41
      timesheets_by_employee/wizard/timesheet_employee.py
  95. 39
      timesheets_by_employee/wizard/timesheet_wizard.xml

48
barcode_scanning_sale_purchase/README.rst

@ -0,0 +1,48 @@
.. image:: https://img.shields.io/badge/licence-AGPL--1-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
Barcode scanning support for sale and Purchase v14
==================================================
This module will help you to use barcode scanner in sales and purchase.
Depends
=======
[sale_management] addon Odoo
[purchase] addon Odoo
Configuration
=============
* No additional configurations needed
Company
-------
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__
Credits
-------
* Developer: Sreejith P @ cybrosys, Contact: odoo@cybrosys.com
* Version 14: Muhammed P @ cybrosys, Contact: odoo@cybrosys.com
Contacts
--------
* Mail Contact : odoo@cybrosys.com
* Website : https://cybrosys.com
Bug Tracker
-----------
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Maintainer
==========
.. image:: https://cybrosys.com/images/logo.png
:target: https://cybrosys.com
This module is maintained by Cybrosys Technologies.
For support and more information, please visit `Our Website <https://cybrosys.com/>`__
Further information
===================
HTML Description: `<static/description/index.html>`__

23
barcode_scanning_sale_purchase/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Sreejith P (odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import models

40
barcode_scanning_sale_purchase/__manifest__.py

@ -0,0 +1,40 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2020-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
{
'name': 'Barcode scanning support for sale and Purchase',
'version': '14.0.1.0.0',
'category': 'Sales',
'summary': 'This module will help you to use barcode scanner in sales and purchase.',
'author': 'Cybrosys Techno solutions',
'company': 'Cybrosys Techno Solutions',
'website': 'https://www.cybrosys.com',
'depends': ['purchase', 'sale_management'],
'data': [
'views/sale_order_line.xml',
'views/purchase_order_line.xml',
],
'installable': True,
'application': False,
'auto_install': False,
'images': ['static/description/banner.png'],
'license': 'AGPL-3',
}

6
barcode_scanning_sale_purchase/doc/RELEASE_NOTES.md

@ -0,0 +1,6 @@
## Module <barcode_scanning_sale_purchase>
#### 08.10.2020
#### Version 14.0.1.0.0
##### ADD
- Initial Commit

24
barcode_scanning_sale_purchase/models/__init__.py

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Sreejith P (<https://www.cybrosys.com>)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import sale_order
from . import purchase_order

16
barcode_scanning_sale_purchase/models/purchase_order.py

@ -0,0 +1,16 @@
from odoo import api, models, fields
class PurchaseOrderLines(models.Model):
_inherit = "purchase.order.line"
barcode_scan = fields.Char(string='Product Barcode', help="Here you can provide the barcode for the product")
@api.onchange('barcode_scan')
def _onchange_barcode_scan(self):
product_rec = self.env['product.product']
if self.barcode_scan:
product = product_rec.search([('barcode', '=', self.barcode_scan)])
self.product_id = product.id
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

16
barcode_scanning_sale_purchase/models/sale_order.py

@ -0,0 +1,16 @@
from odoo import api, models, fields
class SaleOrderLines(models.Model):
_inherit = 'sale.order.line'
barcode_scan = fields.Char(string='Product Barcode', help="Here you can provide the barcode for the product")
@api.onchange('barcode_scan')
def _onchange_barcode_scan(self):
product_rec = self.env['product.product']
if self.barcode_scan:
product = product_rec.search([('barcode', '=', self.barcode_scan)])
self.product_id = product.id
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

BIN
barcode_scanning_sale_purchase/static/description/banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

BIN
barcode_scanning_sale_purchase/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/banner_lifeline_for_task.jpeg

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/banner_project_report_xls_pdf.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/banner_project_status_report.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/banner_subtask.jpeg

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/banner_task_deadline_reminder.jpeg

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/banner_task_statusbar.jpeg

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/barcode.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/barcode1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/barcode2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/barcode3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/checked.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
barcode_scanning_sale_purchase/static/description/images/cybrosys.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

297
barcode_scanning_sale_purchase/static/description/index.html

@ -0,0 +1,297 @@
<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.cybrosys.com/" target="_blank"><img src="images/cybrosys.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;">Barcode scanning support for sale and Purchase </h1>
<h3 style="font-size: 21px;margin-top: 8px;position: relative;">This module will help you to use barcode scanner in sales and purchase module. </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;"><i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i> Use barcode in Sales order </li>
<li style="display: flex;align-items: center;padding: 8px 0;font-size: 18px;"><i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i> Use barcode in Purchase order </li>
</ul>
</div>
<div class="col-md-5 col-sm-12 col-xs-12"> <img src="images/barcode.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: #d31c22;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: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400;text-align: center;
color: #fff;">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: #d31c22;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-home1" role="tab" aria-controls="pills-home" aria-selected="true" class="nav-link " style="color: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center;
color: #fff;" >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: #d31c22;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: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center;
color: #fff;">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;">
A module that can use in sales and purchase for barcode scanning. </h3>
</div>
<div class="px-3 pt-1 tab-pane fade " id="pills-home1" role="tabpanel" aria-labelledby="
pills-home-tab">
<!-- feature tab-->
<h2 style="font-weight: 600;text-align: center;width: 100%;"> Barcode scanning support for sale and Purchase </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;">
<i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i> Use barcode in Sales order
</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;">
<i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i> Use barcode in Purchase order
</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;"> <i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i> Product Form </h3>
<p> Provide a barcode for the product</p>
<div style=""> <img class="img img-responsive center-block" style="border-top-left-radius: 10px;border-top-right-radius: 10px;" src="images/barcode1.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;"> <i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i>Sale Order </h3>
<p>Just click on the barcode field and scan the product now the item is added to the order line.</p>
<div style=""> <img class="img img-responsive center-block" style="border-top-left-radius: 10px;border-top-right-radius: 10px;" src="images/barcode2.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;"> <i class="fa fa-check-circle-o" style="width:40px; color:#07B700"></i>Purchase Order </h3>
<p> Just click on the barcode field and scan the product now the item is added to the order line.</p>
<div style=""> <img class="img img-responsive center-block" style="border-top-left-radius: 10px;border-top-right-radius: 10px;" src="images/barcode3.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/12.0/project_report_pdf/" 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/banner_project_report_xls_pdf.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/10.0/project_status_level_report/" 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/banner_project_status_report.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/10.0/project_lifeline/" 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/banner_lifeline_for_task.jpeg"> </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/10.0/project_subtask/" 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/banner_subtask.jpeg"> </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/12.0/task_deadline_reminder/" 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/banner_task_deadline_reminder.jpeg"> </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/10.0/project_time_spend/" 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/banner_task_statusbar.jpeg"> </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>
</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>

15
barcode_scanning_sale_purchase/views/purchase_order_line.xml

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="purchase_order_view_inherit_barcode1" model="ir.ui.view">
<field name="name">purchase.order.form.inherit</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.purchase_order_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='order_line']/tree/field[@name='product_id']" position="before">
<field name ="barcode_scan"/>
</xpath>
</field>
</record>
</data>
</odoo>

15
barcode_scanning_sale_purchase/views/sale_order_line.xml

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="sale_order_view_inherit_barcode1" model="ir.ui.view">
<field name="name">sale.order.form.inherit</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='order_line']/tree/field[@name='product_id']" position="before">
<field name ="barcode_scan"/>
</xpath>
</field>
</record>
</data>
</odoo>

47
employee_orientation/README.rst

@ -0,0 +1,47 @@
Employee Orientation v14
========================
This module developed to manage employee orientation&training programs.
Configuration
=============
* No additional configurations needed
Company
-------
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__
Credits
-------
* Developers: Anusha @cybrosys, odoo@cybrosys.com
Niyas V11 @cybrosys, odoo@cybrosys.com
Kavya Raveendran V12 odoo@cybrosys.com
Nimisha Murali V13 @cybrosys odoo@cybrosys.com
Muhammed P V14 @cybrosys odoo@cybrosys.com
Contacts
--------
* Mail Contact : odoo@cybrosys.com
* Website : https://cybrosys.com
Bug Tracker
-----------
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Maintainer
==========
.. image:: https://cybrosys.com/images/logo.png
:target: https://cybrosys.com
This module is maintained by Cybrosys Technologies.
For support and more information, please visit `Our Website <https://cybrosys.com/>`__
Further information
===================
HTML Description: `<static/description/index.html>`__

24
employee_orientation/__init__.py

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import models
from . import wizard

49
employee_orientation/__manifest__.py

@ -0,0 +1,49 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2020-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
{
'name': "Employee Orientation & Training",
'version': '14.0.1.0.0',
'category': "Generic Modules/Human Resources",
'summary': """Employee Orientation/Training Program""",
'description':'Complete Employee Orientation/Training Program',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'website': 'https://www.cybrosys.com',
'depends': ['base', 'hr'],
'data': [
'views/orientation_checklist_line.xml',
'views/employee_orientation.xml',
'views/orientation_checklist.xml',
'views/orientation_checklists_request.xml',
'views/orientation_checklist_sequence.xml',
'views/orientation_request_mail_template.xml',
'views/print_pack_certificates_template.xml',
'views/report.xml',
'views/employee_training.xml',
'security/ir.model.access.csv',
],
'images': ['static/description/banner.png'],
'license': 'AGPL-3',
'installable': True,
'auto_install': False,
'application': False,
}

6
employee_orientation/doc/RELEASE_NOTES.md

@ -0,0 +1,6 @@
## Module <employee_orientation>
#### 08.10.2020
#### Version 14.0.1.0.0
#### ADD
Initial Commit

28
employee_orientation/models/__init__.py

@ -0,0 +1,28 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import orientation_checklist_line
from . import orientation_checklist
from . import employee_orientation
from . import orientation_checklist_request
from . import employee_training
from . import report

90
employee_orientation/models/employee_orientation.py

@ -0,0 +1,90 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from odoo import api, fields, models, _
class Orientation(models.Model):
_name = 'employee.orientation'
_description = "Employee Orientation"
_inherit = 'mail.thread'
name = fields.Char(string='Employee Orientation', readonly=True, default=lambda self: _('New'))
employee_name = fields.Many2one('hr.employee', string='Employee', size=32, required=True)
department = fields.Many2one('hr.department', string='Department', related='employee_name.department_id',
required=True)
date = fields.Datetime(string="Date")
# date = fields.Datetime.to_string(dateText)
responsible_user = fields.Many2one('res.users', string='Responsible User')
employee_company = fields.Many2one('res.company', string='Company', required=True,
default=lambda self: self.env.user.company_id)
parent_id = fields.Many2one('hr.employee', string='Manager', related='employee_name.parent_id')
job_id = fields.Many2one('hr.job', string='Job Title', related='employee_name.job_id',
domain="[('department_id', '=', department)]")
orientation_id = fields.Many2one('orientation.checklist', string='Orientation Checklist',
domain="[('checklist_department','=', department)]", required=True)
note_id = fields.Text('Description')
orientation_request = fields.One2many('orientation.request', 'request_orientation', string='Orientation Request')
state = fields.Selection([
('draft', 'Draft'),
('confirm', 'Confirmed'),
('cancel', 'Canceled'),
('complete', 'Completed'),
], string='Status', readonly=True, copy=False, index=True, track_visibility='onchange', default='draft')
def confirm_orientation(self):
self.write({'state': 'confirm'})
for values in self.orientation_id.checklist_line_id:
self.env['orientation.request'].create({
'request_name': values.line_name,
'request_orientation': self.id,
'partner_id': values.responsible_user.id,
'request_date': self.date,
'employee_id': self.employee_name.id,
})
def cancel_orientation(self):
for request in self.orientation_request:
request.state = 'cancel'
self.write({'state': 'cancel'})
def complete_orientation(self):
force_complete = False
for request in self.orientation_request:
if request.state == 'new':
force_complete = True
if force_complete:
return {
'name': 'Complete Orientation',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'orientation.force.complete',
'type': 'ir.actions.act_window',
'context': {'default_orientation_id': self.id},
'target': 'new',
}
self.write({'state': 'complete'})
@api.model
def create(self, vals):
vals['name'] = self.env['ir.sequence'].next_by_code('employee.orientation')
result = super(Orientation, self).create(vals)
return result

124
employee_orientation/models/employee_training.py

@ -0,0 +1,124 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from dateutil.relativedelta import relativedelta
from datetime import datetime, timedelta
from odoo import api, fields, models, _
class HrEmployee(models.Model):
_inherit = 'hr.employee'
certificates = fields.Boolean(default=True, string="Certificates")
class EmployeeTraining(models.Model):
_name = 'employee.training'
_rec_name = 'program_name'
_description = "Employee Training"
_inherit = 'mail.thread'
program_name = fields.Char(string='Training Program', required=True)
program_department = fields.Many2one('hr.department', string='Department', required=True)
program_convener = fields.Many2one('res.users', string='Responsible User', size=32, required=True)
training_id = fields.One2many('hr.employee', string='Employee Details', compute="employee_details")
note_id = fields.Text('Description')
date_from = fields.Datetime(string="Date From")
date_to = fields.Datetime(string="Date To")
user_id = fields.Many2one('res.users', string='users', default=lambda self: self.env.user)
company_id = fields.Many2one('res.company', string='Company', required=True,
default=lambda self: self.env.user.company_id)
state = fields.Selection([
('new', 'New'),
('confirm', 'Confirmed'),
('cancel', 'Canceled'),
('complete', 'Completed'),
('print', 'Print'),
], string='Status', readonly=True, copy=False, index=True, track_visibility='onchange', default='new')
@api.onchange('program_department')
def employee_details(self):
datas = self.env['hr.employee'].search([('department_id', '=', self.program_department.id)])
self.training_id = datas
def print_event(self):
self.ensure_one()
started_date = datetime.strftime(self.create_date, "%Y-%m-%d ")
duration = (self.write_date - self.create_date).days
pause = relativedelta(hours=0)
difference = relativedelta(self.write_date, self.create_date) - pause
hours = difference.hours
minutes = difference.minutes
data = {
'dept_id': self.program_department.id,
'program_name': self.program_name,
'company_name': self.company_id.name,
'date_to': started_date,
'duration': duration,
'hours': hours,
'minutes': minutes,
'program_convener': self.program_convener.name,
}
return self.env.ref('employee_orientation.print_pack_certificates').report_action(self, data=data)
def complete_event(self):
self.write({'state': 'complete'})
def confirm_event(self):
self.write({'state': 'confirm'})
def cancel_event(self):
self.write({'state': 'cancel'})
def confirm_send_mail(self):
self.ensure_one()
ir_model_data = self.env['ir.model.data']
try:
template_id = ir_model_data.get_object_reference('employee_orientation', 'orientation_training_mailer')[1]
except ValueError:
template_id = False
try:
compose_form_id = ir_model_data.get_object_reference('mail', 'email_compose_message_wizard_form')[1]
except ValueError:
compose_form_id = False
ctx = dict(self.env.context or {})
ctx.update({
'default_model': 'employee.training',
'default_res_id': self.ids[0],
'default_use_template': bool(template_id),
'default_template_id': template_id,
'default_composition_mode': 'comment',
})
return {
'name': _('Compose Email'),
'type': 'ir.actions.act_window',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'mail.compose.message',
'views': [(compose_form_id, 'form')],
'view_id': compose_form_id,
'target': 'new',
'context': ctx,
}

43
employee_orientation/models/orientation_checklist.py

@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from odoo import models, fields, _
class OrientationChecklist(models.Model):
_name = 'orientation.checklist'
_description = "Checklist"
_rec_name = 'checklist_name'
_inherit = 'mail.thread'
checklist_name = fields.Char(string='Name', required=True)
checklist_department = fields.Many2one('hr.department', string='Department', required=True)
active = fields.Boolean(string='Active', default=True,
help="Set active to false to hide the Orientation Checklist without removing it.")
checklist_line_id = fields.Many2many('checklist.line', 'checklist_line_rel', String="Checklist")

31
employee_orientation/models/orientation_checklist_line.py

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from odoo import models, fields
class ChecklistLine(models.Model):
_name = 'checklist.line'
_rec_name = 'line_name'
line_name = fields.Char(string='Name', required=True)
responsible_user = fields.Many2one('res.users', string='Responsible User', required=True)

88
employee_orientation/models/orientation_checklist_request.py

@ -0,0 +1,88 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from odoo import models, fields, api
from odoo.tools.translate import _
class OrientationChecklistRequest(models.Model):
_name = 'orientation.request'
_description = "Employee Orientation Request"
_rec_name = 'request_name'
_inherit = 'mail.thread'
request_name = fields.Char(string='Name')
request_orientation = fields.Many2one('employee.orientation', string='Employee Orientation')
employee_company = fields.Many2one('res.company', string='Company', required=True,
default=lambda self: self.env.user.company_id)
partner_id = fields.Many2one('res.users', string='Responsible User')
request_date = fields.Date(string="Date")
employee_id = fields.Many2one('hr.employee', string='Employee')
request_expected_date = fields.Date(string="Expected Date")
attachment_id_1 = fields.Many2many('ir.attachment', 'orientation_rel_1', string="Attachment")
note_id = fields.Text('Description')
user_id = fields.Many2one('res.users', string='users', default=lambda self: self.env.user)
company_id = fields.Many2one('res.company', string='Company', required=True,
default=lambda self: self.env.user.company_id)
state = fields.Selection([
('new', 'New'),
('cancel', 'Cancel'),
('complete', 'Completed'),
], string='Status', readonly=True, copy=False, index=True, track_visibility='onchange', default='new')
def confirm_send_mail(self):
self.ensure_one()
ir_model_data = self.env['ir.model.data']
try:
template_id = ir_model_data.get_object_reference('employee_orientation', 'orientation_request_mailer')[1]
except ValueError:
template_id = False
try:
compose_form_id = ir_model_data.get_object_reference('mail', 'email_compose_message_wizard_form')[1]
except ValueError:
compose_form_id = False
ctx = dict(self.env.context or {})
ctx.update({
'default_model': 'orientation.request',
'default_res_id': self.ids[0],
'default_use_template': bool(template_id),
'default_template_id': template_id,
'default_composition_mode': 'comment',
})
return {
'name': _('Compose Email'),
'type': 'ir.actions.act_window',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'mail.compose.message',
'views': [(compose_form_id, 'form')],
'view_id': compose_form_id,
'target': 'new',
'context': ctx,
}
def confirm_request(self):
self.write({'state': "complete"})
def cancel_request(self):
self.write({'state': "cancel"})

50
employee_orientation/models/report.py

@ -0,0 +1,50 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from odoo import api, models, _
class PackingReportValues(models.AbstractModel):
_name = 'report.employee_orientation.print_pack_template'
@api.model
def _get_report_values(self, docids, data=None):
lst = []
empl_obj = self.env['hr.employee'].search([('department_id', '=', data['dept_id'])])
for line in empl_obj:
lst.append({
'name': line.name,
'department_id': line.department_id.name,
'program_name': data['program_name'],
'company_name': data['company_name'],
'date_to': data['date_to'],
'program_convener': data['program_convener'],
'duration': data['duration'],
'hours': data['hours'],
'minutes': data['minutes'],
})
return {
'data': lst,
}

8
employee_orientation/security/ir.model.access.csv

@ -0,0 +1,8 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_user_orientation_request,orientation.request,model_orientation_request,hr.group_hr_user,1,1,1,1
access_user_checklist_line,checklist.line,model_checklist_line,hr.group_hr_user,1,1,1,1
access_user_employee_orientation,employee.orientation,model_employee_orientation,hr.group_hr_user,1,1,1,1
access_manager_employee_orientation_request,orientation.checklist,model_orientation_checklist,hr.group_hr_user,1,1,1,1
access_user_employee_training,employee.training,model_employee_training,hr.group_hr_user,1,1,1,1
access_manager_employee_training,employee.training,model_employee_training,base.group_user,1,1,0,0
access_manager_orientation_request,orientation.request,model_orientation_request,base.group_user,1,1,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_user_orientation_request orientation.request model_orientation_request hr.group_hr_user 1 1 1 1
3 access_user_checklist_line checklist.line model_checklist_line hr.group_hr_user 1 1 1 1
4 access_user_employee_orientation employee.orientation model_employee_orientation hr.group_hr_user 1 1 1 1
5 access_manager_employee_orientation_request orientation.checklist model_orientation_checklist hr.group_hr_user 1 1 1 1
6 access_user_employee_training employee.training model_employee_training hr.group_hr_user 1 1 1 1
7 access_manager_employee_training employee.training model_employee_training base.group_user 1 1 0 0
8 access_manager_orientation_request orientation.request model_orientation_request base.group_user 1 1 0 0

BIN
employee_orientation/static/description/banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

BIN
employee_orientation/static/description/cybro_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-1.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-10.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-2.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-3.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-4.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-5.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-6.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-7.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-8.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

BIN
employee_orientation/static/description/employee-orientation-cybrosys-9.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
employee_orientation/static/description/hr_orientation_1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
employee_orientation/static/description/hr_orientation_10.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

BIN
employee_orientation/static/description/hr_orientation_11.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

BIN
employee_orientation/static/description/hr_orientation_12.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
employee_orientation/static/description/hr_orientation_13.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
employee_orientation/static/description/hr_orientation_2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

BIN
employee_orientation/static/description/hr_orientation_3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

BIN
employee_orientation/static/description/hr_orientation_4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
employee_orientation/static/description/hr_orientation_5.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

BIN
employee_orientation/static/description/hr_orientation_6.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

BIN
employee_orientation/static/description/hr_orientation_7.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
employee_orientation/static/description/hr_orientation_8.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
employee_orientation/static/description/hr_orientation_9.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

BIN
employee_orientation/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

389
employee_orientation/static/description/index.html

@ -0,0 +1,389 @@
<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-header-banner.png); background-repeat:no-repeat; background-size:cover;padding: 13% 0% 22% 15%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="font-size: 35px;color: #fff;font-weight: 900;text-transform: uppercase;text-align: left;margin: 0;margin-bottom: 16px;">
Employee Orientation & Training
</h2>
<h3 class="oe_slogan" style="font-size: 25px;color: #fff;font-weight: 600;text-align: left;opacity: 1;margin: 0 !important;">
Manage Employee Orientation And Training Programs
</h3>
<h5 class="oe_slogan" style="text-align: left;background: #fff;width: 293px;padding: 10px;color: #080808 !important;opacity: 1 !important;font-weight: 600;font-size: 20px;">
<a style="color: #080808 !important;" href="https://www.cybrosys.com">Cybrosys Technologies</a>
</h5>
<a style="color: #080808 !important;" href="https://www.cybrosys.com" target="_blank">
<div style="width: 215px;margin-left: 57%;text-align: center;background: #ffffff;height: 215px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-shadow: 0 0 12px 4px #00000059;">
<img src="https://www.cybrosys.com/images/cybro-logo-oca.png" alt="cybrosys technologies" style="width: 136px;"/> </div>
</a>
</div>
</section>
<section class="oe_container" style="padding: 3% 0% 3% 15%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Overview
</h2>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
Employee orientation/training is the process by which an employee acquires the necessary skills,
knowledge, behaviors, and contacts to effectively transition into a new organization.It can enhance
the overall satisfaction of employees and can encourage a positive attitude about the employer.
Employees view companies that offer meaningful benefits as more caring and engaged with their needs.
This may help reduce turnover and increase productivity.
</h3>
</div>
</section>
<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-banner.png); background-repeat:no-repeat; background-size:cover;padding: 19% 0% 30% 15%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Features
</h2>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Makes the Employee Orientation Program easier.
</h3>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Systematical Workflow.
</h3><h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Allows to Create Employee Training Programs.
</h3>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Email Notification for each Responsible person.</h3>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Certificates for training program attendees
</h3>
</div>
</section>
<section class="oe_container" style="padding: 3% 0% 0% 15%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Orientation Checklist
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Create checklist for selected departments-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-1.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Orientation Checklist Line
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Checklist lines for a added checklist-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-2.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Employee Orientation
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Employee orientation for selected employee-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-3.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Automatic creation of checklist lines
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- On confirming employee orientation, creates orientation lines from corresponding orientation checklist.-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-4.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Orientation Request
</h2>
<h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Confirming orientation will create orientation requests automatically.
</h3>
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-5.jpg" alt="" style="width: 95%;"/>
</div>
<h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Orientation requests with the corresponding employee orientation are added
</h3>
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-6.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Email Template
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Email for requesting to conduct the orientation-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-7.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Employee Training
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Training for selected departments can be conducted.-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-8.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Email Template
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Email for requesting to conduct the training program-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-9.jpg" alt="" style="width: 95%;"/>
</div>
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Print Certificates
</h2>
<!-- <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">-->
<!-- <img src="https://www.cybrosys.com/images/ico-tick.png">-->
<!-- Issuing certificates for training attended employees-->
<!-- </h3>-->
<div class="oe_row oe_spaced">
<img src="employee-orientation-cybrosys-10.jpg" alt="" style="width: 95%;"/>
</div>
</div>
</section>
<section class="oe_container" style="padding: 1% 0% 0% 3%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Our Service
</h2>
<div style="display:flex;padding-top: 20px;justify-content: space-between;">
<div style="flex-basis: 18%;">
<a href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;">
<img src="https://www.cybrosys.com/images/odoo-customization.png" style="width: 100%;border-radius: 100%;"/>
</div>
<h3 class="oe_slogan" style="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;">
Odoo <br/>Customization
</h3>
</a>
</div>
<div style="flex-basis: 18%;">
<a href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;">
<img src="https://www.cybrosys.com/images/odoo-erp-implementation.png" style="width: 100%;border-radius: 100%;"/>
</div>
<h3 class="oe_slogan" style="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;">
Odoo <br/>Implementation
</h3>
</a>
</div>
<div style="flex-basis: 18%;">
<a href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;">
<img src="https://www.cybrosys.com/images/odoo-erp-integration.png" style="width: 100%;border-radius: 100%;"/>
</div>
<h3 class="oe_slogan" style="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;">
Odoo <br/>Integration
</h3>
</a>
</div>
<div style="flex-basis: 18%;">
<a href="https://www.cybrosys.com/odoo-erp-support/" target="_blank">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;">
<img src="https://www.cybrosys.com/images/odoo-erp-support.png" style="width: 100%;border-radius: 100%;"/>
</div>
<h3 class="oe_slogan" style="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;">
Odoo <br/>Support
</h3>
</a>
</div>
<div style="flex-basis: 18%;">
<a href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank">
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;">
<img src="https://www.cybrosys.com/images/hire-odoo-developer.png" style="width: 100%;border-radius: 100%;"/>
</div>
<h3 class="oe_slogan" style="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;">
Hire <br/>Odoo Developer
</h3>
</a>
</div>
</div>
</div>
</section>
<section class="oe_container" style="padding: 3% 0% 0% 3%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Our Industries
</h2>
<div style="display:flex;justify-content: space-between;flex-wrap:wrap;">
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-1.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
Trading
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
Easily procure and sell your products.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-2.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
Manufacturing
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
Plan, track and schedule your operations.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-3.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
Restaurant
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
Run your bar or restaurant methodical.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-4.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
POS
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
Easy configuring and convivial selling.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-5.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
E-commerce & Website
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
Mobile friendly, awe-inspiring product pages.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-6.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
Hotel Management
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
An all-inclusive hotel management application.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-7.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
Education
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
A Collaborative platform for educational management.
</h3>
</div>
</a>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank">
<div style="width:30%; float:left;">
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;">
<img src="https://www.cybrosys.com/images/odoo-index-industry-8.png" alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/>
</div>
</div>
<div style="width:70%;float:left;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:600;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;">
Service Management
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;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;">
Keep track of services and invoice accordingly.
</h3>
</div>
</a>
</div>
</div>
</div>
</section>
<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-footer-bg.png); background-repeat:no-repeat; background-size:100%;padding: 13% 0% 6% 0%;">
<div class="oe_slogan" style="margin-top:10px !important;margin-bottom: 0px;">
<div>
<a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 14px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com"><i class="fa fa-envelope"></i> Email us </a>
<a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 14px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com/contact/"><i class="fa fa-phone"></i> Contact Us </a>
<a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 14px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com/odoo-customization-and-installation/"><i class="fa fa-check-square"></i> Request Customization </a>
</div>
<br>
<img src="https://www.cybrosys.com/images/logo.png" style="width: 190px; margin-bottom: 25px;margin-top: 30px;" class="center-block">
<div>
<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;padding-left: 3px;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://plus.google.com/106641282743045431892/about" target="_blank"><i class="fa fa-2x fa-google-plus" style="color:white;background: #c53c2c;width:35px;padding-left: 3px;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;padding-left: 3px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td>
</div>
</div>
</section>

111
employee_orientation/views/employee_orientation.xml

@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_employee_orientation_tree" model="ir.ui.view">
<field name="name">employee.orientation.tree</field>
<field name="model">employee.orientation</field>
<field name="arch" type="xml">
<tree string="Employee Orientation">
<field name="employee_name" />
<field name="department" />
<field name="responsible_user"/>
<field name="orientation_id"/>
<field name="state"/>
</tree>
</field>
</record>
<record id="view_employee_orientation_form" model="ir.ui.view">
<field name="name">employee.orientation.form</field>
<field name="model">employee.orientation</field>
<field name="arch" type="xml">
<form string="Employee Orientation">
<header>
<button name="confirm_orientation" string="Confirm" type="object" states="draft" class="btn-primary" />
<button name="complete_orientation" string="Mark Done" type="object" states="confirm" class="btn-primary"/>
<button name="cancel_orientation" string="Cancel" type="object" states="draft,confirm"/>
<field name="state" widget="statusbar" statusbar_visible="draft,confirm,complete"/>
</header>
<sheet>
<div class="oe_title">
<h1>
<field name="name" readonly="1"/>
</h1>
</div>
<group colspan="1" col="4" name="main">
<field name="employee_name" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="department" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="date" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="job_id" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="responsible_user" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="parent_id" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="employee_company" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
<field name="orientation_id" attrs="{'readonly':[('state','in',('confirm','complete'))]}"/>
</group>
<notebook colspan="4">
<page name="checklist_lines" string="Orientation Checklists Lines" attrs="{'invisible': [('state', '=', 'draft')]}">
<field name="orientation_request" attrs="{'readonly':[('state','=','complete')]}">
<tree string="lines" editable="bottom" create="true">
<field name="request_name"/>
<field name="partner_id"/>
<field name="request_expected_date"/>
<field name="state"/>
</tree>
<form>
<group colspan="1" col="4" name="main">
<field name="request_name" />
<field name="request_orientation"/>
<field name="employee_company" readonly="1"/>
<field name="partner_id"/>
<field name="request_date" readonly="1"/>
<field name="request_expected_date"/>
<field name="employee_id" invisible="1"/>
</group>
</form>
</field>
</page>
<page name="note_book"
string="Notes">
<field name="note_id" colspan="4" nolabel="1" />
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
<record id="view_employee_orientation_search" model="ir.ui.view">
<field name="name">employee.orientation.search</field>
<field name="model">employee.orientation</field>
<field name="arch" type="xml">
<search string="Employee Orientation">
<field name="employee_name"/>
<field name="department"/>
<newline />
<!-- <group expand="0" string="Group By...">-->
<!-- <filter string="department" domain="[]"-->
<!-- context="{'group_by':'department'}" />-->
<!-- </group>-->
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_employee_orientation">
<field name="name">Employee Orientation</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">employee.orientation</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_employee_orientation_search" />
<field name="domain">[]</field>
<field name="context">{}</field>
<field name="help" type="html">
<field class="oe_view_nocontent_create">
Create Employee Orientation.
</field>
</field>
</record>
<menuitem action="action_employee_orientation" id="menu_employee_orientation_child" name="Employee Orientation" parent="menu_employee_orientation" sequence="1" groups="hr.group_hr_manager,hr.group_hr_user"/>
</data>
</odoo>

105
employee_orientation/views/employee_training.xml

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_employee_training_tree" model="ir.ui.view">
<field name="name">employee.training.tree</field>
<field name="model">employee.training</field>
<field name="arch" type="xml">
<tree string="Employee Training Program">
<field name="program_name"/>
<field name="program_department"/>
<field name="program_convener" domain="[('department_id.name', '=', 'program_department.name')]"/>
<field name="state"/>
</tree>
</field>
</record>
<record id="view_employee_training_form" model="ir.ui.view">
<field name="name">employee.training.form</field>
<field name="model">employee.training</field>
<field name="arch" type="xml">
<form string="Employee Training Program">
<header>
<button name="confirm_send_mail" string="Send by Email" type="object" class="oe_highlight" states="confirm"/>
<button name="confirm_event" string="Confirm Event" type="object" states="new" class="btn-primary" />
<button name="complete_event" string="Event Complete" type="object" states="confirm" class="btn-primary"/>
<button name="cancel_event" string="Cancel Event" type="object" states="confirm"/>
<button name="print_event" string="Print Certificates" type="object" class="oe_highlight" attrs="{'invisible': [('state', 'not in', 'complete')]}"/>
<field name="state" widget="statusbar" statusbar_visible="new,confirm,complete"/>
</header>
<sheet>
<group colspan="1" col="4" name="main">
<field name="program_name" />
<field name="program_department"/>
<label for="date_from" string="Time Period"/>
<div><field name="date_from" class="oe_inline"/> to <field name="date_to" class="oe_inline"/></div>
<field name="program_convener"/>
</group>
<notebook colspan="4">
<page name="checklist_lines" string="Employee Details">
<field name="training_id">
<tree editable="true">
<field name="name"/>
<field name="job_id"/>
<field name="parent_id"/>
<field name="certificates" />
</tree>
<!-- <field name="product_updatable" invisible="1"/>-->
</field>
</page>
<page name="note_book"
string="Notes">
<field name="note_id" colspan="4" nolabel="1" />
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
<record id="view_employee_training_search" model="ir.ui.view">
<field name="name">employee.training.search</field>
<field name="model">employee.training</field>
<field name="arch" type="xml">
<search string="Employee Training Program">
<field name="program_name"/>
<newline/>
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_employee_training">
<field name="name">Employee Training Program</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">employee.training</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_employee_training_search" />
<field name="domain">[]</field>
<field name="context">{}</field>
<field name="help" type="html">
<field class="oe_view_nocontent_create">
Create Employee Training Program.
</field>
</field>
</record>
<menuitem
id="menu_employee_training_child"
name="Training Program"
parent="hr.menu_hr_root"
action="action_employee_training"
sequence="91"
/>
<record id="hr_employee_view_for" model="ir.ui.view">
<field name="name">hr.employee.inherit.form</field>
<field name="model">hr.employee</field>
<field name="inherit_id" ref="hr.view_employee_form" />
<field name="priority">30</field>
<field name="arch" type="xml">
<xpath expr="//field[@name='parent_id']" position="after">
<field name="certificates" editable="true" />
</xpath>
</field>
</record>
</data>
</odoo>

85
employee_orientation/views/orientation_checklist.xml

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_orientation_checklist_tree" model="ir.ui.view">
<field name="name">orientation.checklist.tree</field>
<field name="model">orientation.checklist</field>
<field name="priority" eval="8" />
<field name="arch" type="xml">
<tree string="Orientation Checklists">
<field name="checklist_name" />
<field name="checklist_department" />
</tree>
</field>
</record>
<record id="view_orientation_checklist_form" model="ir.ui.view">
<field name="name">orientation.checklist.form</field>
<field name="model">orientation.checklist</field>
<field name="priority" eval="8" />
<field name="arch" type="xml">
<form string="Orientation Checklists">
<sheet>
<group colspan="1" col="4" name="main">
<field name="checklist_name" />
<field name="checklist_department"/>
<field name="active"/>
</group>
<notebook colspan="4">
<page name="checklist_line" string="Checklist Lines">
<field name="checklist_line_id" string="Checklist Line">
<tree string="Checklist Lines" editable="bottom">
<field name="line_name"/>
<field name="responsible_user"/>
</tree>
</field>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
<record id="view_orientation_checklist_search" model="ir.ui.view">
<field name="name">orientation.checklist.search</field>
<field name="model">orientation.checklist</field>
<field name="priority" eval="8" />
<field name="arch" type="xml">
<search string="Orientation Checklists">
<field name="checklist_name"/>
<field name="checklist_department"/>
<newline />
<!-- <group expand="0" string="Group By">-->
<!-- <filter string="department" domain="[]"-->
<!-- context="{'group_by':'checklist_department'}" />-->
<!-- </group>-->
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_orientation_checklist">
<field name="name">Orientation Checklist</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">orientation.checklist</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_orientation_checklist_search" />
<field name="domain">[]</field>
<field name="context">{'search_default_active': True}</field>
<field name="help" type="html">
<field class="oe_view_nocontent_create">
Create Orientation Checklists.
</field>
</field>
</record>
<menuitem action="action_orientation_checklist"
id="menu_orientation_checklist_config"
name="Orientation Checklist"
parent="menu_employee_orientation_config"
sequence="10"
groups="hr.group_hr_manager"
/>
</data>
</odoo>

84
employee_orientation/views/orientation_checklist_line.xml

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_checklist_line_tree" model="ir.ui.view">
<field name="name">checklist.line.tree</field>
<field name="model">checklist.line</field>
<field name="priority" eval="8" />
<field name="arch" type="xml">
<tree string="Orientation Checklists Lines">
<field name="line_name" />
<field name="responsible_user" />
</tree>
</field>
</record>
<record id="view_checklist_line_form" model="ir.ui.view">
<field name="name">checklist.line.form</field>
<field name="model">checklist.line</field>
<field name="priority" eval="8" />
<field name="arch" type="xml">
<form string="Orientation Checklists Lines">
<sheet>
<group colspan="1" col="4" name="main">
<field name="line_name" />
<field name="responsible_user"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="checklist_line_search" model="ir.ui.view">
<field name="name">checklist.line.search</field>
<field name="model">checklist.line</field>
<field name="priority" eval="8" />
<field name="arch" type="xml">
<search string="Orientation Checklists Lines">
<field name="line_name" />
<field name="responsible_user" />
<newline />
<!-- <group expand="0" string="Group By...">-->
<!-- <filter string="ResponsibleUser" domain="[]"-->
<!-- context="{'group_by':'responsible_user'}" />-->
<!-- </group>-->
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_checklist_line">
<field name="name">Orientation Checklist Line</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">checklist.line</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="checklist_line_search" />
<field name="domain">[]</field>
<field name="context">{}</field>
<field name="help" type="html">
<field class="oe_view_nocontent_create">
Create Orientation Checklists Lines.
</field>
</field>
</record>
<menuitem
id="menu_employee_orientation"
name="Orientations"
parent="hr.menu_hr_root"
sequence="90"
/>
<!-- Configuration Menu -->
<menuitem id="menu_employee_orientation_config"
name="Orientation Program"
parent="hr.menu_human_resources_configuration"
sequence="10"
groups="hr.group_hr_manager"
/>
<menuitem action="action_checklist_line"
id="menu_employee_orientation_config_line"
name="Orientation Checklist Line"
parent="menu_employee_orientation_config"
sequence="20"
groups="hr.group_hr_manager"
/>
</data>
</odoo>

14
employee_orientation/views/orientation_checklist_sequence.xml

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<!-- Sequences for employee.orientation -->
<record id="seq_orientation_checklist" model="ir.sequence">
<field name="name">Employee Orientation</field>
<field name="code">employee.orientation</field>
<field name="prefix">OR</field>
<field name="padding">3</field>
<field name="company_id" eval="False"/>
</record>
</data>
</odoo>

83
employee_orientation/views/orientation_checklists_request.xml

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="UTF-8"?>
<openerp>
<data>
<record id="view_orientation_request_tree" model="ir.ui.view">
<field name="name">orientation.request.tree</field>
<field name="model">orientation.request</field>
<field name="arch" type="xml">
<tree string="Employee Orientation" create="0">
<field name="request_name" />
<field name="request_orientation" />
<field name="partner_id" />
<field name="state"/>
</tree>
</field>
</record>
<record id="view_orientation_request_form" model="ir.ui.view">
<field name="name">orientation.request.form</field>
<field name="model">orientation.request</field>
<field name="arch" type="xml">
<form string="Employee Orientation" create="0">
<header>
<button name="confirm_send_mail" string="Send by Email" type="object" class="oe_highlight" attrs="{'invisible': [('state', 'in', 'complete')]}"/>
<button name="confirm_request" string="Complete" type="object" states="new" class="btn-primary"/>
<button name="cancel_request" string="Cancel" type="object" states="new"/>
<field name="state" widget="statusbar" statusbar_visible="new,complete"/>
</header>
<sheet>
<group colspan="1" col="4" name="main">
<field name="request_name" readonly="1"/>
<field name="request_orientation" readonly="1"/>
<field name="employee_id" readonly="1"/>
<field name="partner_id" readonly="1"/>
<field name="request_date" readonly="1"/>
<field name="request_expected_date" attrs="{'readonly':[('state','=','complete')]}"/>
<field name="employee_company" readonly="1"/>
</group>
<notebook>
<page name="orientation_line_attachments" string="Documents">
<field name="attachment_id_1" widget="many2many_binary" attrs="{'readonly':[('state','=','complete')]}" />
</page>
<page name="note_book" string="Notes">
<field name="note_id" nolabel="1"/>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
<record id="view_orientation_request_search" model="ir.ui.view">
<field name="name">orientation.request.search</field>
<field name="model">orientation.request</field>
<field name="arch" type="xml">
<search string="Employee Orientation">
<field name="request_name"/>
<newline />
<!-- <group expand="0" string="Group By...">-->
<!-- <filter string="Request" domain="[]"-->
<!-- context="{'group_by':'request_name'}" />-->
<!-- </group>-->
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_orientation_request">
<field name="name">Orientation Request</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">orientation.request</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_orientation_request_search" />
<field name="domain">[]</field>
<field name="context">{}</field>
<field name="help" type="html">
<field class="oe_view_nocontent_create">
Create Orientation Requests.
</field>
</field>
</record>
<menuitem action="action_orientation_request" id="menu_orientation_request" name="Orientation Request" parent="menu_employee_orientation" sequence="2"/>
</data>
</openerp>

90
employee_orientation/views/orientation_request_mail_template.xml

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<record id="orientation_request_mailer" model="mail.template">
<field name="name">Employee Orientation Request</field>
<field name="email_from">${(object.user_id.email or object.company_id.email)|safe}</field>
<field name="email_to">${(object.partner_id.email)}</field>
<field name="subject">Employee Orientation Request</field>
<field name="model_id" ref="employee_orientation.model_orientation_request" />
<field name="auto_delete" eval="True" />
<field name="body_html"><![CDATA[
<div style="font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; ">
<p>Hello ${object.partner_id.name},</p>
<p>You are requested to conduct orientation program listed below.</p>
<p>Check Line: ${object.request_name}</p>
<p>Employee: ${object.employee_id.name}</p>
%if object.request_expected_date:
<p>Expected Date: ${object.request_expected_date}</p>
% endif
<br/>
<p>Thank you!</p>
<br/>
<div style="width: 375px; margin: 0px; padding: 0px; background-color: #8E0000; border-top-left-radius: 5px 5px; border-top-right-radius: 5px 5px; background-repeat: repeat no-repeat;">
<h3 style="margin: 0px; padding: 2px 14px; font-size: 12px; color: #DDD;">
<strong style="text-transform:uppercase;">${object.company_id.name}</strong></h3>
</div>
<div style="width: 347px; margin: 0px; padding: 5px 14px; line-height: 16px; background-color: #F2F2F2;">
<span style="color: #222; margin-bottom: 5px; display: block; ">
${object.company_id.partner_id.sudo().with_context(show_address=True, html_format=True).name_get()[0][1] | safe}
</span>
% if object.company_id.phone:
<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">
Phone:&nbsp; ${object.company_id.phone}
</div>
% endif
% if object.company_id.website:
<div>
Web :&nbsp;<a href="${object.company_id.website}">${object.company_id.website}</a>
</div>
%endif
<p></p>
</div>
</div>
]]>
</field>
</record>
<record id="orientation_training_mailer" model="mail.template">
<field name="name">Employee Training program</field>
<field name="email_from">${(object.user_id.email or object.company_id.email)}</field>
<field name="email_to">${(object.program_convener.email)|safe}</field>
<field name="subject">Employee Training Request</field>
<field name="model_id" ref="employee_orientation.model_employee_training" />
<field name="auto_delete" eval="True" />
<field name="body_html"><![CDATA[
<div style="font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; ">
<p>Hello ${object.program_convener.name},</p>
<p>You are requested to conduct ${object.program_name} Training program for ${object.program_department.name} department
% if object.from_date and object.to_date:
from ${object.from_date} to ${object.to_date}
% endif
.</p>
<br/>
<p>Thank you!</p>
<br/>
<div style="width: 375px; margin: 0px; padding: 0px; background-color: #8E0000; border-top-left-radius: 5px 5px; border-top-right-radius: 5px 5px; background-repeat: repeat no-repeat;">
<h3 style="margin: 0px; padding: 2px 14px; font-size: 12px; color: #DDD;">
<strong style="text-transform:uppercase;">${object.company_id.name}</strong></h3>
</div>
<div style="width: 347px; margin: 0px; padding: 5px 14px; line-height: 16px; background-color: #F2F2F2;">
<span style="color: #222; margin-bottom: 5px; display: block; ">
${object.company_id.partner_id.sudo().with_context(show_address=True, html_format=True).name_get()[0][1] | safe}
</span>
% if object.company_id.phone:
<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">
Phone:&nbsp; ${object.company_id.phone}
</div>
% endif
% if object.company_id.website:
<div>
Web :&nbsp;<a href="${object.company_id.website}">${object.company_id.website}</a>
</div>
%endif
<p></p>
</div>
</div>
]]>
</field>
</record>
</data>
</openerp>

25
employee_orientation/views/print_pack_certificates_template.xml

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="print_pack_template">
<t t-call="web.html_container">
<t t-call="web.external_layout">
<div class="page">
<t t-foreach="data" t-as="o">
<h2 align="center" style="margin-top:200px; padding-top:50px;">Certificate of Participation</h2>
<table align="center" style="page-break-after:always !important;">
<tr>
<td>
<br/><br/>
<p>This certificate is awarded to <span><strong><t t-esc="o['name']"/></strong></span>
for certifying his/her participation in the training program " <strong> <t t-esc="o['program_name']"/></strong> "
conducted by <strong> <t t-esc="o['program_convener']"/></strong> from <strong> <t t-esc="o['date_to']"/></strong> ,with duration of <strong> <t t-esc="o['duration']"/></strong>days,
<strong> <t t-esc="o['hours']"/></strong>Hours,<strong> <t t-esc="o['minutes']"/></strong>Minutes,
at <strong> <t t-esc="o['company_name']"/></strong>.</p></td>
</tr>
</table>
</t>
</div>
</t>
</t>
</template>
</odoo>

12
employee_orientation/views/report.xml

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="print_pack_certificates" model="ir.actions.report">
<field name="name">Certificates</field>
<field name="model">employee.training</field>
<field name="report_type">qweb-pdf</field>
<field name="report_name">employee_orientation.print_pack_template</field>
<field name="report_file">employee_orientation.print_pack_template</field>
</record>
</data>
</odoo>

23
employee_orientation/wizard/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import orientation_complete

49
employee_orientation/wizard/orientation_complete.py

@ -0,0 +1,49 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Anusha @cybrosys(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# 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 (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from odoo import api, fields, models, _
class OrientationForceComplete(models.TransientModel):
_name = 'orientation.force.complete'
name = fields.Char()
orientation_id = fields.Many2one('employee.orientation', string='Orientation')
orientation_lines = fields.One2many('orientation.request', string='Orientation Lines', compute='pending_lines')
@api.onchange('orientation_id')
def pending_lines(self):
pending = []
for data in self.orientation_id.orientation_request:
if data.state == 'new':
pending.append(data.id)
self.update({'orientation_lines': pending})
def force_complete(self):
for line in self.orientation_lines:
if line.state != 'cancel':
line.state = 'complete'
self.orientation_id.write({'state': 'complete'})

23
employee_orientation/wizard/orientation_complete.xml

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_orientation_force_complete_form" model="ir.ui.view">
<field name="name">orientation.force.complete.form</field>
<field name="model">orientation.force.complete</field>
<field name="arch" type="xml">
<form string="Complete Orientation">
<p class="oe_gray">
Please make sure that orientations programs are already done.
</p>
<field name="orientation_id" invisible="1"/>
<label for="orientation_lines" string="Pending Lines"/>
<field name="orientation_lines" readonly="1"/>
<footer>
<button name="force_complete" string="Force Complete" type="object" class="btn-primary"/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
</data>
</odoo>

44
timesheets_by_employee/README.rst

@ -0,0 +1,44 @@
.. image:: https://img.shields.io/badge/licence-AGPL--1-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
Timesheets by Employees v14
===========================
This module allows to print the timesheets of selected employee.
Configuration
=============
* No additional configurations needed
Company
-------
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__
Credits
-------
* Developer: Kavya Raveendran @ cybrosys, Contact: odoo@cybrosys.com
* Version 14: Muhammed P @cybrosys,Contact: odoo@cybrosys.com
Contacts
--------
* Mail Contact : odoo@cybrosys.com
* Website : https://cybrosys.com
Bug Tracker
-----------
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Maintainer
==========
.. image:: https://cybrosys.com/images/logo.png
:target: https://cybrosys.com
This module is maintained by Cybrosys Technologies.
For support and more information, please visit `Our Website <https://cybrosys.com/>`__
Further information
===================
HTML Description: `<static/description/index.html>`__

23
timesheets_by_employee/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Kavya Raveendran (odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import report
from . import wizard

44
timesheets_by_employee/__manifest__.py

@ -0,0 +1,44 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2020-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': 'Timesheet PDF Report',
'version': '14.0.1.0.0',
"category": "Generic Modules/Human Resources",
'sequence': 25,
'summary': 'Timesheet PDF Report of Employees',
'description': 'Timesheet PDF Report of Employees',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'website': 'https://www.cybrosys.com',
'depends': ['hr_timesheet'],
'data': [
'security/ir.model.access.csv',
'report/report_timesheets.xml',
'report/timesheet_pdf.xml',
'wizard/timesheet_wizard.xml',
],
'images': ['static/description/banner.png'],
'license': 'LGPL-3',
'installable': True,
'auto_install': False,
'application': False,
}

6
timesheets_by_employee/doc/RELEASE_NOTES.md

@ -0,0 +1,6 @@
## Module <timesheet_by_employee>
#### 09.10.2020
#### Version 14.0.1.0.0
##### ADD
Initial commit for timesheet_by_employee

22
timesheets_by_employee/report/__init__.py

@ -0,0 +1,22 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Kavya Raveendran (odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import report_timesheets

95
timesheets_by_employee/report/report_timesheets.py

@ -0,0 +1,95 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Kavya Raveendran (odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from odoo import models, fields, api
class ReportTimesheet(models.AbstractModel):
_name = 'report.timesheets_by_employee.report_timesheets'
def get_timesheets(self, docs):
"""input : name of employee and the starting date and ending date
output: timesheets by that particular employee within that period and the total duration"""
if docs.from_date and docs.to_date:
rec = self.env['account.analytic.line'].search([('user_id', '=', docs.employee[0].id),
('date', '>=', docs.from_date),
('date', '<=', docs.to_date)])
elif docs.from_date:
rec = self.env['account.analytic.line'].search([('user_id', '=', docs.employee[0].id),
('date', '>=', docs.from_date)])
elif docs.to_date:
rec = self.env['account.analytic.line'].search([('user_id', '=', docs.employee[0].id),
('date', '<=', docs.to_date)])
else:
rec = self.env['account.analytic.line'].search([('user_id', '=', docs.employee[0].id)])
records = []
total = 0
for r in rec:
vals = {'project': r.project_id.name,
'user': r.user_id.partner_id.name,
'duration': r.unit_amount,
'date': r.date,
}
total += r.unit_amount
records.append(vals)
return [records, total]
@api.model
def _get_report_values(self, docids, data=None):
"""we are overwriting this function because we need to show values from other models in the report
we pass the objects in the docargs dictionary"""
docs = self.env['timesheet.wizard'].browse(self.env.context.get('active_id'))
identification = []
for i in self.env['hr.employee'].search([('user_id', '=', docs.employee[0].id)]):
if i:
identification.append({'id': i.id, 'name': i.name})
timesheets = self.get_timesheets(docs)
company_name = self.env['res.company'].search([('name', '=', docs.employee[0].company_id.name)])
period = None
if docs.from_date and docs.to_date:
period = "From " + str(docs.from_date) + " To " + str(docs.to_date)
elif docs.from_date:
period = "From " + str(docs.from_date)
elif docs.from_date:
period = " To " + str(docs.to_date)
if len(identification) > 1:
return {
'doc_ids': self.ids,
# 'doc_model': self.model,
'docs': docs,
'timesheets': timesheets[0],
'total': timesheets[1],
'company': company_name,
'identification': identification,
'period': period,
}
else:
return {
'doc_ids': self.ids,
# 'doc_model': self.model,
'docs': docs,
'timesheets': timesheets[0],
'total': timesheets[1],
'identification': identification,
'company': company_name,
'period': period,
}

42
timesheets_by_employee/report/report_timesheets.xml

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="report_timesheets">
<t t-call="web.html_container">
<t t-call="web.external_layout">
<t t-foreach="docs" t-as="o">
<div class="page">
<div style="padding-bottom:50px !important;" class="oe_structure"/>
<h2 align="center">TimeSheet Report by Employees</h2>
<table class="table table-condensed"><tbody>
<tr t-if="identification">
<th>Employee Name</th>
<td colspan="2"><span t-esc="identification[0]['name']"/></td>
<th/><td/>
<th>Company Name</th> <td><span t-esc="company.name"/></td>
</tr>
<tr t-if="identification">
<th>Timesheet Period</th><td colspan="2"><span t-esc="period"/></td>
<th/> <td/>
<th>Total Working Hours</th><td><span t-esc="total"/></td>
</tr></tbody>
</table>
<table class="table table-condensed">
<tbody>
<tr>
<th>Date</th>
<th>Project</th>
<th >Worked Time</th>
</tr>
<tr t-foreach="timesheets" t-as="t">
<td><span t-esc="t['date']"/></td>
<td ><span t-esc="t['project']"/></td>
<td ><span t-esc="t['duration']"/></td>
</tr>
</tbody>
</table>
</div>
</t>
</t>
</t>
</template>
</odoo>

12
timesheets_by_employee/report/timesheet_pdf.xml

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="action_report_print_timesheets" model="ir.actions.report">
<field name="name">Timesheets</field>
<field name="model">timesheet.wizard</field>
<field name="report_type">qweb-pdf</field>
<field name="report_name">timesheets_by_employee.report_timesheets</field>
<field name="report_file">timesheets_by_employee.report_timesheets</field>
</record>
</data>
</odoo>

2
timesheets_by_employee/security/ir.model.access.csv

@ -0,0 +1,2 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_timesheet_wizard,timesheet.wizard,model_timesheet_wizard,,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_timesheet_wizard timesheet.wizard model_timesheet_wizard 1 1 1 1

BIN
timesheets_by_employee/static/description/banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

BIN
timesheets_by_employee/static/description/cybro_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
timesheets_by_employee/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
timesheets_by_employee/static/description/icosadan.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

346
timesheets_by_employee/static/description/index.html

@ -0,0 +1,346 @@
<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-header-banner.png);background-repeat:no-repeat;background-size:100%;padding: 4% 0% 2% 15%;background-position-y: -107px;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="font-size: 35px;color: #fff;font-weight: 900;text-transform: uppercase;text-align: left;margin: 0;margin-bottom: 16px;">
Timesheet PDF Report of Employee
</h2>
<h3 class="oe_slogan" style="font-size: 25px;color: #fff;font-weight: 600;text-align: left;opacity: 1;margin: 0 !important;">
Print timesheets of selected employees
</h3>
<h5 class="oe_slogan" style="text-align: left;background: #fff;width: 293px;padding: 10px;color: #080808 !important;opacity: 1 !important;font-weight: 600;font-size: 20px;">
<a style="color: #080808 !important;" href="https://www.cybrosys.com" target="_blank">Cybrosys Technologies</a>
</h5>
<a style="color: #080808 !important;" href="https://www.cybrosys.com" target="_blank">
<div style="width: 215px;margin-left: 57%;text-align: center;background: #ffffff;height: 215px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-shadow: 0 0 12px 4px #00000059;">
<img src="https://www.cybrosys.com/images/cybro-logo-oca.png" alt="cybrosys technologies" style="width: 180px;"/> </div>
</a>
</div>
</section>
<section class="oe_container" style="padding: 1% 0% 3% 15%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Overview
</h2>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
This module crafted by Cybrosys Technologies, allows the end user to print the timesheets of selected employee. The module will further group all timesheet lines of selected employee in wizard based on its period.
</h3>
<h3 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;padding: 2% 0% 0% 0%;">
Configuration
</h3>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
No additional configuration required.
</h3>
</div>
</section>
<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-banner1.png); background-repeat:no-repeat; background-size:cover;padding: 5% 0% 10% 15%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Features
</h2>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Print the timesheets of selected employees.
</h3>
<h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Perform period wise grouping of timesheet lines.
</h3>
</div>
</section>
<section class="oe_container">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Screenshots
</h2>
<h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Timesheets -> Reporting -> Print Timesheets
</h3>
<div class="oe_row oe_spaced">
<img src="timesheet-by-employee-cybrosys-1.png" alt="" style="width: 95%;"/>
</div>
<h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
Generate Timesheet Report Wizard with Dates.
</h3>
<div class="oe_row oe_spaced">
<img src="timesheet-by-employee-cybrosys-2.png" alt="" style="width: 95%;"/>
</div>
<h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;">
<img src="https://www.cybrosys.com/images/ico-tick.png">
PDF Report of Employee Timesheet.
</h3>
<div class="oe_row oe_spaced">
<img src="timesheet-by-employee-cybrosys-3.png" alt="" style="width: 95%;"/>
</div>
</div>
</section>
<section class="oe_container" style="padding: 7px 0% 0% 3%;">
<div class="oe_row oe_spaced">
<a style="color: #080808 !important;" href="https://apps.odoo.com/apps/modules/browse?search=cybrosys" target="_blank"><img src="https://www.cybrosys.com/images/view-more-apps.jpg" alt="cybrosys technologies" style="width: 100%;margin-bottom: 50px;"/></a>
</div>
</section>
<section class="oe_container" style="padding: 1% 0% 0% 3%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Our Services
</h2>
<div style="display:flex;padding-top: 20px;justify-content: space-between;">
<div style="flex-basis: 18%;">
<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: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank">
Odoo Customization
</a>
</h3>
</div>
<div style="flex-basis: 18%;">
<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: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank">
Odoo Implementation </a>
</h3>
</div>
<div style="flex-basis: 18%;">
<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: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank">
Odoo Integration
</a>
</h3>
</div>
<div style="flex-basis: 18%;">
<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: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/odoo-erp-support/" target="_blank">
Odoo Support</a>
</h3>
</div>
<div style="flex-basis: 18%;">
<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: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;">
<a href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank">
Hire Odoo Developers</a>
</h3>
</a>
</div>
</div>
</div>
</section>
<section class="oe_container" style="padding: 1% 0% 0% 3%;">
<div class="oe_row oe_spaced">
<h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;">
Our Industries
</h2>
<div style="display:flex;justify-content: space-between;flex-wrap:wrap;">
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
Trading
</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
Easily procure and sell your products.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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;">
<h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000000 !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">
Manufacturing</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
Plan, track and schedule your operations.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
Restaurant</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
Run your bar or restaurant methodical.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
POS</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
Easy configuring and convivial selling.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
E-commerce & Website</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
Mobile friendly, awe-inspiring product pages.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
Hotel Management</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
An all-inclusive hotel management application.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
Education</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
A Collaborative platform for educational management.
</h3>
</div>
</div>
<div style="flex-basis: 32%;padding-top: 20px;">
<div style="width:30%; float:left;">
<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: #000000 !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">
Service Management</a>
</h3>
<h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;">
Keep track of services and invoice accordingly.
</h3>
</div>
</div>
</div>
</div>
</section>
<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-footer-bg.png); background-repeat:no-repeat; background-size:100%;padding: 13% 0% 6% 0%;">
<div class="oe_slogan" style="margin-top:10px !important;margin-bottom: 0px;">
<div>
<a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 12px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="mailto:odoo@cybrosys.com"><i class="fa fa-envelope"></i> Email us </a>
<a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 12px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com/contact/"><i class="fa fa-phone"></i> Contact Us </a>
<a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 12px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com/contact/"><i class="fa fa-check-square"></i> Request Customization </a>
</div>
<br>
<img src="https://www.cybrosys.com/images/logo.png" style="width: 190px; margin-bottom: 25px;margin-top: 30px;" class="center-block">
<div>
<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;padding-left: 3px;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://plus.google.com/106641282743045431892/about" target="_blank"><i class="fa fa-2x fa-google-plus" style="color:white;background: #c53c2c;width:35px;padding-left: 3px;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;padding-left: 3px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td>
</div>
</div>
</section>

BIN
timesheets_by_employee/static/description/timesheet-by-employee-cybrosys-1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

BIN
timesheets_by_employee/static/description/timesheet-by-employee-cybrosys-2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

BIN
timesheets_by_employee/static/description/timesheet-by-employee-cybrosys-3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 KiB

23
timesheets_by_employee/wizard/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Kavya Raveendran (odoo@cybrosys.com)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from . import timesheet_employee

41
timesheets_by_employee/wizard/timesheet_employee.py

@ -0,0 +1,41 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2019-TODAY Cybrosys Technologies(<https://www.cybrosys.com>).
# Author: Kavya Raveendran (odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from odoo import models, fields
class EmployeeTimesheet(models.TransientModel):
_name = 'timesheet.wizard'
employee = fields.Many2one('res.users', string="Employee", required=True)
from_date = fields.Date(string="Starting Date")
to_date = fields.Date(string="Ending Date")
def print_timesheet(self):
"""Redirects to the report with the values obtained from the wizard
'data['form']': name of employee and the date duration"""
data = {
'start_date': self.from_date,
'end_date': self.to_date,
'employee': self.employee.id
}
return self.env.ref('timesheets_by_employee.action_report_print_timesheets').report_action(self, data=data)

39
timesheets_by_employee/wizard/timesheet_wizard.xml

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="timesheets_report_view" model="ir.ui.view">
<field name="name">timesheet.wizard</field>
<field name="model">timesheet.wizard</field>
<field name="arch" type="xml">
<form>
<group>
<group string="Select Employee">
<field name="employee"/>
</group>
<group string="Select Date">
<field name="from_date"/>
<field name="to_date"/>
</group>
<footer>
<button string="Print Timesheet" name="print_timesheet" type="object" class="btn-primary"/>
<button string="Discard" class="btn-default" special="cancel"/>
</footer>
</group>
</form>
</field>
</record>
<record id="action_print_timesheet_wizard" model="ir.actions.act_window">
<field name="name">timesheet.wizard</field>
<field name="res_model">timesheet.wizard</field>
<field name="type">ir.actions.act_window</field>
<field name="view_mode">form</field>
<field name="view_id" ref="timesheets_report_view"/>
<field name="target">new</field>
</record>
<menuitem name="Print Timesheets" id="print_timesheets" action="action_print_timesheet_wizard" parent="hr_timesheet.menu_timesheets_reports"/>
</data>
</odoo>
Loading…
Cancel
Save