From 975ced08cb0b29932e6e0de58dc8cd6ac9361b4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=83=A1=E5=B0=A7?= Date: Tue, 12 Nov 2024 14:00:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=88=90=E5=93=81=E5=B7=A5?= =?UTF-8?q?=E5=BA=8F=E6=A8=A1=E6=9D=BF=EF=BC=88=E4=BA=BA=E5=B7=A5=E7=BA=BF?= =?UTF-8?q?=E4=B8=8B=E5=8A=A0=E5=B7=A5=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_manufacturing/models/model_type.py | 23 +++++++++++++++++-- sf_manufacturing/security/ir.model.access.csv | 5 ++-- sf_manufacturing/views/model_type_view.xml | 11 +++++++++ 3 files changed, 35 insertions(+), 4 deletions(-) diff --git a/sf_manufacturing/models/model_type.py b/sf_manufacturing/models/model_type.py index 27ebfb03..548b1f73 100644 --- a/sf_manufacturing/models/model_type.py +++ b/sf_manufacturing/models/model_type.py @@ -8,17 +8,20 @@ class ModelType(models.Model): name = fields.Char('名称') embryo_tolerance = fields.Integer('坯料容余') product_routing_tmpl_ids = fields.One2many('sf.product.model.type.routing.sort', 'product_model_type_id', - '成品工序模板') + '成品工序模板(自动化产线加工') embryo_routing_tmpl_ids = fields.One2many('sf.embryo.model.type.routing.sort', 'embryo_model_type_id', '坯料工序模板') surface_technics_routing_tmpl_ids = fields.One2many('sf.surface_technics.model.type.routing.sort', 'surface_technics_model_type_id', '表面工艺工序模板') + manual_product_routing_tmpl_ids = fields.One2many('sf.manual.product.model.type.routing.sort', + 'manual_product_model_type_id', + '成品工序模板(人工线下加工)') class ProductModelTypeRoutingSort(models.Model): _name = 'sf.product.model.type.routing.sort' - _description = '成品工序排序' + _description = '成品工序排序(自动化产线加工)' sequence = fields.Integer('Sequence') route_workcenter_id = fields.Many2one('mrp.routing.workcenter', @@ -65,3 +68,19 @@ class SurfaceTechnicsModelTypeRoutingSort(models.Model): 'route_model_type_uniq', 'unique (route_workcenter_id,surface_technics_model_type_id)', '表面工艺工序不能重复!') ] + +class ManualProductModelTypeRoutingSort(models.Model): + _name = 'sf.manual.product.model.type.routing.sort' + _description = '成品工序排序(人工线下加工)' + + sequence = fields.Integer('Sequence') + route_workcenter_id = fields.Many2one('mrp.routing.workcenter', + domain=[('routing_type', 'in', ['装夹预调', 'CNC加工', '解除装夹'])]) + is_repeat = fields.Boolean('重复', related='route_workcenter_id.is_repeat') + routing_type = fields.Selection(string="工序类型", related='route_workcenter_id.routing_type') + workcenter_ids = fields.Many2many('mrp.workcenter', required=False, related='route_workcenter_id.workcenter_ids') + manual_product_model_type_id = fields.Many2one('sf.model.type') + + _sql_constraints = [ + ('route_model_type_uniq', 'unique (route_workcenter_id,manual_product_model_type_id)', '成品工序不能重复!') + ] \ No newline at end of file diff --git a/sf_manufacturing/security/ir.model.access.csv b/sf_manufacturing/security/ir.model.access.csv index 21386995..693a39a2 100644 --- a/sf_manufacturing/security/ir.model.access.csv +++ b/sf_manufacturing/security/ir.model.access.csv @@ -172,5 +172,6 @@ access_sf_production_technology_wizard_group_plan_dispatch,sf_production_technol access_sf_production_technology_wizard_group_sf_mrp_manager,sf_production_technology_wizard_group_sf_mrp_manager,model_sf_production_technology_wizard,sf_base.group_sf_mrp_manager,1,1,1,0 access_sf_production_technology_wizard_group_production_engineer,sf_production_technology_wizard_group_production_engineer,model_sf_production_technology_wizard,sf_base.group_production_engineer,1,1,1,0 - - +access_sf_manual_product_model_type_routing_sort_group_sf_mrp_user,sf_manual_product_model_type_routing_sort,model_sf_manual_product_model_type_routing_sort,sf_base.group_sf_mrp_user,1,0,0,0 +access_sf_manual_product_model_type_routing_sort_manager,sf_manual_product_model_type_routing_sort,model_sf_manual_product_model_type_routing_sort,sf_base.group_sf_mrp_manager,1,1,1,0 +access_sf_manual_product_model_type_routing_sort_group_plan_dispatch,sf_manual_product_model_type_routing_sort_group_plan_dispatch,model_sf_manual_product_model_type_routing_sort,sf_base.group_plan_dispatch,1,0,0,0 diff --git a/sf_manufacturing/views/model_type_view.xml b/sf_manufacturing/views/model_type_view.xml index 09877a83..56d5f94c 100644 --- a/sf_manufacturing/views/model_type_view.xml +++ b/sf_manufacturing/views/model_type_view.xml @@ -44,6 +44,17 @@ + + + + + + + + + + +