南骏 池
2024-10-25 d08056b2fa483e4d32a12e80d708f3a7f6c9a682
1.期初优化
2.条码合并
已添加1个文件
已修改1个文件
418 ■■■■■ 文件已修改
js/CangKuManage_js/CK_BARHB.js 416 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
js/CangKuManage_js/PRINTQC.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
js/CangKuManage_js/CK_BARHB.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,416 @@
/**
 * ä½œè€…:G98138 é»Žé”‹
 * æ—¶é—´ï¼š2018-09-04
 * æè¿°ï¼šåº“位 ç»‘定
 *
 * ä¸šåŠ¡æ€è·¯ï¼š
 * 1. æ‰«ææ¡ç 
 *  1.1 éžæ¡ç åº“存表的条码, æç¤ºï¼ˆ OK) *
 *    1.2 éžå¾…入库条码, æç¤ºï¼ˆ OK) *
 *    1.3 é€šè¿‡æ¡ç æ‰¾åˆ°ä¸Šä¸€æ¬¡è¯¥ç‰©æ–™çš„库位, ä½œä¸ºæŽ¨èåº“位( OK)
 *    æ³¨æ„ï¼š å¦‚果勾选了“默认库位”, ä¸”在上一次绑定的库位和当前界面显示的库位一致 ï¼Œ åˆ™ç›´æŽ¥ç»‘定库位, ä¸éœ€è¦å†æ‰«æåº“位 *
 * 2. æ‰«æåº“位条码 *
 *    2.1 éžåº“位条码, æç¤ºï¼ˆ OK) *
 *    2.2 éžè¯¥ä»“库的库位, æç¤ºï¼ˆ OK) *
 */
// å…¨å±€å˜é‡
var billNo = '';
var i = 0; //计算扫描条码数量
var WLBM = ""; //物料编码
var matterTable = null;
var HBID = "";
//初始化,默认焦点
mui.plusReady(function() {
    app.init();
    mui("#DAB001")[0].focus();
    $('#info').height($(window).height() - $("#row001").height() - $("#div001").height() - $("#div002")
    .height() - 70);
});
// $(function(){
//     billNo= GetMaxBillNO("1201",GetSysDateTime());//调拨单号,只要不离开界面,单号不变
//      $('#info').height($(window).height()- $("#row001").height() - $("#div001").height()- $("#div002").height() - 70);
// })
// $(function() {
// SetBillNo();
// });
function SetBillNo() {
    $("#txtBillNo").click(function() {
        GetBillList();
        PopPicker.show(function(items) {
            var billNo = items[0].text;
            $("#txtBillNo").val(billNo);
        });
    });
}
function GetBillList() {
    var billDate = $("#txtBillDate").val();
    var o = {};
    o["billDate"] = billDate;
    $.ajax({
        url: app.API_URL_HEADER + '/IQCPBA/GetBillNoListsT',
        data: "",
        dataType: "json",
        type: "post",
        success: function(resdata) {
            var dataWorkers = null;
            dataWorkers = $.parseJSON(resdata.data);
            PopPicker.setData(dataWorkers);
        },
        error: function(xhr, type, errorThrown) {
            alert("获取数据异常:" + JSON.stringify(errorThrown));
        }
    });
}
//数字拖动之后调整数字小图标位置
function onStopDrag(e) {
    var d = e.data;
    if (d.left < 0) {
        d.left = 0
    }
    if (d.top < 0) {
        d.top = 0
    }
    if (d.top + $(d.target).outerHeight() > $(d.parent).height()) {
        $("#dgWOMDAG-sum")[0].innerHTML = "0";
        $("#dgWOMDAG-sum").css("top", d.startTop + "px");
        $("#dgWOMDAG-sum").css("left", d.startLeft + "px");
        $("#dgWOMDAG-sum").css("position", "initial");
        i = 0;
    }
}
function GetBarInfoT() {
    if (event.keyCode == 13) {
        //用户ID
        var currentSession = app.loadconfig(app.CONFIG_CURRENT_SESSION);
        var user_id = currentSession.user_id;
        //        var user_id = "admin";
        $.ajax({
            url: app.API_URL_HEADER + "/WARBAB/GetBarInfoNAME",
            data: {
                txtBillNoN: $("#txtBillNoN").val(),
                logID: user_id, //Admin //先写死,便于调试
            },
            DataType: "json",
            type: "post",
            async: false,
            //timeout: 15000,
            success: function(data) {
                //console.log(JSON.stringify(data));
                if (data.status != 0) {
                    playerAudio("NG");
                    mui.alert(data.message, "", "", function() {
                        mui("#txtBillNoN")[0].focus();
                        $("#txtBillNoN").val("");
                    });
                    return;
                } else {
                    matterTable = data.data.matterTable;
                    $("#txtBillNo").val(""); //先清空一下数据源
                    $("#txtBillNo").val(data.data.NAME); //填入条码明细信息
                    mui("#DAB001")[0].focus();
                }
            },
            error: function(xhr, type, errorThrown) {
                alert("获取数据异常:" + JSON.stringify(errorThrown));
            }
        });
    }
};
//扫描条码处理方法
function GetBarInfo() {
    if (event.keyCode == 13) {
        console.log(1);
        //如果未输入条码,跳出方法
        if ($("#DAB001").val() == "") {
            $("#DAB001").focus();
            playerAudio("NG");
            mui.toast("请先扫描物料条码!");
            return;
        }
        if (HBID == "") {
            let uniqueId = generateGUID();
            HBID = uniqueId
        }
        console.log("合并ID:");
        console.log(HBID);
        //用户ID
        var currentSession = app.loadconfig(app.CONFIG_CURRENT_SESSION);
        var user_id = currentSession.user_id;
        if ($("#txtBillNo").val() == "") {
            var user_id = currentSession.user_id;
        } else {
            var user_id = $("#txtBillNo").val();
        }
        //        var user_id = "admin";
        $.ajax({
            url: app.API_URL_HEADER + "/WARBABChag/GetBarInfo_HBBar",
            data: {
                DAB001: $("#DAB001").val(),
                HBID: HBID,
                logID: user_id //user_id,//Admin //先写死,便于调试
            },
            DataType: "json",
            type: "post",
            async: false,
            //timeout: 15000,
            success: function(data) {
                //console.log(JSON.stringify(data));
                if (data.status != 0) {
                    playerAudio("NG");
                    mui.alert(data.message, "", "", function() {
                        mui("#DAB001")[0].focus();
                        $("#DAB001").val("");
                    });
                    return;
                } else {
                    console.log("成功");
                    playerAudio("OK");
                    $("#DAB001").val("");
                    $("#DAB001").focus();
                    console.log(data.data);
                    populateTable(data.data);
                    mui.toast("清点完成!");
                    //mui.alert("入库成功,测试后删除该提示!!!");
                }
            },
            error: function(xhr, type, errorThrown) {
                alert("获取数据异常:" + JSON.stringify(errorThrown));
            }
        });
    }
};
function BarcodePutInStorageHint() {
    $.ajax({
        url: app.API_URL_HEADER + app.API_METHOD_ESP,
        data: {
            spname: "BarcodePutInStorageHint",
            returnvalue: 1,
            _sp_DAB001: $("#DAB001").val()
        },
        type: "post",
        success: function(data) {
            console.log(JSON.stringify(data));
            if (data.status == 0) {
                $("#hint")[0].innerHTML =
                    "个数/扫描数/送货数:" +
                    data.data[0]["A1"] + "/" +
                    data.data[0]["B1"] + "/" +
                    data.data[0]["B"];
                ;
            } else {
                $("#hint")[0].innerHTML = "";
            }
        },
        error: function(xhr, type, errorThrown) {}
    });
}
//自定义NEWID()函数
function generateGUID() {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = Math.random() * 16 | 0,
            v = c === 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });
}
//把数据填充到table表中
function populateTable(data) {
    console.log('1');
        let tbody = document.querySelector("#myTable tbody");
        let tfoot = document.querySelector("#myTable tfoot"); // èŽ·å–tfoot元素
        let totalStock = 0.0; // åˆå§‹åŒ–库存总和为0
        // æ¸…空表格内容(包括tfoot中的任何现有内容)
        tbody.innerHTML = "";
        tfoot.innerHTML = ""; // æ¸…空tfoot,以防之前有内容
    // å¾ªçŽ¯éåŽ†æ•°æ®ï¼Œç”Ÿæˆè¡¨æ ¼è¡Œ
    for (let i = 0; i < data["条码编号"].length; i++) {
        // åˆ›å»ºè¡¨æ ¼è¡Œ
        let tr = document.createElement("tr");
        // åˆ›å»ºè¡¨æ ¼å•元格,并将数据填入
        let td1 = document.createElement("td");
        td1.textContent = data["序号"][i];
        tr.appendChild(td1);
        let td2 = document.createElement("td");
        td2.textContent = data["条码编号"][i];
        tr.appendChild(td2);
        let td3 = document.createElement("td");
        td3.textContent = data["物料编码"][i];
        tr.appendChild(td3);
        let td4 = document.createElement("td");
        td4.textContent = data["库存数量"][i];
        tr.appendChild(td4);
        let td5 = document.createElement("td");
        td5.textContent = data["库位"][i];
        tr.appendChild(td5);
        let td6 = document.createElement("td");
        td6.textContent = data["仓库"][i];
        tr.appendChild(td6);
        // å°†åˆ›å»ºçš„行添加到tbody中
        tbody.appendChild(tr);
        // ç´¯åŠ åº“å­˜æ•°é‡
        let stockQuantity = parseFloat(data["库存数量"][i]);
        totalStock += stockQuantity;
    }
    // åœ¨tfoot中添加汇总行
        let totalRow = document.createElement("tr");
        let totalTd = document.createElement("td");
        totalTd.colSpan = 3; // åˆå¹¶å‰é¢çš„5列
        totalTd.textContent = "库存总和";
        totalRow.appendChild(totalTd);
        let totalStockTd = document.createElement("td");
        totalStockTd.colSpan = 3;
        totalStockTd.textContent = totalStock.toFixed(6); // ä¿ç•™6位小数
        totalRow.appendChild(totalStockTd);
        tfoot.appendChild(totalRow); // å°†æ±‡æ€»è¡Œæ·»åŠ åˆ°tfoot中
}
function confirmQuantity() {
    // å‡è®¾HBID是一个之前已经定义并可能赋值的变量
    if (typeof HBID === "undefined" || HBID.trim() === "") {
        $("#DAB001").focus();
        playerAudio("NG");
        mui.toast("请先扫描物料条码后,再确认!");
        return; // è·³å‡ºå‡½æ•°ï¼Œå¦‚果这是函数的一部分
    }
    var kwValue = $("#KW").val();
    console.log(kwValue);
    // æ£€æŸ¥kwValue是否为空、undefined、null或仅包含空格
    if (!kwValue || kwValue.trim() === "") {
        $("#KW").focus();
        playerAudio("NG");
        mui.toast("请先扫描库位!");
        return; // è·³å‡ºå‡½æ•°ï¼Œå¦‚果这是函数的一部分
    }
        console.log("合并ID:");
        console.log(HBID);
        //用户ID
        var currentSession = app.loadconfig(app.CONFIG_CURRENT_SESSION);
        var user_id = currentSession.user_id;
        if ($("#txtBillNo").val() == "") {
            var user_id = currentSession.user_id;
        } else {
            var user_id = $("#txtBillNo").val();
        }
        //        var user_id = "admin";
        $.ajax({
            url: app.API_URL_HEADER + "/WARBABChag/HBBarcode",
            data: {
                KW: $("#KW").val(),
                HBID: HBID,
                logID: user_id //user_id,//Admin //先写死,便于调试
            },
            DataType: "json",
            type: "post",
            async: false,
            //timeout: 15000,
            success: function(data) {
                //console.log(JSON.stringify(data));
                if (data.status != 0) {
                    playerAudio("NG");
                    mui.alert(data.message, "", "", function() {
                        $("#KW").val("");
                        $("#KW").focus();
                        // mui("#DAB001")[0].focus();
                        // $("#DAB001").val("");
                    });
                    return;
                } else {
                    console.log("成功");
                    playerAudio("OK");
                    console.log("开始打印!!");
                    var str = data.data.BARID.toString();
                    console.log(str); // å°†BARID转换为字符串并打印输出
                    printByIds(str);
                    $("#DAB001").val("");
                    $("#KW").val("");
                    $("#DAB001").focus();
                    console.log(data.data);
                    populateTable(data.data);
                    mui.toast("合并完成!");
                    //mui.alert("入库成功,测试后删除该提示!!!");
                }
            },
            error: function(xhr, type, errorThrown) {
                alert("获取数据异常:" + JSON.stringify(errorThrown));
            }
        });
}
/* å½“页面的文本失去焦点时,让其再次获取焦点 */
/**
 *  @param {出发DOM控件:this} e
 */
//function SetInputFoucs(codeID) {
//    var itemTag = document.activeElement.tagName; //获取元素的标签名
//    var name = document.activeElement.name; //获取元素的名称
//    //如果控件不是文本
//    //如果控件是文本,Name非空时(如checkbox)
//    //条码获取焦点
//    if ((itemTag != 'INPUT') ||
//        (itemTag == 'INPUT' && name != '')) {
//        $(codeID).focus();
//    }
//}
js/CangKuManage_js/PRINTQC.js
@@ -63,7 +63,7 @@
//初始化,默认焦点
mui.plusReady(function(){    
    app.init();
    mui("#txtBillNoN")[0].focus();
    //mui("#txtBillNoN")[0].focus();
    console.log("连接测试!");
    initBluetooth();
    //SetBillNo();