刀具产品模板根据型号展示不同字段和值

This commit is contained in:
jinling.yang
2023-06-29 18:53:11 +08:00
parent 4212340519
commit 05227b9022
2 changed files with 304 additions and 129 deletions

View File

@@ -358,134 +358,156 @@ class ResProduct(models.Model):
item.model_file = self.transition_glb_file(report_path, model_code) item.model_file = self.transition_glb_file(report_path, model_code)
# 将attach的datas内容转为glb文件 # 将attach的datas内容转为glb文件
# def transition_glb_file(self, report_path, code): def transition_glb_file(self, report_path, code):
# shapes = read_step_file(report_path) shapes = read_step_file(report_path)
# output_file = os.path.join('/tmp', str(code) + '.stl') output_file = os.path.join('/tmp', str(code) + '.stl')
# write_stl_file(shapes, output_file, 'binary', 0.03, 0.5) write_stl_file(shapes, output_file, 'binary', 0.03, 0.5)
# # 转化为glb # 转化为glb
# output_glb_file = os.path.join('/tmp', str(code) + '.glb') output_glb_file = os.path.join('/tmp', str(code) + '.glb')
# util_path = get_resource_path('sf_dlm', 'static/util') util_path = get_resource_path('sf_dlm', 'static/util')
# cmd = 'python3 %s/stl2gltf.py %s %s -b' % (util_path, output_file, output_glb_file) cmd = 'python3 %s/stl2gltf.py %s %s -b' % (util_path, output_file, output_glb_file)
# os.system(cmd) os.system(cmd)
# # 转base64 # 转base64
# with open(output_glb_file, 'rb') as fileObj: with open(output_glb_file, 'rb') as fileObj:
# image_data = fileObj.read() image_data = fileObj.read()
# base64_data = base64.b64encode(image_data) base64_data = base64.b64encode(image_data)
# return base64_data return base64_data
@api.onchange('integral_cutting_tool_type_id') # @api.onchange('cutting_tool_material_id')
def _get_integral_cutting_tool_type_info(self): # def _get_cutting_tool_material_info(self):
if self.integral_cutting_tool_type_id: # for item in self:
for item in self: # if self.cutting_tool_type == '整体式刀具':
item.cutting_tool_parameter_brand_id = item.integral_cutting_tool_type_id.brand.id # item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.brand.id
item.cutting_tool_parameter_total_length = item.integral_cutting_tool_type_id.total_length # item.cutting_tool_parameter_total_length = item.cutting_tool_model_id.total_length
item.cutting_tool_parameter_shank_length = item.integral_cutting_tool_type_id.shank_length # item.cutting_tool_parameter_shank_length = item.cutting_tool_model_id.shank_length
item.cutting_tool_parameter_blade_length = item.integral_cutting_tool_type_id.blade_length # item.cutting_tool_parameter_blade_length = item.cutting_tool_model_id.blade_length
item.cutting_tool_parameter_diameter = item.integral_cutting_tool_type_id.diameter # item.cutting_tool_parameter_diameter = item.cutting_tool_model_id.diameter
item.cutting_tool_parameter_nut = item.integral_cutting_tool_type_id.nut # item.cutting_tool_parameter_nut = item.cutting_tool_model_id.nut
item.cutting_tool_parameter_blade_number = item.integral_cutting_tool_type_id.blade_number # item.cutting_tool_parameter_blade_number = item.cutting_tool_model_id.blade_number
item.cutting_tool_parameter_material_model_id = item.integral_cutting_tool_type_id.material_model.id # item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.material_model.id
item.cutting_tool_parameter_front_angle = item.integral_cutting_tool_type_id.front_angle # item.cutting_tool_parameter_front_angle = item.cutting_tool_model_id.front_angle
item.cutting_tool_parameter_rear_angle = item.integral_cutting_tool_type_id.rear_angle # item.cutting_tool_parameter_rear_angle = item.cutting_tool_model_id.rear_angle
item.cutting_tool_parameter_main_included_angle = item.integral_cutting_tool_type_id.main_included_angle # item.cutting_tool_parameter_main_included_angle = item.cutting_tool_model_id.main_included_angle
item.cutting_tool_parameter_chuck_model_ids = self._get_ids( # item.cutting_tool_parameter_chuck_model_ids = self._get_ids(
item.integral_cutting_tool_type_id.chuck_model) # item.cutting_tool_model_id.chuck_model)
item.cutting_tool_parameter_scope = item.integral_cutting_tool_type_id.scope # item.cutting_tool_parameter_scope = item.cutting_tool_model_id.scope
item.image_1920 = '' if not item.integral_cutting_tool_type_id.image else item.integral_cutting_tool_type_id.image # item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
# elif self.cutting_tool_type == '刀片':
@api.onchange('blade_type_id') # item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.brand.id
def _get_blade_type_info(self): # item.cutting_tool_parameter_top_angle = item.cutting_tool_model_id.top_angle
if self.blade_type_id: # item.cutting_tool_parameter_front_angle = item.cutting_tool_model_id.front_angle
for item in self: # item.cutting_tool_parameter_rear_angle = item.cutting_tool_model_id.rear_angle
item.cutting_tool_parameter_brand_id = item.blade_type_id.brand.id # item.cutting_tool_parameter_main_included_angle = item.cutting_tool_model_id.main_included_angle
item.cutting_tool_parameter_top_angle = item.blade_type_id.top_angle # item.cutting_tool_parameter_r_angle = item.cutting_tool_model_id.r_angle
item.cutting_tool_parameter_front_angle = item.blade_type_id.front_angle # item.cutting_tool_parameter_working_hardness = item.cutting_tool_model_id.hardness
item.cutting_tool_parameter_rear_angle = item.blade_type_id.rear_angle # item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.material_model.id
item.cutting_tool_parameter_main_included_angle = item.blade_type_id.main_included_angle # item.cutting_tool_parameter_length = item.cutting_tool_model_id.length
item.cutting_tool_parameter_r_angle = item.blade_type_id.r_angle # item.cutting_tool_parameter_width = item.cutting_tool_model_id.width
item.cutting_tool_parameter_working_hardness = item.blade_type_id.hardness # item.cutting_tool_parameter_height = item.cutting_tool_model_id.height
item.cutting_tool_parameter_material_model_id = item.blade_type_id.material_model.id # item.cutting_tool_parameter_radius = item.cutting_tool_model_id.radius
item.cutting_tool_parameter_length = item.blade_type_id.length # item.cutting_tool_parameter_nut = item.cutting_tool_model_id.nut
item.cutting_tool_parameter_width = item.blade_type_id.width # item.cutting_tool_parameter_cutter_bar_ids = self._get_ids(item.cutting_tool_model_id.cutter_bar)
item.cutting_tool_parameter_height = item.blade_type_id.height # item.cutting_tool_parameter_cutter_pad_ids = self._get_ids(item.cutting_tool_model_id.cutter_pad)
item.cutting_tool_parameter_radius = item.blade_type_id.radius # item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
item.cutting_tool_parameter_nut = item.blade_type_id.nut # elif self.cutting_tool_type == '刀杆':
item.cutting_tool_parameter_cutter_bar_ids = self._get_ids(item.blade_type_id.cutter_bar) # item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.brand.id
item.cutting_tool_parameter_cutter_pad_ids = self._get_ids(item.blade_type_id.cutter_pad) # item.cutting_tool_parameter_c_diameter = item.cutting_tool_model_id.c_diameter
item.image_1920 = '' if not item.blade_type_id.image else item.blade_type_id.image # item.cutting_tool_parameter_d_diameter = item.cutting_tool_model_id.d_diameter
# item.cutting_tool_parameter_l_total_length = item.cutting_tool_model_id.total_length
@api.onchange('cutter_bar_type_id') # item.cutting_tool_parameter_wrench = item.cutting_tool_model_id.wrench
def _get_cutter_bar_type_info(self): # item.cutting_tool_parameter_screw = item.cutting_tool_model_id.screw
if self.cutter_bar_type_id: # item.cutting_tool_parameter_blade_ids = self._get_ids(item.cutting_tool_model_id.blade)
for item in self: # item.cutting_tool_parameter_scope = item.cutting_tool_model_id.scope
item.cutting_tool_parameter_brand_id = item.cutter_bar_type_id.brand.id # item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.material_model.id
item.cutting_tool_parameter_c_diameter = item.cutter_bar_type_id.c_diameter # item.cutting_tool_parameter_rounded_corner = item.cutting_tool_model_id.radius
item.cutting_tool_parameter_d_diameter = item.cutter_bar_type_id.d_diameter # item.cutting_tool_parameter_accuracy_level = item.cutting_tool_model_id.accuracy
item.cutting_tool_parameter_l_total_length = item.cutter_bar_type_id.total_length # item.cutting_tool_parameter_blade_number = item.cutting_tool_model_id.blade_number
item.cutting_tool_parameter_wrench = item.cutter_bar_type_id.wrench # item.cutting_tool_parameter_hardness = item.cutting_tool_model_id.hardness
item.cutting_tool_parameter_screw = item.cutter_bar_type_id.screw # item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
item.cutting_tool_parameter_blade_ids = self._get_ids(item.cutter_bar_type_id.blade) # elif self.cutting_tool_type == '刀盘':
item.cutting_tool_parameter_scope = item.cutter_bar_type_id.scope # item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.brand.id
item.cutting_tool_parameter_material_model_id = item.cutter_bar_type_id.material_model.id # item.cutting_tool_parameter_c_diameter = item.cutting_tool_model_id.c_diameter
item.cutting_tool_parameter_rounded_corner = item.cutter_bar_type_id.radius # item.cutting_tool_parameter_d_diameter = item.cutting_tool_model_id.d_diameter
item.cutting_tool_parameter_accuracy_level = item.cutter_bar_type_id.accuracy # item.cutting_tool_parameter_l_total_length = item.cutting_tool_model_id.total_length
item.cutting_tool_parameter_blade_number = item.cutter_bar_type_id.blade_number # item.cutting_tool_parameter_wrench = item.cutting_tool_model_id.wrench
item.cutting_tool_parameter_hardness = item.cutter_bar_type_id.hardness # item.cutting_tool_parameter_screw = item.cutting_tool_model_id.screw
item.image_1920 = '' if not item.cutter_bar_type_id.image else item.cutter_bar_type_id.image # item.cutting_tool_parameter_blade_ids = item.cutting_tool_model_id.blade.id
# item.cutting_tool_parameter_scope = item.cutting_tool_model_id.scope
@api.onchange('cutter_pad_type_id') # item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.material_model.id
def _get_cutter_pad_type_info(self): # item.cutting_tool_parameter_rounded_corner = item.cutting_tool_model_id.radius
if self.cutter_pad_type_id: # item.cutting_tool_parameter_accuracy_level = item.cutting_tool_model_id.accuracy
for item in self: # item.cutting_tool_parameter_blade_number = item.cutting_tool_model_id.blade_number
item.cutting_tool_parameter_brand_id = item.cutter_pad_type_id.brand.id # item.cutting_tool_parameter_hardness = item.cutting_tool_model_id.hardness
item.cutting_tool_parameter_c_diameter = item.cutter_pad_type_id.c_diameter # item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
item.cutting_tool_parameter_d_diameter = item.cutter_pad_type_id.d_diameter # elif self.cutting_tool_type == '刀柄':
item.cutting_tool_parameter_l_total_length = item.cutter_pad_type_id.total_length # item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.brand.id
item.cutting_tool_parameter_wrench = item.cutter_pad_type_id.wrench # item.cutting_tool_parameter_handle_length = item.cutting_tool_model_id.length
item.cutting_tool_parameter_screw = item.cutter_pad_type_id.screw # item.cutting_tool_parameter_length1 = item.cutting_tool_model_id.length1
item.cutting_tool_parameter_blade_ids = item.cutter_pad_type_id.blade.id # item.cutting_tool_parameter_diameter1 = item.cutting_tool_model_id.diameter1
item.cutting_tool_parameter_scope = item.cutter_pad_type_id.scope # item.cutting_tool_parameter_body_accuracy = item.cutting_tool_model_id.body_accuracy
item.cutting_tool_parameter_material_model_id = item.cutter_pad_type_id.material_model.id # item.cutting_tool_parameter_nut = item.cutting_tool_model_id.nut
item.cutting_tool_parameter_rounded_corner = item.cutter_pad_type_id.radius # item.cutting_tool_parameter_clamping_range = item.cutting_tool_model_id.clamping_range
item.cutting_tool_parameter_accuracy_level = item.cutter_pad_type_id.accuracy # item.cutting_tool_parameter_weight = item.cutting_tool_model_id.weight
item.cutting_tool_parameter_blade_number = item.cutter_pad_type_id.blade_number # item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.material_model.id
item.cutting_tool_parameter_hardness = item.cutter_pad_type_id.hardness # item.cutting_tool_parameter_chuck_model_ids = self._get_ids(item.cutting_tool_model_id.chuck_model)
item.image_1920 = '' if not item.cutter_pad_type_id.image else item.cutter_pad_type_id.image # item.cutting_tool_parameter_detection_accuracy = item.cutting_tool_model_id.detection_accuracy
# item.cutting_tool_parameter_detection_hardness = item.cutting_tool_model_id.detection_hardness
@api.onchange('handle_type_id') # item.cutting_tool_parameter_standard_speed = item.cutting_tool_model_id.standard_speed
def _get_handle_type_info(self): # item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
if self.handle_type_id: # elif self.cutting_tool_type == '夹头':
for item in self: # item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.brand.id
item.cutting_tool_parameter_brand_id = item.handle_type_id.brand.id # item.cutting_tool_parameter_outer_diameter = item.cutting_tool_model_id.diameter
item.cutting_tool_parameter_handle_length = item.handle_type_id.length # item.cutting_tool_parameter_inner_diameter = item.cutting_tool_model_id.inner_diameter
item.cutting_tool_parameter_length1 = item.handle_type_id.length1 # item.cutting_tool_parameter_accuracy = item.cutting_tool_model_id.accuracy
item.cutting_tool_parameter_diameter1 = item.handle_type_id.diameter1 # item.cutting_tool_parameter_nut = item.cutting_tool_model_id.nut
item.cutting_tool_parameter_body_accuracy = item.handle_type_id.body_accuracy # item.cutting_tool_parameter_clamping_range = item.cutting_tool_model_id.clamping_range
item.cutting_tool_parameter_nut = item.handle_type_id.nut # item.cutting_tool_parameter_handle_model_ids = self._get_ids(item.cutting_tool_model_id.handle_model)
item.cutting_tool_parameter_clamping_range = item.handle_type_id.clamping_range # item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.material_model.id
item.cutting_tool_parameter_weight = item.handle_type_id.weight # item.cutting_tool_parameter_height = item.cutting_tool_model_id.height
item.cutting_tool_parameter_material_model_id = item.handle_type_id.material_model.id # item.cutting_tool_parameter_feature = item.cutting_tool_model_id.feature
item.cutting_tool_parameter_chuck_model_ids = self._get_ids(item.handle_type_id.chuck_model) # item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
item.cutting_tool_parameter_detection_accuracy = item.handle_type_id.detection_accuracy # else:
item.cutting_tool_parameter_detection_hardness = item.handle_type_id.detection_hardness # item.cutting_tool_parameter_brand_id = False
item.cutting_tool_parameter_standard_speed = item.handle_type_id.standard_speed # item.cutting_tool_parameter_total_length = False
item.image_1920 = '' if not item.handle_type_id.image else item.handle_type_id.image # item.cutting_tool_parameter_shank_length = False
# item.cutting_tool_parameter_blade_length = False
@api.onchange('chuck_type_id') # item.cutting_tool_parameter_diameter = False
def _get_chuck_type_info(self): # item.cutting_tool_parameter_nut = False
if self.chuck_type_id: # item.cutting_tool_parameter_blade_number = False
for item in self: # item.cutting_tool_parameter_material_model_id = False
item.cutting_tool_parameter_brand_id = item.chuck_type_id.brand.id # item.cutting_tool_parameter_front_angle = False
item.cutting_tool_parameter_outer_diameter = item.chuck_type_id.diameter # item.cutting_tool_parameter_rear_angle = False
item.cutting_tool_parameter_inner_diameter = item.chuck_type_id.inner_diameter # item.cutting_tool_parameter_main_included_angle = False
item.cutting_tool_parameter_accuracy = item.chuck_type_id.accuracy # item.cutting_tool_parameter_chuck_model_ids = False
item.cutting_tool_parameter_nut = item.chuck_type_id.nut # item.cutting_tool_parameter_scope = False
item.cutting_tool_parameter_clamping_range = item.chuck_type_id.clamping_range # item.cutting_tool_parameter_top_angle = False
item.cutting_tool_parameter_handle_model_ids = self._get_ids(item.chuck_type_id.handle_model) # item.cutting_tool_parameter_r_angle = False
item.cutting_tool_parameter_material_model_id = item.chuck_type_id.material_model.id # item.cutting_tool_parameter_working_hardness = False
item.cutting_tool_parameter_height = item.chuck_type_id.height # item.cutting_tool_parameter_length = False
item.cutting_tool_parameter_feature = item.chuck_type_id.feature # item.cutting_tool_parameter_width = False
item.image_1920 = '' if not item.chuck_type_id.image else item.chuck_type_id.image # item.cutting_tool_parameter_height = False
# item.cutting_tool_parameter_radius = False
# item.cutting_tool_parameter_cutter_bar_ids = False
# item.cutting_tool_parameter_cutter_pad_ids = False
# item.cutting_tool_parameter_c_diameter = False
# item.cutting_tool_parameter_d_diameter = False
# item.cutting_tool_parameter_l_total_length = False
# item.cutting_tool_parameter_wrench = False
# item.cutting_tool_parameter_screw = False
# item.cutting_tool_parameter_blade_ids = False
# item.cutting_tool_parameter_rounded_corner = False
# item.cutting_tool_parameter_accuracy_level = False
# item.cutting_tool_parameter_hardness = False
# item.cutting_tool_parameter_handle_length = False
# item.cutting_tool_parameter_length1 = False
# item.cutting_tool_parameter_diameter1 = False
# item.cutting_tool_parameter_body_accuracy = False
# item.cutting_tool_parameter_clamping_range = False
# item.cutting_tool_parameter_weight = False
# item.cutting_tool_parameter_detection_accuracy = False
# item.cutting_tool_parameter_detection_hardness = False
# item.cutting_tool_parameter_standard_speed = False
# item.image_1920 = False
class ResMrpBom(models.Model): class ResMrpBom(models.Model):

View File

@@ -131,6 +131,14 @@ class ResProductMo(models.Model):
) )
cutting_tool_parameter_feature = fields.Char('特性') cutting_tool_parameter_feature = fields.Char('特性')
def _get_ids(self, param):
type_ids = []
if not param:
return []
for item in param:
type_ids.append(item.id)
return [(6, 0, type_ids)]
@api.onchange('categ_id') @api.onchange('categ_id')
def _onchange_categ_id(self): def _onchange_categ_id(self):
if self.categ_type == '刀具': if self.categ_type == '刀具':
@@ -139,8 +147,153 @@ class ResProductMo(models.Model):
@api.onchange('cutting_tool_material_id') @api.onchange('cutting_tool_material_id')
def _onchange_cutting_tool_material_id(self): def _onchange_cutting_tool_material_id(self):
if self.cutting_tool_material_id != self.cutting_tool_model_id.mrs_cutting_tool_material_id: for item in self:
self.cutting_tool_model_id = False if item.cutting_tool_material_id.id != item.cutting_tool_model_id.mrs_cutting_tool_material_id.id:
item.cutting_tool_model_id = False
@api.onchange('cutting_tool_model_id')
def _onchange_cutting_tool_model_id_id(self):
for item in self:
if self.cutting_tool_type == '整体式刀具':
item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.mrs_machine_brand_id.id
item.cutting_tool_parameter_total_length = item.cutting_tool_model_id.integral_total_length
item.cutting_tool_parameter_shank_length = item.cutting_tool_model_id.integral_shank_length
item.cutting_tool_parameter_blade_length = item.cutting_tool_model_id.integral_blade_length
item.cutting_tool_parameter_diameter = item.cutting_tool_model_id.integral_diameter
item.cutting_tool_parameter_nut = item.cutting_tool_model_id.integral_nut
item.cutting_tool_parameter_blade_number = item.cutting_tool_model_id.integral_blade_number
item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.mrs_materials_model_id.id
item.cutting_tool_parameter_front_angle = item.cutting_tool_model_id.integral_front_angle
item.cutting_tool_parameter_rear_angle = item.cutting_tool_model_id.integral_rear_angle
item.cutting_tool_parameter_main_included_angle = item.cutting_tool_model_id.integral_main_included_angle
# item.cutting_tool_parameter_chuck_model_ids = self._get_ids(
# item.cutting_tool_model_id.mrs_materials_model_id.id)
item.cutting_tool_parameter_scope = item.cutting_tool_model_id.integral_scope
item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
elif self.cutting_tool_type == '刀片':
item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.mrs_machine_brand_id.id
item.cutting_tool_parameter_top_angle = item.cutting_tool_model_id.blade_top_angle
item.cutting_tool_parameter_front_angle = item.cutting_tool_model_id.blade_front_angle
item.cutting_tool_parameter_rear_angle = item.cutting_tool_model_id.blade_rear_angle
item.cutting_tool_parameter_main_included_angle = item.cutting_tool_model_id.blade_main_included_angle
item.cutting_tool_parameter_r_angle = item.cutting_tool_model_id.blade_r_angle
item.cutting_tool_parameter_working_hardness = item.cutting_tool_model_id.blade_hardness
item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.mrs_materials_model_id.id
item.cutting_tool_parameter_length = item.cutting_tool_model_id.blade_length
item.cutting_tool_parameter_width = item.cutting_tool_model_id.blade_width
item.cutting_tool_parameter_height = item.cutting_tool_model_id.blade_height
item.cutting_tool_parameter_radius = item.cutting_tool_model_id.blade_radius
item.cutting_tool_parameter_nut = item.cutting_tool_model_id.blade_nut
item.cutting_tool_parameter_cutter_bar_ids = self._get_ids(
item.cutting_tool_model_id.mrs_cutting_tool_model_blade_cutter_bar_ids)
item.cutting_tool_parameter_cutter_pad_ids = self._get_ids(
item.cutting_tool_model_id.mrs_cutting_tool_model_blade_cutter_pad_ids)
item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
elif self.cutting_tool_type == '刀杆':
item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.mrs_machine_brand_id.id
item.cutting_tool_parameter_c_diameter = item.cutting_tool_model_id.bar_c_diameter
item.cutting_tool_parameter_d_diameter = item.cutting_tool_model_id.bar_d_diameter
item.cutting_tool_parameter_l_total_length = item.cutting_tool_model_id.bar_total_length
item.cutting_tool_parameter_wrench = item.cutting_tool_model_id.bar_wrench
item.cutting_tool_parameter_screw = item.cutting_tool_model_id.bar_screw
item.cutting_tool_parameter_blade_ids = self._get_ids(
item.cutting_tool_model_id.mrs_cutting_tool_model_pad_blade_ids)
item.cutting_tool_parameter_scope = item.cutting_tool_model_id.bar_scope
item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.mrs_materials_model_id.id
item.cutting_tool_parameter_rounded_corner = item.cutting_tool_model_id.bar_radius
item.cutting_tool_parameter_accuracy_level = item.cutting_tool_model_id.bar_accuracy
item.cutting_tool_parameter_blade_number = item.cutting_tool_model_id.bar_blade_number
item.cutting_tool_parameter_hardness = item.cutting_tool_model_id.bar_hardness
item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
elif self.cutting_tool_type == '刀盘':
item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.mrs_machine_brand_id.id
item.cutting_tool_parameter_c_diameter = item.cutting_tool_model_id.pad_c_diameter
item.cutting_tool_parameter_d_diameter = item.cutting_tool_model_id.pad_d_diameter
item.cutting_tool_parameter_l_total_length = item.cutting_tool_model_id.pad_total_length
item.cutting_tool_parameter_wrench = item.cutting_tool_model_id.pad_wrench
item.cutting_tool_parameter_screw = item.cutting_tool_model_id.pad_screw
item.cutting_tool_parameter_blade_ids = self._get_ids(
item.cutting_tool_model_id.mrs_cutting_tool_model_pad_blade_ids)
item.cutting_tool_parameter_scope = item.cutting_tool_model_id.pad_scope
item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.mrs_materials_model_id.id
item.cutting_tool_parameter_rounded_corner = item.cutting_tool_model_id.pad_radius
item.cutting_tool_parameter_accuracy_level = item.cutting_tool_model_id.pad_accuracy
item.cutting_tool_parameter_blade_number = item.cutting_tool_model_id.pad_blade_number
item.cutting_tool_parameter_hardness = item.cutting_tool_model_id.pad_hardness
item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
elif self.cutting_tool_type == '刀柄':
item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.mrs_machine_brand_id.id
item.cutting_tool_parameter_handle_length = item.cutting_tool_model_id.handle_length
item.cutting_tool_parameter_length1 = item.cutting_tool_model_id.handle_length
item.cutting_tool_parameter_diameter1 = item.cutting_tool_model_id.handle_diameter
item.cutting_tool_parameter_body_accuracy = item.cutting_tool_model_id.handle_body_accuracy
item.cutting_tool_parameter_nut = item.cutting_tool_model_id.handle_nut
item.cutting_tool_parameter_clamping_range = item.cutting_tool_model_id.handle_clamping_range
item.cutting_tool_parameter_weight = item.cutting_tool_model_id.handle_weight
item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.mrs_materials_model_id.id
item.cutting_tool_parameter_chuck_model_ids = self._get_ids(
item.cutting_tool_model_id.mrs_cutting_tool_model_handle_chuck_model_ids)
item.cutting_tool_parameter_detection_accuracy = item.cutting_tool_model_id.handle_detection_accuracy
item.cutting_tool_parameter_detection_hardness = item.cutting_tool_model_id.handle_detection_hardness
item.cutting_tool_parameter_standard_speed = item.cutting_tool_model_id.handle_standard_speed
item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
elif self.cutting_tool_type == '夹头':
item.cutting_tool_parameter_brand_id = item.cutting_tool_model_id.mrs_machine_brand_id.id
item.cutting_tool_parameter_outer_diameter = item.cutting_tool_model_id.chuck_diameter
item.cutting_tool_parameter_inner_diameter = item.cutting_tool_model_id.chuck_inner_diameter
item.cutting_tool_parameter_accuracy = item.cutting_tool_model_id.chuck_accuracy
item.cutting_tool_parameter_nut = item.cutting_tool_model_id.chuck_nut
item.cutting_tool_parameter_clamping_range = item.cutting_tool_model_id.chuck_clamping_range
item.cutting_tool_parameter_handle_model_ids = self._get_ids(
item.cutting_tool_model_id.mrs_cutting_tool_model_chuck_handle_model_ids)
item.cutting_tool_parameter_material_model_id = item.cutting_tool_model_id.mrs_materials_model_id.id
item.cutting_tool_parameter_height = item.cutting_tool_model_id.chuck_height
item.cutting_tool_parameter_feature = item.cutting_tool_model_id.chuck_feature
item.image_1920 = '' if not item.cutting_tool_model_id.image else item.cutting_tool_model_id.image
else:
item.cutting_tool_parameter_brand_id = False
item.cutting_tool_parameter_total_length = False
item.cutting_tool_parameter_shank_length = False
item.cutting_tool_parameter_blade_length = False
item.cutting_tool_parameter_diameter = False
item.cutting_tool_parameter_nut = False
item.cutting_tool_parameter_blade_number = False
item.cutting_tool_parameter_material_model_id = False
item.cutting_tool_parameter_front_angle = False
item.cutting_tool_parameter_rear_angle = False
item.cutting_tool_parameter_main_included_angle = False
item.cutting_tool_parameter_chuck_model_ids = False
item.cutting_tool_parameter_scope = False
item.cutting_tool_parameter_top_angle = False
item.cutting_tool_parameter_r_angle = False
item.cutting_tool_parameter_working_hardness = False
item.cutting_tool_parameter_length = False
item.cutting_tool_parameter_width = False
item.cutting_tool_parameter_height = False
item.cutting_tool_parameter_radius = False
item.cutting_tool_parameter_cutter_bar_ids = False
item.cutting_tool_parameter_cutter_pad_ids = False
item.cutting_tool_parameter_c_diameter = False
item.cutting_tool_parameter_d_diameter = False
item.cutting_tool_parameter_l_total_length = False
item.cutting_tool_parameter_wrench = False
item.cutting_tool_parameter_screw = False
item.cutting_tool_parameter_blade_ids = False
item.cutting_tool_parameter_rounded_corner = False
item.cutting_tool_parameter_accuracy_level = False
item.cutting_tool_parameter_hardness = False
item.cutting_tool_parameter_handle_length = False
item.cutting_tool_parameter_length1 = False
item.cutting_tool_parameter_diameter1 = False
item.cutting_tool_parameter_body_accuracy = False
item.cutting_tool_parameter_clamping_range = False
item.cutting_tool_parameter_weight = False
item.cutting_tool_parameter_detection_accuracy = False
item.cutting_tool_parameter_detection_hardness = False
item.cutting_tool_parameter_standard_speed = False
item.image_1920 = False
# if self.cutting_tool_material_id != self.cutting_tool_model_id.mrs_cutting_tool_material_id:
# self.cutting_tool_model_id = False
class ResMrpBomMo(models.Model): class ResMrpBomMo(models.Model):