diff --git a/employee_orientation/README.rst b/employee_orientation/README.rst index 5e50bd9bf..30415104e 100644 --- a/employee_orientation/README.rst +++ b/employee_orientation/README.rst @@ -1,7 +1,7 @@ Employee Orientation v9 ======================= -This module developed to manage employee orientation/training programs. +This module developed to manage employee orientation&training programs. Installation ============ @@ -9,13 +9,13 @@ Just select it from modules list to install, there is no need to extra installat Usage ===== -#.In Employee orientation form, when a Orientation Checklist selects the corresponding departments checklist lines fill automatically. -#.The system automatically create employee orientation request when employee orientation is confirmed. -#.Now when responsible person login in system, he/she will find job allocated as Orientation Checklists Requests and finish it. + +# The system automatically create employee orientation request when employee orientation is confirmed. +# Now when responsible person login in system, he/she will find job allocated as Orientation Checklists Requests and finish it. Credits ======= -Developer: Anusha @ cybrosys +Developer: Anusha @ cybrosys, anusha@cybrosys.in Guidance: Nilmar Shereef @ cybrosys, shereef@cybrosys.in diff --git a/employee_orientation/__init__.py b/employee_orientation/__init__.py index 6ff374a2e..a8dc6be8e 100644 --- a/employee_orientation/__init__.py +++ b/employee_orientation/__init__.py @@ -1,23 +1,20 @@ # -*- coding: utf-8 -*- -############################################################################## -# +################################################################################### # Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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. +# Copyright (C) 2018-TODAY Cybrosys Technologies ().# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# GNU Affero General Public License 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 . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # -############################################################################## +################################################################################### from . import models +from . import wizard diff --git a/employee_orientation/__openerp__.py b/employee_orientation/__openerp__.py index ab90a5f69..3ace21312 100644 --- a/employee_orientation/__openerp__.py +++ b/employee_orientation/__openerp__.py @@ -1,36 +1,33 @@ # -*- coding: utf-8 -*- -############################################################################## -# +################################################################################### # Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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. +# Copyright (C) 2018-TODAY Cybrosys Technologies ().# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# GNU Affero General Public License 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 . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # -############################################################################## +################################################################################### { 'name': "Employee Orientation & Training", - 'version': '9.0.1.0.0', + 'version': '9.0.2.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': "http://www.cybrosys.com", - 'depends': ['base', 'hr', 'mail', ], + 'website': "https://www.cybrosys.com", + 'depends': ['base', 'hr'], 'data': [ + 'wizard/orientation_complete.xml', 'views/orientation_checklist_line.xml', 'views/orientation_checklist.xml', 'views/employee_orientation.xml', @@ -41,8 +38,8 @@ 'security/ir.model.access.csv', ], 'images': ['static/description/banner.jpg'], - 'license': 'LGPL-3', + 'license': 'AGPL-3', 'installable': True, 'auto_install': False, - 'application': True, + 'application': False, } diff --git a/employee_orientation/doc/changelog.rst b/employee_orientation/doc/changelog.rst new file mode 100644 index 000000000..b100a3deb --- /dev/null +++ b/employee_orientation/doc/changelog.rst @@ -0,0 +1,25 @@ +Changelog +========= +* Nilmar Shereef contact: shereef@cybrosys.in + +`9.0.2.0.0` +----------- + +- Changed Menus: Removed extra main menu Orientation & Moved the Orientation and Employee Training menus under Employee menu. +- Removed the model 'orientation.check'. +- Changes in function 'confirm_request' in Employee Orientation Request. +- Changes in function 'complete_event' in Employee Training. +- Extra state : Cancel state for Orientation. +- Extra function 'cancel_orientation' in Orientation. +- Field Modifications : Domain for fields in Orientation. +- Removed the field 'orientation_line_id' from Orientation. +- Extra field 'orientation_request' in Orientation. +- Removed function 'get_value' and added related for field. +- Extra wizard for orientation force completion added. +- Extra state : Cancel state for Employee Orientation Request. +- Extra function 'cancel_orientation' in Employee Orientation Request. +- Change model and type for the field checklist_line_id Orientation Checklist. +- Extra fields 'date_from' and 'date_to' in Employee Training. +- Some changes in mail templates. +- Security changed. +- Dependency Added. diff --git a/employee_orientation/models/__init__.py b/employee_orientation/models/__init__.py index 0cf2fe9d4..113fd6a00 100644 --- a/employee_orientation/models/__init__.py +++ b/employee_orientation/models/__init__.py @@ -1,25 +1,21 @@ # -*- coding: utf-8 -*- -############################################################################## -# +################################################################################### # Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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. +# Copyright (C) 2018-TODAY Cybrosys Technologies ().# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# GNU Affero General Public License 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 . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # -############################################################################## +################################################################################### from . import orientation_checklist_line from . import orientation_checklist from . import employee_orientation diff --git a/employee_orientation/models/employee_orientation.py b/employee_orientation/models/employee_orientation.py index fa9a9186d..b7e8c332a 100644 --- a/employee_orientation/models/employee_orientation.py +++ b/employee_orientation/models/employee_orientation.py @@ -1,25 +1,4 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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 . -# -############################################################################## from openerp import api, fields, models, _ @@ -30,40 +9,59 @@ class Orientation(models.Model): 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', required=True) + department = fields.Many2one('hr.department', string='Department', related='employee_name.department_id', required=True) date = fields.Date(string="Date", default=fields.Datetime.now) 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') - job_id = fields.Many2one('hr.job', string='Job Title') - orientation_id = fields.Many2one('orientation.checklist', string='Orientation Checklist', required=True) + 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_line_id = fields.Many2many('orientation.check', string='Orientation Line') - + 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') @api.multi def confirm_orientation(self): self.write({'state': 'confirm'}) - data = self.env['orientation.check'].search([('relative_field.employee_name.name', '=', self.employee_name.name)]) - for values in self.orientation_line_id: + for values in self.orientation_id.checklist_line_id: self.env['orientation.request'].create({ - 'request_name': values.checklist_line_name.line_name, + 'request_name': values.line_name, 'request_orientation': self.id, - 'partner_id': values.checklist_line_user.id, + 'partner_id': values.responsible_user.id, 'request_date': self.date, - 'request_expected_date': values.expected_date, 'employee_id': self.employee_name.id, - }) + @api.multi + def cancel_orientation(self): + for request in self.orientation_request: + request.state = 'cancel' + self.write({'state': 'cancel'}) + @api.multi 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 @@ -72,19 +70,3 @@ class Orientation(models.Model): vals['name'] = self.env['ir.sequence'].next_by_code('employee.orientation') or 'New' result = super(Orientation, self).create(vals) return result - - @api.onchange('orientation_id') - def orientation_details(self): - data = self.env['orientation.check'].search([('checklist.checklist_name', '=', self.orientation_id.checklist_name), - ('checklist.checklist_department.name', '=', self.department.name)]) - self.orientation_line_id = [(6, 0, [x.id for x in data])] - - @api.onchange('employee_name') - def get_value(self): - self.department = self.employee_name.department_id - self.parent_id = self.employee_name.parent_id - self.job_id = self.employee_name.job_id - - - - diff --git a/employee_orientation/models/employee_training.py b/employee_orientation/models/employee_training.py index a2f2a2d70..677cc8f4f 100644 --- a/employee_orientation/models/employee_training.py +++ b/employee_orientation/models/employee_training.py @@ -1,29 +1,8 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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 . -# -############################################################################## from openerp import api, fields, models, _ -class Orientation(models.Model): +class EmployeeTraining(models.Model): _name = 'employee.training' _rec_name = 'program_name' _description = "Employee Training" @@ -34,12 +13,15 @@ class Orientation(models.Model): 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.Date(string="Date From") + date_to = fields.Date(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) - user_id = fields.Many2one('res.users', string='users', default=lambda self: self.env.user) state = fields.Selection([ ('new', 'New'), ('confirm', 'Confirmed'), + ('cancel', 'Canceled'), ('complete', 'Completed'), ], string='Status', readonly=True, copy=False, index=True, track_visibility='onchange', default='new') @@ -51,14 +33,16 @@ class Orientation(models.Model): @api.multi def complete_event(self): - user_obj = self.env.user - if user_obj == self.program_convener.user_id: - self.write({'state': 'complete'}) + self.write({'state': 'complete'}) @api.multi def confirm_event(self): self.write({'state': 'confirm'}) + @api.multi + def cancel_event(self): + self.write({'state': 'cancel'}) + @api.multi def confirm_send_mail(self): self.ensure_one() @@ -91,5 +75,3 @@ class Orientation(models.Model): 'target': 'new', 'context': ctx, } - - diff --git a/employee_orientation/models/orientation_checklist.py b/employee_orientation/models/orientation_checklist.py index 2c923cad8..7011381f9 100644 --- a/employee_orientation/models/orientation_checklist.py +++ b/employee_orientation/models/orientation_checklist.py @@ -1,25 +1,4 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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 . -# -############################################################################## from openerp import models, fields, _ @@ -33,20 +12,9 @@ class OrientationChecklist(models.Model): 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.One2many('orientation.check', 'checklist', String="Checklist") + checklist_line_id = fields.Many2many('checklist.line', 'checklist_line_rel', String="Checklist") -class OrientationChecklistNew(models.Model): - _name = 'orientation.check' - - checklist_line_name = fields.Many2one('checklist.line', string='Name') - checklist_line_user = fields.Many2one('res.users', string='Responsible User', - related='checklist_line_name.responsible_user') - expected_date = fields.Date(string="Expected Date", default=fields.Datetime.now) - status = fields.Char(string='Status', readonly=True, default=lambda self: _('New')) - checklist = fields.Many2one('orientation.checklist', string="Checklist", ondelete='cascade') - relative_field = fields.Many2one('employee.orientation') - diff --git a/employee_orientation/models/orientation_checklist_line.py b/employee_orientation/models/orientation_checklist_line.py index 395ac8ab1..f1ba7a428 100644 --- a/employee_orientation/models/orientation_checklist_line.py +++ b/employee_orientation/models/orientation_checklist_line.py @@ -1,25 +1,4 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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 . -# -############################################################################## from openerp import models, fields @@ -29,6 +8,3 @@ class ChecklistLine(models.Model): line_name = fields.Char(string='Name', required=True) responsible_user = fields.Many2one('res.users', string='Responsible User', required=True) - - - diff --git a/employee_orientation/models/orientation_checklist_request.py b/employee_orientation/models/orientation_checklist_request.py index 705ac46c7..70d66aaee 100644 --- a/employee_orientation/models/orientation_checklist_request.py +++ b/employee_orientation/models/orientation_checklist_request.py @@ -1,26 +1,5 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# Cybrosys Technologies Pvt. Ltd. -# Copyright (C) 2017-TODAY Cybrosys Technologies(). -# Author: Nilmar Shereef() -# 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 . -# -############################################################################## -from openerp import models, fields, api, _ +from openerp import models, fields, api from openerp.tools.translate import _ @@ -34,18 +13,18 @@ class OrientationChecklistRequest(models.Model): 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) - user_id = fields.Many2one('res.users', string='Users', default=lambda self: self.env.user) 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') @@ -84,10 +63,8 @@ class OrientationChecklistRequest(models.Model): @api.multi def confirm_request(self): - user_obj = self.env.user - if user_obj == self.partner_id.user_id: - self.write({'state': "complete"}) - data = self.env['orientation.check'].search([('checklist_line_name.line_name', '=', self.request_name), - ('checklist_line_user.name', '=', self.partner_id.name)]) - data.status = self.state + self.write({'state': "complete"}) + @api.multi + def cancel_request(self): + self.write({'state': "cancel"}) diff --git a/employee_orientation/security/ir.model.access.csv b/employee_orientation/security/ir.model.access.csv index 05a5aca7f..5d9aa80e0 100644 --- a/employee_orientation/security/ir.model.access.csv +++ b/employee_orientation/security/ir.model.access.csv @@ -1,9 +1,12 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink -access_orientation_request,orientation.request,model_orientation_request,base.group_user,1,1,1,1 -access_orientation.check,orientation.check,model_orientation_check,base.group_user,1,1,1,1 -access_checklist_line,checklist.line,model_checklist_line,base.group_user,1,0,0,0 -access_employee_orientation,employee.orientation,model_employee_orientation,base.group_user,0,1,1,1 -access_employee_training,employee.training,model_employee_training,base.group_user,1,1,1,1 +access_user_orientation_request,orientation.request,model_orientation_request,base.group_hr_user,1,1,1,1 +access_manager_orientation_request,orientation.request,model_orientation_request,base.group_user,1,1,0,0 +access_user_checklist_line,checklist.line,model_checklist_line,base.group_hr_user,1,0,0,0 +access_manager_checklist_line,checklist.line,model_checklist_line,base.group_hr_manager,1,1,1,1 +access_user_employee_orientation,employee.orientation,model_employee_orientation,base.group_hr_user,1,1,1,1 +access_manager_employee_orientation_request,orientation.checklist,model_orientation_checklist,base.group_hr_user,1,1,1,1 +access_user_employee_training,employee.training,model_employee_training,base.group_hr_user,1,1,1,1 +access_manager_employee_training,employee.training,model_employee_training,base.group_user,1,1,0,0 diff --git a/employee_orientation/static/description/checklist_form.png b/employee_orientation/static/description/checklist_form.png deleted file mode 100644 index e2ab5c11d..000000000 Binary files a/employee_orientation/static/description/checklist_form.png and /dev/null differ diff --git a/employee_orientation/static/description/checklist_tree.png b/employee_orientation/static/description/checklist_tree.png deleted file mode 100644 index ccfd3393e..000000000 Binary files a/employee_orientation/static/description/checklist_tree.png and /dev/null differ diff --git a/employee_orientation/static/description/employee_form.png b/employee_orientation/static/description/employee_form.png deleted file mode 100644 index 993c7cffb..000000000 Binary files a/employee_orientation/static/description/employee_form.png and /dev/null differ diff --git a/employee_orientation/static/description/employee_tree.png b/employee_orientation/static/description/employee_tree.png deleted file mode 100644 index e0accb51b..000000000 Binary files a/employee_orientation/static/description/employee_tree.png and /dev/null differ diff --git a/employee_orientation/static/description/hr_orientation_1.png b/employee_orientation/static/description/hr_orientation_1.png new file mode 100644 index 000000000..e375839a9 Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_1.png differ diff --git a/employee_orientation/static/description/hr_orientation_10.png b/employee_orientation/static/description/hr_orientation_10.png new file mode 100644 index 000000000..743282f1d Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_10.png differ diff --git a/employee_orientation/static/description/hr_orientation_11.png b/employee_orientation/static/description/hr_orientation_11.png new file mode 100644 index 000000000..ffc196c5c Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_11.png differ diff --git a/employee_orientation/static/description/hr_orientation_12.png b/employee_orientation/static/description/hr_orientation_12.png new file mode 100644 index 000000000..c2651e81a Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_12.png differ diff --git a/employee_orientation/static/description/hr_orientation_13.png b/employee_orientation/static/description/hr_orientation_13.png new file mode 100644 index 000000000..ed1019dd3 Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_13.png differ diff --git a/employee_orientation/static/description/hr_orientation_2.png b/employee_orientation/static/description/hr_orientation_2.png new file mode 100644 index 000000000..9933f04b7 Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_2.png differ diff --git a/employee_orientation/static/description/hr_orientation_3.png b/employee_orientation/static/description/hr_orientation_3.png new file mode 100644 index 000000000..20ad10e6d Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_3.png differ diff --git a/employee_orientation/static/description/hr_orientation_4.png b/employee_orientation/static/description/hr_orientation_4.png new file mode 100644 index 000000000..51f32e194 Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_4.png differ diff --git a/employee_orientation/static/description/hr_orientation_5.png b/employee_orientation/static/description/hr_orientation_5.png new file mode 100644 index 000000000..daf06ed33 Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_5.png differ diff --git a/employee_orientation/static/description/hr_orientation_6.png b/employee_orientation/static/description/hr_orientation_6.png new file mode 100644 index 000000000..567fd4ed3 Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_6.png differ diff --git a/employee_orientation/static/description/hr_orientation_7.png b/employee_orientation/static/description/hr_orientation_7.png new file mode 100644 index 000000000..3d9c9882b Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_7.png differ diff --git a/employee_orientation/static/description/hr_orientation_8.png b/employee_orientation/static/description/hr_orientation_8.png new file mode 100644 index 000000000..0658c57ed Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_8.png differ diff --git a/employee_orientation/static/description/hr_orientation_9.png b/employee_orientation/static/description/hr_orientation_9.png new file mode 100644 index 000000000..2253f5e6a Binary files /dev/null and b/employee_orientation/static/description/hr_orientation_9.png differ diff --git a/employee_orientation/static/description/index.html b/employee_orientation/static/description/index.html index eee1c10c3..dfee3fd04 100644 --- a/employee_orientation/static/description/index.html +++ b/employee_orientation/static/description/index.html @@ -1,55 +1,63 @@
-

Employee Orientation/Training Program

-

Cybrosys Technologies , www.cybrosys.com

-
-

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.

-
-

Benefits of Employee Orientation

-
-
    -
  •   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
  • -
-
-

Major Features

-
    -
  •    Makes the Employee Orientation Program easier.
  • -
  •    Systematical Workflow.
  • -
  •    Allows to Create Employee Training Programs.
  • -
  •    Email Notification for each Responsible person.
  • -
+

Employee Orientation & Training

+

Manage Employee Orientation And Training Programs

+

Cybrosys Technologies

+
+
+

Major Features:

+
+ Makes the Employee Orientation Program easier.
+ Systematical Workflow.
+ Allows to Create Employee Training Programs.
+ Email Notification for each Responsible person.
+
+
-
-

Employee Orientation

-

-
-
- -
-
- -
+
+
+

Overview

+

+ 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 +

-

Orientation Request

+

Configuration

+
+

You can configure employee orientation programs for each department from + Employees -> Configuration -> Orientation Program

+
+

Orientation Checklist

+ +
+
+ +
+
- +
+
+

Orientation Checklist Line

+
- +
+
+
- +
@@ -57,16 +65,24 @@
-

Employee Training

+

Employee Orientation

- +
+
+
- +
+
+
+
+

+ On confirming employee orientation, creates orientation lines from corresponding orientation checklist. +

- +
@@ -74,13 +90,21 @@
-

Orientation Checklist

+

Orientation Request

+
+
+ +
+
- +
+
+

Email Template

+
- +
@@ -88,42 +112,50 @@
-

Orientation Checklist Line

+

Employee Training

+
+
+ +
+
- +
+
+

Email Template

+
- +
-
-

Need Any Help?

- +
+

Need Any Help?

+
diff --git a/employee_orientation/static/description/line_form.png b/employee_orientation/static/description/line_form.png deleted file mode 100644 index 36fd0b4d1..000000000 Binary files a/employee_orientation/static/description/line_form.png and /dev/null differ diff --git a/employee_orientation/static/description/line_tree.png b/employee_orientation/static/description/line_tree.png deleted file mode 100644 index dbe342a9d..000000000 Binary files a/employee_orientation/static/description/line_tree.png and /dev/null differ diff --git a/employee_orientation/static/description/request_form.png b/employee_orientation/static/description/request_form.png deleted file mode 100644 index a433cf448..000000000 Binary files a/employee_orientation/static/description/request_form.png and /dev/null differ diff --git a/employee_orientation/static/description/request_mail.png b/employee_orientation/static/description/request_mail.png deleted file mode 100644 index 65ae05a35..000000000 Binary files a/employee_orientation/static/description/request_mail.png and /dev/null differ diff --git a/employee_orientation/static/description/request_tree.png b/employee_orientation/static/description/request_tree.png deleted file mode 100644 index 57598a59f..000000000 Binary files a/employee_orientation/static/description/request_tree.png and /dev/null differ diff --git a/employee_orientation/static/description/training_form.png b/employee_orientation/static/description/training_form.png deleted file mode 100644 index 805cf2070..000000000 Binary files a/employee_orientation/static/description/training_form.png and /dev/null differ diff --git a/employee_orientation/static/description/training_mail.png b/employee_orientation/static/description/training_mail.png deleted file mode 100644 index 839369aaf..000000000 Binary files a/employee_orientation/static/description/training_mail.png and /dev/null differ diff --git a/employee_orientation/static/description/training_tree.png b/employee_orientation/static/description/training_tree.png deleted file mode 100644 index dc6a608b1..000000000 Binary files a/employee_orientation/static/description/training_tree.png and /dev/null differ diff --git a/employee_orientation/views/employee_orientation.xml b/employee_orientation/views/employee_orientation.xml index 21deea712..53d6b67da 100644 --- a/employee_orientation/views/employee_orientation.xml +++ b/employee_orientation/views/employee_orientation.xml @@ -8,19 +8,23 @@ + + + + employee.orientation.form employee.orientation
-
@@ -29,26 +33,36 @@
- - - - - - - - + + + + + + + + - - + + - - - - + + + + + + + + + + + + + + + - @@ -93,6 +107,6 @@

- + diff --git a/employee_orientation/views/employee_training.xml b/employee_orientation/views/employee_training.xml index 7fb975725..7d16e3beb 100644 --- a/employee_orientation/views/employee_training.xml +++ b/employee_orientation/views/employee_training.xml @@ -19,21 +19,23 @@
-
+ - - + @@ -77,6 +79,13 @@

- + + diff --git a/employee_orientation/views/orientation_checklist.xml b/employee_orientation/views/orientation_checklist.xml index 0720106e0..a9e1b2701 100644 --- a/employee_orientation/views/orientation_checklist.xml +++ b/employee_orientation/views/orientation_checklist.xml @@ -12,6 +12,7 @@ + orientation.checklist.form orientation.checklist @@ -25,12 +26,11 @@ - - - - - + + + + + @@ -43,6 +43,7 @@ + orientation.checklist.search orientation.checklist @@ -52,7 +53,7 @@ - + @@ -74,37 +75,13 @@

- - - - orientation.check.tree - orientation.check - - - - - - - - - - - - orientation.check.form - orientation.check - - -
- - - - - - - - -
-
-
+ + diff --git a/employee_orientation/views/orientation_checklist_line.xml b/employee_orientation/views/orientation_checklist_line.xml index 6addddf2e..95a0b46a3 100644 --- a/employee_orientation/views/orientation_checklist_line.xml +++ b/employee_orientation/views/orientation_checklist_line.xml @@ -24,10 +24,6 @@
- - - -
@@ -62,11 +58,29 @@

- - - + + + - - + + + diff --git a/employee_orientation/views/orientation_checklists_request.xml b/employee_orientation/views/orientation_checklists_request.xml index 1358bf750..7917ffbe6 100644 --- a/employee_orientation/views/orientation_checklists_request.xml +++ b/employee_orientation/views/orientation_checklists_request.xml @@ -5,11 +5,11 @@ orientation.request.tree orientation.request - + - + @@ -17,31 +17,29 @@ orientation.request.form orientation.request -
+
-
- - - - - - - + + + + + + + - - - - - + + + - - + + @@ -81,6 +79,6 @@

- + diff --git a/employee_orientation/views/orientation_request_mail_template.xml b/employee_orientation/views/orientation_request_mail_template.xml index dc5fcd2eb..dcb5e79c1 100644 --- a/employee_orientation/views/orientation_request_mail_template.xml +++ b/employee_orientation/views/orientation_request_mail_template.xml @@ -1,21 +1,22 @@ - + Employee Orientation Request - ${(object.user_id.email)} - ${object.partner_id.email} - + ${(object.user_id.email or object.company_id.email)|safe} + ${(object.partner_id.email)} Employee Orientation Request -

Hello, ${object.partner_id.name}

-

Your are request to prepare below checklist.

-

Check_Line: ${object.request_name}

+

Hello ${object.partner_id.name},

+

Your are request to conduct orientation program listed below.

+

Check Line: ${object.request_name}

Employee: ${object.employee_id.name}

-

Expected Date: ${object.request_expected_date}

+ %if object.request_expected_date: +

Expected Date: ${object.request_expected_date}

+ % endif

Thank you!


@@ -45,16 +46,19 @@
Employee Training program - ${(object.user_id.email)} - ${object.program_convener.work_email} - + ${(object.user_id.email or object.company_id.email)} + ${(object.program_convener.email)|safe} Employee Training Request -

Hello, ${object.program_convener.name}

-

Your are request to conduct ${object.program_name} Training program for ${object.program_department.name} department

+

Hello ${object.program_convener.name},

+

Your are request 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 + .


Thank you!


diff --git a/employee_orientation/wizard/__init__.py b/employee_orientation/wizard/__init__.py new file mode 100644 index 000000000..d55a4e1cc --- /dev/null +++ b/employee_orientation/wizard/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import orientation_complete diff --git a/employee_orientation/wizard/orientation_complete.py b/employee_orientation/wizard/orientation_complete.py new file mode 100644 index 000000000..e1855fc64 --- /dev/null +++ b/employee_orientation/wizard/orientation_complete.py @@ -0,0 +1,26 @@ +# -*- coding: utf-8 -*- + +from openerp 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}) + + @api.multi + def force_complete(self): + for line in self.orientation_lines: + if line.state != 'cancel': + line.state = 'complete' + self.orientation_id.write({'state': 'complete'}) diff --git a/employee_orientation/wizard/orientation_complete.xml b/employee_orientation/wizard/orientation_complete.xml new file mode 100644 index 000000000..8dfb0de35 --- /dev/null +++ b/employee_orientation/wizard/orientation_complete.xml @@ -0,0 +1,23 @@ + + + + + orientation.force.complete.form + orientation.force.complete + + +

+ Please make sure that orientations programs are already done. +

+ +
+
+
\ No newline at end of file