From 000cd9a13ce2a426ad981b69f577e2fdfa771af5 Mon Sep 17 00:00:00 2001 From: guanhuan Date: Thu, 27 Feb 2025 09:53:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=9D=AF=E6=96=99=E5=8F=91?= =?UTF-8?q?=E6=96=99=E6=8F=90=E9=86=92=E9=87=8D=E5=A4=8D=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_message/models/sf_message_stock_picking.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/sf_message/models/sf_message_stock_picking.py b/sf_message/models/sf_message_stock_picking.py index a2c17407..902060a3 100644 --- a/sf_message/models/sf_message_stock_picking.py +++ b/sf_message/models/sf_message_stock_picking.py @@ -27,7 +27,9 @@ class SFMessageStockPicking(models.Model): for record in self: if (record.state == 'assigned' and record.picking_type_id.sequence_code == 'PC' and record.product_id.categ_id.type == '坯料'): - record.add_queue('坯料发料提醒') + jikimo_message_queue = record.get_message_queue(record.id) + if not jikimo_message_queue: + record.add_queue('坯料发料提醒') if record.picking_type_id.sequence_code == 'SFP' and record.state == 'done': stock_picking_sfp = record.env['stock.picking'].search( @@ -107,3 +109,14 @@ class SFMessageStockPicking(models.Model): # 拼接URL full_url = url + "/web#" + query_string return full_url + + def get_message_queue(self, res_id): + business_node_id = self.env.ref('sf_message.bussiness_material_picking_remind').id + message_template = self.env["jikimo.message.template"].sudo().search([ + ("model", "=", self._name), + ("bussiness_node_id", "=", business_node_id) + ], limit=1) + jikimo_message_queue = self.env['jikimo.message.queue'].sudo().search( + [('res_id', '=', res_id), ("message_status", "in", ("pending", "sent")), + ('message_template_id', '=', message_template.id)]) + return jikimo_message_queue