优化报废

This commit is contained in:
jinling.yang
2024-08-20 14:30:42 +08:00
parent 3c8dac799d
commit e259fd0c05
2 changed files with 56 additions and 91 deletions

View File

@@ -72,54 +72,7 @@ class ProductionWizard(models.TransientModel):
}
ret['programming_list'].append(vals)
actions_to_run = defaultdict(list)
list2 = []
Procurement = namedtuple('Procurement', ['product_id', 'product_qty',
'product_uom', 'location_id', 'name', 'origin',
'company_id',
'values'])
s = Procurement(product_id=self.production_id.product_id, product_qty=1.0,
product_uom=self.production_id.product_uom_id,
location_id=self.env['stock.location'].search([('usage', '=', 'customer')]),
name=self.production_id.product_id.display_name,
origin=self.production_id.origin,
company_id=self.production_id.company_id,
values={
'group_id': self.production_id.procurement_group_id,
'sale_line_id': False,
'date_planned': fields.Date.today(),
'date_deadline': fields.Date.today(),
# 'route_ids': stock.route(),
'warehouse_id': self.production_id.warehouse_id,
# 'partner_id': self.production_id.partner_id,
'product_description_variants': '',
'company_id': self.production_id.company_id,
# 'product_packaging_id': product.packaging(),
'sequence': 10,
'priority': '0'
},
)
rule = self.env['procurement.group']._get_rule(s.product_id, s.location_id,s.values)
list2.append(s)
# for procurement in list2:
# rule = self.env['procurement.group']._get_rule(procurement.product_id, procurement.location_id,
# procurement.values)
# action = 'pull'
# actions_to_run[action].append((procurement, rule))
# # list2.append(tuple(s))
# # list2.append(self.production_id.product_id.route_ids[1])
# for action, procurements in actions_to_run.items():
# bb = action
# aa = procurements
# if hasattr(self.env['stock.rule'], '_run_%s' % action):
# try:
# getattr(self.env['stock.rule'], '_run_%s' % action)(procurements)
# except ProcurementException as e:
# procurement_errors += e.procurement_exceptions
# else:
# _logger.error("The method _run_%s doesn't exist on the procurement rules" % action)
# self.env['stock.rule']._run_pull(actions_to_run)
new_production = self.production_id.recreateManufacturing(ret, s, rule)
new_production = self.production_id.recreateManufacturing(ret)
if self.is_reprogramming is False:
for panel in new_production.product_id.model_processing_panel.split(','):
scrap_cnc_workorder = max(