diff --git a/sf_base/models/base.py b/sf_base/models/base.py
index 29e37630..f35b03e2 100644
--- a/sf_base/models/base.py
+++ b/sf_base/models/base.py
@@ -41,211 +41,211 @@ class MachineBrand(models.Model):
# 机床
-class MachineTool(models.Model):
- _name = 'sf.machine_tool'
- _description = '机床'
-
- def get_no(self):
- partner = self.env['sf.machine_tool'].sudo().search(
- [('MTcode', '!=', '')],
- limit=1,
- order="id desc")
- if not partner:
- num = "%04d" % 1
-
- else:
- m = int(partner.MTcode) + 1
- num = "%04d" % m
- return num
-
- MTcode = fields.Char("编码", default=get_no)
- code = fields.Char('行业编码')
- name = fields.Char('名称')
- knife_type = fields.Selection(
- [("BT40", "BT40"), ("BT30", "BT30")],
- default="", string="刀把类型")
- number_of_knife_library = fields.Integer('刀库数量(把)')
- rotate_speed = fields.Integer('转速')
- number_of_axles = fields.Selection(
- [("三轴", "三轴"), ("四轴", "四轴"), ("五轴", "五轴")],
- default="", string="轴数")
- # 加工进程
- x_axis = fields.Integer('X轴')
- y_axis = fields.Integer('Y轴')
- z_axis = fields.Integer('Z轴')
- b_axis = fields.Integer('B轴')
- c_axis = fields.Integer('C轴')
- remark = fields.Char('备注')
- is_binding = fields.Boolean('是否绑定机床', default=False)
- precision = fields.Float('加工精度')
- control_system_id = fields.Many2one('sf.machine.control_system',
- string="控制系统")
- # 多个机床型号对应一个机床
- type_id = fields.Many2one('sf.machine_tool.type', '型号')
- brand_id = fields.Many2one('sf.machine.brand', string='品牌')
- state = fields.Selection(
- [("正常", "正常"), ("故障", "故障"), ("不可用", "不可用")],
- default='正常', string="机床状态")
- # 0606新增字段
- machine_tool_picture = fields.Binary('图片')
- heightened_way = fields.Selection([
- ('sifudianji', '伺服电机驱动'),
- ('youyagang', '油压缸驱动'),
- ('chilunjia', '齿轮架驱动')
- ], string="主轴加高方式", default='sifudianji')
- workpiece_load = fields.Char('工件负载')
- lead_screw = fields.Char('丝杆')
- workbench_L = fields.Char('工作台长度(mm)')
- workbench_W = fields.Char('工作台宽度(mm)')
- guide_rail = fields.Char('导轨')
- machine_tool_L = fields.Char('机床长度(mm)')
- machine_tool_W = fields.Char('机床宽度(mm)')
- machine_tool_H = fields.Char('机床高度(mm)')
- feed_speed = fields.Char('进给速度(mm/min)')
- tool_speed = fields.Char('刀具速度')
- distance = fields.Char('主轴端面至工作台面距离(mm)')
- taper = fields.Char('主轴锥度(°)')
- torque = fields.Char('主轴点击扭矩(n/m)')
- motor_power = fields.Char('主轴电机功率(kw)')
- tool_quality_max = fields.Char('刀具最大质量')
- tool_long_max = fields.Char('刀具最大长度')
- tool_diameter_max = fields.Char('刀具最大刀径')
- machine_tool_category = fields.Many2one('sf.machine_tool.category', string='机床类型')
- # 一个机床对应一個加工工厂,一个加工工厂对应多个机床
- factory_id = fields.Many2one('res.partner', string='所属工厂',
- domain="[('is_factory', '=', True)]")
- # 一个机床对应一个供应商,一个供应商对应多个机床
- supplier_id = fields.Many2one('res.partner', string='制造商',
- domain="[('is_vendor', '=', True)]")
- registration_date = fields.Date('注册日期')
- state_zc = fields.Selection([("已注册", "已注册"), ("未注册", "未注册")], string="注册状态", default='未注册')
- active = fields.Boolean('有效', default=True)
-
- @api.constrains('rotate_speed')
- def _check_rotate_speed(self):
- if self.rotate_speed <= 0:
- raise ValidationError("转速不能为0")
-
- @api.constrains('precision')
- def _check_precision(self):
- if self.precision <= 0.00:
- raise ValidationError("加工精度不能为0")
-
- @api.constrains('number_of_knife_library')
- def _check_number_of_knife_library(self):
- if self.number_of_knife_library <= 0:
- raise ValidationError("刀库数量不能为0")
-
- @api.constrains('x_axis')
- def _check_x_axis(self):
- if self.x_axis <= 0:
- raise ValidationError("加工行程里x轴不能为0")
-
- @api.constrains('y_axis')
- def _check_y_axis(self):
- if self.y_axis <= 0:
- raise ValidationError("加工行程里y轴不能为0")
-
- @api.constrains('z_axis')
- def _check_z_axis(self):
- if self.z_axis <= 0:
- raise ValidationError("加工行程里z轴不能为0")
-
- @api.constrains('b_axis')
- def _check_b_axis(self):
- if self.number_of_axles == '四轴':
- print(self.number_of_axles)
- if self.b_axis <= 0:
- raise ValidationError("加工行程里b轴不能为0")
-
- @api.constrains('c_axis')
- def _check_c_axis(self):
- if self.number_of_axles == '五轴':
- if self.c_axis <= 0:
- raise ValidationError("加工行程里c轴不能为0")
-
- @api.onchange('type_id')
- def get_type_info(self):
- for item in self:
- item.knife_type = item.type_id.knife_type
- item.number_of_knife_library = item.type_id.number_of_knife_library
- item.number_of_axles = item.type_id.number_of_axles
- item.rotate_speed = item.type_id.rotate_speed
- item.precision = item.type_id.precision
- item.control_system_id = item.type_id.control_system_id
- item.x_axis = item.type_id.x_axis
- item.y_axis = item.type_id.y_axis
- item.z_axis = item.type_id.z_axis
- item.b_axis = item.type_id.b_axis
- item.c_axis = item.type_id.c_axis
- item.machine_tool_picture = item.type_id.machine_tool_picture
- item.heightened_way = item.type_id.heightened_way
- item.workpiece_load = item.type_id.workpiece_load
- item.lead_screw = item.type_id.lead_screw
- item.workbench_L = item.type_id.workbench_L
- item.workbench_W = item.type_id.workbench_W
- item.guide_rail = item.type_id.guide_rail
- item.machine_tool_L = item.type_id.machine_tool_L
- item.machine_tool_W = item.type_id.machine_tool_W
- item.machine_tool_H = item.type_id.machine_tool_H
- item.feed_speed = item.type_id.feed_speed
- item.tool_speed = item.type_id.tool_speed
- item.distance = item.type_id.distance
- item.taper = item.type_id.taper
- item.torque = item.type_id.torque
- item.motor_power = item.type_id.motor_power
- item.tool_quality_max = item.type_id.tool_quality_max
- item.tool_long_max = item.type_id.tool_long_max
- item.tool_diameter_max = item.type_id.tool_diameter_max
- item.machine_tool_category = item.type_id.machine_tool_category.id
-
- # 注册同步机床
- def enroll_machine_tool(self):
- sf_sync_config = self.env['res.config.settings'].get_values()
- token = sf_sync_config['token']
- sf_secret_key = sf_sync_config['sf_secret_key']
- headers = Common.get_headers(self, token, sf_secret_key)
- strurl = sf_sync_config['sf_url'] + self.crea_url
- objs_all = self.env['sf.machine_tool'].search([('MTcode', '=', self.MTcode)])
- machine_tool_list = []
- if objs_all:
- for item in objs_all:
- val = {
- 'MTcode': item.MTcode,
- 'factory_token': token,
- 'id': item.id,
- 'name': item.name,
- 'code': item.code,
- 'precision': item.precision,
- 'knife_type': item.knife_type,
- 'number_of_knife_library': item.number_of_knife_library,
- 'rotate_speed': item.rotate_speed,
- 'number_of_axles': item.number_of_axles,
- 'control_system_id': self.env['sf.machine.control_system'].search(
- [('id', '=', item.control_system_id.id)]).code,
- 'type_id': self.env['sf.machine_tool.type'].search([('id', '=', item.type_id.id)]).code,
- 'brand_id': self.env['sf.machine.brand'].search([('id', '=', item.brand_id.id)]).code,
- 'supplier_id': item.supplier_id.id,
- 'x_axis': item.x_axis,
- 'y_axis': item.y_axis,
- 'z_axis': item.z_axis,
- 'b_axis': item.b_axis,
- 'c_axis': item.c_axis,
- 'state': item.state,
- 'active': item.active,
-
- }
- machine_tool_list.append(val)
- # kw = machine_tool_list
- kw = json.dumps(machine_tool_list, ensure_ascii=False)
- r = requests.post(strurl, json={}, data={'kw': kw, 'token': token}, headers=headers)
- ret = r.json()
- self.code = ret['message']
- self.state_zc = "已注册"
- if r == 200:
- return "机床注册成功"
- else:
- raise ValidationError("没有注册机床信息")
+# class MachineTool(models.Model):
+# _name = 'sf.machine_tool'
+# _description = '机床'
+#
+# def get_no(self):
+# partner = self.env['sf.machine_tool'].sudo().search(
+# [('MTcode', '!=', '')],
+# limit=1,
+# order="id desc")
+# if not partner:
+# num = "%04d" % 1
+#
+# else:
+# m = int(partner.MTcode) + 1
+# num = "%04d" % m
+# return num
+#
+# MTcode = fields.Char("编码", default=get_no)
+# code = fields.Char('行业编码')
+# name = fields.Char('名称')
+# knife_type = fields.Selection(
+# [("BT40", "BT40"), ("BT30", "BT30")],
+# default="", string="刀把类型")
+# number_of_knife_library = fields.Integer('刀库数量(把)')
+# rotate_speed = fields.Integer('转速')
+# number_of_axles = fields.Selection(
+# [("三轴", "三轴"), ("四轴", "四轴"), ("五轴", "五轴")],
+# default="", string="轴数")
+# # 加工进程
+# x_axis = fields.Integer('X轴')
+# y_axis = fields.Integer('Y轴')
+# z_axis = fields.Integer('Z轴')
+# b_axis = fields.Integer('B轴')
+# c_axis = fields.Integer('C轴')
+# remark = fields.Char('备注')
+# is_binding = fields.Boolean('是否绑定机床', default=False)
+# precision = fields.Float('加工精度')
+# control_system_id = fields.Many2one('sf.machine.control_system',
+# string="控制系统")
+# # 多个机床型号对应一个机床
+# type_id = fields.Many2one('sf.machine_tool.type', '型号')
+# brand_id = fields.Many2one('sf.machine.brand', string='品牌')
+# state = fields.Selection(
+# [("正常", "正常"), ("故障", "故障"), ("不可用", "不可用")],
+# default='正常', string="机床状态")
+# # 0606新增字段
+# machine_tool_picture = fields.Binary('图片')
+# heightened_way = fields.Selection([
+# ('sifudianji', '伺服电机驱动'),
+# ('youyagang', '油压缸驱动'),
+# ('chilunjia', '齿轮架驱动')
+# ], string="主轴加高方式", default='sifudianji')
+# workpiece_load = fields.Char('工件负载')
+# lead_screw = fields.Char('丝杆')
+# workbench_L = fields.Char('工作台长度(mm)')
+# workbench_W = fields.Char('工作台宽度(mm)')
+# guide_rail = fields.Char('导轨')
+# machine_tool_L = fields.Char('机床长度(mm)')
+# machine_tool_W = fields.Char('机床宽度(mm)')
+# machine_tool_H = fields.Char('机床高度(mm)')
+# feed_speed = fields.Char('进给速度(mm/min)')
+# tool_speed = fields.Char('刀具速度')
+# distance = fields.Char('主轴端面至工作台面距离(mm)')
+# taper = fields.Char('主轴锥度(°)')
+# torque = fields.Char('主轴点击扭矩(n/m)')
+# motor_power = fields.Char('主轴电机功率(kw)')
+# tool_quality_max = fields.Char('刀具最大质量')
+# tool_long_max = fields.Char('刀具最大长度')
+# tool_diameter_max = fields.Char('刀具最大刀径')
+# machine_tool_category = fields.Many2one('sf.machine_tool.category', string='机床类型')
+# # 一个机床对应一個加工工厂,一个加工工厂对应多个机床
+# factory_id = fields.Many2one('res.partner', string='所属工厂',
+# domain="[('is_factory', '=', True)]")
+# # 一个机床对应一个供应商,一个供应商对应多个机床
+# supplier_id = fields.Many2one('res.partner', string='制造商',
+# domain="[('is_vendor', '=', True)]")
+# registration_date = fields.Date('注册日期')
+# state_zc = fields.Selection([("已注册", "已注册"), ("未注册", "未注册")], string="注册状态", default='未注册')
+# active = fields.Boolean('有效', default=True)
+#
+# @api.constrains('rotate_speed')
+# def _check_rotate_speed(self):
+# if self.rotate_speed <= 0:
+# raise ValidationError("转速不能为0")
+#
+# @api.constrains('precision')
+# def _check_precision(self):
+# if self.precision <= 0.00:
+# raise ValidationError("加工精度不能为0")
+#
+# @api.constrains('number_of_knife_library')
+# def _check_number_of_knife_library(self):
+# if self.number_of_knife_library <= 0:
+# raise ValidationError("刀库数量不能为0")
+#
+# @api.constrains('x_axis')
+# def _check_x_axis(self):
+# if self.x_axis <= 0:
+# raise ValidationError("加工行程里x轴不能为0")
+#
+# @api.constrains('y_axis')
+# def _check_y_axis(self):
+# if self.y_axis <= 0:
+# raise ValidationError("加工行程里y轴不能为0")
+#
+# @api.constrains('z_axis')
+# def _check_z_axis(self):
+# if self.z_axis <= 0:
+# raise ValidationError("加工行程里z轴不能为0")
+#
+# @api.constrains('b_axis')
+# def _check_b_axis(self):
+# if self.number_of_axles == '四轴':
+# print(self.number_of_axles)
+# if self.b_axis <= 0:
+# raise ValidationError("加工行程里b轴不能为0")
+#
+# @api.constrains('c_axis')
+# def _check_c_axis(self):
+# if self.number_of_axles == '五轴':
+# if self.c_axis <= 0:
+# raise ValidationError("加工行程里c轴不能为0")
+#
+# @api.onchange('type_id')
+# def get_type_info(self):
+# for item in self:
+# item.knife_type = item.type_id.knife_type
+# item.number_of_knife_library = item.type_id.number_of_knife_library
+# item.number_of_axles = item.type_id.number_of_axles
+# item.rotate_speed = item.type_id.rotate_speed
+# item.precision = item.type_id.precision
+# item.control_system_id = item.type_id.control_system_id
+# item.x_axis = item.type_id.x_axis
+# item.y_axis = item.type_id.y_axis
+# item.z_axis = item.type_id.z_axis
+# item.b_axis = item.type_id.b_axis
+# item.c_axis = item.type_id.c_axis
+# item.machine_tool_picture = item.type_id.machine_tool_picture
+# item.heightened_way = item.type_id.heightened_way
+# item.workpiece_load = item.type_id.workpiece_load
+# item.lead_screw = item.type_id.lead_screw
+# item.workbench_L = item.type_id.workbench_L
+# item.workbench_W = item.type_id.workbench_W
+# item.guide_rail = item.type_id.guide_rail
+# item.machine_tool_L = item.type_id.machine_tool_L
+# item.machine_tool_W = item.type_id.machine_tool_W
+# item.machine_tool_H = item.type_id.machine_tool_H
+# item.feed_speed = item.type_id.feed_speed
+# item.tool_speed = item.type_id.tool_speed
+# item.distance = item.type_id.distance
+# item.taper = item.type_id.taper
+# item.torque = item.type_id.torque
+# item.motor_power = item.type_id.motor_power
+# item.tool_quality_max = item.type_id.tool_quality_max
+# item.tool_long_max = item.type_id.tool_long_max
+# item.tool_diameter_max = item.type_id.tool_diameter_max
+# item.machine_tool_category = item.type_id.machine_tool_category.id
+#
+# # 注册同步机床
+# def enroll_machine_tool(self):
+# sf_sync_config = self.env['res.config.settings'].get_values()
+# token = sf_sync_config['token']
+# sf_secret_key = sf_sync_config['sf_secret_key']
+# headers = Common.get_headers(self, token, sf_secret_key)
+# strurl = sf_sync_config['sf_url'] + self.crea_url
+# objs_all = self.env['sf.machine_tool'].search([('MTcode', '=', self.MTcode)])
+# machine_tool_list = []
+# if objs_all:
+# for item in objs_all:
+# val = {
+# 'MTcode': item.MTcode,
+# 'factory_token': token,
+# 'id': item.id,
+# 'name': item.name,
+# 'code': item.code,
+# 'precision': item.precision,
+# 'knife_type': item.knife_type,
+# 'number_of_knife_library': item.number_of_knife_library,
+# 'rotate_speed': item.rotate_speed,
+# 'number_of_axles': item.number_of_axles,
+# 'control_system_id': self.env['sf.machine.control_system'].search(
+# [('id', '=', item.control_system_id.id)]).code,
+# 'type_id': self.env['sf.machine_tool.type'].search([('id', '=', item.type_id.id)]).code,
+# 'brand_id': self.env['sf.machine.brand'].search([('id', '=', item.brand_id.id)]).code,
+# 'supplier_id': item.supplier_id.id,
+# 'x_axis': item.x_axis,
+# 'y_axis': item.y_axis,
+# 'z_axis': item.z_axis,
+# 'b_axis': item.b_axis,
+# 'c_axis': item.c_axis,
+# 'state': item.state,
+# 'active': item.active,
+#
+# }
+# machine_tool_list.append(val)
+# # kw = machine_tool_list
+# kw = json.dumps(machine_tool_list, ensure_ascii=False)
+# r = requests.post(strurl, json={}, data={'kw': kw, 'token': token}, headers=headers)
+# ret = r.json()
+# self.code = ret['message']
+# self.state_zc = "已注册"
+# if r == 200:
+# return "机床注册成功"
+# else:
+# raise ValidationError("没有注册机床信息")
class MachineToolType(models.Model):
diff --git a/sf_maintenance/security/group_security.xml b/sf_maintenance/security/group_security.xml
index b8668782..e5a90368 100644
--- a/sf_maintenance/security/group_security.xml
+++ b/sf_maintenance/security/group_security.xml
@@ -1,4 +1,17 @@
-
+
+ 维保岗
+
+
+
+
+
+ 设备总监
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sf_maintenance/security/ir.model.access.csv b/sf_maintenance/security/ir.model.access.csv
index 5a022f14..e8f2ab32 100644
--- a/sf_maintenance/security/ir.model.access.csv
+++ b/sf_maintenance/security/ir.model.access.csv
@@ -1,10 +1,10 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_equipment_maintenance_standards,equipment_maintenance_standards,model_equipment_maintenance_standards,base.group_user,1,1,1,1
-access_sf_maintenance_logs,sf_maintenance_logs,model_sf_maintenance_logs,base.group_user,1,1,1,1
-access_maintenance_equipment,maintenance_equipment,model_maintenance_equipment,base.group_user,1,1,1,1
-access_maintenance_standards,maintenance_standards,model_maintenance_standards,base.group_user,1,1,1,1
-access_maintenance_standard_image,maintenance_standard_image,model_maintenance_standard_image,base.group_user,1,1,1,1
-access_sf_robot_axis_num,sf_robot_axis_num,model_sf_robot_axis_num,base.group_user,1,1,1,1
+access_equipment_maintenance_standards,equipment_maintenance_standards,model_equipment_maintenance_standards,sf_group_equipment_user,1,1,1,1
+access_sf_maintenance_logs,sf_maintenance_logs,model_sf_maintenance_logs,sf_group_equipment_user,1,1,1,1
+access_maintenance_equipment,maintenance_equipment,model_maintenance_equipment,sf_group_equipment_user,1,1,1,1
+access_maintenance_standards,maintenance_standards,model_maintenance_standards,sf_group_equipment_user,1,1,1,1
+access_maintenance_standard_image,maintenance_standard_image,model_maintenance_standard_image,sf_group_equipment_user,1,1,1,1
+access_sf_robot_axis_num,sf_robot_axis_num,model_sf_robot_axis_num,sf_group_equipment_user,1,1,1,1
diff --git a/sf_manufacturing/security/group_security.xml b/sf_manufacturing/security/group_security.xml
index c32538c7..236a0375 100644
--- a/sf_manufacturing/security/group_security.xml
+++ b/sf_manufacturing/security/group_security.xml
@@ -1,27 +1,10 @@
-
- 员工
- 1
-
-
-
- 管理
- 2
-
-
-
-
-
-
-
-
-
\ No newline at end of file