diff --git a/sf_manufacturing/models/mrp_production.py b/sf_manufacturing/models/mrp_production.py
index 466e9a62..8e1f7199 100644
--- a/sf_manufacturing/models/mrp_production.py
+++ b/sf_manufacturing/models/mrp_production.py
@@ -797,7 +797,7 @@ class MrpProduction(models.Model):
})
return action
- # 返工
+ # 报废
def button_scrap_new(self):
cloud_programming = self._cron_get_programming_state()
return {
@@ -969,12 +969,12 @@ class MrpProduction(models.Model):
'location_dest_id', '=', self.env['stock.location'].search([('parent_path', '=', '2/5/')]).id),
('location_src_id', '=', self.env['stock.location'].search(
[('barcode', '=', 'CP')]).id)])
- origin = move._prepare_procurement_origin()
+ # origin = move._prepare_procurement_origin()
procurement_requests.append(self.env['procurement.group'].Procurement(
move.product_id, 1.0, move.product_uom,
self.env['stock.location'].search([('barcode', '=', 'CP')]),
rule and rule.name or "/",
- origin, move.company_id, move_values))
+ sale_order.name, move.company_id, move_values))
self.env['procurement.group'].run(procurement_requests,
raise_user_error=not self.env.context.get('from_orderpoint'))
# self.env['stock.move'].sudo().create(productions._get_moves_finished_values())
@@ -986,7 +986,6 @@ class MrpProduction(models.Model):
[('origin', '=', self.origin)], order='id desc', limit=1)
move = self.env['stock.move'].search([('origin', '=', productions.name)], order='id desc')
for mo in move:
- print(mo.id)
if mo.procure_method == 'make_to_order' and mo.name != productions.name:
if mo.name == '/':
domain = [('barcode', '=', 'WH-PC'), ('sequence_code', '=', 'PC')]
@@ -1001,6 +1000,14 @@ class MrpProduction(models.Model):
if mo.production_id:
if mo.production_id != productions:
mo.production_id = False
+ mo_move = self.env['stock.move'].search(
+ [('origin', '=', sale_order.name), ('reference', 'ilike', 'WH/MO/')])
+ if mo_move:
+ sfp_move = self.env['stock.move'].search(
+ [('origin', '=', sale_order.name), ('reference', 'ilike', 'WH/SFP/')], limit=1)
+ mo_move.write({'reference': sfp_move.reference, 'partner_id': sfp_move.partner_id.id,
+ 'picking_id': sfp_move.picking_id.id, 'picking_type_id': sfp_move.picking_type_id.id,
+ 'production_id': False})
productions.write({'programming_no': self.programming_no, 'is_remanufacture': True})
productions.procurement_group_id.mrp_production_ids.move_dest_ids.write(
{'group_id': self.env['procurement.group'].search([('name', '=', sale_order.name)])})
diff --git a/sf_manufacturing/views/mrp_production_addional_change.xml b/sf_manufacturing/views/mrp_production_addional_change.xml
index b1c1ff1e..99d27576 100644
--- a/sf_manufacturing/views/mrp_production_addional_change.xml
+++ b/sf_manufacturing/views/mrp_production_addional_change.xml
@@ -130,7 +130,7 @@
attrs="{'invisible': ['|',('state', '!=', 'rework') ,('programming_state', '!=', '已编程')]}"/>
+ attrs="{'invisible': ['|',('is_scrap', '=', False),('state','=','cancel')]}"/>