diff --git a/sf_message/models/sf_message_sale.py b/sf_message/models/sf_message_sale.py index bd8e937d..e1a6ea3c 100644 --- a/sf_message/models/sf_message_sale.py +++ b/sf_message/models/sf_message_sale.py @@ -7,6 +7,8 @@ class SFMessageSale(models.Model): _name = 'sale.order' _inherit = ['sale.order', 'jikimo.message.dispatch'] + delivery_warning = fields.Selection([('normal', '正常'), ('warning', '告警'), ('overdue', '逾期')], string='时效') + def create(self, vals_list): res = super(SFMessageSale, self).create(vals_list) if res: @@ -48,7 +50,7 @@ class SFMessageSale(models.Model): if item.message_template_id.bussiness_node_id.name == '待接单': content = super(SFMessageSale, self)._get_message(item) action_id = self.env.ref('sale.action_quotations_with_onboarding').id - url = f"{url}/web#id={item.res_id}view_type=form&action={action_id}" + url = f"{url}/web#id={item.res_id}&view_type=form&action={action_id}" content = content[0].replace('{{url}}', url) contents.append(content) # 确认接单的处理 @@ -65,11 +67,18 @@ class SFMessageSale(models.Model): return contents # # 销售订单逾期预警 + def _overdue_warning_func(self): - sale_order_ - return 1 + today = fields.Date.today() + deadline_check = today + timedelta(days=2) + sale_order = self.sudo().search([('state', 'in', ['sale']), ('deadline_of_delivery', '!=', False)]) + for item in sale_order: + if deadline_check < item.deadline_of_delivery: + item.delivery_warning = '告警' + else: + item.delivery_warning = '正常' + sale_order_warning = self.sudo().search([('delivery_warning', 'in', ['告警']), ('deadline_of_delivery', '!=', False)]) # 销售订单已逾期 def _overdue_func(self): return 1 -