修改表面工艺外协字段类型
This commit is contained in:
@@ -31,8 +31,9 @@ class ResProductTemplate(models.Model):
|
||||
embryo_model_type_id = fields.Many2one('sf.model.type', string='胚料模型类型')
|
||||
model_processing_panel = fields.Char('模型加工面板')
|
||||
# model_surface_process_category_id = fields.Many2one('sf.production.process.category', string='表面工艺类别')
|
||||
model_surface_process_id = fields.Many2many('sf.production.process', 'rel_product_process', string='表面工艺')
|
||||
model_process_parameters_id = fields.Many2many('sf.processing.technology', 'rel_product_technology', string='工艺参数')
|
||||
model_surface_process_ids = fields.Many2many('sf.production.process', 'rel_product_process', string='表面工艺')
|
||||
model_process_parameters_ids = fields.Many2many('sf.production.process.parameter', 'rel_product_parameter',
|
||||
string='工艺参数')
|
||||
# model_price = fields.Float('模型单价', digits=(16, 3))
|
||||
model_remark = fields.Char('模型备注说明')
|
||||
length = fields.Float('长[mm]', digits=(16, 3))
|
||||
@@ -99,6 +100,7 @@ class ResProductTemplate(models.Model):
|
||||
'model_file': '' if not item['model_file'] else base64.b64decode(item['model_file']),
|
||||
'model_name': attachment.name,
|
||||
'upload_model_file': [(6, 0, [attachment.id])],
|
||||
# 'tag_ids': [(6, 0, [t.id for t in account_template.tag_ids])],
|
||||
# 'single_manufacturing': True,
|
||||
# 'tracking': 'serial',
|
||||
'list_price': item['price'],
|
||||
@@ -107,10 +109,8 @@ class ResProductTemplate(models.Model):
|
||||
[('materials_no', '=', item['texture_code'])]).id,
|
||||
'materials_type_id': self.env['sf.materials.model'].search(
|
||||
[('materials_no', '=', item['texture_type_code'])]).id,
|
||||
'model_surface_process_id': self.env['sf.production.process'].search(
|
||||
[('process_encode', '=', item['surface_process_code'])]).id,
|
||||
'model_process_parameters_id': self.env['sf.processing.technology'].search(
|
||||
[('process_encode', '=', item['process_parameters_code'])]).id,
|
||||
'model_surface_process_ids': self.get_production_process_id(item['surface_process_code']),
|
||||
'model_process_parameters_ids': self.get_process_parameters_id(item['process_parameters_code']),
|
||||
'model_remark': item['remark'],
|
||||
'default_code': '%s-%s' % (order_number, i),
|
||||
# 'barcode': item['barcode'],
|
||||
@@ -121,6 +121,20 @@ class ResProductTemplate(models.Model):
|
||||
# product_id.product_tmpl_id.active = False
|
||||
return copy_product_id
|
||||
|
||||
def get_production_process_id(self, surface_process_code):
|
||||
production_process_ids = []
|
||||
for item in surface_process_code:
|
||||
production_process = self.env['sf.production.process'].search([('process_encode', '=', item)])
|
||||
production_process_ids.append(production_process.id)
|
||||
return [(6, 0, production_process_ids)]
|
||||
|
||||
def get_process_parameters_id(self, process_parameters_code):
|
||||
process_parameters_ids = []
|
||||
for item in process_parameters_code:
|
||||
process_parameters = self.env['sf.production.process.parameter'].search([('code', '=', item)])
|
||||
process_parameters_ids.append(process_parameters.id)
|
||||
return [(6, 0, process_parameters_ids)]
|
||||
|
||||
def attachment_create(self, name, data):
|
||||
attachment = self.env['ir.attachment'].create({
|
||||
'datas': base64.b64decode(data),
|
||||
@@ -226,7 +240,7 @@ class ResProductTemplate(models.Model):
|
||||
item.model_file = self.transition_glb_file(report_path, model_code)
|
||||
|
||||
# 将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)
|
||||
output_file = os.path.join('/tmp', str(code) + '.stl')
|
||||
write_stl_file(shapes, output_file, 'binary', 0.03, 0.5)
|
||||
|
||||
@@ -25,8 +25,10 @@
|
||||
<field name="materials_id" string="材料"/>
|
||||
<field name="materials_type_id" string="型号"
|
||||
domain="[('materials_id', '=', materials_id)]"/>
|
||||
<field name="model_surface_process_id" string="表面工艺" widget="many2many_tags"/>
|
||||
<field name="model_process_parameters_id" string="工艺参数" widget="many2many_tags"/>
|
||||
<field name="model_surface_process_ids" string="表面工艺" widget="many2many_tags"
|
||||
options="{'no_create': True}"/>
|
||||
<field name="model_process_parameters_ids" string="工艺参数" widget="many2many_tags"
|
||||
options="{'no_create': True}"/>
|
||||
</field>
|
||||
|
||||
<xpath expr="//label[@for='volume']" position="before">
|
||||
@@ -67,9 +69,8 @@
|
||||
<field name="product_model_type_id" string="模型类型"/>
|
||||
<field name="model_processing_panel" placeholder="例如R,U" string="加工面板"/>
|
||||
<field name="model_machining_precision"/>
|
||||
<field name="model_surface_process_id" string="表面工艺"/>
|
||||
<field name="model_process_parameters_id" string="工艺参数"
|
||||
domain="[('processing_order_ids', '=', model_surface_process_id)]"/>
|
||||
<field name="model_surface_process_ids" string="表面工艺"/>
|
||||
<field name="model_process_parameters_ids" string="工艺参数"/>
|
||||
<field name="model_remark" string="备注说明"/>
|
||||
</group>
|
||||
</group>
|
||||
|
||||
Reference in New Issue
Block a user