# -*- coding: utf-8 -*- import logging from odoo import fields, models, api _logger = logging.getLogger(__name__) # 材料 class MrsProductionMaterials(models.Model): _name = 'mrs.production.materials' _description = '材料' remark = fields.Text("备注") name = fields.Char('名称') partner_ids = fields.Many2many('res.partner', 'materials_ids', '加工工厂') materials_model_ids = fields.One2many('mrs.materials.model', 'materials_id', '材料型号') materials_no = fields.Char("编码") active = fields.Boolean('有效', default=True) # 材料型号 class MrsMaterialModel(models.Model): _name = 'mrs.materials.model' _description = '材料型号' remark = fields.Text("备注") name = fields.Char('型号名') need_h = fields.Boolean("热处理", default="false") mf_materia_post = fields.Char("热处理后密度") density = fields.Float("密度(kg/m³)") materials_id = fields.Many2one('mrs.production.materials', "材料名") materials_num = fields.Char("编码号") materials_no = fields.Char("编码") active = fields.Boolean('有效', default=True) # 工艺 编码,名称,备注 class MrsProductionProcess(models.Model): _name = 'mrs.production.process' _description = '表面工艺' name = fields.Char('表面工艺') remark = fields.Text("备注") processing_order_ids = fields.One2many('mrs.processing.order', 'production_process_id', string='工序') partner_process_ids = fields.Many2many('res.partner', 'process_ids', '加工工厂') process_encode = fields.Char("编码") active = fields.Boolean('有效', default=True) class MrsProcessingTechnology(models.Model): _name = 'mrs.processing.technology' _description = '加工工艺' remark = fields.Text("备注") name = fields.Char('加工工艺', index=True) remark = fields.Text('备注', index=True) process_encode = fields.Char("编码") processing_order_ids = fields.Many2many('mrs.processing.order', 'mrs_associated_processes', index=True, string='工序') active = fields.Boolean('有效', default=True) class MrsProcessingOrder(models.Model): _name = 'mrs.processing.order' _description = '工序' sequence = fields.Integer('Sequence') processing_technology_ids = fields.Many2many('mrs.processing.technology', 'mrs_associated_processes', index=True, string='加工工艺') production_process_id = fields.Many2one('mrs.production.process', string="表面工艺") class Tray(models.Model): _name = 'sf.tray' _description = '托盘' code = fields.Char('编码',copy=False) name = fields.Char('名称') state = fields.Selection( [("空闲", "空闲"), ("占用", "占用"), ("报损", "报损")], default="空闲", string="状态") active = fields.Boolean('有效', default=True)