diff --git a/sf_message/data/template_data.xml b/sf_message/data/template_data.xml
index 057dc009..8a01f5f1 100644
--- a/sf_message/data/template_data.xml
+++ b/sf_message/data/template_data.xml
@@ -97,7 +97,7 @@
timing
normal
### 工单逾期预警
-事项:共有[{{warning_num}}]({{url}})工单有逾期风险
+事项:共有[{{warning_num}}]({{url}})个工单有逾期风险
@@ -109,7 +109,7 @@
timing
normal
### 工单已逾期提醒
-事项:共有[{{overdue_num}}]({{url}})工单已逾期
+事项:共有[{{overdue_num}}]({{url}})个工单已逾期
@@ -121,7 +121,7 @@
timing
normal
### 工单逾期预警
-事项:共有[{{warning_num}}]({{url}})工单有逾期风险
+事项:共有[{{warning_num}}]({{url}})个工单有逾期风险
@@ -133,7 +133,7 @@
timing
normal
### 工单已逾期提醒
-事项:共有[{{overdue_num}}]({{url}})工单已逾期
+事项:共有[{{overdue_num}}]({{url}})个工单已逾期
@@ -145,7 +145,7 @@
timing
normal
### 工单逾期预警
-事项:共有[{{warning_num}}]({{url}})工单有逾期风险
+事项:共有[{{warning_num}}]({{url}})个工单有逾期风险
@@ -157,7 +157,7 @@
timing
normal
### 工单已逾期提醒
-事项:共有[{{overdue_num}}]({{url}})工单已逾期
+事项:共有[{{overdue_num}}]({{url}})个工单已逾期
@@ -169,7 +169,7 @@
timing
normal
### 工单逾期预警
-事项:共有[{{warning_num}}]({{url}})工单有逾期风险
+事项:共有[{{warning_num}}]({{url}})个工单有逾期风险
@@ -181,7 +181,7 @@
timing
normal
### 工单已逾期提醒
-事项:共有[{{overdue_num}}]({{url}})工单已逾期
+事项:共有[{{overdue_num}}]({{url}})个工单已逾期
diff --git a/sf_message/models/sf_message_sale.py b/sf_message/models/sf_message_sale.py
index bf5704e7..9907dbc9 100644
--- a/sf_message/models/sf_message_sale.py
+++ b/sf_message/models/sf_message_sale.py
@@ -162,4 +162,11 @@ class SFMessageSale(models.Model):
def _recover_sale_time_warning_func(self):
sale_order_done = self.sudo().search([('state', 'in', ['sale']), ('delivery_status', '=', 'full')])
sale_order_overdue = sale_order_done.filtered(lambda x: x.delivery_warning in ['overdue', 'warning'])
- sale_order_overdue.write({'delivery_warning': 'normal'})
+ if sale_order_overdue:
+ sale_order_overdue.write({'delivery_warning': 'normal'})
+ message_queue_ids = self.env["jikimo.message.queue"].sudo().search([
+ ("message_status", "=", "pending"),
+ ("res_id", "in", [item.id for item in sale_order_overdue])
+ ])
+ if message_queue_ids:
+ message_queue_ids.write({'message_status': 'cancel'})
diff --git a/sf_message/models/sf_message_workorder.py b/sf_message/models/sf_message_workorder.py
index dbf65499..1786a796 100644
--- a/sf_message/models/sf_message_workorder.py
+++ b/sf_message/models/sf_message_workorder.py
@@ -69,7 +69,7 @@ class SFMessageWork(models.Model):
search_condition = [
('delivery_warning', '=', 'warning')] if bussiness_node in template_names['预警'] else [
('delivery_warning', '=', 'overdue')]
- record = self.sudo().search(search_condition + [('id', '=', int(item.res_id))])
+ record = self.sudo().search(search_condition + [('id', '=', int(message_queue_id.res_id))])
if record:
i += 1
if i >= 1:
@@ -164,4 +164,11 @@ class SFMessageWork(models.Model):
def _recover_time_warning_func(self):
workorder_done = self.env['mrp.workorder'].search([("state", "in", ["done", "rework", "cancel"])])
workorder_overdue = workorder_done.filtered(lambda x: x.delivery_warning in ['overdue', 'warning'])
- workorder_overdue.write({'delivery_warning': 'normal'})
+ if workorder_overdue:
+ workorder_overdue.write({'delivery_warning': 'normal'})
+ message_queue_ids = self.env["jikimo.message.queue"].sudo().search([
+ ("message_status", "=", "pending"),
+ ("res_id", "in", [item.id for item in workorder_overdue])
+ ])
+ if message_queue_ids:
+ message_queue_ids.write({'message_status': 'cancel'})