34 lines
1.5 KiB
Python
34 lines
1.5 KiB
Python
from odoo import models, fields, api
|
|
|
|
class ProductCreationWizard(models.TransientModel):
|
|
_name = 'product.creation.wizard'
|
|
_description = '产品创建向导'
|
|
|
|
# 唯一需要用户输入的字段:产品类别
|
|
categ_id = fields.Many2one(
|
|
'product.category',
|
|
string='产品类别',
|
|
required=True,default=lambda self: self.env.ref(
|
|
'sf_manufacturing.product_category_outsource_other_process',
|
|
raise_if_not_found=False
|
|
).sudo(),
|
|
)
|
|
process_parameter_id = fields.Many2one('sf.production.process.parameter')
|
|
def action_create_product(self):
|
|
res_partner = self.env['res.partner'].search([('name','=','湖南傲派自动化设备有限公司')])
|
|
name = self.process_parameter_id.process_id.name or self.process_parameter_id.routing_id.name
|
|
default_values = {
|
|
'detailed_type': 'service',
|
|
'name': f"{name}_{self.process_parameter_id.name}",
|
|
'invoice_policy': 'delivery',
|
|
'categ_id': self.categ_id.id,
|
|
'description': f"基于{self.process_parameter_id.name}创建的服务产品",
|
|
'sale_ok': True, # 可销售
|
|
'purchase_ok': True, # 可采购
|
|
'server_product_process_parameters_id': self.process_parameter_id.id,
|
|
'seller_ids': [(0, 0, {
|
|
# 'delay': 1,
|
|
'partner_id': res_partner.id,
|
|
'price': 1, })],
|
|
}
|
|
self.env['product.template'].create(default_values) |