From be3ea250fbf4a4c2de14fd5df7f85583b61a9a87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= <9664676+pengyuthon@user.noreply.gitee.com> Date: Thu, 25 Dec 2025 14:33:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../models/yuthon_hr_employee.py | 22 +++++++++++++++++++ .../wizard/property_reconciliation_wizard.py | 2 ++ 2 files changed, 24 insertions(+) diff --git a/yuthon_hr_employee/models/yuthon_hr_employee.py b/yuthon_hr_employee/models/yuthon_hr_employee.py index c7d1b7bfe..051661af5 100644 --- a/yuthon_hr_employee/models/yuthon_hr_employee.py +++ b/yuthon_hr_employee/models/yuthon_hr_employee.py @@ -286,6 +286,28 @@ class YuthonHrEmployee(models.Model): else: record.date_end = None + def renew(self): + employee_ids = self.env["hr.employee"].browse( + self._context.get("active_ids", self._context.get("active_id")) + ) + for record in employee_ids: + if len(record) > 1: + raise UserError("只能选择一个员工续签") + return { + "name": "续签", + "type": "ir.actions.act_window", + "res_model": "yuthon.renewal.approval", + "view_mode": "form", + "context": { + "default_employee_id": self.employee_id.id, + "default_current_status": self.employee_id.contract_id.date_end, + "default_department1_id": self.employee_id.department_id.id, + "default_contract_id": self.employee_id.contract_id.id, + }, + } + + + def update_social_base(self): current_year = fields.Date.today().year group_company = self.env['res.company'].search([('name', '=', '集团本部')], limit=1) diff --git a/yuthon_property_approval/wizard/property_reconciliation_wizard.py b/yuthon_property_approval/wizard/property_reconciliation_wizard.py index a25031ea2..df19bfe17 100644 --- a/yuthon_property_approval/wizard/property_reconciliation_wizard.py +++ b/yuthon_property_approval/wizard/property_reconciliation_wizard.py @@ -538,6 +538,8 @@ class PropertyReconciliationWizard(models.Model): ] # 检查是否已有相同记录 existing_record = self.env['property.accounts.receivable'].search(check_domain) + if len(existing_record)>1: + raise UserError(f'合同{line.contract_id.contract_code}应收日期为{line.due_date}的违约金存在多条相同记录,请检查数据') is_reconciliation = round(line.amount,2) == round(line.rent, 2) receivable_id = self.env['property.accounts.receivable'] if not existing_record and is_create: