Merge branch 'develop' of https://e.coding.net/jikimo-hn/jikimo_sfs/jikimo_sf into feature/修复报废-拣货单(sfp)
This commit is contained in:
@@ -436,6 +436,7 @@ class Manufacturing_Connect(http.Controller):
|
||||
DeciveId)))
|
||||
total_data = request.env['sf.shelf.location.datasync'].sudo().get_total_data()
|
||||
for item in shelfinfo:
|
||||
logging.info('货架已获取信息:%s' % item)
|
||||
shelf_barcode = request.env['sf.shelf.location.datasync'].sudo().find_our_code(
|
||||
total_data, item['Postion'])
|
||||
location_id = request.env['sf.shelf.location'].sudo().search(
|
||||
@@ -450,15 +451,15 @@ class Manufacturing_Connect(http.Controller):
|
||||
if tool:
|
||||
location_id.product_sn_id = tool.barcode_id.id
|
||||
# 修改功能刀具状态
|
||||
tool_state = {'Nomal': '正常', 'Warning': '报警'}
|
||||
if tool_state.get(item.get('State')):
|
||||
if tool_state.get(item.get('State')) != tool.functional_tool_status:
|
||||
if item.get('State') == '报警':
|
||||
if tool.functional_tool_status != item.get('State'):
|
||||
tool.write({
|
||||
'functional_tool_status': tool_state.get(item['State'])
|
||||
'functional_tool_status': item['State']
|
||||
})
|
||||
else:
|
||||
location_id.product_sn_id = False
|
||||
logging.info('货架已获取信息:%s' % item)
|
||||
if item['RfidCode']:
|
||||
logging.info('Rfid为【%s】的功能刀具在系统中不存在!' % item['RfidCode'])
|
||||
else:
|
||||
equipment_id = request.env['maintenance.equipment'].sudo().search([('name', '=', DeciveId)])
|
||||
if equipment_id:
|
||||
@@ -683,9 +684,14 @@ class Manufacturing_Connect(http.Controller):
|
||||
request.env['center_control.interface.log'].sudo().create(
|
||||
{'content': ret, 'name': 'AutoDeviceApi/AGVStationState'})
|
||||
logging.info('ret:%s' % ret)
|
||||
if 'DeviceId' in ret and 'AtHome' in ret:
|
||||
logging.info('DeviceId:%s, AtHome:%s' % (ret['DeviceId'], ret['AtHome']))
|
||||
request.env['sf.agv.site'].update_site_state({ret['DeviceId']: '占用' if ret['AtHome'] else '空闲'})
|
||||
ret = ret['param']
|
||||
params = {}
|
||||
for i in range(len(ret)):
|
||||
if 'DeviceId' in ret[i] and 'AtHome' in ret[i]:
|
||||
logging.info('DeviceId:%s, AtHome:%s' % (ret[i]['DeviceId'], ret[i]['AtHome']))
|
||||
params[ret[i]['DeviceId']] = '占用' if ret[i]['AtHome'] else '空闲'
|
||||
if params:
|
||||
request.env['sf.agv.site'].update_site_state(params)
|
||||
except Exception as e:
|
||||
res = {'Succeed': False, 'ErrorCode': 202, 'Error': str(e)}
|
||||
logging.info('AGVDownProduct error:%s' % e)
|
||||
|
||||
@@ -242,13 +242,13 @@ class AgvScheduling(models.Model):
|
||||
elif vals['state'] == '已配送':
|
||||
self.env['sf.workpiece.delivery'].search([('agv_scheduling_id', '=', self.id)]).write({
|
||||
'status': '已配送',
|
||||
'feeder_station_destination_id': self.end_site_id,
|
||||
'feeder_station_destination_id': self.end_site_id.id,
|
||||
'route_id': self.agv_route_id.id,
|
||||
'task_completion_time': fields.Datetime.now()
|
||||
})
|
||||
elif vals['state'] == '配送中':
|
||||
self.env['sf.workpiece.delivery'].search([('agv_scheduling_id', '=', self.id)]).write({
|
||||
'feeder_station_destination_id': self.end_site_id,
|
||||
'feeder_station_destination_id': self.end_site_id.id,
|
||||
'route_id': self.agv_route_id.id,
|
||||
'task_delivery_time': fields.Datetime.now()
|
||||
})
|
||||
|
||||
@@ -1671,14 +1671,14 @@ class WorkPieceDelivery(models.Model):
|
||||
obj.feeder_station_start_id.name, obj.feeder_station_destination_id.name)
|
||||
return obj
|
||||
|
||||
@api.constrains('route_id')
|
||||
def _check_route_id(self):
|
||||
if self.type == '运送空料架':
|
||||
if self.route_id and self.name is False:
|
||||
route = self.sudo().search(
|
||||
[('route_id', '=', self.route_id.id), ('id', '!=', self.id), ('name', 'ilike', '运送空料架路线')])
|
||||
if route:
|
||||
raise UserError("该任务路线已存在,请重新选择")
|
||||
# @api.constrains('route_id')
|
||||
# def _check_route_id(self):
|
||||
# if self.type == '运送空料架':
|
||||
# if self.route_id and self.name is False:
|
||||
# route = self.sudo().search(
|
||||
# [('route_id', '=', self.route_id.id), ('id', '!=', self.id), ('name', 'ilike', '运送空料架路线')])
|
||||
# if route:
|
||||
# raise UserError("该任务路线已存在,请重新选择")
|
||||
|
||||
# @api.constrains('name')
|
||||
# def _check_name(self):
|
||||
|
||||
Reference in New Issue
Block a user