优化报废
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
# Part of YiZuo. See LICENSE file for full copyright and licensing details.
|
||||
import logging
|
||||
from odoo.exceptions import UserError, ValidationError
|
||||
from collections import defaultdict, namedtuple
|
||||
from odoo.addons.stock.models.stock_rule import ProcurementException
|
||||
from datetime import datetime
|
||||
from odoo import models, api, fields, _
|
||||
|
||||
@@ -11,7 +13,7 @@ class ProductionWizard(models.TransientModel):
|
||||
_description = '制造订单向导'
|
||||
|
||||
production_id = fields.Many2one('mrp.production', string='制造订单号')
|
||||
is_reprogramming = fields.Boolean(string='申请重新编程', default=True)
|
||||
is_reprogramming = fields.Boolean(string='申请重新编程', default=False)
|
||||
is_remanufacture = fields.Boolean(string='重新生成制造订单', default=True)
|
||||
programming_state = fields.Selection(
|
||||
[('待编程', '待编程'), ('编程中', '编程中'), ('已编程', '已编程'), ('已编程未下发', '已编程未下发'),
|
||||
@@ -69,7 +71,37 @@ class ProductionWizard(models.TransientModel):
|
||||
'%Y-%m-%d %H:%M:%S')
|
||||
}
|
||||
ret['programming_list'].append(vals)
|
||||
new_production = self.production_id.recreateManufacturing(ret)
|
||||
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.production_id.product_id.route_ids[1],
|
||||
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.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.id,
|
||||
# 'partner_id': self.production_id.partner_id,
|
||||
'product_description_variants': '',
|
||||
'company_id': self.production_id.company_id.id,
|
||||
# 'product_packaging_id': product.packaging(),
|
||||
'sequence': 10,
|
||||
'priority': '0'
|
||||
},
|
||||
)
|
||||
list2.append(tuple(s))
|
||||
list2.append(self.production_id.product_id.route_ids[1])
|
||||
actions_to_run = defaultdict(list2)
|
||||
self.env['stock.rule']._run_pull(actions_to_run)
|
||||
# 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(
|
||||
|
||||
Reference in New Issue
Block a user