修复模板类型工序

This commit is contained in:
jinling.yang
2022-11-01 17:30:25 +08:00
parent 7067b29735
commit ae85009a18
9 changed files with 83 additions and 70 deletions

View File

@@ -6,7 +6,7 @@ class ModelType(models.Model):
_description = '模型类型'
name = fields.Char('名称')
routing_tmpl_id = fields.One2many('sf.model.type.routing.sort', 'model_type_id', '工序模板')
routing_tmpl_ids = fields.One2many('sf.model.type.routing.sort', 'model_type_id', '工序模板')
class ResMrpRoutingWorkcenter(models.Model):
@@ -14,9 +14,16 @@ class ResMrpRoutingWorkcenter(models.Model):
code = fields.Char('唯一编码')
is_repeat = fields.Boolean('重复', default=False)
workcenter_id = fields.Many2many('mrp.workcenter', required=False)
workcenter_id = fields.Many2one('mrp.workcenter', required=False)
workcenter_ids = fields.Many2many('mrp.workcenter', 'rel_workcenter_route', required=True)
bom_id = fields.Many2one('mrp.bom', required=False)
route_workcenter_sort_id = fields.Many2many('sf.model.type.routing.sort')
# 获得当前登陆者公司
def get_company_id(self):
company = self.env.ref('base.main_company')
return company.id
company_id = fields.Many2one('res.company', default=lambda self: self.env.company)
class ModelTypeRoutingSort(models.Model):
@@ -24,8 +31,11 @@ class ModelTypeRoutingSort(models.Model):
_description = '工序排序'
sequence = fields.Integer('Sequence')
route_workcenter_id = fields.Many2many('mrp.routing.workcenter')
route_workcenter_id = fields.Many2one('mrp.routing.workcenter')
is_repeat = fields.Boolean('重复', related='route_workcenter_id.is_repeat')
workcenter_ids = fields.Many2many('mrp.workcenter', required=False, related='route_workcenter_id.workcenter_ids')
model_type_id = fields.Many2one('sf.model.type')
_sql_constraints = [
('route_model_type_uniq', 'unique (route_workcenter_id,model_type_id)', '工序不能重复!')
]

View File

@@ -49,15 +49,16 @@ class ResProductTemplate(models.Model):
# 并根据模型类型计算出产品的胚料尺寸;
@api.onchange('model_type_id')
def count_embryo_size(self):
bom = self.env['mrp.bom.line'].search(
[('product_tmpl_id', '=', self.id)])
bom = self.env['product.product'].search(
[('categ_id.is_embryo', '=', True), ('product_tmpl_id', '=', self.id)],
limit=1,
order='volume desc'
)
for item in self:
print(bom.product_tmpl_id)
print(bom.model_long)
item.model_long = bom.model_long + 1
print(item.model_long)
item.model_long = bom.embryo_long + 1
item.embryo_width = bom.embryo_width + 1
item.embryo_height = bom.embryo_height + 1
item.volume = item.model_long * item.embryo_width * item.embryo_height