55 lines
1.8 KiB
Python
55 lines
1.8 KiB
Python
# -*- coding: utf-8 -*-
|
||
import logging
|
||
import json
|
||
import base64
|
||
from odoo import http
|
||
from odoo.http import request
|
||
|
||
|
||
class Manufacturing_Connect(http.Controller):
|
||
|
||
@http.route('/AutoDeviceApi/MachineToolGroup', type='json', auth='sf_token', methods=['GET', 'POST'], csrf=False,
|
||
cors="*")
|
||
def get_maintenance_tool_groups_Info(self, **kw):
|
||
"""
|
||
机床刀具组接口
|
||
:param kw:
|
||
:return:
|
||
"""
|
||
logging.info('get_maintenance_tool_groups_Info:%s' % kw)
|
||
try:
|
||
datas = request.httprequest.data
|
||
ret = json.loads(datas)
|
||
# ret = json.loads(ret['result'])
|
||
logging.info('DeviceId:%s' % ret)
|
||
tool_groups = request.env['sf.tool.groups'].sudo().search([])
|
||
|
||
res = {'Succeed': True, 'Datas': []}
|
||
if tool_groups:
|
||
for item in tool_groups:
|
||
device_id = ''
|
||
for equipment_id in item.equipment_ids:
|
||
device_id = '%s,%s' % (device_id, equipment_id.name)
|
||
res['Datas'].append({
|
||
'GroupName': item.name,
|
||
'DeviceId': device_id
|
||
})
|
||
except Exception as e:
|
||
res = {'Succeed': False, 'ErrorCode': 202, 'Error': e}
|
||
logging.info('get_maintenance_tool_groups_Info error:%s' % e)
|
||
return json.JSONEncoder().encode(res)
|
||
|
||
|
||
class MultiInheritController():
|
||
_sub_classes = []
|
||
|
||
def __init_subclass__(cls):
|
||
"""
|
||
多继承,解决多个字类时方法调用super的问题
|
||
"""
|
||
super().__init_subclass__()
|
||
if len(cls._sub_classes) > 0 and cls not in cls._sub_classes:
|
||
cls.__bases__ = (cls._sub_classes[-1],)
|
||
if cls not in cls._sub_classes:
|
||
cls._sub_classes.append(cls)
|