Merge branch 'develop' of https://e.coding.net/jikimo-hn/jikimo_sfs/jikimo_sf into feature/修改设备基础参数
This commit is contained in:
@@ -23,6 +23,36 @@ class FunctionalCuttingTool(models.Model):
|
|||||||
name = fields.Char('名称')
|
name = fields.Char('名称')
|
||||||
mrs_cutting_tool_type_id = fields.Many2one('sf.functional.cutting.tool.model', string='功能刀具类型')
|
mrs_cutting_tool_type_id = fields.Many2one('sf.functional.cutting.tool.model', string='功能刀具类型')
|
||||||
mrs_cutting_tool_model_id = fields.Many2one('sf.cutting.tool.model', string='刀具型号')
|
mrs_cutting_tool_model_id = fields.Many2one('sf.cutting.tool.model', string='刀具型号')
|
||||||
|
|
||||||
|
# 整体式刀具型号
|
||||||
|
mrs_cutting_tool_integral_model_ids = fields.Many2many('sf.cutting.tool.model', 'rel_integral_model_functional_sf',
|
||||||
|
string='整体式刀具型号', domain=
|
||||||
|
[('mrs_cutting_tool_material_name', '=', '整体式刀具')])
|
||||||
|
# 刀片型号
|
||||||
|
mrs_cutting_tool_blade_model_ids = fields.Many2many('sf.cutting.tool.model', 'rel_blade_model_functional_sf',
|
||||||
|
string='刀片型号', domain=
|
||||||
|
[('mrs_cutting_tool_material_name', '=', '刀片')])
|
||||||
|
# 刀杆型号
|
||||||
|
mrs_cutting_tool_cutterbar_model_ids = fields.Many2many('sf.cutting.tool.model',
|
||||||
|
'rel_cutterbar_model_functional_sf',
|
||||||
|
string='刀杆型号', domain=
|
||||||
|
[('mrs_cutting_tool_material_name', '=', '刀杆')])
|
||||||
|
# 刀盘型号
|
||||||
|
mrs_cutting_tool_cutterpad_model_ids = fields.Many2many('sf.cutting.tool.model',
|
||||||
|
'rel_cutterpad_model_functional_sf',
|
||||||
|
string='刀盘型号', domain=
|
||||||
|
[('mrs_cutting_tool_material_name', '=', '刀盘')])
|
||||||
|
# 刀柄型号
|
||||||
|
mrs_cutting_tool_cutterhandle_model_ids = fields.Many2many('sf.cutting.tool.model',
|
||||||
|
'rel_cutterhandle_model_functional_sf', string='刀柄型号',
|
||||||
|
domain=
|
||||||
|
[('mrs_cutting_tool_material_name', '=', '刀柄')])
|
||||||
|
# 夹头型号
|
||||||
|
mrs_cutting_tool_cutterhead_model_ids = fields.Many2many('sf.cutting.tool.model',
|
||||||
|
'rel_cutterhead_model_functional_sf',
|
||||||
|
string='夹头型号', domain=
|
||||||
|
[('mrs_cutting_tool_material_name', '=', '夹头')])
|
||||||
|
|
||||||
diameter = fields.Float('直径(mm)')
|
diameter = fields.Float('直径(mm)')
|
||||||
tool_grade = fields.Selection([('1', 'P1'), ('2', 'P2'), ('3', 'P3'), ('4', 'P4'), ('5', 'P5'), ('6', 'P6')],
|
tool_grade = fields.Selection([('1', 'P1'), ('2', 'P2'), ('3', 'P3'), ('4', 'P4'), ('5', 'P5'), ('6', 'P6')],
|
||||||
string='刀具等级')
|
string='刀具等级')
|
||||||
@@ -36,6 +66,13 @@ class FunctionalCuttingTool(models.Model):
|
|||||||
applicable_range = fields.Char('适用范围')
|
applicable_range = fields.Char('适用范围')
|
||||||
image = fields.Binary('图片')
|
image = fields.Binary('图片')
|
||||||
|
|
||||||
|
def _get_functional_tool_model_ids(self, functional_tool_model_code):
|
||||||
|
functional_tool_model_ids = []
|
||||||
|
for item in functional_tool_model_code:
|
||||||
|
functional_tool_model = self.env['sf.cutting.tool.model'].search([('code', '=', item)])
|
||||||
|
functional_tool_model_ids.append(functional_tool_model.id)
|
||||||
|
return [(6, 0, functional_tool_model_ids)]
|
||||||
|
|
||||||
|
|
||||||
# 功能刀具类型
|
# 功能刀具类型
|
||||||
class FunctionalCuttingToolModel(models.Model):
|
class FunctionalCuttingToolModel(models.Model):
|
||||||
|
|||||||
@@ -74,7 +74,7 @@
|
|||||||
id="menu_sf_functional_cutting_tool"
|
id="menu_sf_functional_cutting_tool"
|
||||||
parent="menu_sf_cutting_tool"
|
parent="menu_sf_cutting_tool"
|
||||||
name="功能刀具"
|
name="功能刀具"
|
||||||
sequence="4"
|
sequence="5"
|
||||||
action="action_sf_functional_cutting_tool"
|
action="action_sf_functional_cutting_tool"
|
||||||
/>
|
/>
|
||||||
<!-- 功能刀具类型 -->
|
<!-- 功能刀具类型 -->
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
id="menu_sf_functional_cutting_tool_model_type"
|
id="menu_sf_functional_cutting_tool_model_type"
|
||||||
parent="menu_sf_cutting_tool"
|
parent="menu_sf_cutting_tool"
|
||||||
name="功能刀具类型"
|
name="功能刀具类型"
|
||||||
sequence="5"
|
sequence="4"
|
||||||
action="action_sf_functional_cutting_tool_model_type"
|
action="action_sf_functional_cutting_tool_model_type"
|
||||||
/>
|
/>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -58,6 +58,12 @@
|
|||||||
<field name="code"/>
|
<field name="code"/>
|
||||||
<field name="name"/>
|
<field name="name"/>
|
||||||
<field name="mrs_cutting_tool_type_id"/>
|
<field name="mrs_cutting_tool_type_id"/>
|
||||||
|
<field name="mrs_cutting_tool_integral_model_ids" optional="hide"/>
|
||||||
|
<field name="mrs_cutting_tool_blade_model_ids" optional="hide"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterbar_model_ids" optional="hide"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterpad_model_ids" optional="hide"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterhandle_model_ids" optional="hide"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterhead_model_ids" optional="hide"/>
|
||||||
<field name="image" widget='image'/>
|
<field name="image" widget='image'/>
|
||||||
</tree>
|
</tree>
|
||||||
</field>
|
</field>
|
||||||
@@ -72,10 +78,16 @@
|
|||||||
<group col='1'>
|
<group col='1'>
|
||||||
<group string='基本信息'>
|
<group string='基本信息'>
|
||||||
<group>
|
<group>
|
||||||
<field name="code"/>
|
<field name="code"/>
|
||||||
<field name="name"/>
|
<field name="name"/>
|
||||||
<field name="mrs_cutting_tool_type_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
<field name="mrs_cutting_tool_type_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
||||||
<field name="mrs_cutting_tool_model_id" options="{'no_create': True, 'no_quick_create': True}"/>
|
<field name="mrs_cutting_tool_model_id" options="{'no_create': True, 'no_quick_create': True}" attrs="{'invisible': True}"/>
|
||||||
|
<field name="mrs_cutting_tool_integral_model_ids" options="{'no_create': True, 'no_quick_create': True}" widget="many2many_tags"/>
|
||||||
|
<field name="mrs_cutting_tool_blade_model_ids" options="{'no_create': True, 'no_quick_create': True}" widget="many2many_tags"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterbar_model_ids" options="{'no_create': True, 'no_quick_create': True}" widget="many2many_tags"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterpad_model_ids" options="{'no_create': True, 'no_quick_create': True}" widget="many2many_tags"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterhandle_model_ids" options="{'no_create': True, 'no_quick_create': True}" widget="many2many_tags"/>
|
||||||
|
<field name="mrs_cutting_tool_cutterhead_model_ids" options="{'no_create': True, 'no_quick_create': True}" widget="many2many_tags"/>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<field name="image" nolabel="1" widget="image"/>
|
<field name="image" nolabel="1" widget="image"/>
|
||||||
|
|||||||
@@ -815,7 +815,7 @@ class MachineToolType(models.Model):
|
|||||||
[('code', '=', item['control_system_id'])]).id,
|
[('code', '=', item['control_system_id'])]).id,
|
||||||
"active": item['active'],
|
"active": item['active'],
|
||||||
'brand_id': self.env['sf.machine.brand'].search([('code', '=', item['brand_id'])]).id,
|
'brand_id': self.env['sf.machine.brand'].search([('code', '=', item['brand_id'])]).id,
|
||||||
'machine_tool_picture':image,
|
'machine_tool_picture': image,
|
||||||
"heightened_way": item['heightened_way'],
|
"heightened_way": item['heightened_way'],
|
||||||
"workpiece_load": item['workpiece_load'],
|
"workpiece_load": item['workpiece_load'],
|
||||||
"lead_screw": item['lead_screw'],
|
"lead_screw": item['lead_screw'],
|
||||||
@@ -1186,9 +1186,21 @@ class sfSyncFunctional_cutting_tool(models.Model):
|
|||||||
# 功能刀具类型
|
# 功能刀具类型
|
||||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||||
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||||
# 刀具型号
|
# # 刀具型号
|
||||||
"mrs_cutting_tool_model_id": self.env['sf.cutting.tool.model'].search(
|
# "mrs_cutting_tool_model_id": self.env['sf.cutting.tool.model'].search(
|
||||||
[('code', '=', item['mrs_cutting_tool_model_id'])]).id,
|
# [('code', '=', item['mrs_cutting_tool_model_id'])]).id,
|
||||||
|
"mrs_cutting_tool_integral_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_integral_model_ids']),
|
||||||
|
"mrs_cutting_tool_blade_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_blade_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterbar_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterbar_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterpad_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterpad_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhandle_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhandle_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhead_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhead_model_ids']),
|
||||||
"diameter": item['diameter'],
|
"diameter": item['diameter'],
|
||||||
"tool_grade": item['tool_grade'],
|
"tool_grade": item['tool_grade'],
|
||||||
"machining_accuracy": item['machining_accuracy'],
|
"machining_accuracy": item['machining_accuracy'],
|
||||||
@@ -1209,9 +1221,18 @@ class sfSyncFunctional_cutting_tool(models.Model):
|
|||||||
# 功能刀具类型
|
# 功能刀具类型
|
||||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||||
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||||
# 刀具型号
|
"mrs_cutting_tool_integral_model_ids": self._get_functional_tool_model_ids(
|
||||||
"mrs_cutting_tool_model_id": self.env['sf.cutting.tool.model'].search(
|
item['mrs_cutting_tool_integral_model_ids']),
|
||||||
[('code', '=', item['mrs_cutting_tool_model_id'])]).id,
|
"mrs_cutting_tool_blade_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_blade_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterbar_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterbar_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterpad_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterpad_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhandle_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhandle_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhead_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhead_model_ids']),
|
||||||
"diameter": item['diameter'],
|
"diameter": item['diameter'],
|
||||||
"tool_grade": item['tool_grade'],
|
"tool_grade": item['tool_grade'],
|
||||||
"machining_accuracy": item['machining_accuracy'],
|
"machining_accuracy": item['machining_accuracy'],
|
||||||
@@ -1257,9 +1278,18 @@ class sfSyncFunctional_cutting_tool(models.Model):
|
|||||||
# 功能刀具类型
|
# 功能刀具类型
|
||||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||||
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||||
# 刀具型号
|
"mrs_cutting_tool_integral_model_ids": self._get_functional_tool_model_ids(
|
||||||
"mrs_cutting_tool_model_id": self.env['sf.cutting.tool.model'].search(
|
item['mrs_cutting_tool_integral_model_ids']),
|
||||||
[('code', '=', item['mrs_cutting_tool_model_id'])]).id,
|
"mrs_cutting_tool_blade_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_blade_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterbar_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterbar_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterpad_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterpad_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhandle_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhandle_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhead_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhead_model_ids']),
|
||||||
"diameter": item['diameter'],
|
"diameter": item['diameter'],
|
||||||
"tool_grade": item['tool_grade'],
|
"tool_grade": item['tool_grade'],
|
||||||
"machining_accuracy": item['machining_accuracy'],
|
"machining_accuracy": item['machining_accuracy'],
|
||||||
@@ -1280,9 +1310,18 @@ class sfSyncFunctional_cutting_tool(models.Model):
|
|||||||
# 功能刀具类型
|
# 功能刀具类型
|
||||||
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
"mrs_cutting_tool_type_id": self.env['sf.cutting.tool.type'].search(
|
||||||
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
[('code', '=', item['mrs_cutting_tool_type_id'])]).id,
|
||||||
# 刀具型号
|
"mrs_cutting_tool_integral_model_ids": self._get_functional_tool_model_ids(
|
||||||
"mrs_cutting_tool_model_id": self.env['sf.cutting.tool.model'].search(
|
item['mrs_cutting_tool_integral_model_ids']),
|
||||||
[('code', '=', item['mrs_cutting_tool_model_id'])]).id,
|
"mrs_cutting_tool_blade_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_blade_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterbar_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterbar_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterpad_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterpad_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhandle_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhandle_model_ids']),
|
||||||
|
"mrs_cutting_tool_cutterhead_model_ids": self._get_functional_tool_model_ids(
|
||||||
|
item['mrs_cutting_tool_cutterhead_model_ids']),
|
||||||
"diameter": item['diameter'],
|
"diameter": item['diameter'],
|
||||||
"tool_grade": item['tool_grade'],
|
"tool_grade": item['tool_grade'],
|
||||||
"machining_accuracy": item['machining_accuracy'],
|
"machining_accuracy": item['machining_accuracy'],
|
||||||
@@ -1561,7 +1600,7 @@ class SyncFixtureModel(models.Model):
|
|||||||
"materials_model_id": self.env['sf.materials.model'].search(
|
"materials_model_id": self.env['sf.materials.model'].search(
|
||||||
[('materials_no', '=', item['materials_model_code'])]).id,
|
[('materials_no', '=', item['materials_model_code'])]).id,
|
||||||
"driving_way": item['driving_way'],
|
"driving_way": item['driving_way'],
|
||||||
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
||||||
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
||||||
"through_hole_size": item['through_hole_size'],
|
"through_hole_size": item['through_hole_size'],
|
||||||
"screw_size": item['screw_size'],
|
"screw_size": item['screw_size'],
|
||||||
@@ -1590,7 +1629,7 @@ class SyncFixtureModel(models.Model):
|
|||||||
"materials_model_id": self.env['sf.materials.model'].search(
|
"materials_model_id": self.env['sf.materials.model'].search(
|
||||||
[('materials_no', '=', item['materials_model_code'])]).id,
|
[('materials_no', '=', item['materials_model_code'])]).id,
|
||||||
"driving_way": item['driving_way'],
|
"driving_way": item['driving_way'],
|
||||||
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
||||||
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
||||||
"through_hole_size": item['through_hole_size'],
|
"through_hole_size": item['through_hole_size'],
|
||||||
"screw_size": item['screw_size'],
|
"screw_size": item['screw_size'],
|
||||||
@@ -1641,7 +1680,7 @@ class SyncFixtureModel(models.Model):
|
|||||||
"materials_model_id": self.env['sf.materials.model'].search(
|
"materials_model_id": self.env['sf.materials.model'].search(
|
||||||
[('materials_no', '=', item['materials_model_code'])]).id,
|
[('materials_no', '=', item['materials_model_code'])]).id,
|
||||||
"driving_way": item['driving_way'],
|
"driving_way": item['driving_way'],
|
||||||
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
||||||
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
||||||
"through_hole_size": item['through_hole_size'],
|
"through_hole_size": item['through_hole_size'],
|
||||||
"screw_size": item['screw_size'],
|
"screw_size": item['screw_size'],
|
||||||
@@ -1670,7 +1709,7 @@ class SyncFixtureModel(models.Model):
|
|||||||
"materials_model_id": self.env['sf.materials.model'].search(
|
"materials_model_id": self.env['sf.materials.model'].search(
|
||||||
[('materials_no', '=', item['materials_model_code'])]).id,
|
[('materials_no', '=', item['materials_model_code'])]).id,
|
||||||
"driving_way": item['driving_way'],
|
"driving_way": item['driving_way'],
|
||||||
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
"apply_machine_tool_type_id": self.env['sf.machine_tool.type'].search(
|
||||||
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
[('code', '=', item['apply_machine_tool_type_code'])]).id,
|
||||||
"through_hole_size": item['through_hole_size'],
|
"through_hole_size": item['through_hole_size'],
|
||||||
"screw_size": item['screw_size'],
|
"screw_size": item['screw_size'],
|
||||||
@@ -1983,14 +2022,14 @@ class SfToolModel(models.Model):
|
|||||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list = []
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_blade_cutter_bar_ids'):
|
if item.get('mrs_cutting_tool_model_blade_cutter_bar_ids'):
|
||||||
for mrs_cutting_tool_model_blade_cutter_bar_id in item[
|
for mrs_cutting_tool_model_blade_cutter_bar_id in item[
|
||||||
'mrs_cutting_tool_model_blade_cutter_bar_ids']:
|
'mrs_cutting_tool_model_blade_cutter_bar_ids']:
|
||||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list.append(
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_bar_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_blade_cutter_bar_id)]).id)
|
||||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list = []
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_blade_cutter_pad_ids'):
|
if item.get('mrs_cutting_tool_model_blade_cutter_pad_ids'):
|
||||||
for mrs_cutting_tool_model_blade_cutter_pad_id in item[
|
for mrs_cutting_tool_model_blade_cutter_pad_id in item[
|
||||||
'mrs_cutting_tool_model_blade_cutter_pad_ids']:
|
'mrs_cutting_tool_model_blade_cutter_pad_ids']:
|
||||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list.append(
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_pad_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_blade_cutter_pad_id)]).id)
|
||||||
@@ -2007,14 +2046,14 @@ class SfToolModel(models.Model):
|
|||||||
mrs_cutting_tool_model_handle_chuck_model_ids_list = []
|
mrs_cutting_tool_model_handle_chuck_model_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_handle_chuck_model_ids'):
|
if item.get('mrs_cutting_tool_model_handle_chuck_model_ids'):
|
||||||
for mrs_cutting_tool_model_handle_chuck_model_id in item[
|
for mrs_cutting_tool_model_handle_chuck_model_id in item[
|
||||||
'mrs_cutting_tool_model_handle_chuck_model_ids']:
|
'mrs_cutting_tool_model_handle_chuck_model_ids']:
|
||||||
mrs_cutting_tool_model_handle_chuck_model_ids_list.append(
|
mrs_cutting_tool_model_handle_chuck_model_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_handle_chuck_model_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_handle_chuck_model_id)]).id)
|
||||||
mrs_cutting_tool_model_chuck_handle_model_ids_list = []
|
mrs_cutting_tool_model_chuck_handle_model_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_chuck_handle_model_ids'):
|
if item.get('mrs_cutting_tool_model_chuck_handle_model_ids'):
|
||||||
for mrs_cutting_tool_model_chuck_handle_model_id in item[
|
for mrs_cutting_tool_model_chuck_handle_model_id in item[
|
||||||
'mrs_cutting_tool_model_chuck_handle_model_ids']:
|
'mrs_cutting_tool_model_chuck_handle_model_ids']:
|
||||||
mrs_cutting_tool_model_chuck_handle_model_ids_list.append(
|
mrs_cutting_tool_model_chuck_handle_model_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_chuck_handle_model_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_chuck_handle_model_id)]).id)
|
||||||
@@ -2061,8 +2100,10 @@ class SfToolModel(models.Model):
|
|||||||
"blade_hardness": item['blade_hardness'],
|
"blade_hardness": item['blade_hardness'],
|
||||||
"blade_radius": item['blade_radius'],
|
"blade_radius": item['blade_radius'],
|
||||||
"blade_nut": item['blade_nut'],
|
"blade_nut": item['blade_nut'],
|
||||||
"mrs_cutting_tool_model_blade_cutter_bar_ids": mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||||
"mrs_cutting_tool_model_blade_cutter_pad_ids": mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||||
|
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||||
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||||
"bar_code": item['bar_code'],
|
"bar_code": item['bar_code'],
|
||||||
"bar_c_diameter": item['bar_c_diameter'],
|
"bar_c_diameter": item['bar_c_diameter'],
|
||||||
"bar_total_length": item['bar_total_length'],
|
"bar_total_length": item['bar_total_length'],
|
||||||
@@ -2111,7 +2152,8 @@ class SfToolModel(models.Model):
|
|||||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||||
"chuck_height": item['chuck_height'],
|
"chuck_height": item['chuck_height'],
|
||||||
"chuck_nut": item['chuck_nut'],
|
"chuck_nut": item['chuck_nut'],
|
||||||
"mrs_cutting_tool_model_chuck_handle_model_ids": mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||||
|
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||||
"chuck_feature": item['chuck_feature'],
|
"chuck_feature": item['chuck_feature'],
|
||||||
"image": image,
|
"image": image,
|
||||||
@@ -2168,8 +2210,10 @@ class SfToolModel(models.Model):
|
|||||||
"blade_hardness": item['blade_hardness'],
|
"blade_hardness": item['blade_hardness'],
|
||||||
"blade_radius": item['blade_radius'],
|
"blade_radius": item['blade_radius'],
|
||||||
"blade_nut": item['blade_nut'],
|
"blade_nut": item['blade_nut'],
|
||||||
"mrs_cutting_tool_model_blade_cutter_bar_ids": mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||||
"mrs_cutting_tool_model_blade_cutter_pad_ids": mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||||
|
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||||
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||||
"bar_code": item['bar_code'],
|
"bar_code": item['bar_code'],
|
||||||
"bar_c_diameter": item['bar_c_diameter'],
|
"bar_c_diameter": item['bar_c_diameter'],
|
||||||
"bar_total_length": item['bar_total_length'],
|
"bar_total_length": item['bar_total_length'],
|
||||||
@@ -2218,7 +2262,8 @@ class SfToolModel(models.Model):
|
|||||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||||
"chuck_height": item['chuck_height'],
|
"chuck_height": item['chuck_height'],
|
||||||
"chuck_nut": item['chuck_nut'],
|
"chuck_nut": item['chuck_nut'],
|
||||||
"mrs_cutting_tool_model_chuck_handle_model_ids": mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||||
|
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||||
"chuck_feature": item['chuck_feature'],
|
"chuck_feature": item['chuck_feature'],
|
||||||
"image": image,
|
"image": image,
|
||||||
@@ -2261,14 +2306,14 @@ class SfToolModel(models.Model):
|
|||||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list = []
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_blade_cutter_bar_ids'):
|
if item.get('mrs_cutting_tool_model_blade_cutter_bar_ids'):
|
||||||
for mrs_cutting_tool_model_blade_cutter_bar_id in item[
|
for mrs_cutting_tool_model_blade_cutter_bar_id in item[
|
||||||
'mrs_cutting_tool_model_blade_cutter_bar_ids']:
|
'mrs_cutting_tool_model_blade_cutter_bar_ids']:
|
||||||
mrs_cutting_tool_model_blade_cutter_bar_ids_list.append(
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_bar_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_blade_cutter_bar_id)]).id)
|
||||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list = []
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_blade_cutter_pad_ids'):
|
if item.get('mrs_cutting_tool_model_blade_cutter_pad_ids'):
|
||||||
for mrs_cutting_tool_model_blade_cutter_pad_id in item[
|
for mrs_cutting_tool_model_blade_cutter_pad_id in item[
|
||||||
'mrs_cutting_tool_model_blade_cutter_pad_ids']:
|
'mrs_cutting_tool_model_blade_cutter_pad_ids']:
|
||||||
mrs_cutting_tool_model_blade_cutter_pad_ids_list.append(
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_blade_cutter_pad_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_blade_cutter_pad_id)]).id)
|
||||||
@@ -2285,14 +2330,14 @@ class SfToolModel(models.Model):
|
|||||||
mrs_cutting_tool_model_handle_chuck_model_ids_list = []
|
mrs_cutting_tool_model_handle_chuck_model_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_handle_chuck_model_ids'):
|
if item.get('mrs_cutting_tool_model_handle_chuck_model_ids'):
|
||||||
for mrs_cutting_tool_model_handle_chuck_model_id in item[
|
for mrs_cutting_tool_model_handle_chuck_model_id in item[
|
||||||
'mrs_cutting_tool_model_handle_chuck_model_ids']:
|
'mrs_cutting_tool_model_handle_chuck_model_ids']:
|
||||||
mrs_cutting_tool_model_handle_chuck_model_ids_list.append(
|
mrs_cutting_tool_model_handle_chuck_model_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_handle_chuck_model_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_handle_chuck_model_id)]).id)
|
||||||
mrs_cutting_tool_model_chuck_handle_model_ids_list = []
|
mrs_cutting_tool_model_chuck_handle_model_ids_list = []
|
||||||
if item.get('mrs_cutting_tool_model_chuck_handle_model_ids'):
|
if item.get('mrs_cutting_tool_model_chuck_handle_model_ids'):
|
||||||
for mrs_cutting_tool_model_chuck_handle_model_id in item[
|
for mrs_cutting_tool_model_chuck_handle_model_id in item[
|
||||||
'mrs_cutting_tool_model_chuck_handle_model_ids']:
|
'mrs_cutting_tool_model_chuck_handle_model_ids']:
|
||||||
mrs_cutting_tool_model_chuck_handle_model_ids_list.append(
|
mrs_cutting_tool_model_chuck_handle_model_ids_list.append(
|
||||||
self.env['sf.cutting.tool.model'].search(
|
self.env['sf.cutting.tool.model'].search(
|
||||||
[("code", '=', mrs_cutting_tool_model_chuck_handle_model_id)]).id)
|
[("code", '=', mrs_cutting_tool_model_chuck_handle_model_id)]).id)
|
||||||
@@ -2339,8 +2384,10 @@ class SfToolModel(models.Model):
|
|||||||
"blade_hardness": item['blade_hardness'],
|
"blade_hardness": item['blade_hardness'],
|
||||||
"blade_radius": item['blade_radius'],
|
"blade_radius": item['blade_radius'],
|
||||||
"blade_nut": item['blade_nut'],
|
"blade_nut": item['blade_nut'],
|
||||||
"mrs_cutting_tool_model_blade_cutter_bar_ids": mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||||
"mrs_cutting_tool_model_blade_cutter_pad_ids": mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||||
|
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||||
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||||
"bar_code": item['bar_code'],
|
"bar_code": item['bar_code'],
|
||||||
"bar_c_diameter": item['bar_c_diameter'],
|
"bar_c_diameter": item['bar_c_diameter'],
|
||||||
"bar_total_length": item['bar_total_length'],
|
"bar_total_length": item['bar_total_length'],
|
||||||
@@ -2388,7 +2435,8 @@ class SfToolModel(models.Model):
|
|||||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||||
"chuck_height": item['chuck_height'],
|
"chuck_height": item['chuck_height'],
|
||||||
"chuck_nut": item['chuck_nut'],
|
"chuck_nut": item['chuck_nut'],
|
||||||
"mrs_cutting_tool_model_chuck_handle_model_ids": mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||||
|
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||||
"chuck_feature": item['chuck_feature'],
|
"chuck_feature": item['chuck_feature'],
|
||||||
"image": image,
|
"image": image,
|
||||||
@@ -2441,8 +2489,10 @@ class SfToolModel(models.Model):
|
|||||||
"blade_hardness": item['blade_hardness'],
|
"blade_hardness": item['blade_hardness'],
|
||||||
"blade_radius": item['blade_radius'],
|
"blade_radius": item['blade_radius'],
|
||||||
"blade_nut": item['blade_nut'],
|
"blade_nut": item['blade_nut'],
|
||||||
"mrs_cutting_tool_model_blade_cutter_bar_ids": mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
"mrs_cutting_tool_model_blade_cutter_bar_ids":
|
||||||
"mrs_cutting_tool_model_blade_cutter_pad_ids": mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
mrs_cutting_tool_model_blade_cutter_bar_ids_list,
|
||||||
|
"mrs_cutting_tool_model_blade_cutter_pad_ids":
|
||||||
|
mrs_cutting_tool_model_blade_cutter_pad_ids_list,
|
||||||
"bar_code": item['bar_code'],
|
"bar_code": item['bar_code'],
|
||||||
"bar_c_diameter": item['bar_c_diameter'],
|
"bar_c_diameter": item['bar_c_diameter'],
|
||||||
"bar_total_length": item['bar_total_length'],
|
"bar_total_length": item['bar_total_length'],
|
||||||
@@ -2491,7 +2541,8 @@ class SfToolModel(models.Model):
|
|||||||
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
"chuck_inner_diameter": item['chuck_inner_diameter'],
|
||||||
"chuck_height": item['chuck_height'],
|
"chuck_height": item['chuck_height'],
|
||||||
"chuck_nut": item['chuck_nut'],
|
"chuck_nut": item['chuck_nut'],
|
||||||
"mrs_cutting_tool_model_chuck_handle_model_ids": mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
"mrs_cutting_tool_model_chuck_handle_model_ids":
|
||||||
|
mrs_cutting_tool_model_chuck_handle_model_ids_list,
|
||||||
"chuck_clamping_range": item['chuck_clamping_range'],
|
"chuck_clamping_range": item['chuck_clamping_range'],
|
||||||
"chuck_feature": item['chuck_feature'],
|
"chuck_feature": item['chuck_feature'],
|
||||||
"image": image,
|
"image": image,
|
||||||
|
|||||||
@@ -112,7 +112,6 @@ class WorkLogSetting(models.Model):
|
|||||||
创建记录时,生成工作日历
|
创建记录时,生成工作日历
|
||||||
"""
|
"""
|
||||||
record = super(WorkLogSetting, self).create(vals)
|
record = super(WorkLogSetting, self).create(vals)
|
||||||
logging.info("工作日历设置【新建】记录时,创建工作日历记录!!!")
|
|
||||||
record.generate_work_calendar()
|
record.generate_work_calendar()
|
||||||
return record
|
return record
|
||||||
|
|
||||||
@@ -123,7 +122,6 @@ class WorkLogSetting(models.Model):
|
|||||||
# 先删除之前创建的工作日历事件记录
|
# 先删除之前创建的工作日历事件记录
|
||||||
self.env['sf.work.schedule.calendar'].search([('calendar_code', '=', self.code)]).unlink()
|
self.env['sf.work.schedule.calendar'].search([('calendar_code', '=', self.code)]).unlink()
|
||||||
result = super(WorkLogSetting, self).write(vals)
|
result = super(WorkLogSetting, self).write(vals)
|
||||||
logging.info("工作日历设置【更新】记录时,创建工作日历记录!!!")
|
|
||||||
self.generate_work_calendar()
|
self.generate_work_calendar()
|
||||||
return result
|
return result
|
||||||
|
|
||||||
@@ -131,28 +129,66 @@ class WorkLogSetting(models.Model):
|
|||||||
"""
|
"""
|
||||||
生成工作日历
|
生成工作日历
|
||||||
"""
|
"""
|
||||||
logging.info('开始创建工作日历记录')
|
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
# start_date = date.today() # 开始日期
|
# start_date = date.today() # 开始日期
|
||||||
# end_date = start_date + timedelta(days=365) # 结束日期
|
# end_date = start_date + timedelta(days=365) # 结束日期
|
||||||
# 获取本年第一天和最后一天
|
# 获取本年第一天和最后一天
|
||||||
start_date = datetime.now().replace(month=1, day=1).date()
|
start_date = datetime.now().replace(month=1, day=1).date()
|
||||||
end_date = datetime.now().replace(month=1, day=31).date()
|
end_date = datetime.now().replace(month=12, day=31).date()
|
||||||
logging.info(f'start_date: {start_date} , end_date: {end_date}')
|
|
||||||
# 休息日列表
|
# 休息日列表
|
||||||
rest_days = self.day_off_ids.mapped('name')
|
rest_days = self.chinese_weekdays_to_english(self.day_off_ids.mapped('name'))
|
||||||
logging.info(f'获取界面输入的休息日:{rest_days}')
|
|
||||||
for single_date in self.daterange(start_date, end_date):
|
for single_date in self.daterange(start_date, end_date):
|
||||||
is_workday = single_date.strftime("%A")
|
is_workday = self.chinese_weekday_to_english(single_date.strftime("%A"))
|
||||||
logging.info(f'获取一月份每天的星期:{is_workday}')
|
logging.info(f"每天的星期:{is_workday}")
|
||||||
if is_workday in rest_days:
|
if is_workday in rest_days:
|
||||||
print('is_workday in rest_days', is_workday)
|
print('is_workday in rest_days', is_workday)
|
||||||
self.env['sf.work.schedule.calendar'].sudo().create({
|
self.env['sf.work.schedule.calendar'].sudo().create({
|
||||||
'name': '休息日',
|
'name': '休息日',
|
||||||
'name_id': self.id,
|
'name_id': self.id,
|
||||||
'date_time': single_date})
|
'date_time': single_date})
|
||||||
logging.info('创建一条工作日历记录,休息时间: %s' % is_workday)
|
|
||||||
logging.info('工作日历记录创建完成')
|
@staticmethod
|
||||||
|
def chinese_weekdays_to_english(chinese_weekdays):
|
||||||
|
"""
|
||||||
|
将元组的中文星期转换成英文
|
||||||
|
:param chinese_weekdays:
|
||||||
|
:return:
|
||||||
|
"""
|
||||||
|
weekdays = {
|
||||||
|
'星期一': 'Monday',
|
||||||
|
'星期二': 'Tuesday',
|
||||||
|
'星期三': 'Wednesday',
|
||||||
|
'星期四': 'Thursday',
|
||||||
|
'星期五': 'Friday',
|
||||||
|
'星期六': 'Saturday',
|
||||||
|
'星期日': 'Sunday'
|
||||||
|
}
|
||||||
|
english_weekdays = []
|
||||||
|
for chinese_weekday in chinese_weekdays:
|
||||||
|
english_weekday = weekdays.get(chinese_weekday, 'Invalid weekday')
|
||||||
|
english_weekdays.append(english_weekday)
|
||||||
|
return english_weekdays
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def chinese_weekday_to_english(chinese_weekday):
|
||||||
|
"""
|
||||||
|
将单个的中文星期转换成英文
|
||||||
|
:param chinese_weekday:
|
||||||
|
:return:
|
||||||
|
"""
|
||||||
|
weekdays = {
|
||||||
|
'星期一': 'Monday',
|
||||||
|
'星期二': 'Tuesday',
|
||||||
|
'星期三': 'Wednesday',
|
||||||
|
'星期四': 'Thursday',
|
||||||
|
'星期五': 'Friday',
|
||||||
|
'星期六': 'Saturday',
|
||||||
|
'星期日': 'Sunday'
|
||||||
|
}
|
||||||
|
weekday = weekdays.get(chinese_weekday)
|
||||||
|
if weekday:
|
||||||
|
return weekday
|
||||||
|
return chinese_weekday
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def daterange(start_date, end_date):
|
def daterange(start_date, end_date):
|
||||||
@@ -202,13 +238,13 @@ class DayOff(models.Model):
|
|||||||
_description = '休息日'
|
_description = '休息日'
|
||||||
|
|
||||||
name = fields.Selection([
|
name = fields.Selection([
|
||||||
('星期一', '星期一'),
|
('Monday ', '星期一'),
|
||||||
('星期二', '星期二'),
|
('Tuesday ', '星期二'),
|
||||||
('星期三', '星期三'),
|
('Wednesday ', '星期三'),
|
||||||
('星期四', '星期四'),
|
('Thursday ', '星期四'),
|
||||||
('星期五', '星期五'),
|
('Friday ', '星期五'),
|
||||||
('星期六', '星期六'),
|
('Saturday ', '星期六'),
|
||||||
('星期日', '星期日')], '休息日名称')
|
('Sunday ', '星期日')], '休息日名称')
|
||||||
|
|
||||||
|
|
||||||
class WorkScheduleCalendar(models.Model):
|
class WorkScheduleCalendar(models.Model):
|
||||||
|
|||||||
@@ -22,7 +22,6 @@
|
|||||||
<field name="is_standard" optional="show"/>
|
<field name="is_standard" optional="show"/>
|
||||||
<field name="applicable_range" optional="show"/>
|
<field name="applicable_range" optional="show"/>
|
||||||
<field name="image" widget='image' optional="show"/>
|
<field name="image" widget='image' optional="show"/>
|
||||||
|
|
||||||
</tree>
|
</tree>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
@@ -126,20 +125,18 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree>
|
<tree>
|
||||||
<!-- <field name="order"/>-->
|
<!-- <field name="order"/>-->
|
||||||
<field name="code"/>
|
|
||||||
<field name="name"/>
|
|
||||||
<field name="mrs_cutting_tool_type_id"/>
|
<field name="mrs_cutting_tool_type_id"/>
|
||||||
<field name="mrs_cutting_tool_model_id"/>
|
<field name="mrs_cutting_tool_model_id"/>
|
||||||
<field name="diameter" optional="hide"/>
|
<field name="diameter" optional="show"/>
|
||||||
<field name="tool_grade" optional="hide"/>
|
<field name="tool_grade" optional="show"/>
|
||||||
<field name="machining_accuracy" optional="hide"/>
|
<field name="machining_accuracy" optional="show"/>
|
||||||
<field name="tool_length" optional="hide"/>
|
<field name="tool_length" optional="show"/>
|
||||||
<field name="blade_number" optional="hide"/>
|
<field name="blade_number" optional="show"/>
|
||||||
<field name="integral_blade_length" optional="hide"/>
|
<field name="integral_blade_length" optional="show"/>
|
||||||
<field name="effective_blade_length" optional="hide"/>
|
<field name="effective_blade_length" optional="show"/>
|
||||||
<field name="max_life" optional="hide"/>
|
<field name="max_life" optional="show"/>
|
||||||
<field name="is_standard" optional="hide"/>
|
<field name="is_standard" optional="show"/>
|
||||||
<field name="applicable_range" optional="hide"/>
|
<field name="applicable_range" optional="show"/>
|
||||||
<field name="tool_stock_num" optional="show"/>
|
<field name="tool_stock_num" optional="show"/>
|
||||||
<field name="side_shelf_num" optional="show"/>
|
<field name="side_shelf_num" optional="show"/>
|
||||||
<field name="on_tool_stock_num" optional="show"/>
|
<field name="on_tool_stock_num" optional="show"/>
|
||||||
@@ -204,11 +201,11 @@
|
|||||||
<button string="转移"
|
<button string="转移"
|
||||||
name="%(sf_tool_management.sf_tool_transfer_request_information_act)d"
|
name="%(sf_tool_management.sf_tool_transfer_request_information_act)d"
|
||||||
type="action"
|
type="action"
|
||||||
context="{ 'default_name':name,
|
context="{ 'default_CNC_machine_table':name,
|
||||||
'default_machine_tool_code': machine_tool_code,
|
'default_machine_tool_code': machine_tool_code,
|
||||||
'default_cutter_spacing_code': cutter_spacing_code,
|
'default_cutter_spacing_code': cutter_spacing_code,
|
||||||
'default_functional_tool_code': functional_tool_code,
|
'default_functional_tool_code': functional_tool_code,
|
||||||
'default_name': functional_tool_name,
|
'default_functional_tool_name': functional_tool_name,
|
||||||
'default_functional_tool_type': functional_tool_type}"
|
'default_functional_tool_type': functional_tool_type}"
|
||||||
class="btn-primary"
|
class="btn-primary"
|
||||||
attrs="{'invisible': [('status', '!=', '0')]}"
|
attrs="{'invisible': [('status', '!=', '0')]}"
|
||||||
@@ -300,7 +297,7 @@
|
|||||||
<field name="applicant"/>
|
<field name="applicant"/>
|
||||||
<field name="reason_for_applying"/>
|
<field name="reason_for_applying"/>
|
||||||
<field name="remark"/>
|
<field name="remark"/>
|
||||||
<button string="装刀申请"
|
<button string="申请装刀"
|
||||||
name="%(sf_tool_management.sf_apply_for_tooling_act)d"
|
name="%(sf_tool_management.sf_apply_for_tooling_act)d"
|
||||||
type="action"
|
type="action"
|
||||||
context="{ 'default_name':name,
|
context="{ 'default_name':name,
|
||||||
@@ -308,7 +305,7 @@
|
|||||||
'default_machine_table_name': machine_table_name,
|
'default_machine_table_name': machine_table_name,
|
||||||
'default_cam_cutter_spacing_code': cam_cutter_spacing_code,
|
'default_cam_cutter_spacing_code': cam_cutter_spacing_code,
|
||||||
'default_functional_tool_code': functional_tool_code,
|
'default_functional_tool_code': functional_tool_code,
|
||||||
'default_name': functional_tool_name,
|
'default_functional_tool_name': functional_tool_name,
|
||||||
'default_functional_tool_type': functional_tool_type,
|
'default_functional_tool_type': functional_tool_type,
|
||||||
'default_diameter': diameter,
|
'default_diameter': diameter,
|
||||||
'default_tool_loading_length': tool_loading_length,
|
'default_tool_loading_length': tool_loading_length,
|
||||||
@@ -324,7 +321,7 @@
|
|||||||
class="btn-primary"
|
class="btn-primary"
|
||||||
attrs="{'invisible': [('plan_execute_status', '!=', '0')]}"
|
attrs="{'invisible': [('plan_execute_status', '!=', '0')]}"
|
||||||
/>
|
/>
|
||||||
<button string="装刀申请" name="" class="btn-primary" attrs="{'invisible': [('plan_execute_status', '=', '0')]}"/>
|
<button string="申请装刀" name="" class="btn-primary" attrs="{'invisible': [('plan_execute_status', '=', '0')]}"/>
|
||||||
<button string="撤回" name="revocation" type="object" class="btn-primary" attrs="{'invisible': [('plan_execute_status', '!=', '1')]}"/>
|
<button string="撤回" name="revocation" type="object" class="btn-primary" attrs="{'invisible': [('plan_execute_status', '!=', '1')]}"/>
|
||||||
<button string="撤回" name="" class="btn-primary" attrs="{'invisible': [('plan_execute_status', '=', '1')]}"/>
|
<button string="撤回" name="" class="btn-primary" attrs="{'invisible': [('plan_execute_status', '=', '1')]}"/>
|
||||||
</tree>
|
</tree>
|
||||||
@@ -404,7 +401,7 @@
|
|||||||
context="{
|
context="{
|
||||||
'default_machine_tool_name': machine_tool_name,
|
'default_machine_tool_name': machine_tool_name,
|
||||||
'default_cutter_spacing_code': cutter_spacing_code,
|
'default_cutter_spacing_code': cutter_spacing_code,
|
||||||
'default_name': name,
|
'default_functional_tool_name': name,
|
||||||
'default_functional_tool_type': functional_tool_type,
|
'default_functional_tool_type': functional_tool_type,
|
||||||
'default_functional_tool_length': functional_tool_length,
|
'default_functional_tool_length': functional_tool_length,
|
||||||
'default_effective_length': None,
|
'default_effective_length': None,
|
||||||
@@ -420,12 +417,12 @@
|
|||||||
<button string="取消组装" name="cancel_functional_tool_assembly" type="object" attrs="{'invisible': [('assemble_status', '!=', '1')]}" class="btn-primary"/>
|
<button string="取消组装" name="cancel_functional_tool_assembly" type="object" attrs="{'invisible': [('assemble_status', '!=', '1')]}" class="btn-primary"/>
|
||||||
<button string="取消组装" name="" attrs="{'invisible': [('assemble_status', '=', '1')]}" class="btn-primary"/>
|
<button string="取消组装" name="" attrs="{'invisible': [('assemble_status', '=', '1')]}" class="btn-primary"/>
|
||||||
|
|
||||||
<button string="自动打印二维码" name="automatic_printing_of_QR_code" type="object" class="btn-primary"/>
|
<button string="自动打印二维码" name="automatic_printing_of_QR_code" type="object" attrs="{'invisible': [('assemble_status', '=', '0')]}" class="btn-primary" />
|
||||||
|
|
||||||
<button string="出库" name="show_popup" type="object" attrs="{'invisible': [('assemble_status', '!=', '1')]}" class="btn-primary"/>
|
<button string="出库" name="show_popup" type="object" attrs="{'invisible': [('assemble_status', '!=', '1')]}" class="btn-primary"/>
|
||||||
<button string="出库" name="" attrs="{'invisible': [('assemble_status', '=', '1')]}" class="btn-primary"/>
|
<button string="出库" name="" attrs="{'invisible': [('assemble_status', '=', '1')]}" class="btn-primary"/>
|
||||||
|
|
||||||
<button string="组装单打印" name="assemble_single_print" type="object" class="btn-primary"/>
|
<button string="组装单打印" name="assemble_single_print" type="object" attrs="{'invisible': [('assemble_status', '=', '0')]}" class="btn-primary"/>
|
||||||
|
|
||||||
<field name="check_box_1" attrs="{'readonly': [('assemble_status', '!=', '1')]}"/>
|
<field name="check_box_1" attrs="{'readonly': [('assemble_status', '!=', '1')]}"/>
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<form string="换刀需求信息">
|
<form string="换刀需求信息">
|
||||||
<sheet>
|
<sheet>
|
||||||
<group>
|
<group string="机床信息">
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<group>
|
||||||
<field name="name"/>
|
<field name="name"/>
|
||||||
@@ -20,9 +20,13 @@
|
|||||||
<field name="cutter_spacing_code"/>
|
<field name="cutter_spacing_code"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group string="刀具信息">
|
||||||
<field name="replacement_tool_name"/>
|
<group>
|
||||||
<field name="replacement_tool_type"/>
|
<field name="replacement_tool_name"/>
|
||||||
|
</group>
|
||||||
|
<group>
|
||||||
|
<field name="replacement_tool_type"/>
|
||||||
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<group>
|
||||||
@@ -63,41 +67,37 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<form string="刀具转移申请信息">
|
<form string="刀具转移申请信息">
|
||||||
<sheet>
|
<sheet>
|
||||||
<group>
|
<group string="机床信息">
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<field name="CNC_machine_table"/>
|
||||||
<field name="CNC_machine_table"/>
|
<field name="cutter_spacing_code"/>
|
||||||
<field name="functional_tool_code" string="刀具编码"/>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<field name="machine_tool_code"/>
|
|
||||||
<field name="functional_tool_name" string="刀具名称"/>
|
|
||||||
</group>
|
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<field name="cutter_spacing_code"/>
|
<field name="machine_tool_code"/>
|
||||||
<field name="functional_tool_type" string="刀具类型"/>
|
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group string="刀具信息">
|
||||||
|
<group>
|
||||||
|
<field name="functional_tool_name" string="刀具名称"/>
|
||||||
|
<field name="functional_tool_type" string="刀具类型"/>
|
||||||
|
</group>
|
||||||
|
<group>
|
||||||
|
<field name="functional_tool_code" string="刀具编码"/>
|
||||||
|
</group>
|
||||||
|
</group>
|
||||||
|
<group string="刀具转移">
|
||||||
<group>
|
<group>
|
||||||
<field name="transfer_target" widget="radio" options="{'horizontal': true}"/>
|
<field name="transfer_target" widget="radio" options="{'horizontal': true}"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<field name="new_cnc_machine_table" attrs="{'invisible': [('transfer_target', '!=', '机台')]}"/>
|
||||||
<field name="new_cnc_machine_table" attrs="{'readonly': [('transfer_target', '!=', '机台')]}"/>
|
<field name="new_machine_tool_code" attrs="{'invisible': [('transfer_target', '!=', '机台')]}"/>
|
||||||
<field name="new_machine_tool_code" attrs="{'readonly': [('transfer_target', '!=', '机台')]}"/>
|
<field name="new_cutter_spacing_code" attrs="{'invisible': [('transfer_target', '!=', '机台')]}"/>
|
||||||
<field name="new_cutter_spacing_code" attrs="{'readonly': [('transfer_target', '!=', '机台')]}"/>
|
<field name="magazine_tool_warehouse_district" attrs="{'invisible': [('transfer_target', '!=', '线边刀库')]}"/>
|
||||||
</group>
|
<field name="magazine_tool_warehouse_position" attrs="{'invisible': [('transfer_target', '!=', '线边刀库')]}"/>
|
||||||
<group>
|
<field name="tool_room_warehouse_district" attrs="{'invisible': [('transfer_target', '!=', '刀具房')]}"/>
|
||||||
<field name="magazine_tool_warehouse_district" attrs="{'readonly': [('transfer_target', '!=', '线边刀库')]}"/>
|
|
||||||
<field name="magazine_tool_warehouse_position" attrs="{'readonly': [('transfer_target', '!=', '线边刀库')]}"/>
|
|
||||||
</group>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<field name="tool_room_warehouse_district" attrs="{'readonly': [('transfer_target', '!=', '刀具房')]}"/>
|
|
||||||
<field name="tool_room_warehouse_position" attrs="{'invisible': [('transfer_target', '!=', '刀具房')]}"/>
|
<field name="tool_room_warehouse_position" attrs="{'invisible': [('transfer_target', '!=', '刀具房')]}"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
@@ -127,37 +127,39 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<form string="申请装刀">
|
<form string="申请装刀">
|
||||||
<sheet>
|
<sheet>
|
||||||
<group>
|
<group string="基础信息">
|
||||||
<group>
|
<group>
|
||||||
<field name="ticket_task_code" string="工单编号"/>
|
<field name="ticket_task_code" string="工单编号"/>
|
||||||
<field name="machine_table_name" string="CAM指定机床"/>
|
|
||||||
</group>
|
</group>
|
||||||
|
</group>
|
||||||
|
<group>
|
||||||
<group>
|
<group>
|
||||||
|
<field name="machine_table_name" string="CAM指定机床"/>
|
||||||
<field name="cam_procedure_code" string="CAM程序编号"/>
|
<field name="cam_procedure_code" string="CAM程序编号"/>
|
||||||
<field name="cam_cutter_spacing_code" string="CAM指定刀位号"/>
|
<field name="cam_cutter_spacing_code" string="CAM指定刀位号"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
|
||||||
|
|
||||||
<group>
|
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<field name="functional_tool_name"/>
|
||||||
<field name="diameter" string="直径"/>
|
<field name="functional_tool_code"/>
|
||||||
<field name="tool_included_angle"/>
|
<field name="functional_tool_type"/>
|
||||||
<field name="whether_standard_tool"/>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<field name="tool_loading_length" string="刀尖角"/>
|
|
||||||
<field name="L_D"/>
|
|
||||||
<field name="need_knife_time"/>
|
|
||||||
</group>
|
|
||||||
</group>
|
</group>
|
||||||
|
</group>
|
||||||
|
<group string="数据信息">
|
||||||
<group>
|
<group>
|
||||||
|
<field name="diameter" string="直径"/>
|
||||||
|
<field name="tool_included_angle" string="刀尖角"/>
|
||||||
<field name="clearance_length"/>
|
<field name="clearance_length"/>
|
||||||
<field name="coarse_middle_thin"/>
|
<field name="need_knife_time"/>
|
||||||
<field name="required_cutting_time" string="需切削时长"/>
|
<field name="whether_standard_tool"/>
|
||||||
|
</group>
|
||||||
|
<group>
|
||||||
|
<field name="tool_loading_length"/>
|
||||||
|
<field name="L_D"/>
|
||||||
|
<field name="coarse_middle_thin"/>
|
||||||
|
<field name="required_cutting_time" string="需切削时长"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group string="其他">
|
||||||
<field name="reason_for_applying"/>
|
<field name="reason_for_applying"/>
|
||||||
</group>
|
</group>
|
||||||
</sheet>
|
</sheet>
|
||||||
@@ -188,29 +190,16 @@
|
|||||||
<sheet>
|
<sheet>
|
||||||
<group string="功能刀具申请信息">
|
<group string="功能刀具申请信息">
|
||||||
<group>
|
<group>
|
||||||
<group>
|
<field name="machine_tool_name"/>
|
||||||
<field name="machine_tool_name"/>
|
<field name="functional_tool_name"/>
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<field name="cutter_spacing_code"/>
|
|
||||||
</group>
|
|
||||||
</group><group>
|
|
||||||
<group>
|
|
||||||
<field name="functional_tool_name"/>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<field name="functional_tool_type"/>
|
|
||||||
</group>
|
|
||||||
</group>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<group>
|
|
||||||
<field name="functional_tool_length"/>
|
<field name="functional_tool_length"/>
|
||||||
<field name="effective_length"/>
|
<field name="effective_length"/>
|
||||||
<field name="functional_tool_cutting_type"/>
|
<field name="functional_tool_cutting_type"/>
|
||||||
<field name="required_cutting_time"/>
|
<field name="required_cutting_time"/>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
|
<field name="cutter_spacing_code"/>
|
||||||
|
<field name="functional_tool_type"/>
|
||||||
<field name="functional_tool_diameter"/>
|
<field name="functional_tool_diameter"/>
|
||||||
<field name="tool_included_angle"/>
|
<field name="tool_included_angle"/>
|
||||||
<field name="whether_standard_tool"/>
|
<field name="whether_standard_tool"/>
|
||||||
@@ -243,9 +232,11 @@
|
|||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<field name="cut_time"/>
|
<group>
|
||||||
<field name="cut_length"/>
|
<field name="cut_time"/>
|
||||||
<field name="cut_number"/>
|
<field name="cut_length"/>
|
||||||
|
<field name="cut_number"/>
|
||||||
|
</group>
|
||||||
</group>
|
</group>
|
||||||
</sheet>
|
</sheet>
|
||||||
<footer>
|
<footer>
|
||||||
|
|||||||
@@ -557,3 +557,18 @@ body.o_web_client {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ui-sortable .o_data_row .o_data_cell .me-2 {
|
||||||
|
display: flex !important;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.o_data_cell>button[name=""] {
|
||||||
|
background-color: #ccc !important;
|
||||||
|
border: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.o_dialog .modal .modal-footer footer {
|
||||||
|
justify-content: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user