From 3fe9c9e5320f18e83f4a34cc3560115e5ae41f73 Mon Sep 17 00:00:00 2001 From: "qihao.gong@jikimo.com" Date: Thu, 22 Feb 2024 14:30:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8E=A5=E5=8F=A3=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_manufacturing/controllers/controllers.py | 12 +++++++- sf_sale/models/quick_easy_order.py | 4 +-- sf_warehouse/models/model.py | 23 +++++++++++++++ sf_warehouse/views/shelf_location.xml | 32 +++++++++------------ 4 files changed, 49 insertions(+), 22 deletions(-) diff --git a/sf_manufacturing/controllers/controllers.py b/sf_manufacturing/controllers/controllers.py index d75fbe69..5a0ae7cd 100644 --- a/sf_manufacturing/controllers/controllers.py +++ b/sf_manufacturing/controllers/controllers.py @@ -141,6 +141,9 @@ class Manufacturing_Connect(http.Controller): routing_type = ret['CraftId'] workorder = request.env['mrp.workorder'].sudo().search( [('production_id', '=', production_id), ('routing_type', '=', routing_type)], limit=1) + if not workorder: + res = {'Succeed': False, 'ErrorCode': 202, 'Error': '该工单不存在'} + return json.JSONEncoder().encode(res) workorder.button_start() except Exception as e: res = {'Succeed': False, 'ErrorCode': 202, 'Error': e} @@ -173,13 +176,16 @@ class Manufacturing_Connect(http.Controller): routing_type = ret['CraftId'] workorder = request.env['mrp.workorder'].sudo().search( [('production_id', '=', production_id), ('routing_type', '=', routing_type)], limit=1) + if not workorder: + res = {'Succeed': False, 'ErrorCode': 202, 'Error': '该工单不存在'} + return json.JSONEncoder().encode(res) workorder.button_finish() except Exception as e: res = {'Succeed': False, 'ErrorCode': 202, 'Error': e} logging.info('button_Work_End error:%s' % e) return json.JSONEncoder().encode(res) - @http.route('/AutoDeviceApi/QcCheck', type='json', auth='none', methods=['GET', 'POST'], csrf=False, + @http.route('/AutoDeviceApi/PartQualityInspect', type='json', auth='none', methods=['GET', 'POST'], csrf=False, cors="*") def Workorder_QcCheck(self, **kw): """ @@ -215,3 +221,7 @@ class Manufacturing_Connect(http.Controller): res = {'Succeed': False, 'ErrorCode': 202, 'Error': e} logging.info('Workorder_QcCheck error:%s' % e) return json.JSONEncoder().encode(res) + + + + diff --git a/sf_sale/models/quick_easy_order.py b/sf_sale/models/quick_easy_order.py index ed52d9de..1ece6b86 100644 --- a/sf_sale/models/quick_easy_order.py +++ b/sf_sale/models/quick_easy_order.py @@ -8,8 +8,8 @@ from datetime import datetime import requests from odoo import http from odoo.http import request -# 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 import models, fields, api from odoo.modules import get_resource_path from odoo.exceptions import ValidationError, UserError diff --git a/sf_warehouse/models/model.py b/sf_warehouse/models/model.py index a1891c71..9fe46616 100644 --- a/sf_warehouse/models/model.py +++ b/sf_warehouse/models/model.py @@ -4,6 +4,9 @@ import logging import base64 import qrcode import io + +import requests + from odoo import api, fields, models, _ from odoo.osv import expression from odoo.exceptions import UserError @@ -383,6 +386,26 @@ class ShelfLocation(models.Model): record.product_id = False record.location_status = '空闲' + #调取获取货位信息接口 + def get_sf_shelf_location_info(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 + headers = {'Authorization': 'Ba F2CF5DCC-1A00-4234-9E95-65603F70CC8A'} + crea_url = 'https://x24467i973.zicp.fun/AutoDeviceApi/GetLocationInfos' + # objs_all = self.env['maintenance.equipment'].search([('id', '=', self.id)]) + # machine_tool_list = [] + params = {'DeviceId': 'Cabinet-AL'} + r = requests.get(crea_url, params=params,headers=headers) + ret = r.json() + print(ret) + if ret['Succeed'] == True: + return '获取库位信息成功' + else: + raise UserError("该库位无产品") + class Sf_stock_move_line(models.Model): _inherit = 'stock.move.line' diff --git a/sf_warehouse/views/shelf_location.xml b/sf_warehouse/views/shelf_location.xml index 4735a002..457efc46 100644 --- a/sf_warehouse/views/shelf_location.xml +++ b/sf_warehouse/views/shelf_location.xml @@ -66,7 +66,7 @@ - shelf.location.tree + Shelf Location tree sf.shelf.location @@ -113,26 +113,19 @@ - shelf.location.form + Shelf Location form sf.shelf.location
- -
@@ -262,6 +255,11 @@ + + 货位 ir.actions.act_window @@ -286,15 +284,11 @@ - - - -