diff --git a/sf_base/security/ir.model.access.csv b/sf_base/security/ir.model.access.csv index c0f53f98..3795e69b 100644 --- a/sf_base/security/ir.model.access.csv +++ b/sf_base/security/ir.model.access.csv @@ -9,16 +9,25 @@ access_sf_machine_brand_tags,sf_machine_brand_tags,model_sf_machine_brand_tags,b access_sf_machine_brand_tags_admin,sf_machine_brand_tags_admin,model_sf_machine_brand_tags,base.group_system,1,1,1,0 access_sf_machine_control_system,sf_machine_control_system,model_sf_machine_control_system,base.group_user,1,1,1,0 access_sf_machine_control_system_admin,sf_machine_control_system_admin,model_sf_machine_control_system,base.group_system,1,1,1,0 +access_sf_production_process_group_sale_director,sf_production_process_group_sale_director,model_sf_production_process,sf_base.group_sale_director,1,0,0,0 +access_sf_production_process_group_sale_salemanager,sf_production_process_group_sale_salemanager,model_sf_production_process,sf_base.group_sale_salemanager,1,0,0,0 access_sf_production_process,sf_production_process,model_sf_production_process,base.group_user,1,1,1,0 access_sf_production_process_admin,sf_production_process_admin,model_sf_production_process,base.group_system,1,1,1,0 access_sf_production_materials,sf_production_materials,model_sf_production_materials,base.group_user,1,1,1,0 +access_sf_production_materials_group_sale_director,sf_production_materials_group_sale_director,model_sf_production_materials,sf_base.group_sale_director,1,0,0,0 +access_sf_production_materials_group_sale_salemanager,sf_production_materials_group_sale_salemanager,model_sf_production_materials,sf_base.group_sale_salemanager,1,0,0,0 + access_sf_production_materials_admin,sf_production_materials_admin,model_sf_production_materials,base.group_system,1,1,1,0 access_sf_materials_model,sf_materials_model,model_sf_materials_model,base.group_user,1,1,1,0 access_sf_materials_model_admin,sf_materials_model_admin,model_sf_materials_model,base.group_system,1,1,1,0 access_sf_supplier_sort,sf_supplier_sort,model_sf_supplier_sort,base.group_user,1,1,1,0 access_sf_supplier_sort_admin,sf_supplier_sort_admin,model_sf_supplier_sort,base.group_system,1,1,1,0 access_sf_production_process_parameter,sf_production_process_parameter,model_sf_production_process_parameter,base.group_user,1,1,1,0 +access_sf_production_process_parameter_group_sale_director,sf_production_process_parameter_group_sale_director,model_sf_production_process_parameter,sf_base.group_sale_director,1,0,0,0 +access_sf_production_process_parameter_group_sale_salemanager,sf_production_process_parameter_group_sale_salemanager,model_sf_production_process_parameter,sf_base.group_sale_salemanager,1,0,0,0 + + access_sf_production_process_parameter_group_plan_director,sf_production_process_parameter_group_plan_director,model_sf_production_process_parameter,sf_base.group_plan_director,1,0,0,0 access_sf_production_process_parameter_group_purchase_director,sf_production_process_parameter_group_purchase_director,model_sf_production_process_parameter,sf_base.group_purchase_director,1,0,0,0 access_sf_production_process_parameter_group_sale_director,sf_production_process_parameter_group_sale_director,model_sf_production_process_parameter,sf_base.group_sale_director,1,0,0,0 @@ -101,6 +110,10 @@ access_sf_production_materials_group_plan_director,sf_production_materials_group access_sf_production_materials_group_purchase_director,sf_production_materials_group_purchase_director,model_sf_production_materials,sf_base.group_purchase_director,1,1,0,0 access_sf_production_materials_group_sale_director,sf_production_materials_group_sale_director,model_sf_production_materials,sf_base.group_sale_director,1,1,0,0 access_sf_materials_model,sf_materials_model,model_sf_materials_model,sf_base.group_sf_mrp_user,1,0,0,0 +access_sf_materials_model_group_sale_salemanager,sf_materials_model_group_sale_salemanager,model_sf_materials_model,sf_base.group_sale_salemanager,1,0,0,0 +access_sf_materials_model_group_sale_director,sf_materials_model_group_sale_director,model_sf_materials_model,sf_base.group_sale_director,1,0,0,0 + + access_sf_materials_model_group_plan_director,sf_materials_model_group_plan_director,model_sf_materials_model,sf_base.group_plan_director,1,0,0,0 access_sf_materials_model_group_purchase_director,sf_materials_model_group_purchase_director,model_sf_materials_model,sf_base.group_purchase_director,1,0,0,0 access_sf_materials_model_group_sale_director,sf_materials_model_group_sale_director,model_sf_materials_model,sf_base.group_sale_director,1,0,0,0 diff --git a/sf_manufacturing/models/product_template.py b/sf_manufacturing/models/product_template.py index d766629c..16ea429a 100644 --- a/sf_manufacturing/models/product_template.py +++ b/sf_manufacturing/models/product_template.py @@ -7,8 +7,8 @@ import os from odoo import models, fields, api, _ from odoo.exceptions import ValidationError from odoo.modules import get_resource_path -# from OCC.Extend.DataExchange import read_step_file -# from OCC.Extend.DataExchange import write_stl_file +from OCC.Extend.DataExchange import read_step_file +from OCC.Extend.DataExchange import write_stl_file class ResProductMo(models.Model): diff --git a/sf_sale/models/quick_easy_order_old.py b/sf_sale/models/quick_easy_order_old.py index 413e15f9..21fc3f5e 100644 --- a/sf_sale/models/quick_easy_order_old.py +++ b/sf_sale/models/quick_easy_order_old.py @@ -6,8 +6,8 @@ import os from datetime import datetime from stl import mesh # from OCC.Core.GProp import GProp_GProps -# from OCC.Extend.DataExchange import read_step_file -# from OCC.Extend.DataExchange import write_stl_file +from OCC.Extend.DataExchange import read_step_file +from OCC.Extend.DataExchange import write_stl_file from odoo.addons.sf_base.commons.common import Common from odoo import models, fields, api from odoo.modules import get_resource_path @@ -81,8 +81,8 @@ class QuickEasyOrder(models.Model): report_path = attachment._full_path(attachment.store_fname) vals['model_file'] = self.transition_glb_file(report_path, model_code) obj = super(QuickEasyOrder, self).create(vals) - logging.info('---------向cloud生成模型库-------') - self.model_coloring() + logging.info('---------向cloud生成模型库记录-------') + self.model_coloring(obj) logging.info('---------开始派单到工厂-------') self.distribute_to_factory(obj) obj.state = '待接单' @@ -164,7 +164,7 @@ class QuickEasyOrder(models.Model): try: logging.info('---------派单到工厂-------') res = {'bfm_process_order_list': []} - for item in self: + for item in obj: attachment = item.upload_model_file[0] base64_data = base64.b64encode(attachment.datas) base64_datas = base64_data.decode('utf-8') @@ -269,17 +269,17 @@ class QuickEasyOrder(models.Model): # 模型上色 - def model_coloring(self): + def model_coloring(self, order): url = '/api/library_of_models/create' config = self.env['res.config.settings'].get_values() config_header = Common.get_headers(self, config['token'], config['sf_secret_key']) - logging.info('order: %s' % self.name) - if self: - attachment = self.upload_model_file[0] + logging.info('order: %s' % order.name) + if order: + attachment = order.upload_model_file[0] base64_data = base64.b64encode(attachment.datas) base64_datas = base64_data.decode('utf-8') model_code = hashlib.sha1(base64_datas.encode('utf-8')).hexdigest() - logging.info('model_file-size: %s' % len(self.model_file)) + logging.info('model_file-size: %s' % len(order.model_file)) logging.info('attachment.datas-size: %s' % len(attachment.datas)) vals = { 'programme_way': 'manual operation', @@ -287,13 +287,13 @@ class QuickEasyOrder(models.Model): 'model_data': base64.b64decode(attachment.datas), 'model_color_data': '', 'model_name': attachment.name, - 'model_long': self.model_length, - 'model_width': self.model_width, - 'model_height': self.model_height, - 'model_volume': self.model_volume, + 'model_long': order.model_length, + 'model_width': order.model_width, + 'model_height': order.model_height, + 'model_volume': order.model_volume, 'color_model_path': '/tmp/' + str(model_code) + ".step", - 'model_order_no': self.name, - 'remark': '订单号:%s 客户:%s' % (self.name, self.customer_id.name) + 'model_order_no': order.name, + 'remark': '订单号:%s 客户:%s' % (order.name, order.customer_id.name) } try: ret = requests.post((config['sf_url'] + url), json={}, data=vals, headers=config_header, @@ -307,4 +307,4 @@ class QuickEasyOrder(models.Model): raise UserError(ret['message']) except Exception as e: self.model_color_state = 'fail' - raise UserError("模型上色失败") \ No newline at end of file + raise UserError("模型上色失败")