diff --git a/yuthon_hr_attendance/models/overtime_approval.py b/yuthon_hr_attendance/models/overtime_approval.py index a244f3c79..3145c5fff 100644 --- a/yuthon_hr_attendance/models/overtime_approval.py +++ b/yuthon_hr_attendance/models/overtime_approval.py @@ -302,18 +302,17 @@ class OvertimeApprovals(models.Model): @api.model_create_multi def create(self, vals_list): - for vals in vals_list: - company_id = vals.get('company_id') - if company_id: - company = self.env['res.company'].browse(company_id) - if company.name == '天河物管': - duration = vals.get('duration') - if duration < 1: - raise ValidationError(f"时长不能小于1!当前填写的是{duration},请重新编辑") - if (duration * 2) % 1 != 0: - raise ValidationError( - f"时长格式错误!请填写1、1.5、2、2.5...等以0.5递增的数值,当前填写的是{duration}") - return super(OvertimeApprovals, self).create(vals_list) + records = super(OvertimeApprovals, self).create(vals_list) + records._compute_duration() + for rec in records: + if rec.company_id.name == '天河物管': + duration = rec.duration + if duration < 1: + raise ValidationError(f"时长不能小于1!当前填写的是{duration}") + if (duration * 2) % 1 != 0: + raise ValidationError( + f"时长格式错误!请填写1、1.5、2、2.5...等以0.5递增的数值") + return records @api.onchange('is_issues') def _onchange_is_issues(self):