首页 > 其他分享 >odoo16 实现扫码枪连续扫描功能

odoo16 实现扫码枪连续扫描功能

时间:2023-09-08 18:46:06浏览次数:51  
标签:扫码 合格 no odoo16 扫描 arr length ev

其实要实现这个功能很简单,只要在前端js里监控扫码字段的change事件。 当满足要求,调用保存按钮的click方法,自动保存。这样扫码工人就不需要操作电脑了,可是由于对odoo前段代码不熟悉,这么个小功能花了我一周左右的时间,虽然问题解决了,但是实现的方式很暴力。不管怎么样,先解决问题再说吧。

addons/web/static/src/views/fields/input_field_hook.js

修改这个源文件,改其中的 onchange方法

  /**
     * On blur, we consider the field no longer dirty, even if it were to be invalid.
     * However, if the field is invalid, the new value will not be committed to the model.
     */
    function onChange(ev) {
        if (isDirty) {
            .......
        }
        // add by fatux  20230615
        // 调用自己的函数
        _myOnChange(ev)
    }
    
    

  

	// add by fatux
    // 自动保存数据
    function _myOnChange(ev){
    
        console.log(ev)
    
        let uri = ev.srcElement.baseURI
        let arr = uri.split("&")
        if (arr.length>=2 && arr[arr.length-1]==="view_type=form" && arr[arr.length-2]==="model=hx.tsl.info" ){
            if (ev.srcElement.id==="scanner_no"){
                setTimeout(()=>{
                debugger
                    if ($("div[name='is_pass']").text() === "合格"){
                        $(".o_form_button_create").click()
                    }
                },2000)
            }
        }
    }

  

当scanner_no扫描完之后,后台会执行一些onchange方法,然后is_pass会显示合格或者不合格
如果合格就自动保存,这里做了一个2秒钟的延时。 如果不合格需要手工处理。

标签:扫码,合格,no,odoo16,扫描,arr,length,ev
From: https://www.cnblogs.com/pythonClub/p/17688321.html

相关文章

  • odoo使用扫码枪
    odoo原生有一个扫码枪的模块叫做“barcodes”,这个模块中定义了一个类“'barcodes.barcode_events_mixin”,简单的处理扫码事件使用起来还是很方便的。简单说一下使用过程:首先安装“barcodes”这个模块,在自己的模型中继承“'barcodes.barcode_events_mixin”,然后再扫码的form视图......
  • PHP 网页扫码登录 , 推送模板消息
    缘由:因为老板要做个PC端的微信扫码绑定登录,关注公众号,推送模板消息的功能框架:ThinkPHP5功能:实现扫码微信公众号授权登录绑定,推送模板消息1.正式配置准备:微信公众号(必须申请了服务号) Appid, AppSecret配置:微信公众平台修改: 授权回调地址域名......
  • 新华社《中国扫描十年发展图鉴》:扫描全能王为3亿用户带去“掌心里的便利”
    扫描设备从“两手搬”到“进口袋”的过程中经历了什么? 近日,新华社发布了《中国扫描十年发展图鉴》(简称《图鉴》),对扫描设备、技术、应用领域的发展历史进行了深入盘点。《图鉴》显示,扫描一度是价格接近万元的“奢侈品”。2013到2023年的十年间,扫描技术在中国普及率极大增强,实现了......
  • 【ROS2机器人入门到实战】舵机+超声波循环扫描
    4.舵机+超声波循环扫描写在前面当前平台文章汇总地址:ROS2机器人从入门到实战获取完整教程及配套资料代码,请关注公众号<鱼香ROS>获取教程配套机器人开发平台:两驱版|四驱版为方便交流,搭建了机器人技术问答社区:地址fishros.org.cn你好,我是爱吃鱼香ROS的小鱼。本节我们尝试将超声波的......
  • OpenSSH 用户枚举漏洞(CVE-2018-15473)【原理扫描】
    最烦做等保了!!!! 有没有同感的? 修复过程记录一下,为什么要记录呢,等保漏洞每次都是那些,我一直没有进行文档记录,导致我每次都要百度搜索解决。查看当前服务器openssh的版本#当前系统版本cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)ssh-vOpenSSH_7.4p1......
  • 扫描线补充
    1.两条扫描线之间,不一定是一个矩形,可能是多个不相交的,高相同的矩形2.扫描线的板子没有pushdownvoidupd(intu,intl,intr){ if(cnt[u]){ len[u]=b[r+1]-b[l]; sum[u]=2; lh[u]=rh[u]=1; }else{ len[u]=len[lch]+len[rch]; sum[u]=sum[lch]+sum[rch]; lh[u]=lh[......
  • 代码扫描提示:java: Compilation failed: internal java compiler error
    检查Idea中编译的版本和项目的是否一致 ......
  • Winform微信扫码支付
    微信扫码支付引用的是第三方的:Senparc.Weixin引用:usingSenparc.Weixin.MP.TenPayLibV3;首先,在Form_Load里面调用生成支付二维码的方法:///<summary>///Form_Load事件///</summary>///<paramname="sender"></param>///<......
  • Acunetix v23.7 (Linux, Windows) - 漏洞扫描 (Web 应用程序安全测试)
    Acunetixv23.7(Linux,Windows)-漏洞扫描(Web应用程序安全测试)Acunetix|WebApplicationSecurityScanner请访问原文链接:https://sysin.org/blog/acunetix-23/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org重要提示AcunetixPremium现在使用日历化版本......
  • Nexpose v6.6.213 for Linux & Windows - 漏洞扫描
    Nexposev6.6.213forLinux&Windows-漏洞扫描Rapid7VulnerabilityManagement,ReleaseAug23,2023请访问原文链接:https://sysin.org/blog/nexpose-6/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org您的本地漏洞扫描程序搜集通过实时覆盖整个网络,随......