From d9e2b4a69ad4cf4519b078a98b6fd433efa49775 Mon Sep 17 00:00:00 2001 From: Bianca Bartolomei Date: Wed, 11 Apr 2018 18:40:12 -0300 Subject: [PATCH 1/3] [FIX] Data afastamento obrigatoria --- l10n_br_hr_payroll/views/hr_payslip.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/l10n_br_hr_payroll/views/hr_payslip.xml b/l10n_br_hr_payroll/views/hr_payslip.xml index 751d28bf7..b3e4f8e64 100644 --- a/l10n_br_hr_payroll/views/hr_payslip.xml +++ b/l10n_br_hr_payroll/views/hr_payslip.xml @@ -293,7 +293,9 @@ - + From 1753cc5378a846dbb33b3403fe7488de2fabb622 Mon Sep 17 00:00:00 2001 From: Bianca Bartolomei Date: Wed, 11 Apr 2018 18:40:39 -0300 Subject: [PATCH 2/3] [FIX] Datas correspondendo ao afastamento --- l10n_br_hr_payroll/models/hr_payslip.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/l10n_br_hr_payroll/models/hr_payslip.py b/l10n_br_hr_payroll/models/hr_payslip.py index de14c7aa3..0f7afaca7 100644 --- a/l10n_br_hr_payroll/models/hr_payslip.py +++ b/l10n_br_hr_payroll/models/hr_payslip.py @@ -2246,6 +2246,9 @@ def _compute_set_dates(self): datetime.strptime(str(mes) + '-' + str(record.ano), '%m-%Y')) + days = (fields.Date.from_string(ultimo_dia_do_mes) - + fields.Date.from_string(primeiro_dia_do_mes)).days + record.date_from = primeiro_dia_do_mes record.date_to = ultimo_dia_do_mes @@ -2263,6 +2266,9 @@ def _compute_set_dates(self): record.date_to = \ fields.Date.from_string(record.data_afastamento) - \ timedelta(days=1) + record.date_from = fields.Date.from_string(record.date_to) - \ + timedelta(days=days) + record.mes_do_ano2 =fields.Date.from_string(record.date_to).month @api.multi def _buscar_holerites_periodo_aquisitivo(self): From b63b5104accfdefe1b0af8b9e15199f1085800c8 Mon Sep 17 00:00:00 2001 From: Bianca Bartolomei Date: Wed, 11 Apr 2018 19:52:10 -0300 Subject: [PATCH 3/3] =?UTF-8?q?[FIX]Fun=C3=A7=C3=A3o=20impede=20que=20pegu?= =?UTF-8?q?e=20valores=20negativos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- l10n_br_hr_payroll/models/hr_payslip.py | 37 +++++++++++++------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/l10n_br_hr_payroll/models/hr_payslip.py b/l10n_br_hr_payroll/models/hr_payslip.py index 0f7afaca7..f9d30e879 100644 --- a/l10n_br_hr_payroll/models/hr_payslip.py +++ b/l10n_br_hr_payroll/models/hr_payslip.py @@ -1266,25 +1266,26 @@ def _simulacao_ferias(self, ferias_vencida, um_terco_ferias): if periodo.saldo: data_inicio = self.data_afastamento - data_fim = data.parse_datetime(data_inicio) + relativedelta(days=periodo.avos * 2.5) + if periodo.avos >= 0: + data_fim = data.parse_datetime(data_inicio) + relativedelta(days=periodo.avos * 2.5) - domain = [ - ('tipo_de_folha', '=', 'ferias'), - ('is_simulacao', '=', True), - ('periodo_aquisitivo', '=', periodo_id) - ] - payslip_simulacao = self.env['hr.payslip'].search(domain) - if payslip_simulacao: - payslip_simulacao_criada = payslip_simulacao - else: - payslip_simulacao_criada = self.gerar_simulacao( - 'ferias', self.mes_do_ano, - self.ano, data_inicio, - data_fim, ferias_vencida=ferias_vencida, - periodo_aquisitivo=periodo - ) - return self._buscar_valor_bruto_simulacao( - payslip_simulacao_criada, um_terco_ferias) + domain = [ + ('tipo_de_folha', '=', 'ferias'), + ('is_simulacao', '=', True), + ('periodo_aquisitivo', '=', periodo_id) + ] + payslip_simulacao = self.env['hr.payslip'].search(domain) + if payslip_simulacao: + payslip_simulacao_criada = payslip_simulacao + else: + payslip_simulacao_criada = self.gerar_simulacao( + 'ferias', self.mes_do_ano, + self.ano, data_inicio, + data_fim, ferias_vencida=ferias_vencida, + periodo_aquisitivo=periodo + ) + return self._buscar_valor_bruto_simulacao( + payslip_simulacao_criada, um_terco_ferias) def _simulacao_decimo_terceiro(self):