From 0467426b9ad88fa642ba6fb171d40faf5ef5793c Mon Sep 17 00:00:00 2001 From: Thor Date: Mon, 24 Jan 2022 15:34:58 +0100 Subject: [PATCH] =?UTF-8?q?[IMP]=20hr=5Ftimesheet=5Fusability:=20En=20line?= =?UTF-8?q?as=20de=20analitica=20inicializar=20los=20campos=20hora=20inici?= =?UTF-8?q?o=20y=20fin,=20y=20tambi=C3=A9n=20empleado.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hr_timesheet_usability/__manifest__.py | 2 +- .../models/account_analytic_line.py | 21 ++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/hr_timesheet_usability/__manifest__.py b/hr_timesheet_usability/__manifest__.py index cfba925..3394e47 100644 --- a/hr_timesheet_usability/__manifest__.py +++ b/hr_timesheet_usability/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). { "name": "Hr Timesheet Usability", - 'version': '12.0.1.0.0', + 'version': '12.0.1.1.0', "author": "Avanzosc", "website": "http://www.avanzosc.es", "category": "Project", diff --git a/hr_timesheet_usability/models/account_analytic_line.py b/hr_timesheet_usability/models/account_analytic_line.py index 90dc5e9..821d890 100644 --- a/hr_timesheet_usability/models/account_analytic_line.py +++ b/hr_timesheet_usability/models/account_analytic_line.py @@ -1,6 +1,6 @@ # Copyright 2021 Berezi - AvanzOSC # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -from odoo import models, api +from odoo import models, api, fields from datetime import datetime import pytz from datetime import timedelta @@ -9,6 +9,25 @@ class AccountAnalyticLine(models.Model): _inherit = 'account.analytic.line' + def default_times(self): + timezone = pytz.timezone(self._context.get('tz') or 'UTC') + date = fields.Datetime.now() + date = date.replace(tzinfo=pytz.timezone( + 'UTC')).astimezone(timezone) + hours = int(date.strftime("%H")) + minutes = int(date.strftime("%M")) + return round(hours + minutes/60, 14) + + def default_employee_id(self): + employee_obj = self.env['hr.employee'] + cond = [('user_id', '=', self.env.user.id)] + employee = employee_obj.search(cond, limit=1) + return employee if employee else employee_obj + + time_start = fields.Float(default=default_times) + time_stop = fields.Float(default=default_times) + employee_id = fields.Many2one(default=default_employee_id) + @api.multi def action_button_end(self): self.ensure_one()