From f88dd790a0286847b55e22bab5814a13beca0a07 Mon Sep 17 00:00:00 2001 From: yuxianghui <1608204036@qq.com> Date: Fri, 18 Aug 2023 15:11:36 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E7=BA=BF=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=85=B3=E8=81=94=E5=B7=A5=E4=BD=9C=E4=B8=AD=E5=BF=83?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=EF=BC=8C=E4=BC=98=E5=8C=96=E7=9C=8B=E6=9D=BF?= =?UTF-8?q?=E5=92=8Cform=E8=A7=86=E5=9B=BE=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../models/production_line_base.py | 4 +++- .../views/production_line_view.xml | 18 +++++++++++------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/sf_manufacturing/models/production_line_base.py b/sf_manufacturing/models/production_line_base.py index f9a30d36..a8c41cd3 100644 --- a/sf_manufacturing/models/production_line_base.py +++ b/sf_manufacturing/models/production_line_base.py @@ -21,10 +21,12 @@ class ProductionLine(models.Model): num = "%03d" % m return num - name = fields.Char('生产线') + mrp_workcenter_ids = fields.One2many('mrp.workcenter', 'production_line_id', '工作中心') + name = fields.Char('生产线', size=20, required=True) code = fields.Char('编码', default=_get_code, readonly=True) remark = fields.Char('备注') + diff --git a/sf_manufacturing/views/production_line_view.xml b/sf_manufacturing/views/production_line_view.xml index b9fd459f..f12f6d98 100644 --- a/sf_manufacturing/views/production_line_view.xml +++ b/sf_manufacturing/views/production_line_view.xml @@ -5,8 +5,9 @@ sf.production.line - + + @@ -18,13 +19,16 @@
+
+

+ +

+
- - - - + +
@@ -54,8 +58,8 @@
-
- +

+
From d8489a5f076671cf093d3ca4d386c45710be06e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?WEB=E8=AE=B8=E4=BD=95=E5=93=B2=5Cxuhez?= Date: Mon, 21 Aug 2023 10:08:55 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=88=B6=E9=80=A0=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=A0=B7=E5=BC=8Fbug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_base/static/src/scss/test.scss | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sf_base/static/src/scss/test.scss b/sf_base/static/src/scss/test.scss index 13e1580e..3abd10e1 100644 --- a/sf_base/static/src/scss/test.scss +++ b/sf_base/static/src/scss/test.scss @@ -34,6 +34,6 @@ div:has(.o_required_modifier)>label::before { display: inline !important; } -.o_required_modifier { - display: flex !important; +td.o_required_modifier { + display: table-cell !important; } \ No newline at end of file From 0fa2656aad6902c19090a2fa37c1de121f52217a Mon Sep 17 00:00:00 2001 From: yuxianghui <1608204036@qq.com> Date: Mon, 21 Aug 2023 10:11:54 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=88=80=E5=85=B7=E7=9A=84=E5=88=80=E5=85=B7=E7=89=A9=E6=96=99?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_tool_management/models/base.py | 120 +++---- sf_tool_management/views/tool_base_views.xml | 344 ++++++++++++------- 2 files changed, 288 insertions(+), 176 deletions(-) diff --git a/sf_tool_management/models/base.py b/sf_tool_management/models/base.py index f780dad9..d39b92fa 100644 --- a/sf_tool_management/models/base.py +++ b/sf_tool_management/models/base.py @@ -52,18 +52,18 @@ class FunctionalCuttingToolEntity(models.Model): 'sf_functional_cutting_tool_entity_id', string='夹头型号', domain= [('cutting_tool_type', '=', '夹头')]) - cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') - - @api.onchange('cutting_tool_material') - def _onchange_cutting_tool_material(self): - for record in self: - if record: - if record.cutting_tool_material == '1': - record.mrs_cutting_tool_integral_model_ids = None - if record.cutting_tool_material == '0': - record.mrs_cutting_tool_blade_model_ids = None - record.mrs_cutting_tool_cutterbar_model_ids = None - record.mrs_cutting_tool_cutterpad_model_ids = None + # cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') + # + # @api.onchange('cutting_tool_material') + # def _onchange_cutting_tool_material(self): + # for record in self: + # if record: + # if record.cutting_tool_material == '1': + # record.mrs_cutting_tool_integral_model_ids = None + # if record.cutting_tool_material == '0': + # record.mrs_cutting_tool_blade_model_ids = None + # record.mrs_cutting_tool_cutterbar_model_ids = None + # record.mrs_cutting_tool_cutterpad_model_ids = None diameter = fields.Float('直径(mm)') @@ -126,18 +126,18 @@ class FunctionalCuttingToolEntityCache(models.Model): 'sf_functional_cutting_tool_entity_cache_id', string='夹头型号', domain= [('cutting_tool_type', '=', '夹头')]) - cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') - - @api.onchange('cutting_tool_material') - def _onchange_cutting_tool_material(self): - for record in self: - if record: - if record.cutting_tool_material == '1': - record.mrs_cutting_tool_integral_model_ids = None - if record.cutting_tool_material == '0': - record.mrs_cutting_tool_blade_model_ids = None - record.mrs_cutting_tool_cutterbar_model_ids = None - record.mrs_cutting_tool_cutterpad_model_ids = None + # cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') + # + # @api.onchange('cutting_tool_material') + # def _onchange_cutting_tool_material(self): + # for record in self: + # if record: + # if record.cutting_tool_material == '1': + # record.mrs_cutting_tool_integral_model_ids = None + # if record.cutting_tool_material == '0': + # record.mrs_cutting_tool_blade_model_ids = None + # record.mrs_cutting_tool_cutterbar_model_ids = None + # record.mrs_cutting_tool_cutterpad_model_ids = None diameter = fields.Float('直径(mm)') @@ -203,18 +203,18 @@ class FunctionalToolWarning(models.Model): string='夹头型号', readonly=True, domain=[('cutting_tool_type', '=', '夹头')], related='functional_cutting_tool_id.mrs_cutting_tool_cutterhead_model_ids') - cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') - - @api.onchange('cutting_tool_material') - def _onchange_cutting_tool_material(self): - for record in self: - if record: - if record.cutting_tool_material == '1': - record.mrs_cutting_tool_integral_model_ids = None - if record.cutting_tool_material == '0': - record.mrs_cutting_tool_blade_model_ids = None - record.mrs_cutting_tool_cutterbar_model_ids = None - record.mrs_cutting_tool_cutterpad_model_ids = None + # cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') + # + # @api.onchange('cutting_tool_material') + # def _onchange_cutting_tool_material(self): + # for record in self: + # if record: + # if record.cutting_tool_material == '1': + # record.mrs_cutting_tool_integral_model_ids = None + # if record.cutting_tool_material == '0': + # record.mrs_cutting_tool_blade_model_ids = None + # record.mrs_cutting_tool_cutterbar_model_ids = None + # record.mrs_cutting_tool_cutterpad_model_ids = None diameter = fields.Float('直径(mm)', readonly=True, related='functional_cutting_tool_id.diameter') tool_grade = fields.Selection([('1', 'P1'), ('2', 'P2'), ('3', 'P3'), ('4', 'P4'), ('5', 'P5'), ('6', 'P6')], @@ -329,18 +329,18 @@ class RealTimeDistributionOfFunctionalTools(models.Model): string='夹头型号', readonly=True, domain=[('cutting_tool_type', '=', '夹头')], related='functional_cutting_tool_id.mrs_cutting_tool_cutterhead_model_ids') - cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') - - @api.onchange('cutting_tool_material') - def _onchange_cutting_tool_material(self): - for record in self: - if record: - if record.cutting_tool_material == '1': - record.mrs_cutting_tool_integral_model_ids = None - if record.cutting_tool_material == '0': - record.mrs_cutting_tool_blade_model_ids = None - record.mrs_cutting_tool_cutterbar_model_ids = None - record.mrs_cutting_tool_cutterpad_model_ids = None + # cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') + # + # @api.onchange('cutting_tool_material') + # def _onchange_cutting_tool_material(self): + # for record in self: + # if record: + # if record.cutting_tool_material == '1': + # record.mrs_cutting_tool_integral_model_ids = None + # if record.cutting_tool_material == '0': + # record.mrs_cutting_tool_blade_model_ids = None + # record.mrs_cutting_tool_cutterbar_model_ids = None + # record.mrs_cutting_tool_cutterpad_model_ids = None diameter = fields.Float('直径(mm)', readonly=True, related='functional_cutting_tool_id.diameter') tool_grade = fields.Selection([('1', 'P1'), ('2', 'P2'), ('3', 'P3'), ('4', 'P4'), ('5', 'P5'), ('6', 'P6')], @@ -450,18 +450,18 @@ class InboundAndOutboundRecordsOfFunctionalTools(models.Model): string='夹头型号', readonly=True, domain=[('cutting_tool_type', '=', '夹头')], related='functional_cutting_tool_id.mrs_cutting_tool_cutterhead_model_ids') - cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') - - @api.onchange('cutting_tool_material') - def _onchange_cutting_tool_material(self): - for record in self: - if record: - if record.cutting_tool_material == '1': - record.mrs_cutting_tool_integral_model_ids = None - if record.cutting_tool_material == '0': - record.mrs_cutting_tool_blade_model_ids = None - record.mrs_cutting_tool_cutterbar_model_ids = None - record.mrs_cutting_tool_cutterpad_model_ids = None + # cutting_tool_material = fields.Selection([('0', '整体式刀具'), ('1', '组合式刀具')], string='刀具物料', default='0') + # + # @api.onchange('cutting_tool_material') + # def _onchange_cutting_tool_material(self): + # for record in self: + # if record: + # if record.cutting_tool_material == '1': + # record.mrs_cutting_tool_integral_model_ids = None + # if record.cutting_tool_material == '0': + # record.mrs_cutting_tool_blade_model_ids = None + # record.mrs_cutting_tool_cutterbar_model_ids = None + # record.mrs_cutting_tool_cutterpad_model_ids = None diameter = fields.Float('直径(mm)', readonly=True, related='functional_cutting_tool_id.diameter') tool_grade = fields.Selection([('1', 'P1'), ('2', 'P2'), ('3', 'P3'), ('4', 'P4'), ('5', 'P5'), ('6', 'P6')], diff --git a/sf_tool_management/views/tool_base_views.xml b/sf_tool_management/views/tool_base_views.xml index 02ab3ce6..361ea14a 100644 --- a/sf_tool_management/views/tool_base_views.xml +++ b/sf_tool_management/views/tool_base_views.xml @@ -35,36 +35,64 @@ - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -166,36 +194,64 @@ - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -335,36 +391,64 @@ - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -492,36 +576,64 @@ - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From cd671bdc882f53fac1482712cbde782d979c72cb Mon Sep 17 00:00:00 2001 From: "jinling.yang" Date: Mon, 21 Aug 2023 10:16:30 +0800 Subject: [PATCH 4/4] =?UTF-8?q?1.=E5=88=A0=E9=99=A4=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E6=94=BE=E5=BC=80=202.=E5=88=80=E5=85=B7=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=BB=A3=E7=A0=81=E8=BF=98=E5=8E=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_base/views/base_view.xml | 12 ++++---- sf_base/views/common_view.xml | 18 ++++++------ sf_base/views/fixture_view.xml | 4 +-- sf_base/views/functional_fixture_view.xml | 2 +- sf_base/views/tool_views.xml | 10 +++---- sf_mrs_connect/models/res_config_setting.py | 32 +++++++-------------- 6 files changed, 34 insertions(+), 44 deletions(-) diff --git a/sf_base/views/base_view.xml b/sf_base/views/base_view.xml index 6c4f9660..fe462908 100644 --- a/sf_base/views/base_view.xml +++ b/sf_base/views/base_view.xml @@ -25,7 +25,7 @@ tree.sf.machine.brand sf.machine.brand - + @@ -38,7 +38,7 @@ form.sf.machine.brand sf.machine.brand - + tree.sf.machine_tool.type sf.machine_tool.type - + @@ -103,7 +103,7 @@ form.sf.machine_tool.type sf.machine_tool.type - +

@@ -278,7 +278,7 @@ tree.sf.machine_tool.category sf.machine_tool.category - + @@ -485,7 +485,7 @@ tree.sf.machine.control_system sf.machine.control_system - + diff --git a/sf_base/views/common_view.xml b/sf_base/views/common_view.xml index e340650f..492a3b4e 100644 --- a/sf_base/views/common_view.xml +++ b/sf_base/views/common_view.xml @@ -23,7 +23,7 @@ sf.processing.technology - + @@ -45,7 +45,7 @@ sf.production.process.category - +

@@ -80,7 +80,7 @@ sf.production.process.category - + @@ -104,7 +104,7 @@ sf.production.process - + @@ -115,7 +115,7 @@ sf.production.process - +

@@ -195,7 +195,7 @@ sf.materials.model - +

@@ -238,7 +238,7 @@ sf.materials.model - + @@ -266,7 +266,7 @@ sf.production.materials - +

@@ -302,7 +302,7 @@ sf.production.materials - + diff --git a/sf_base/views/fixture_view.xml b/sf_base/views/fixture_view.xml index 153c0f91..6a402681 100644 --- a/sf_base/views/fixture_view.xml +++ b/sf_base/views/fixture_view.xml @@ -22,7 +22,7 @@ 夹具物料 sf.fixture.material - + @@ -87,7 +87,7 @@ 联装类型 sf.multi_mounting.type - + diff --git a/sf_base/views/functional_fixture_view.xml b/sf_base/views/functional_fixture_view.xml index 5a5c0405..e366f701 100644 --- a/sf_base/views/functional_fixture_view.xml +++ b/sf_base/views/functional_fixture_view.xml @@ -23,7 +23,7 @@ 功能夹具类型 sf.functional.fixture.type - + diff --git a/sf_base/views/tool_views.xml b/sf_base/views/tool_views.xml index 62f8c9c3..5b78270d 100644 --- a/sf_base/views/tool_views.xml +++ b/sf_base/views/tool_views.xml @@ -6,7 +6,7 @@ sf.cutting.tool.material.tree sf.cutting.tool.material - + @@ -153,7 +153,7 @@ sf.cutter.function.tree sf.functional.cutting.tool.model - + @@ -198,7 +198,7 @@ sf.cutting.tool.model.tree sf.cutting.tool.model - + @@ -210,7 +210,7 @@ sf.cutting.tool.model.form sf.cutting.tool.model - +

@@ -345,7 +345,7 @@ sf.cutting.tool.type.tree sf.cutting.tool.type - + diff --git a/sf_mrs_connect/models/res_config_setting.py b/sf_mrs_connect/models/res_config_setting.py index 4c3002e0..699b1bff 100644 --- a/sf_mrs_connect/models/res_config_setting.py +++ b/sf_mrs_connect/models/res_config_setting.py @@ -36,7 +36,6 @@ class ResConfigSettings(models.TransientModel): _logger.info("同步资源库品牌") self.env['sf.machine.control_system'].sync_all_machine_tool_type_control_system() _logger.info("同步资源库控制系统") - self.env['sf.machine_tool.category'].sync_all_machine_tool_category() _logger.info("同步资源库机床类型") # self.env['sf.production.process.parameter'].sync_all_production_process_parameter() @@ -45,35 +44,26 @@ class ResConfigSettings(models.TransientModel): self.env['sf.cutting.tool.material'].sync_all_cutting_tool_material() _logger.info("同步所有刀具物料完成") _logger.info("同步所有刀具类型...") - # self.env['sf.cutting.tool.type'].sync_all_tool_type() - # _logger.info("同步所有刀具类型完成") + self.env['sf.cutting.tool.type'].sync_all_tool_type() + _logger.info("同步所有刀具类型完成") + _logger.info("同步所有刀具型号...") + self.env['sf.cutting.tool.model'].sync_all_tool_model() + _logger.info("同步所有刀具型号完成") _logger.info("定时同步所有功能刀具类型列表...") self.env['sf.functional.cutting.tool.model'].sync_all_functional_cutting_tool_model() _logger.info("同步所有功能刀具类型完成") - _logger.info("同步所有刀具型号...") - # self.env['sf.cutting.tool.model'].sync_all_tool_model() - _logger.info("同步所有刀具型号完成") - _logger.info("同步所有功能刀具列表...") - self.env['sf.functional.cutting.tool'].sync_all_functional_cutting_tool() - _logger.info("同步所有功能刀具列表完成") + # _logger.info("同步所有功能刀具列表...") + # self.env['sf.functional.cutting.tool'].sync_all_functional_cutting_tool() + # _logger.info("同步所有功能刀具列表完成") self.env['sf.fixture.material'].sync_all_fixture_material() _logger.info("同步夹具物料") self.env['sf.multi_mounting.type'].sync_all_multi_mounting_type() _logger.info("同步联装类型") - # self.env['sf.fixture.model'].sync_all_fixture_model() - # _logger.info("同步夹具型号") + self.env['sf.fixture.model'].sync_all_fixture_model() + _logger.info("同步夹具型号") self.env['sf.functional.fixture.type'].sync_all_functional_fixture_type() _logger.info("同步功能夹具类型") - # self.env['sf.functional.fixture'].sync_all_functional_fixture() - # self.env['sf.multi_mounting.type'].sync_all_multi_mounting_type() - # _logger.info("同步联装类型") - # self.env['sf.fixture.model'].sync_all_fixture_model() - # _logger.info("同步夹具型号") - # self.env['sf.functional.fixture.type'].sync_all_functional_fixture_type() - # _logger.info("同步功能夹具类型") - # self.env['sf.functional.fixture'].sync_all_functional_fixture() - # _logger.info("同步功能夹具") - self.env['sf.machine_tool.type'].sync_all_machine_tool_type() + self.env['sf.functional.fixture'].sync_all_functional_fixture() _logger.info("同步资源库机床型号") except Exception as e: _logger.info("捕获错误信息:%s" % e)