新增夏宝PDA直接调拨单免扫码模块,条码生成模块选源单采购入库单时界面过滤无效修复
3个文件已修改
1个文件已添加
769 ■■■■■ 已修改文件
WebTM/WebTM.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/PublicPage/HSourceReportHtml.html 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/WMS扫码模块/生产调拨/Kf_MoveStockBill_AutoBarCode_PDA.html 745 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/home/console_Mobile.html 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/WebTM.csproj
@@ -365,6 +365,7 @@
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockBillList_PDA_XiaBao.html" />
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockBill_CusBar_PDA.html" />
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockBill_Mould_PDA.html" />
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockBill_AutoBarCode_PDA.html" />
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockBill_PDA_XiaBao.html" />
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockStepInBill_Mould_PDA.html" />
    <Content Include="views\WMS扫码模块\生产调拨\Kf_MoveStockStepInBill_PDA.html" />
WebTM/views/PublicPage/HSourceReportHtml.html
@@ -380,7 +380,7 @@
                        $("#HProcExchBillNoHidden").show();
                        HModName = "ProductInBill_1202";
                        break;
                    case '采购入库':
                    case '采购入库单':
                        HModName = "POStockInBill_1201";
                        break;
                    case '销售退货':
@@ -625,6 +625,21 @@
                        }
                        return sWhere;
                        break;
                    case "采购入库单":
                        if (HBillNo) {
                            sWhere += " and å•据号 like '%" + HBillNo + "%'";
                        }
                        if (PartNumber) {
                            sWhere += " and ç‰©æ–™ä»£ç  like '%" + PartNumber + "%'";
                        }
                        if (PartName) {
                            sWhere += " and ç‰©æ–™åç§° like '%" + PartName + "%'";
                        }
                        if (HDeptName && HDeptName != 0) {
                            sWhere += " and HDeptID = '" + HDeptName + "'";
                        }
                        return sWhere;
                        break;
                    case '退货通知单':
                        return sWhere;
                        break;
WebTM/views/WMSɨÂëÄ£¿é/Éú²úµ÷²¦/Kf_MoveStockBill_AutoBarCode_PDA.html
New file
@@ -0,0 +1,745 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>直接调拨单-免扫码</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <!--引用layui样式文件-->
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <!--引用layui js文件-->
    <script src="../../../layuiadmin/layui/layui.js"></script>
    <script src="../../../layuiadmin/Scripts/json2.js"></script>
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <style>
        .layui-col-xs8 {
            width: 55.666667%;
        }
    </style>
</head>
<body>
    <div class="layui-fluid" style="padding:0">
        <div class="layui-card" style="padding: 1px">
            <div class="layui-card-body" style="padding: 0px; height:800px;">
                <form class="layui-form" action="" lay-filter="component-form-group">
                    <div style="background-color:#0085E8;">
                        <span style="color: white;"><i class="layui-icon layui-icon-form"></i>直接调拨单-免扫码</span>
                    </div>
                    <div class="layui-form-item" style="padding:15px;margin:0px">
                        <div class="layui-row">
                            <div class="layui-col-xs3">
                                <label class="layui-form-label" style="width:60px;padding-left:0px;">源单单号</label>
                            </div>
                            <div class="layui-col-xs9">
                                <div class="layui-col-xs8">
                                    <input type="text" name="HSourceBillNo" id="HSourceBillNo" lay-verify="HSourceBillNo" onkeyup="value=value.replace(/\s+/g,'')" autocomplete="off" class="layui-input" onfocus="this.select();">
                                </div>
                                <div class="layui-col-xs2">
                                    <button type="button" lay-submit="" lay-filter="cmdHSourceBillNo" class="layui-btn" id="cmdHSourceBillNo" style="width: 45px; margin-left: 10px; padding-left: 12px">
                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-2px;"></i>
                                    </button>
                                </div>
                                <div class="layui-col-xs2" style="float: right;">
                                    <button type="button" lay-submit="" lay-filter="HSourceBillNo-BT" class="layui-btn" id="HSourceBillNo-BT" style="width: 45px; margin-left: -5px;padding-left:12px">OK</button>
                                </div>
                            </div>
                        </div>
                        <div class="layui-tab layui-col-xs12" style="margin-top:5px;" lay-filter="tab-Kf_MoveStockBill_AutoBarCode_PDA">
                            <ul class="layui-tab-title" lay-filter="tab-all">
                                <li lay-id="1" style="padding:1px;">表头信息</li>
                                <li lay-id="2" style="padding:1px;">物料信息</li>
                            </ul>
                            <div class="layui-tab-content">
                                <!--表头信息-->
                                <div class="layui-tab-item">
                                    <div class="layui-form-item" style="padding: 0px; margin: 0px">
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">源单类型</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <select name="HMainSourceBillType" id="HMainSourceBillType">
                                                    <option value="3720">生产用料清单</option>
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">调拨类型</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <select lay-filter="HStockStyle" name=" HStockStyle" id="HStockStyle">
                                                    <option value="组织内调拨">组织内调拨</option>
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">调出组织</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <select lay-filter="HStockOutOrgID" name=" HStockOutOrgID" id="HStockOutOrgID" disabled>
                                                    <!--动态渲染组织-->
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">调入组织</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <select lay-filter="HStockInOrgID" name=" HStockInOrgID" id="HStockInOrgID" disabled>
                                                    <!--动态渲染组织-->
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">日期</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <input name="HDate" id="HDate" autocomplete="off" class="layui-input">
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">制单人</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <input type="text" name="HMaker" id="HMaker" lay-verify="HMaker" autocomplete="off" class="layui-input" style="border-radius: 5px;background-color:#efefef4d;" disabled>
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">单据号</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <input type="text" name="HBillNo" id="HBillNo" lay-verify="HBillNo" autocomplete="off" class="layui-input" style="border-radius: 5px;background-color:#efefef4d;" disabled>
                                            </div>
                                        </div>
                                        <div class="layui-row">
                                            <div class="layui-col-xs3">
                                                <label class="layui-form-label" style="width:60px;padding-left:0px;">单据ID</label>
                                            </div>
                                            <div class="layui-col-xs9">
                                                <input type="text" name="HInterID" id="HInterID" lay-verify="HInterID" value="0" autocomplete="off" class="layui-input" style="border-radius: 5px;background-color:#efefef4d;" disabled>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                <!--物料信息-->
                                <div class="layui-tab-item">
                                    <div class="layui-row">
                                        <div class="layui-col-xs12">
                                            <div class="layui-form-item" style="padding:0px;margin:0px"></div>
                                            <table class="layui-hide" id="wl-table" lay-filter="wl-table"></table>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        <div class="layer-footer" style="z-index: 10; position: fixed; text-align: center; bottom: 0; width:100%; height:50px">
                            <button type="button" lay-submit="" lay-filter="cmdSaver" class="layui-btn" id="cmdSaver">提交</button>
                            <button type="button" lay-submit="" lay-filter="cmdCancel" class="layui-btn" id="cmdCancel">退出</button>
                        </div>
                    </div>
                    <!--隐藏字段-->
                    <input type="hidden" name="HBillType" id="HBillType">
                    <input type="hidden" name="HBillerID" id="HBillerID">
                    <input type="hidden" name="HRedBlueFlag" id="HRedBlueFlag">
                    <input type="hidden" name="HSourceBillListCtl" id="HSourceBillListCtl">
                    <!--失败提示音-->
                    <div id="" style="display:none;">
                        <audio id="cs" hidden controls>
                            <source src="../../video/jingbao.wav" type="audio/ogg">
                        </audio>
                    </div>
                    <!--成功提示音-->
                    <div id="" style="display:none;">
                        <audio id="cs2" hidden controls>
                            <source src="../../video/success.wav" type="audio/ogg">
                        </audio>
                    </div>
                </form>
            </div>
        </div>
    </div>
    <script>
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'form', 'laydate', 'table', 'element'], function () {
            //#region å…¬å…±å˜é‡
            var $ = layui.$
                , admin = layui.admin
                , layer = layui.layer
                , table = layui.table
                , form = layui.form
                , laydate = layui.laydate
                , element = layui.element;
            var HInterID = $('#HInterID').val()
            var HBillNo = $('#HBillNo').val()
            var HBillType = '1207'
            var HRedBlueFlag = false
            var HMaker = sessionStorage["HUserName"]
            var HBillerID = sessionStorage["HBillerID"]
            var HStockInOrgID = sessionStorage["OrganizationID"]    //调入组织ID
            var HStockOutOrgID = sessionStorage["OrganizationID"]   //调出组织ID
            var HStockOrgID = sessionStorage["OrganizationID"]      //登入组织ID
            var OperationType = 1       //操作类型(1新增、2从缓存列表中返回)
            var listOption = [];
            var columns = "";
            var HModName = "Kf_MoveStockBill_AutoBarCode_PDA";
            var ModRightName = "CE_MoveStock3";    //模块权限参数
            var titleData = [];                 //不需要显示的字段
            var params = get_UrlVars();
            var OperationType = params[params[0]] == null ? 1 : params[params[0]];  //从缓存列表中返回数据类型(1新增、2从缓存列表中返回)
            var HInterID_Temp = params[params[1]];      //从缓存列表中返回单据ID
            //#endregion
            //判断是否登录 æœªç™»å½•则跳到登录页
            if (sessionStorage.login != "login") {
                layer.confirm("登录失效,请重新登录!", {
                    icon: 4, skin: 'layui-layer-lan', title: "温馨提示", closeBtn: 0, btn: ['重新登录']
                }, function () { window.location.href = "../../user/login_pda.html"; });
            }
            //#region   ç”¨æˆ·æ¨¡å—权限判断
            //用户模块权限判断
            CheckModRight();
            function CheckModRight() {
                layer.load(3);
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/WEBSController/CheckModRight_Json",
                    async: false,    //async用于控制(false)同步和(true)异步,默认的是true,即请求默认的是异步请求
                    data: { "ModRightName": ModRightName, "HUserName": HMaker },
                    success: function (d) {
                        if (d.count == 1) {
                        }
                        else {
                            layer.msg(d.Message, {
                                icon: 0, time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示", btn: ['确认']
                            }, function () { parent.location.href = "../../../views/index_Mobile.html"; });
                        }
                    },
                    complete: function (XHR, TS) { XHR = null }//回收资源
                });
                layer.closeAll("loading");
            }
            //#endregion
            //失败提示音
            function playSound() {
                console.log("playSound");
                var audio = document.getElementById("cs");
                audio.play();
                audio.onended = function () {
                    // å½“音频播报完成时,调用 pause å’Œè®¾ç½® currentTime ä¸º 0 ä»¥åœæ­¢æ’­æŠ¥å¹¶é‡ç½®
                    audio.pause();
                    audio.currentTime = 0;
                };
            }
            //成功提示音
            function playSound_OK() {
                console.log("playSound_OK");
                var audio = document.getElementById("cs2");
                audio.play();
                audio.onended = function () {
                    // å½“音频播报完成时,调用 pause å’Œè®¾ç½® currentTime ä¸º 0 ä»¥åœæ­¢æ’­æŠ¥å¹¶é‡ç½®
                    audio.pause();
                    audio.currentTime = 0;
                };
            }
            //#region åˆå§‹åŒ–界面
            set_ClearBill();
            function set_ClearBill() {
                //表头初始化赋值
                $("#HMaker").val(sessionStorage["HUserName"]);
                $("#HDate").val(Pub_Format(new Date(), "yyyy-MM-dd"));
                $("#HBillerID").val(sessionStorage["HBillerID"]);
                $("#HStockInOrgID").val(sessionStorage["OrganizationID"]);
                $("#HStockOutOrgID").val(sessionStorage["OrganizationID"]);
                $("#HBillType").val("1207");
                $("#HRedBlueFlag").val("false");
                //默认显示页面
                element.tabChange('tab-Kf_MoveStockBill_AutoBarCode_PDA', '1');
                set_InitDate();             //初始化表单时间
                set_InitStockOrgID();       //获取调入调出组织
                set_InitGrid();             //初始化表格
                var data = [];
                listOption.cols = [[
                    { field: '数量', title: '数量', width: 100 }
                    , { field: '源单数量', title: '源单数量', width: 100 }
                    , { field: '物料代码', title: '物料代码', width: 100 }
                    , { field: '物料名称', title: '物料名称', width: 100 }
                    , { field: '规格型号', title: '规格型号', width: 100 }
                    , { field: '辅助属性', title: '辅助属性', width: 100 }
                    , { field: '源单单号', title: '源单单号', width: 100 }
                ]];
                listOption.data = data;
                table.render(listOption);
                //光标默认在源单单号位置上
                var pFocus = $("#HSourceBillNo");
                pFocus.select();
                pFocus.focus();     //获取光标
            }
            //初始化表单时间插件
            function set_InitDate() {
                //常规用法
                laydate.render({
                    elem: '#HDate'
                });
            }
            //获取调入调出组织
            function set_InitStockOrgID() {
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/Web/GetOrganizations",
                    async: false,    //async用于控制(false)同步和(true)异步,默认的是true,即请求默认的是异步请求
                    success: function (result) {
                        var Organization = "";
                        if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            var data = result.data;
                            for (var i = 0; i < data.length; i++) {
                                Organization += '<option  style="color:blue;" value="' + data[i].ID + '">' + data[i].Name + '</option>';
                            }
                            $("#HStockInOrgID").append(Organization);
                            $("#HStockInOrgID").val(HStockInOrgID)
                            $("#HStockOutOrgID").append(Organization);
                            $("#HStockOutOrgID").val(HStockOutOrgID)
                            form.render('select');
                        }
                        layer.closeAll("loading");
                    },
                    complete: function (XHR, TS) { XHR = null }//回收资源
                })
            }
            //初始化表格
            function set_InitGrid() {
                listOption = {
                    elem: '#wl-table'
                    //, toolbar: '#toolbarDemo'
                    , totalRow: true
                    , height: 'full-60'
                    , cellMinWidth: 90
                    , limit: 200
                };
            }
            //#region ç‚¹å‡»è¡Œé€‰ä¸­é«˜äº®
            table.on('row(wl-table)', function (obj) {
                //选中行改变颜色
                $(".layui-table-body tr ").attr({ "style": "background:" });    //其他tr恢复原样
                obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');   //选中行样式
                obj.tr.find('i[class="layui-anim layui-icon"]').trigger("click");   //选中radio样式
                $(obj.tr.selector).attr({ "style": "background:#ceedfa;color:black" }); //改变当前tr背景颜色和字体颜色
            })
            //#endregion
            //判断是否新增,获取最大单据号
            if (HInterID != 0) {
            }
            else {
                //获取最大单据ID、单据号
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/WEBSController/GetMaxBillNoAndID_Json",
                    async: false,    //async用于控制(false)同步和(true)异步,默认的是true,即请求默认的是异步请求
                    data: { "HBillType": HBillType },
                    success: function (d) {
                        if (d.count == 1) {
                            $("#HInterID").val(d.data[0].HInterID);
                            $("#HBillNo").val(d.data[0].HBillNo);
                            HInterID = $('#HInterID').val()
                            HBillNo = $('#HBillNo').val()
                        }
                        else {
                            layer.msg(d.Message, { icon: 0, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                        }
                    },
                    complete: function (XHR, TS) { XHR = null }//回收资源
                });
                $("#HSourceBillNo").select();
                $("#HSourceBillNo").focus();     //获取光标
            }
            //#endregion
            //#region åŠŸèƒ½æŽ§ä»¶
            //#region æäº¤
            form.on('submit(cmdSaver)', function (data) {
                var sMainStr = JSON.stringify(data.field);
                var sSubStr = table.cache['wl-table'];
                if (AllowLoadData(sSubStr) != false)//非空验证
                {
                    //拼接序列化的数据
                    var msg = sMainStr + ';' + JSON.stringify(sSubStr);
                    layer.load(3);
                    $.ajax(
                        {
                            type: "POST",
                            url: GetWEBURL() + "/WEBSController/set_SaveMoveStockBill_AutoBarCode_Json",
                            async: false,    //async用于控制(false)同步和(true)异步,默认的是true,即请求默认的是异步请求
                            data: { "oMain": msg },
                            dataType: "json",
                            success: function (data) {
                                if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†
                                    layer.confirm(data.Message, {
                                        icon: 1, skin: 'layui-layer-lan', title: "温馨提示", closeBtn: 0, btn: ['新增','关闭'],
                                        btn2: function () {
                                            parent.location.href = "../../../views/index_Mobile.html";
                                        }//关闭
                                    }
                                        , function () {
                                            location.replace('Kf_MoveStockBill_AutoBarCode_PDA.html?OperationType=1&HInterID=0');
                                        });//新增
                                }
                                else {
                                    layer.msg(data.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                                }
                            },
                            complete: function (XHR, TS) { XHR = null },//回收资源
                            error: function (err) {
                                layer.msg("错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                            }
                        });
                    layer.closeAll("loading");
                    return;
                }
            });
            //#endregion
            //#region é€€å‡º
            form.on('submit(cmdCancel)', function () {
                layer.confirm('您确定要退出吗?', { icon: 3, title: '提示' }, function (index) {
                    if (OperationType == 2) {
                        var index = parent.layer.getFrameIndex(window.name);    //先得到当前iframe层的索引
                        parent.location.reload();                               //刷新父页面,注意一定要在关闭当前iframe层之前执行刷新
                        parent.layer.close(index);                              //再执行关闭
                    }
                    else {
                        parent.location.href = "../../../views/index_Mobile.html";
                    }
                });
            })
            //#endregion
            //#endregion
            //#region æºå•选择
            form.on('submit(cmdHSourceBillNo)', function () {
                var HSourceTitle = "";
                var HSourceBillType = $("#HMainSourceBillType").val()
                if (HSourceBillType == '3720') {
                    HSourceTitle = "生产用料清单";
                }
                layer.open({
                    type: 2
                    , area: ['100%', '100%']
                    , title: HSourceTitle + '列表'//标题
                    , shade: 0.6 //遮罩透明度
                    , maxmin: true //允许全屏最小化
                    , anim: 0 //0-6的动画形式,-1不开启
                    , content: ['../../../views/公共页面/Kf_SourceBillEditDlg_PDA.html?HBillType =' + HBillType + '&HSourceBillType =' + HSourceBillType + '&HStockOrgID =' + HStockOrgID, 'yes']
                    , resize: false
                    , cancel: function () {
                        //$(".layui-btn").removeClass("layui-btn-disabled");
                    }
                    , end: function () {
                        if ($("#HSourceBillListCtl").val() == '1') {
                            GetMeesageBySourceBillNo();
                            $("#HSourceBillListCtl").val("0");  //用于区分源单列表界面关闭状态(1为返回,0为退出)
                        }
                    }
                })
            });
            //#endregion
            //#region æ‰«ææºå•条码
            //扫描源单条码
            $('#HSourceBillNo').on('keydown', function (event) {
                if (event.keyCode == 13) {
                    GetMeesageBySourceBillNo();
                }
            });
            //源单按钮
            form.on('submit(HSourceBillNo-BT)', function (data) {
                GetMeesageBySourceBillNo();
            });
            //扫描源单条码
            function GetMeesageBySourceBillNo(obj) {
                var HSourceBillNo = $('#HSourceBillNo').val()
                var HSourceBillType = $("#HMainSourceBillType").val()
                layer.load(3)
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/WEBSController/get_SourceBarCode_MoveStock_AutoBarCode_Json",
                    async: false,    //async用于控制(false)同步和(true)异步,默认的是true,即请求默认的是异步请求
                    data: { "HInterID": HInterID, "HBillNo": HBillNo, "HBillType": HBillType, "HSourceBillNo": HSourceBillNo, "HSourceBillType": HSourceBillType, "HMaker": HMaker, "HOWNERID": HStockOutOrgID },
                    success: function (result) {
                        if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            playSound_OK();
                            $("#HSourceBillNo").val(result.data[0].HSourceBillNo);
                            $("#HMainSourceBillType").attr("disabled", "disabled");
                            $("#HSourceBillNo").attr("disabled", "disabled");
                            $('#HSourceBillNo-BT').addClass("layui-btn-disabled").attr("disabled", true);//按钮禁用
                            $('#cmdHSourceBillNo').addClass("layui-btn-disabled").attr("disabled", true);//按钮禁用
                            $("#HStockStyle").val(result.data[0].HStockStyle);
                            $("#HStockStyle").attr("disabled", "disabled");
                            $("#HStockInOrgID").val(result.data[0].HStockInOrgID);
                            $("#HStockInOrgID").attr("disabled", "disabled");
                            $("#HStockOutOrgID").val(result.data[0].HStockOutOrgID);
                            $("#HStockOutOrgID").attr("disabled", "disabled");
                            form.render('select');
                            HStockInOrgID = $('#HStockInOrgID').val()
                            HStockOutOrgID = $('#HStockOutOrgID').val()
                            element.tabChange('tab-Kf_MoveStockBill_AutoBarCode_PDA', '2');
                            //显示表体明细
                            DisBillEntryList();
                        }
                        else {
                            playSound();
                            layer.msg(result.Message, {
                                icon: 5, time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示", btn: ['确认']
                            }, function () {
                                element.tabChange('tab-Kf_MoveStockBill_AutoBarCode_PDA', '1');
                                $("#HSourceBillNo").select();
                                $("#HSourceBillNo").focus();
                            });
                        }
                    },
                    complete: function (XHR, TS) { XHR = null }//回收资源
                });
                layer.closeAll("loading");
            }
            //#endregion
            //#region æ˜¾ç¤ºç‰©æ–™åˆ—表信息
            function DisBillEntryList() {
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + '/WEBSController/GetBillEntryTmpList_Json',
                    async: false,    //async用于控制(false)同步和(true)异步,默认的是true,即请求默认的是异步请求
                    data: { "HInterID": HInterID, "HBillNo": HBillNo, "HBillType": HBillType, "HStockOrgID": HStockOutOrgID },
                    success: function (result) {
                        var data = [];
                        var col = [];
                        if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            //给空的数组赋值
                            for (var key in result.list) {
                                //动态获取列表所有列名
                                data.push({ "id": result.list[key].ColmCols, "name": result.list[key].ColmCols, "Type": result.list[key].ColmType });
                                //获取不需要显示的列(H开头的列不显示)
                                var patrn = new RegExp(/^h/i);
                                if (patrn.test(result.list[key].ColmCols)) {
                                    titleData[key] = result.list[key].ColmCols;
                                }
                            }
                            //在列表左边添加勾选框
                            col.push({ type: 'radio', totalRowText: '合计' });
                            for (var i = 0; i < data.length; i++) {
                                if ($.inArray(data[i].name, titleData) > -1) {
                                    col.push({ field: data[i].id, title: data[i].name, align: 'center', hide: true }); //隐藏id列
                                }
                                else {
                                    switch (data[i].Type) {
                                        //int
                                        case 'DateTime':
                                            col.push({ field: data[i].id, title: data[i].name, align: 'left', sort: true, templet: "<div>{{d." + data[i].name + " ==null ?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd')}}</div>", width: 120 });
                                            break;
                                        default:
                                        if (data[i].name == '数量') {
                                            col.push({ field: 'HQty', title: data[i].name, edit: 'text', align: 'left', totalRow: true });
                                        }
                                        else if (data[i].name == '源单数量') {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'left', totalRow: true });
                                        } else if (data[i].name == '物料名称' || data[i].name == '规格型号') {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'left', width: 180 });
                                        } else {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'left', width: 150 });
                                        }
                                    }
                                }
                            }
                            columns = col;
                            listOption.cols = [columns];
                            listOption.data = result.data.Materlist;
                            listOption.totalRow = true;
                            table.cache['wl-table'] = null;         //清空表格缓存数据
                            table.render(listOption);
                        }
                        else {
                            listOption.cols = [[
                                { field: '数量', title: '数量', width: 100 }
                                , { field: '源单数量', title: '源单数量', width: 100 }
                                , { field: '物料代码', title: '物料代码', width: 100 }
                                , { field: '物料名称', title: '物料名称', width: 100 }
                                , { field: '规格型号', title: '规格型号', width: 100 }
                                , { field: '辅助属性', title: '辅助属性', width: 100 }
                                , { field: '源单单号', title: '源单单号', width: 100 }
                            ]];
                            listOption.data = data;
                            table.render(listOption);
                        }
                    },
                    complete: function (XHR, TS) { XHR = null }//回收资源
                });
            }
            //#endregion
            //#region é€‰æ‹©è°ƒæ‹¨ç±»åž‹
            form.on('select(HStockStyle)', function (data) {
                if ($("#HStockStyle").val() == '跨组织调拨') {
                    $("#HStockInOrgID").attr("disabled", false);
                    form.render('select');
                }
                else {
                    $("#HStockInOrgID").val(sessionStorage["OrganizationID"]);
                    $("#HStockInOrgID").attr("disabled", true);
                    form.render('select');
                    if (HStockInOrgID != $('#HStockInOrgID').val()) {
                        HStockInOrgID = $('#HStockInOrgID').val()
                    }
                }
            });
            //#endregion
            //#region é€‰æ‹©è°ƒå…¥ç»„织
            form.on('select(HStockInOrgID)', function (data) {
                HStockInOrgID = $('#HStockInOrgID').val()
            });
            //#endregion
            //#region ç›‘听单元格编辑  å•元格编辑后 å˜æ›´
            table.on('edit(wl-table)', function (obj) {
                //数值格式校验工具
                var ref = /^\d+(\.\d+)?$/;          //非负数正则表达式
                var temp = "";
                var value = obj.value //得到修改后的值
                    , data = obj.data //得到所在行所有键值
                    , field = obj.field; //得到字段
                switch (field) {
                    case "HQty":        //数量
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp)) {
                            //所输入数据不为数字,默认为0
                            obj.update({
                                HQty: 0
                            });
                            table.render(listOption);
                            return;
                        }
                        //数据校验合格,重算记录
                        var HQty = isNaN(value) ? 0 : value;                                            //数量
                        //同步更新表格和缓存对应的值
                        obj.update({
                            HQty: HQty
                        });
                        table.render(listOption);
                        break;
                    default:
                }
            });
            //#endregion
        });
        //以上为layui模块
        //此处方法涉及到被外部页面parent.方法名调用的必须放在Layui方法外部
        //点击按钮选择后   è¿”回源单单号
        function GetHSourceBillValue(obj) {
            if (obj.length > 0) {
                $("#HSourceBillNo").val(obj[0].单据号);
                $("#HSourceBillListCtl").val("1");
            }
        }
        //单据上传前判断
        function AllowLoadData(sSubStr) {
            if (HInterID == 0) {
                layer.msg("单据内码获取失败,错误的单据内码!", { icon: 5, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                return false;
            }
            if (HBillNo == '') {
                layer.msg("单据号获取失败,错误的单据号!", { icon: 5, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                return false;
            }
            if (sSubStr.length == 0) {
                layer.msg("没有扫码信息,请先扫描条码,确认无误后再提交!", { icon: 5, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                return false;
            }
            else {
                var s = 0;
                for (var i = 0; i <= sSubStr.length - 1; i++) {
                    // å°è¯•å°† HQty å±žæ€§è§£æžä¸ºæ•°å­—
                    let quantity = parseFloat(sSubStr[i].HQty) || 0;
                    // æ£€æŸ¥è§£æžåŽçš„值是否为 NaN(不是一个数字)
                    if (isNaN(quantity)) {
                        // å¦‚果是 NaN,则将其设置为 0
                        sSubStr[i].HQty = 0;
                    } else if (sSubStr[i].HQty > 0) {
                            s = 1;
                        }
                }
                if (s == 0) {
                    layer.msg("至少需要存在一行数量大于0 çš„æ•°æ®ï¼Œè¯·ç¡®è®¤æ— è¯¯åŽå†æäº¤ï¼", { icon: 5, btn: ['确认'], time: 100000, offset: 'auto', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
            }
            return true;
        }
    </script>
</body>
</html>
WebTM/views/home/console_Mobile.html
@@ -225,6 +225,12 @@
                                                <cite style="white-space:pre-wrap">样品销售出库单</cite>
                                            </a>
                                        </li>
                                        <li class="layui-col-xs3">
                                            <a href="../WMS扫码模块/生产调拨/Kf_MoveStockBill_AutoBarCode_PDA.html" target="main_self_frame">
                                                <i class="layui-icon layui-icon-template-1"></i>
                                                <cite style="white-space:pre-wrap">免扫码调拨</cite>
                                            </a>
                                        </li>
                                    </ul>
                                </div>
                            </div>