2018-01-16 06:58:15 +01:00
|
|
|
# -*- coding:utf-8 -*-
|
2018-01-16 11:34:37 +01:00
|
|
|
# Part of Odoo, Flectra. See LICENSE file for full copyright and licensing details.
|
2018-01-16 06:58:15 +01:00
|
|
|
|
2018-01-16 11:34:37 +01:00
|
|
|
from flectra import api, fields, models
|
2018-01-16 06:58:15 +01:00
|
|
|
|
|
|
|
|
|
|
|
class HrSalaryEmployeeBymonth(models.TransientModel):
|
|
|
|
|
|
|
|
_name = 'hr.salary.employee.month'
|
|
|
|
_description = 'Hr Salary Employee By Month Report'
|
|
|
|
|
|
|
|
def _get_default_category(self):
|
|
|
|
return self.env['hr.salary.rule.category'].search([('code', '=', 'NET')], limit=1)
|
|
|
|
|
|
|
|
def _get_default_start_date(self):
|
|
|
|
year = fields.Date.from_string(fields.Date.today()).strftime('%Y')
|
|
|
|
return '{}-01-01'.format(year)
|
|
|
|
|
|
|
|
def _get_default_end_date(self):
|
|
|
|
date = fields.Date.from_string(fields.Date.today())
|
|
|
|
return date.strftime('%Y') + '-' + date.strftime('%m') + '-' + date.strftime('%d')
|
|
|
|
|
|
|
|
start_date = fields.Date(string='Start Date', required=True, default=_get_default_start_date)
|
|
|
|
end_date = fields.Date(string='End Date', required=True, default=_get_default_end_date)
|
|
|
|
employee_ids = fields.Many2many('hr.employee', 'payroll_year_rel', 'payroll_year_id', 'employee_id', string='Employees', required=True)
|
|
|
|
category_id = fields.Many2one('hr.salary.rule.category', string='Category', required=True, default=_get_default_category)
|
|
|
|
|
|
|
|
@api.multi
|
|
|
|
def print_report(self):
|
|
|
|
"""
|
|
|
|
To get the date and print the report
|
|
|
|
@return: return report
|
|
|
|
"""
|
|
|
|
self.ensure_one()
|
|
|
|
data = {'ids': self.env.context.get('active_ids', [])}
|
|
|
|
res = self.read()
|
|
|
|
res = res and res[0] or {}
|
|
|
|
data.update({'form': res})
|
|
|
|
return self.env.ref('l10n_in_hr_payroll.action_report_hrsalarybymonth').report_action(self, data=data)
|