diff --git a/sf_manufacturing/models/product_template.py b/sf_manufacturing/models/product_template.py
index b9f4a4c8..7f4dc2b8 100644
--- a/sf_manufacturing/models/product_template.py
+++ b/sf_manufacturing/models/product_template.py
@@ -9,8 +9,8 @@ from odoo.exceptions import ValidationError, UserError
from odoo.modules import get_resource_path
-# from OCC.Extend.DataExchange import read_step_file
-# from OCC.Extend.DataExchange import write_stl_file
+from OCC.Extend.DataExchange import read_step_file
+from OCC.Extend.DataExchange import write_stl_file
class ResProductMo(models.Model):
diff --git a/sf_manufacturing/views/mrp_workorder_view.xml b/sf_manufacturing/views/mrp_workorder_view.xml
index 398c2f2f..3d0f8167 100644
--- a/sf_manufacturing/views/mrp_workorder_view.xml
+++ b/sf_manufacturing/views/mrp_workorder_view.xml
@@ -229,7 +229,7 @@
decoration-danger="tag_type == '重新加工'"/>
-
+
diff --git a/sf_message/data/template_data.xml b/sf_message/data/template_data.xml
index b2064832..0a1f63dd 100644
--- a/sf_message/data/template_data.xml
+++ b/sf_message/data/template_data.xml
@@ -186,47 +186,47 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ 调拨入库
+
+ stock.picking
+
+ markdown
+ normal
+ ### 调拨入库通知:
+单号:调拨入库单[{{name}}]({{request_url}})
+事项:完成刀具物料上架入库
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ 功能刀具寿命到期
+
+ sf.functional.tool.dismantle
+
+ markdown
+ normal
+ ### 功能刀具寿命到期提醒:
+单号:拆解单[{{code}}]({{request_url}})
+事项:{{functional_tool_id.tool_name_id.name}}寿命已到期,需拆解
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ 功能刀具组装
+
+ sf.functional.tool.assembly
+
+ markdown
+ normal
+ ### 功能刀具组装通知:
+单号:组装任务单[{{name}}]({{request_url}})
+事项:{{use_tool_time}}前完成组装
+
待质量判定
diff --git a/sf_message/models/sf_message_workorder.py b/sf_message/models/sf_message_workorder.py
index 812bf798..b71c916a 100644
--- a/sf_message/models/sf_message_workorder.py
+++ b/sf_message/models/sf_message_workorder.py
@@ -151,5 +151,5 @@ class SFMessageWork(models.Model):
def _recover_time_warning_func(self):
workorder_done = self.env['mrp.workorder'].search([("state", "=", "done")])
- workorder_overdue = workorder_done.filtered(lambda x: x.delivery_warning == 'overdue')
+ workorder_overdue = workorder_done.filtered(lambda x: x.delivery_warning in ['overdue', 'warning'])
workorder_overdue.write({'delivery_warning': 'normal'})
diff --git a/sf_sale/models/quick_easy_order.py b/sf_sale/models/quick_easy_order.py
index cb1886a1..081807a4 100644
--- a/sf_sale/models/quick_easy_order.py
+++ b/sf_sale/models/quick_easy_order.py
@@ -8,8 +8,8 @@ from datetime import datetime
import requests
from odoo import http
from odoo.http import request
-# from OCC.Extend.DataExchange import read_step_file
-# from OCC.Extend.DataExchange import write_stl_file
+from OCC.Extend.DataExchange import read_step_file
+from OCC.Extend.DataExchange import write_stl_file
from odoo import models, fields, api
from odoo.modules import get_resource_path
from odoo.exceptions import ValidationError, UserError
diff --git a/sf_sale/models/quick_easy_order_old.py b/sf_sale/models/quick_easy_order_old.py
index 9bd61132..4756a2c5 100644
--- a/sf_sale/models/quick_easy_order_old.py
+++ b/sf_sale/models/quick_easy_order_old.py
@@ -6,8 +6,8 @@ import os
from datetime import datetime
from stl import mesh
# from OCC.Core.GProp import GProp_GProps
-# from OCC.Extend.DataExchange import read_step_file
-# from OCC.Extend.DataExchange import write_stl_file
+from OCC.Extend.DataExchange import read_step_file
+from OCC.Extend.DataExchange import write_stl_file
from odoo.addons.sf_base.commons.common import Common
from odoo import models, fields, api
from odoo.modules import get_resource_path