41 lines
1.3 KiB
JavaScript
41 lines
1.3 KiB
JavaScript
/** @odoo-module **/
|
|
import { registry } from '@web/core/registry';
|
|
import { Component, onWillUpdateProps } from '@odoo/owl';
|
|
|
|
class QRCodeWidget extends Component {
|
|
setup() {
|
|
super.setup();
|
|
console.log('===================')
|
|
|
|
// 记录初始值
|
|
this.lastValue = this.props.value;
|
|
|
|
// 使用 onWillUpdateProps 监听 props 变化
|
|
onWillUpdateProps((nextProps) => {
|
|
if (nextProps.value && nextProps.value !== this.lastValue) {
|
|
this.lastValue = nextProps.value;
|
|
this.handleRfidUpdate();
|
|
}
|
|
});
|
|
}
|
|
|
|
async handleRfidUpdate() {
|
|
const routingTypeField = document.querySelector('[name="routing_type"]');
|
|
if (routingTypeField) {
|
|
let fieldValue = routingTypeField.querySelector('span').getAttribute('raw-value');
|
|
fieldValue = fieldValue ? fieldValue.replace(/["]+/g, '') : null;
|
|
|
|
if (fieldValue === '装夹预调') {
|
|
console.log('woshiddddddddddddddddd')
|
|
const startButton = document.querySelector('[name="button_start"]');
|
|
if (startButton) {
|
|
startButton.click();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
static template = 'sf_manufacturing.QRCodeWidgetTemplate';
|
|
}
|
|
|
|
registry.category('fields').add('qrcode_widget', QRCodeWidget); |