Accept Merge Request #1438: (feature/machining_accuracy_sync -> develop)
Merge Request: 加工精度同步 Created By: @管欢 Reviewed By: @胡尧 Approved By: @胡尧 Accepted By: @管欢 URL: https://jikimo-hn.coding.net/p/jikimo_sfs/d/jikimo_sf/git/merge/1438
This commit is contained in:
@@ -394,3 +394,11 @@ class MachineToolCategory(models.Model):
|
|||||||
active = fields.Boolean('有效', default=True)
|
active = fields.Boolean('有效', default=True)
|
||||||
category = fields.Selection([('shukong', u'数控'), ('putong', u'普通')], string=u'机床类别',
|
category = fields.Selection([('shukong', u'数控'), ('putong', u'普通')], string=u'机床类别',
|
||||||
default='shukong')
|
default='shukong')
|
||||||
|
|
||||||
|
|
||||||
|
class MachiningAccuracy(models.Model):
|
||||||
|
_name = 'sf.machining.accuracy'
|
||||||
|
_description = '加工精度'
|
||||||
|
name = fields.Char('一般公差', index=True)
|
||||||
|
standard_tolerance = fields.Char(string="标准公差")
|
||||||
|
sync_id = fields.Char('同步ID')
|
||||||
|
|||||||
@@ -247,3 +247,7 @@ access_sf_cutting_tool_type_group_sf_stock_manager,sf_cutting_tool_type_group_sf
|
|||||||
access_sf_cutting_tool_material_group_plan_dispatch,sf_cutting_tool_material_group_plan_dispatch,model_sf_cutting_tool_material,sf_base.group_plan_dispatch,1,0,0,0
|
access_sf_cutting_tool_material_group_plan_dispatch,sf_cutting_tool_material_group_plan_dispatch,model_sf_cutting_tool_material,sf_base.group_plan_dispatch,1,0,0,0
|
||||||
access_sf_functional_cutting_tool_model_group_plan_dispatch,sf_functional_cutting_tool_model_group_plan_dispatch,model_sf_functional_cutting_tool_model,sf_base.group_plan_dispatch,1,0,0,0
|
access_sf_functional_cutting_tool_model_group_plan_dispatch,sf_functional_cutting_tool_model_group_plan_dispatch,model_sf_functional_cutting_tool_model,sf_base.group_plan_dispatch,1,0,0,0
|
||||||
access_sf_cutting_tool_type_group_plan_dispatch,sf_cutting_tool_type_group_plan_dispatch,model_sf_cutting_tool_type,sf_base.group_plan_dispatch,1,0,0,0
|
access_sf_cutting_tool_type_group_plan_dispatch,sf_cutting_tool_type_group_plan_dispatch,model_sf_cutting_tool_type,sf_base.group_plan_dispatch,1,0,0,0
|
||||||
|
|
||||||
|
|
||||||
|
access_sf_machining_accuracy,sf_machining_accuracy,model_sf_machining_accuracy,base.group_user,1,0,0,0
|
||||||
|
access_sf_machining_accuracy_admin,sf_machining_accuracy_admin,model_sf_machining_accuracy,base.group_system,1,0,0,0
|
||||||
|
|||||||
|
@@ -614,4 +614,23 @@
|
|||||||
<field name="res_model">sf.machine.control_system</field>
|
<field name="res_model">sf.machine.control_system</field>
|
||||||
<field name="view_mode">tree</field>
|
<field name="view_mode">tree</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
#------------------加工精度------------------
|
||||||
|
<record model="ir.ui.view" id="tree_sf_machining_accuracy_view">
|
||||||
|
<field name="name">tree.sf.machining.accuracy</field>
|
||||||
|
<field name="model">sf.machining.accuracy</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<tree string="加工精度" create="0" edit="0" delete="0">
|
||||||
|
<field name="name"/>
|
||||||
|
<field name="standard_tolerance"/>
|
||||||
|
</tree>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="action_sf_machining_accuracy" model="ir.actions.act_window">
|
||||||
|
<field name="name">加工精度</field>
|
||||||
|
<field name="type">ir.actions.act_window</field>
|
||||||
|
<field name="res_model">sf.machining.accuracy</field>
|
||||||
|
<field name="view_mode">tree</field>
|
||||||
|
</record>
|
||||||
</odoo>
|
</odoo>
|
||||||
@@ -141,12 +141,18 @@
|
|||||||
sequence="1"
|
sequence="1"
|
||||||
action="action_sf_machine_brand"/>
|
action="action_sf_machine_brand"/>
|
||||||
|
|
||||||
|
<menuitem
|
||||||
|
id="menu_sf_machining_accuracy"
|
||||||
|
parent="menu_sf_base"
|
||||||
|
name="加工精度"
|
||||||
|
sequence="1"
|
||||||
|
action="action_sf_machining_accuracy"/>
|
||||||
|
|
||||||
<menuitem
|
<menuitem
|
||||||
id="menu_sf_machine_control_system"
|
id="menu_sf_machine_control_system"
|
||||||
parent="menu_sf_base"
|
parent="menu_sf_base"
|
||||||
name="数控系统"
|
name="数控系统"
|
||||||
sequence="1"
|
sequence="2"
|
||||||
action="action_sf_machine_control_system"/>
|
action="action_sf_machine_control_system"/>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -84,6 +84,8 @@ class ResConfigSettings(models.TransientModel):
|
|||||||
_logger.info("同步刀具物料切削速度完成")
|
_logger.info("同步刀具物料切削速度完成")
|
||||||
self.env['sf.feed.per.tooth'].sync_all_feed_per_tooth()
|
self.env['sf.feed.per.tooth'].sync_all_feed_per_tooth()
|
||||||
_logger.info("同步刀具物料每齿走刀量完成")
|
_logger.info("同步刀具物料每齿走刀量完成")
|
||||||
|
self.env['sf.machining.accuracy'].sync_machining_accuracy_all()
|
||||||
|
_logger.info("同步加工精度完成")
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
_logger.info("sf_all_sync error: %s" % e)
|
_logger.info("sf_all_sync error: %s" % e)
|
||||||
|
|||||||
@@ -74,6 +74,8 @@ class MrStaticResourceDataSync(models.Model):
|
|||||||
_logger.info("同步刀具物料切削速度完成")
|
_logger.info("同步刀具物料切削速度完成")
|
||||||
self.env['sf.feed.per.tooth'].sync_feed_per_tooth_yesterday()
|
self.env['sf.feed.per.tooth'].sync_feed_per_tooth_yesterday()
|
||||||
_logger.info("同步刀具物料每齿走刀量完成")
|
_logger.info("同步刀具物料每齿走刀量完成")
|
||||||
|
self.env['sf.machining.accuracy'].sync_machining_accuracy_all()
|
||||||
|
_logger.info("同步加工精度完成")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
traceback_error = traceback.format_exc()
|
traceback_error = traceback.format_exc()
|
||||||
logging.error("同步静态资源库失败:%s" % traceback_error)
|
logging.error("同步静态资源库失败:%s" % traceback_error)
|
||||||
@@ -3133,3 +3135,36 @@ class CuttingToolBasicParameters(models.Model):
|
|||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
raise ValidationError("刀具物料基本参数认证未通过")
|
raise ValidationError("刀具物料基本参数认证未通过")
|
||||||
|
|
||||||
|
|
||||||
|
class MachiningAccuracySync(models.Model):
|
||||||
|
_inherit = 'sf.machining.accuracy'
|
||||||
|
_description = '加工精度'
|
||||||
|
url = '/api/machining_accuracy/list'
|
||||||
|
|
||||||
|
def sync_machining_accuracy_all(self):
|
||||||
|
config = self.env['res.config.settings'].get_values()
|
||||||
|
headers = Common.get_headers(self, config['token'], config['sf_secret_key'])
|
||||||
|
strUrl = config['sf_url'] + self.url
|
||||||
|
r = requests.post(strUrl, json={}, data=None, headers=headers)
|
||||||
|
r = r.json()
|
||||||
|
result = json.loads(r['result'])
|
||||||
|
_logger.info('加工精度:%s' % result)
|
||||||
|
if result['status'] == 1:
|
||||||
|
machining_accuracy_all_list = result['machining_accuracy_all_list']
|
||||||
|
# 获取同步的id集合
|
||||||
|
ids = [obj['id'] for obj in machining_accuracy_all_list]
|
||||||
|
self.env['sf.machining.accuracy'].sudo().search(
|
||||||
|
[('sync_id', 'not in', ids)]).unlink()
|
||||||
|
for time in machining_accuracy_all_list:
|
||||||
|
machining_accuracy = self.env['sf.machining.accuracy'].sudo().search(
|
||||||
|
[('sync_id', '=', time['id'])])
|
||||||
|
if machining_accuracy:
|
||||||
|
machining_accuracy.name = time['name']
|
||||||
|
machining_accuracy.standard_tolerance = time['standard_tolerance']
|
||||||
|
else:
|
||||||
|
self.env['sf.machining.accuracy'].sudo().create({
|
||||||
|
"sync_id": time['id'],
|
||||||
|
"name": time['name'],
|
||||||
|
"discount": time['discount'],
|
||||||
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user