处理 采购订单确认时,一补货组的补货单没有合并问题
This commit is contained in:
@@ -21,6 +21,7 @@ from odoo.addons.sf_base.commons.common import Common
|
|||||||
from odoo.exceptions import UserError
|
from odoo.exceptions import UserError
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
from odoo.exceptions import ValidationError
|
from odoo.exceptions import ValidationError
|
||||||
|
from dateutil.relativedelta import relativedelta
|
||||||
|
|
||||||
|
|
||||||
class stockWarehouse(models.Model):
|
class stockWarehouse(models.Model):
|
||||||
@@ -727,6 +728,33 @@ class StockPicking(models.Model):
|
|||||||
production.workorder_ids.write({'back_button_display': False})
|
production.workorder_ids.write({'back_button_display': False})
|
||||||
return res
|
return res
|
||||||
|
|
||||||
|
def _prepare_subcontract_mo_vals(self, subcontract_move, bom):
|
||||||
|
subcontract_move.ensure_one()
|
||||||
|
group = self.env['procurement.group'].sudo().search([('name', '=', self.name)])
|
||||||
|
if not group:
|
||||||
|
group = self.env['procurement.group'].create({
|
||||||
|
'name': self.name,
|
||||||
|
'partner_id': self.partner_id.id,
|
||||||
|
})
|
||||||
|
product = subcontract_move.product_id
|
||||||
|
warehouse = self._get_warehouse(subcontract_move)
|
||||||
|
vals = {
|
||||||
|
'company_id': subcontract_move.company_id.id,
|
||||||
|
'procurement_group_id': group.id,
|
||||||
|
'subcontractor_id': subcontract_move.picking_id.partner_id.commercial_partner_id.id,
|
||||||
|
'picking_ids': [subcontract_move.picking_id.id],
|
||||||
|
'product_id': product.id,
|
||||||
|
'product_uom_id': subcontract_move.product_uom.id,
|
||||||
|
'bom_id': bom.id,
|
||||||
|
'location_src_id': subcontract_move.picking_id.partner_id.with_company(subcontract_move.company_id).property_stock_subcontractor.id,
|
||||||
|
'location_dest_id': subcontract_move.picking_id.partner_id.with_company(subcontract_move.company_id).property_stock_subcontractor.id,
|
||||||
|
'product_qty': subcontract_move.product_uom_qty,
|
||||||
|
'picking_type_id': warehouse.subcontracting_type_id.id,
|
||||||
|
'date_planned_start': subcontract_move.date - relativedelta(days=product.produce_delay)
|
||||||
|
}
|
||||||
|
return vals
|
||||||
|
|
||||||
|
|
||||||
# 创建 外协出库入单
|
# 创建 外协出库入单
|
||||||
def create_outcontract_picking(self, workorders, item, sorted_workorders):
|
def create_outcontract_picking(self, workorders, item, sorted_workorders):
|
||||||
production = workorders[0].production_id
|
production = workorders[0].production_id
|
||||||
|
|||||||
Reference in New Issue
Block a user