From 9bbf613bcbad90507493050339383b297cb08592 Mon Sep 17 00:00:00 2001 From: hujiaying Date: Thu, 17 Oct 2024 17:39:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=94=9F=E6=88=90=E5=AE=8C?= =?UTF-8?q?=E5=B7=A5=E5=85=A5=E5=BA=93=E6=8F=90=E9=86=92=EF=BC=8C=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=8F=91=E8=B4=A7=E6=8F=90=E9=86=92=E8=B7=B3=E8=BD=AC?= =?UTF-8?q?=E5=88=B0=E8=A1=A8=E5=8D=95=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_message/models/sf_message_mrp_production.py | 12 +++++++----- sf_message/models/sf_message_stock_picking.py | 17 ++++++++++++++++- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/sf_message/models/sf_message_mrp_production.py b/sf_message/models/sf_message_mrp_production.py index 44a100f3..a60f2161 100644 --- a/sf_message/models/sf_message_mrp_production.py +++ b/sf_message/models/sf_message_mrp_production.py @@ -1,3 +1,4 @@ +import logging import re from odoo import models, fields, api, _ from urllib.parse import urlencode @@ -35,19 +36,20 @@ class SFMessageMrpProduction(models.Model): [('origin', '=', mrp_production.origin), ('picking_type_id.sequence_code', '=', 'SFP'), ('state', '=', 'assigned')], limit=1) if stock_picking_sfp: - url = self.request_url() + url = self.request_url(stock_picking_sfp.id) content = content.replace('{{name}}', stock_picking_sfp.name).replace( '{{sale_order_name}}', mrp_production.origin).replace('{{request_url}}', url) contents.append(content) + logging.info('生产完工入库提醒: %s' % contents) return contents - def request_url(self): + def request_url(self, id): url = self.env['ir.config_parameter'].get_param('web.base.url') - action_id = self.env.ref('mrp.mrp_production_action').id + action_id = self.env.ref('stock.action_picking_tree_all').id menu_id = self.env['ir.model.data'].search([('name', '=', 'module_theme_treehouse')]).id # 查询参数 - params = {'menu_id': menu_id, 'action': action_id, 'model': 'mrp.production', - 'view_type': 'kanban'} + params = {'id': id, 'menu_id': menu_id, 'action': action_id, 'model': 'mrp.production', + 'view_type': 'form'} # 拼接查询参数 query_string = urlencode(params) # 拼接URL diff --git a/sf_message/models/sf_message_stock_picking.py b/sf_message/models/sf_message_stock_picking.py index d98b475f..9d7c7f0e 100644 --- a/sf_message/models/sf_message_stock_picking.py +++ b/sf_message/models/sf_message_stock_picking.py @@ -1,3 +1,4 @@ +import logging import re from odoo import models, fields, api, _ from urllib.parse import urlencode @@ -40,9 +41,10 @@ class SFMessageStockPicking(models.Model): ('picking_type_id.sequence_code', '=', 'OUT')]) if stock_picking_out and len(stock_picking_out) > 0: content = message_queue_id.message_template_id.content - url = self.request_url() + url = self.request_url1(stock_picking_out.id) content = content.replace('{{name}}', stock_picking_out.name).replace( '{{sale_order_name}}', stock_picking_out.origin).replace('{{request_url}}', url) + logging.info('订单发货提醒: %s' % content) return content def _get_message(self, message_queue_ids): @@ -96,3 +98,16 @@ class SFMessageStockPicking(models.Model): # 拼接URL full_url = url + "/web#" + query_string return full_url + + def request_url1(self, id): + url = self.env['ir.config_parameter'].get_param('web.base.url') + action_id = self.env.ref('stock.action_picking_tree_all').id + menu_id = self.env['ir.model.data'].search([('name', '=', 'module_theme_treehouse')]).id + # 查询参数 + params = {'id': id, 'menu_id': menu_id, 'action': action_id, 'model': 'stock.picking', + 'view_type': 'form'} + # 拼接查询参数 + query_string = urlencode(params) + # 拼接URL + full_url = url + "/web#" + query_string + return full_url