[MERGE] merge with latest stable
[odoo/odoo.git] / addons / hr_payroll / wizard / hr_payroll_employees_detail.py
1 # -*- coding: utf-8 -*-
2 ##############################################################################
3 #
4 #    OpenERP, Open Source Management Solution
5 #    Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
6 #
7 #    This program is free software: you can redistribute it and/or modify
8 #    it under the terms of the GNU Affero General Public License as
9 #    published by the Free Software Foundation, either version 3 of the
10 #    License, or (at your option) any later version.
11 #
12 #    This program is distributed in the hope that it will be useful,
13 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 #    GNU Affero General Public License for more details.
16 #
17 #    You should have received a copy of the GNU Affero General Public License
18 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
19 #
20 ##############################################################################
21
22 import time
23
24 from osv import fields, osv
25
26 class hr_payroll_employees_detail(osv.osv_memory):
27
28    _name ='hr.payroll.employees.detail'
29    _columns = {
30         'employee_ids': fields.many2many('hr.employee', 'payroll_emp_rel','payroll_id','emp_id', 'Employees',required=True),
31         'date_from': fields.date('Start Date', required=True),
32         'date_to': fields.date('End Date', required=True),
33         #'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year', required=True)
34        }
35 #   def _get_fiscalyear(self, cr, uid, ids, context=None):
36 #        if context is None:
37 #            context = {}
38 #        fiscal_ids = self.pool.get('account.fiscalyear').search(cr,uid,[], context=context)
39 #        if fiscal_ids:
40 #            return fiscal_ids[0]
41 #        return False
42
43    _defaults = {
44 #        'fiscalyear_id':_get_fiscalyear,
45         'date_from': lambda *a: time.strftime('%Y-01-01'),
46         'date_to': lambda *a: time.strftime('%Y-%m-%d'),
47
48     }
49
50    def print_report(self, cr, uid, ids, context=None):
51         """
52          To get the date and print the report
53          @param self: The object pointer.
54          @param cr: A database cursor
55          @param uid: ID of the user currently logged in
56          @param context: A standard dictionary
57          @return: return report
58         """
59         if context is None:
60             context = {}
61         datas = {'ids': context.get('active_ids', [])}
62         res = self.read(cr, uid, ids, ['employee_ids', 'date_from', 'date_to'], context=context)
63         res = res and res[0] or {}
64         datas['form'] = res
65         datas['ids'] = res.get('employee_ids',[])
66         return {
67             'type': 'ir.actions.report.xml',
68             'report_name': 'employees.salary',
69             'datas': datas,
70        }
71
72 hr_payroll_employees_detail()
73
74 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: