diff --git a/soong_workflow/wizard/soong_workflow_comment_wizard_view.xml b/soong_workflow/wizard/soong_workflow_comment_wizard_view.xml
index 253cbe92c..a69a26134 100644
--- a/soong_workflow/wizard/soong_workflow_comment_wizard_view.xml
+++ b/soong_workflow/wizard/soong_workflow_comment_wizard_view.xml
@@ -11,13 +11,14 @@
+
@@ -25,7 +26,7 @@
@@ -33,7 +34,7 @@
diff --git a/yuthon_contract/models/inherit_hr_contract.py b/yuthon_contract/models/inherit_hr_contract.py
index b0b5423a6..912dd63f6 100644
--- a/yuthon_contract/models/inherit_hr_contract.py
+++ b/yuthon_contract/models/inherit_hr_contract.py
@@ -39,16 +39,22 @@ class HrContract(models.Model):
documents_ids = fields.Many2many('ir.attachment', string="合同附件")
is_company = fields.Boolean(string="本公司", default=True, compute='_compute_is_company', search='_search_part_of_company')
- @api.constrains("state")
- def _constrains_state(self):
- today = date.today()
- if self.date_end:
- if self.date_end < today:
- self.state = 'close'
- elif self.date_end == today:
- self.state = 'close'
- else:
- self.state = 'open'
+ def write(self, vals):
+ """在写入时自动更新合同状态"""
+ # 先执行状态更新
+ today = fields.Date.today()
+ if 'date_end' in vals:
+ new_end_date = fields.Date.to_date(vals['date_end'])
+ # 遍历所有要更新的合同
+ for contract in self:
+ end_date = new_end_date
+ if end_date > today:
+ vals['state'] = 'open'
+ elif end_date < today:
+ vals['state'] = 'close'
+
+ # 调用原生写入逻辑
+ return super(HrContract, self).write(vals)
@api.depends_context('uid', 'company')
@api.depends('company_id')
diff --git a/yuthon_property/views/property_deposit_list_views.xml b/yuthon_property/views/property_deposit_list_views.xml
index d58b9250f..be6b9efb3 100644
--- a/yuthon_property/views/property_deposit_list_views.xml
+++ b/yuthon_property/views/property_deposit_list_views.xml
@@ -4,7 +4,7 @@
property.deposit.tree
property.deposit.list
-
+