diff --git a/sf_manufacturing/models/mrp_workcenter.py b/sf_manufacturing/models/mrp_workcenter.py index 81a252fb..34185d4e 100644 --- a/sf_manufacturing/models/mrp_workcenter.py +++ b/sf_manufacturing/models/mrp_workcenter.py @@ -1,4 +1,5 @@ import datetime +import logging from datetime import timedelta, time from collections import defaultdict from odoo import fields, models, api @@ -6,6 +7,8 @@ from odoo.addons.resource.models.resource import Intervals from odoo.exceptions import UserError, ValidationError import math +_logger = logging.getLogger(__name__) + class ResWorkcenter(models.Model): _name = "mrp.workcenter" @@ -225,7 +228,11 @@ class ResWorkcenter(models.Model): if plan_ids: sum_qty = sum([p.product_qty for p in plan_ids]) date_planned_working_hours = self._compute_effective_working_hours_day1(date_planned) - if sum_qty >= date_planned_working_hours: + default_capacity = round( + self.production_line_hour_capacity * date_planned_working_hours, 2) + _logger.info('排程日期:%s,计划数量:%s,日产能:%s,日工时:%s' % ( + date_planned, sum_qty, default_capacity, date_planned_working_hours)) + if sum_qty >= default_capacity: return False return True diff --git a/sf_message/models/sf_message_purchase.py b/sf_message/models/sf_message_purchase.py index 96d0f8dc..b456cc87 100644 --- a/sf_message/models/sf_message_purchase.py +++ b/sf_message/models/sf_message_purchase.py @@ -19,9 +19,8 @@ class SFMessagePurchase(models.Model): return contents def request_url(self, id): - we_config_info = self.env['we.config'].sudo().search([], limit=1) - redirect_domain = self.env['we.app'].sudo().search([('id', '=', we_config_info.odoo_app_id.id)]).redirect_domain - full_url = 'https://%s/' % redirect_domain + url = self.env['ir.config_parameter'].get_param('web.base.url') + full_url = 'https://%s/' % url action_id = self.env.ref('purchase.purchase_form_action').id menu_id = self.env['ir.model.data'].search([('name', '=', 'module_website_payment')]).id # 查询参数 diff --git a/sf_message/models/sf_message_sale.py b/sf_message/models/sf_message_sale.py index e8fef9ed..8a434541 100644 --- a/sf_message/models/sf_message_sale.py +++ b/sf_message/models/sf_message_sale.py @@ -47,7 +47,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) # 确认接单的处理 diff --git a/sf_message/models/sf_message_stock_picking.py b/sf_message/models/sf_message_stock_picking.py index fdb9d4cf..68095b68 100644 --- a/sf_message/models/sf_message_stock_picking.py +++ b/sf_message/models/sf_message_stock_picking.py @@ -52,9 +52,8 @@ class SFMessageStockPicking(models.Model): return res def request_url(self): - we_config_info = self.env['we.config'].sudo().search([], limit=1) - redirect_domain = self.env['we.app'].sudo().search([('id', '=', we_config_info.odoo_app_id.id)]).redirect_domain - full_url = 'https://%s/' % redirect_domain + url = self.env['ir.config_parameter'].get_param('web.base.url') + full_url = 'https://%s/' % url action_id = self.env.ref('stock.stock_picking_type_action').id menu_id = self.env['ir.model.data'].search([('name', '=', 'module_theme_treehouse')]).id # 查询参数 diff --git a/sf_message/models/sf_message_workorder.py b/sf_message/models/sf_message_workorder.py index d2e0fba2..047d6118 100644 --- a/sf_message/models/sf_message_workorder.py +++ b/sf_message/models/sf_message_workorder.py @@ -40,9 +40,8 @@ class SFMessageWork(models.Model): return contents def request_url(self): - we_config_info = self.env['we.config'].sudo().search([], limit=1) - redirect_domain = self.env['we.app'].sudo().search([('id', '=', we_config_info.odoo_app_id.id)]).redirect_domain - full_url = 'https://%s/' % redirect_domain + url = self.env['ir.config_parameter'].get_param('web.base.url') + full_url = 'https://%s/' % url action_id = self.env.ref('sf_manufacturing.mrp_workorder_action_tablet').id menu_id = self.env['ir.model.data'].search([('name', '=', 'module_stock_dropshipping')]).id # 查询参数 diff --git a/sf_mrs_connect/models/order_price.py b/sf_mrs_connect/models/order_price.py index 1e373f4d..ec3ff2d5 100644 --- a/sf_mrs_connect/models/order_price.py +++ b/sf_mrs_connect/models/order_price.py @@ -18,6 +18,7 @@ class OrderPrice(models.Model): return True except ValueError: return False + @api.depends('sale_order_id.order_line.remark') def _compute_bfm_amount_total(self): for record in self: amount_total = 0