测试优化代码后的代码扫描效果,优化部分代码审查问题
This commit is contained in:
@@ -1,22 +1,21 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import base64
|
||||
import logging
|
||||
import os
|
||||
import json
|
||||
import hashlib
|
||||
import time
|
||||
import requests
|
||||
from datetime import datetime, timedelta
|
||||
from odoo.http import request
|
||||
from odoo import fields, models, api, _
|
||||
from odoo.exceptions import ValidationError
|
||||
from odoo.exceptions import UserError
|
||||
from odoo.addons.sf_machine_connect.models import py2opcua, ftp_operate
|
||||
|
||||
import json
|
||||
import base64
|
||||
import shutil
|
||||
import logging
|
||||
import hashlib
|
||||
from io import BytesIO
|
||||
from zipfile import ZipFile
|
||||
from datetime import datetime, timedelta
|
||||
import requests
|
||||
from odoo.http import request
|
||||
from odoo import fields, models, api, _
|
||||
from odoo.exceptions import UserError
|
||||
from odoo.exceptions import MissingError
|
||||
from odoo.exceptions import ValidationError
|
||||
from odoo.addons.sf_machine_connect.models import py2opcua, ftp_operate
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -514,7 +513,6 @@ class WorkCenterBarcode(models.Model):
|
||||
print('111111111111111111111')
|
||||
workorder_obj_target = self.env['mrp.workorder'].sudo().search([('tray_code', '=', barcode)])
|
||||
workorder_obj_current = self.env['mrp.workorder'].sudo().search([('id', '=', kwargs['current_id'])])
|
||||
# workorder_cnc = self.env['mrp.workorder'].sudo().search(['&', ('production_id', '=', workorder_obj.production_id.id), ('name', '=', 'CNC加工')])
|
||||
workorder_cnc = self.env['mrp.workorder'].sudo().search(
|
||||
['&', ('production_id', '=', workorder_obj_target.production_id.id),
|
||||
('name', '=', workorder_obj_current.name)])
|
||||
|
||||
@@ -49,7 +49,6 @@ class FtpController:
|
||||
self.port = port
|
||||
self.username = username
|
||||
self.password = password
|
||||
# _logger.info("===================ftppppp==================%s,%s,%s,%s" % self.host, self.port, self.username, self.password)
|
||||
# 测试
|
||||
print("==============================================")
|
||||
print(self.username, self.port, self.host, self.password)
|
||||
|
||||
@@ -33,4 +33,3 @@ class ResBFMConfigSettings(models.TransientModel):
|
||||
super(ResBFMConfigSettings, self).set_values()
|
||||
ir_config = self.env['ir.config_parameter'].sudo()
|
||||
ir_config.set_param("bfm_url", self.bfm_url or "")
|
||||
|
||||
|
||||
@@ -1,29 +1,23 @@
|
||||
/** @odoo-module **/
|
||||
|
||||
import { browser } from "@web/core/browser/browser";
|
||||
import { Dialog } from "@web/core/dialog/dialog";
|
||||
import { _lt } from "@web/core/l10n/translation";
|
||||
import { useChildRef, useOwnedDialogs, useService } from "@web/core/utils/hooks";
|
||||
import { sprintf } from "@web/core/utils/strings";
|
||||
import { isMobileOS } from "@web/core/browser/feature_detection";
|
||||
import * as BarcodeScanner from "@web/webclient/barcode/barcode_scanner";
|
||||
const { useRef } = owl;
|
||||
const {xml, Component} = owl;
|
||||
const { Component } = owl;
|
||||
import { standardFieldProps } from "@web/views/fields/standard_field_props";
|
||||
import {registry} from "@web/core/registry";
|
||||
import {useInputField} from "@web/views/fields/input_field_hook";
|
||||
|
||||
export class CodeField extends Component {
|
||||
setup() {
|
||||
console.log('CodeField created')
|
||||
console.log('this',this)
|
||||
console.log('this.props',this.props)
|
||||
console.log('this.props.record',this.props.value)
|
||||
// console.log('CodeField created')
|
||||
// console.log('this',this)
|
||||
// console.log('this.props',this.props)
|
||||
// console.log('this.props.record',this.props.value)
|
||||
useInputField({
|
||||
getValue: () => this.props.value,
|
||||
refName: "scan_code",
|
||||
});
|
||||
console.log('我是setup1')
|
||||
// console.log('我是setup1')
|
||||
super.setup();
|
||||
this.orm = this.env.services.orm;
|
||||
this.record = this.props.record;
|
||||
@@ -45,12 +39,12 @@ export class CodeField extends Component {
|
||||
async search(barcode) {
|
||||
// alert('我是search')
|
||||
const domain = [["code", "=", barcode]];
|
||||
console.log(domain)
|
||||
// console.log(domain)
|
||||
const fields = ["id", "code", "name", "state"];
|
||||
console.log(fields)
|
||||
// console.log(fields)
|
||||
const results = await this.orm.call("sf.tray", "search_read", [domain, fields]);
|
||||
const values = await this.orm.call("sf.tray", "search_read", [domain]);
|
||||
console.log(results)
|
||||
// console.log(results)
|
||||
return results.map((result) => {
|
||||
return {
|
||||
id: result.id,
|
||||
@@ -63,16 +57,16 @@ export class CodeField extends Component {
|
||||
}
|
||||
async onBarcodeScanned(barcode) {
|
||||
const results = await this.search(barcode);
|
||||
console.log(results)
|
||||
// console.log(results)
|
||||
const records = results.filter((r) => !!r.id);
|
||||
console.log(records)
|
||||
// console.log(records)
|
||||
if (records.length === 1) {
|
||||
if (records[0].state === '空闲') {
|
||||
console.log('currentModel',this)
|
||||
console.log('this.record.data',this.record.data)
|
||||
console.log('this.record.data.id', this.record.data.id)
|
||||
// console.log('currentModel',this)
|
||||
// console.log('this.record.data',this.record.data)
|
||||
// console.log('this.record.data.id', this.record.data.id)
|
||||
const workorder = await this.orm.call('mrp.workorder', 'read', [this.record.data.id]);
|
||||
console.log('workorder', workorder[0])
|
||||
// console.log('workorder', workorder[0])
|
||||
const updatedRecord = await this.orm.call("sf.tray", "write", [
|
||||
[records[0].id],
|
||||
{
|
||||
@@ -81,31 +75,32 @@ export class CodeField extends Component {
|
||||
production_id: workorder[0].product_id[0],
|
||||
// workorder_id: workorder.id,
|
||||
}]);
|
||||
console.log(workorder[0].routing_type);
|
||||
console.log(workorder[0].production_id);
|
||||
// console.log(workorder[0].routing_type);
|
||||
// console.log(workorder[0].production_id);
|
||||
// const productionIDS = await this.orm.call('mrp.production', 'search', [[['id', '=', workorder[0].production_id[0]]]]);
|
||||
const productionIDS = await this.orm.call('mrp.workorder', 'search', [[["production_id", "=", workorder[0].production_id[0]]]]);
|
||||
console.log('prooooooo', productionIDS);
|
||||
console.log('values', records[0].values[0]);
|
||||
// console.log('prooooooo', productionIDS);
|
||||
// console.log('values', records[0].values[0]);
|
||||
productionIDS.forEach(async (data) => {
|
||||
// 处理每一个数据
|
||||
console.log(data);
|
||||
// console.log(data);
|
||||
const updatetrayRecord = await this.orm.call("mrp.workorder", "write", [
|
||||
[data],
|
||||
{
|
||||
tray_id: records[0].values[0].id,
|
||||
// tray_id: false,
|
||||
}]);
|
||||
console.log(updatetrayRecord)
|
||||
// console.log(updatetrayRecord)
|
||||
});
|
||||
this.props.update(records[0].code);
|
||||
$('.o_form_button_save').click();
|
||||
} else {
|
||||
if (records[0].state === '占用') {
|
||||
console.log('此托盘已占用,请检查')
|
||||
// console.log('此托盘已占用,请检查')
|
||||
alert('此托盘已占用,请检查')
|
||||
} else {
|
||||
console.log('此托盘已损坏,请登记')
|
||||
// console.log('此托盘已损坏,请登记')
|
||||
alert('此托盘已损坏,请登记')
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -8,10 +8,7 @@ const { Component, xml } = owl;
|
||||
|
||||
export class BarcodeHandlerField extends Component {
|
||||
setup() {
|
||||
console.log('99999999111');
|
||||
this.actionService = useService("action")
|
||||
console.log(this.actionService)
|
||||
|
||||
const barcode = useService("barcode");
|
||||
// this.rpc = useService("rpc");
|
||||
// useBus(barcode.bus, "barcode_scanned", this.onBarcodeScanned.bind(this));
|
||||
@@ -20,9 +17,6 @@ export class BarcodeHandlerField extends Component {
|
||||
async _rpc(params) {
|
||||
// const { data } = await this.env.services.rpc('/web/dataset/call_kw', params);
|
||||
const response = await this.env.services.rpc('/web/dataset/call_kw', params);
|
||||
console.log('response', response);
|
||||
console.log('response.result', response.result);
|
||||
|
||||
// return response
|
||||
const responseObject = JSON.parse(response)
|
||||
return responseObject;
|
||||
@@ -33,8 +27,6 @@ export class BarcodeHandlerField extends Component {
|
||||
this.props.update(barcode);
|
||||
// const actionService = useService("action");
|
||||
// const productId = 12345
|
||||
console.log('111222222222211111');
|
||||
|
||||
// 根据条形码获取相关数据,例如产品ID
|
||||
const response = await this._rpc({
|
||||
model: 'mrp.workorder',
|
||||
@@ -42,11 +34,10 @@ export class BarcodeHandlerField extends Component {
|
||||
args: [barcode],
|
||||
kwargs:{},
|
||||
});
|
||||
// console.log(productId.result)
|
||||
if (response.result) {
|
||||
const action = response.result;
|
||||
console.log(action)
|
||||
console.log('11111111111111111111111111111111111');
|
||||
// const action = response.result;
|
||||
// console.log(action)
|
||||
// console.log('11111111111111111111111111111111111');
|
||||
// 通过产品ID执行操作并跳转到表单视图
|
||||
// await this.actionService.doAction({
|
||||
// // type: 'ir.actions.act_window',
|
||||
|
||||
@@ -1 +1 @@
|
||||
from . import action_up
|
||||
from . import action_up
|
||||
|
||||
@@ -5,9 +5,8 @@ import os
|
||||
import json
|
||||
import hashlib
|
||||
import time
|
||||
import requests
|
||||
from datetime import datetime
|
||||
|
||||
import requests
|
||||
from odoo import fields, models, api, _
|
||||
from odoo.exceptions import ValidationError
|
||||
from odoo.exceptions import UserError
|
||||
|
||||
@@ -16,12 +16,12 @@ class CustomKanbanController extends KanbanController {
|
||||
console.log('99999999111');
|
||||
this.workOrders = await this.getAllWorkOrders();
|
||||
this.workOrdersNew = this.workOrders;
|
||||
console.log('lines222222222', this.workOrders);
|
||||
|
||||
console.log(typeof this.workOrders);
|
||||
console.log(Array.isArray(this.workOrders));
|
||||
|
||||
console.log(this.workOrders.every(order => typeof order === 'object' && order.id !== undefined));
|
||||
// console.log('lines222222222', this.workOrders);
|
||||
//
|
||||
// console.log(typeof this.workOrders);
|
||||
// console.log(Array.isArray(this.workOrders));
|
||||
//
|
||||
// console.log(this.workOrders.every(order => typeof order === 'object' && order.id !== undefined));
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -42,7 +42,8 @@ class sf_production_plan(models.Model):
|
||||
actual_end_time = fields.Datetime(string='实际结束时间')
|
||||
shift = fields.Char(string='班次')
|
||||
|
||||
# 序号、坯料编号、坯料名称、材质、数量、长度、宽度、厚度、直径、计划开始时间、计划结束时间、状态(已产出与待产出)、操作、创建人、创建时间、客户名称、订单号、行号、长度、宽度、厚度、直径、交货数量、交货日期
|
||||
# 序号、坯料编号、坯料名称、材质、数量、长度、宽度、厚度、直径、计划开始时间、计划结束时间、状态(已产出与待产出)、操作、创建人、创建时间、
|
||||
# 客户名称、订单号、行号、长度、宽度、厚度、直径、交货数量、交货日期
|
||||
# sequence = fields.Integer(string='序号', required=True, copy=False, readonly=True, index=True,
|
||||
# default=lambda self: self.env['ir.sequence'].sudo().next_by_code('sf.pl.plan'))
|
||||
sequence = fields.Integer(string='序号', copy=False, readonly=True, index=True)
|
||||
@@ -160,7 +161,8 @@ class sf_production_plan(models.Model):
|
||||
'name': '排程甘特图',
|
||||
'type': 'ir.actions.act_window',
|
||||
'res_model': 'sf.production.plan', # 要跳转的模型名称
|
||||
'view_mode': 'gantt,tree,form', # 要显示的视图类型,可以是'form', 'tree', 'kanban', 'graph', 'calendar', 'pivot'等
|
||||
# 要显示的视图类型,可以是'form', 'tree', 'kanban', 'graph', 'calendar', 'pivot'等
|
||||
'view_mode': 'gantt,tree,form',
|
||||
'target': 'current', # 跳转的目标窗口,可以是'current'或'new'
|
||||
}
|
||||
|
||||
|
||||
@@ -24,10 +24,9 @@
|
||||
|
||||
'web.assets_qweb': [
|
||||
],
|
||||
'web.assets_backend':[
|
||||
'web.assets_backend': [
|
||||
]
|
||||
|
||||
|
||||
},
|
||||
'license': 'LGPL-3',
|
||||
'installable': True,
|
||||
|
||||
Reference in New Issue
Block a user