wtt
2024-10-06 cb2fc709d4e2aec6bbea3e6f4e8ccc24f3d27756
WebTM/views/ÁìÁÏ·¢»õ/ÁìÁϳö¿â/Kf_MateOutBillLEdit.html
@@ -13,6 +13,7 @@
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/PageTitle.js"></script>
    <style type="text/css">
        /*begin æ­¤æ ·å¼ç”¨äºŽæ¶ˆé™¤è¡Œå…ƒç´ ä¸­å¸ƒå±€å®½åº¦ä¸å¤Ÿçš„问题*/
@@ -36,9 +37,9 @@
                                <button type="button" id="copy-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Copy">复制</button>
                                <button type="button" id="addnew-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Add">新增</button>
                                <button type="button" id="add-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="planview">预览</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="print">打印</button>
                                <button type="button" id="exit-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                                <button type="button" id="preview-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="planview">预览</button>
                                <button type="button" id="print-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="print">打印</button>
                            </div>
                        </div>
@@ -53,7 +54,7 @@
                                <div class="layui-tab-item layui-show">
                                    <div class="layui-form-item">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">单据号</label>
                                            <label class="layui-form-label">单据号<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HBillNo" lay-verify="HBillNo" id="HBillNo" readonly="readonly" autocomplete="off">
                                                <input id="HInterID" name="HInterID" type="hidden" />
@@ -61,7 +62,7 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">日期</label>
                                            <label class="layui-form-label">日期<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HDate" id="HDate" autocomplete="off" model="datetime" dateFormat="yyyy-MM-dd" placeholder="yyyy-MM-dd">
                                            </div>
@@ -77,7 +78,7 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">工艺单号</label>
                                            <label class="layui-form-label">工艺单号<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HProcExchBillNo" id="HProcExchBillNo" class="layui-input" value="" style="float:left;">
                                                <input type="hidden" name="HProcExchInterID" id="HProcExchInterID" lay-verify="HProcExchInterID" value="0">
@@ -87,7 +88,7 @@
                                    </div>
                                    <div class="layui-form-item">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">生产订单号</label>
                                            <label class="layui-form-label">生产订单号<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HICMOBillNo" lay-verify="HICMOBillNo" id="HICMOBillNo" readonly="readonly" autocomplete="off">
                                                <input id="HICMOInterID" name="HICMOInterID" type="hidden" value="0" />
@@ -95,21 +96,21 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">颜色</label>
                                            <label class="layui-form-label">颜色<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HMaterName" lay-verify="HMaterName" id="HMaterName" autocomplete="off">
                                                <input class="layui-input" name="HMaterName" lay-verify="HMaterName" id="HMaterName" readonly="readonly" autocomplete="off">
                                                <input id="HMaterID" name="HMaterID" type="hidden" value="0" />
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">客户</label>
                                            <label class="layui-form-label">客户<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HCusName" lay-verify="HCusName" id="HCusName" autocomplete="off">
                                                <input class="layui-input" name="HCusName" lay-verify="HCusName" id="HCusName" readonly="readonly" autocomplete="off">
                                                <input id="HCusID" name="HCusID" type="hidden" value="0" />
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">水冲</label>
                                            <label class="layui-form-label">水冲<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HWaterRush" id="HWaterRush" class="layui-input" value="" style="float:left;">
                                            </div>
@@ -129,14 +130,14 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">布重</label>
                                            <label class="layui-form-label">布重<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HWeight" id="HWeight" class="layui-input" value="" style="float:left;">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">机速</label>
                                            <label class="layui-form-label">机速<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HMachineSpeed" id="HMachineSpeed" class="layui-input" value="" style="float:left;">
                                            </div>
@@ -154,13 +155,13 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">水比</label>
                                            <label class="layui-form-label">水比<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HWaterRate" id="HWaterRate" class="layui-input" value="" style="float:left;">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">水量</label>
                                            <label class="layui-form-label">水量<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HWaterQty" id="HWaterQty" class="layui-input" value="" style="float:left;" readonly="readonly" autocomplete="off">
                                            </div>
@@ -286,10 +287,13 @@
                        <script type="text/html" id="toolbarDemo">
                            <div class="layui-btn-container">
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLine"><i class="layui-icon layui-icon-form"></i>增加一行</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-InsertLine"><i class="layui-icon layui-icon-form"></i>插入一行</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Up"><i class="layui-icon layui-icon-form"></i>上移</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Under"><i class="layui-icon layui-icon-form"></i>下移</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_Inventory" id="get_Inventory"><i class="layui-icon layui-icon-form"></i>库存查询</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_InOutSum" id="get_InOutSum"><i class="layui-icon layui-icon-form"></i>出入库记录查询</button>
                            </div>
                        </script>
                        <script type="text/html" id="xuhao">
@@ -320,6 +324,14 @@
                , form = layui.form
                , laydate = layui.laydate
                , element = layui.element;
        //#region ã€åŠ¨æ€èŽ·å–æ¨¡å—åç§°ã€‘
            var HModuleType = "1204";
            //通过单据类型,从数据库动态获取单据模块命名,引用js文件 PageTitle.js
            var HPageTitle = get_PageTitle(HModuleType) == "" ? $("h1").html() : get_PageTitle(HModuleType);
            $("h1").html('<b>' + HPageTitle + '</b>');
            //#endregion
            //#region ç¡®è®¤æ“ä½œç±»åž‹ï¼Œå¹¶èŽ·å–å¯¹åº”å‚æ•°
            var params = get_UrlVars();
@@ -355,9 +367,15 @@
            //#region åˆ¤æ–­æ“ä½œç±»åž‹å¹¶åˆå§‹åŒ–界面
            if (OperationType == 1) {//无源新增
                set_AddFNew();
                //读取本地存储数据,根据上次设置初始化数据
                get_ReadConfigFile();
                //$('#print-btn').addClass("layui-btn-disabled").attr("disabled", true);
            }
            else if (OperationType == 2) {//复制
                set_CopyFromGrid(linterid);
                //$('#print-btn').addClass("layui-btn-disabled").attr("disabled", true);
            }
            else if (OperationType == 3) {//编辑
                set_EditFromGrid(linterid);
@@ -374,19 +392,83 @@
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;;
                var AddRow = table.cache['mainTable'];
                var NewRow = { "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HMaterRuleType":"", "HBatchNo": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HDesignLife": 0, "HLeaveLife": 0, "HUseLife": 0, "HQtyMust": 0, "HRate": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HSPID": 0, "HSPCode": "", "HSPName": "", "HStockOrgID": sessionStorage["OrganizationID"], "HRemark": "" };
                var NewRow = { "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HMaterRuleType":"", "HBatchNo": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HDesignLife": 0, "HLeaveLife": 0, "HUseLife": 0, "HQtyMust": 0, "HRate": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HSPID": 0, "HSPCode": "", "HSPName": "", "HStockOrgID": sessionStorage["OrganizationID"], "HRemark": "", "HWeight": "0" };
                console.log(NewRow);
                switch (obj.event) {
                    //库存查询
                    case 'get_Inventory': get_Inventory();
                        break;
                    //出入库记录查询
                    case 'get_InOutSum': get_InOutSum();
                        break;
                    //新增一行
                    case 'btn-AddLine': btnAddLine(NewRow);
                        break;
                    //复制一行
                    case 'btn-CopyLine': btnCopyLine(data);
                        break;
                    //指定位置下插入一行
                    case 'btn-InsertLine': btnInsertLine(NewRow)
                        break;
                    //上移
                    case 'btn-Up': btn_up();
                        break;
                    //下移
                    case 'btn-Under': btn_under();
                        break;
                }
            });
            //#endregion
            //#region åº“存查询
            function get_Inventory() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1 && data[0].HMaterID != 0) {
                    var HMaterID = data[0].HMaterID.toString();
                    //弹窗方法
                    layer.open({
                        type: 2//弹窗类型
                        , skin: 'layui-layer-rim' //加上边框
                        , area: ['90%', '90%']//大小
                        , title: '库存查询列表'//标题
                        , shift: 2//弹出动画
                        , content: ['../../仓存管理/条码报表/Kf_ICinventoryQueryReport.html?Type=1&HMaterID=' + HMaterID, 'yes']
                        , btn: ['取消']
                        , btn1: function (index, layero) {
                            layer.close(index);
                        }
                    })
                }
                else {
                    layer.msg('请选择一行有物料数据查询!');
                }
            }
            //#endregion
            //#region å‡ºå…¥åº“记录查询
            function get_InOutSum() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1 && data[0].HMaterID != 0) {
                    var HMaterID = data[0].HMaterID.toString();
                    layer.open({
                        type: 2//弹窗类型
                        , skin: 'layui-layer-rim' //加上边框
                        , area: ['90%', '90%']//大小
                        , title: '出入库记录列表'//标题
                        , shift: 2//弹出动画
                        , content: ['../../仓存管理/条码报表/Kf_StockInOutSumQueryReport.html?Type=1&HMaterID=' + HMaterID, 'yes']
                        , btn: ['取消']
                        , btn1: function (index, layero) {
                            layer.close(index);
                        }
                    })
                }
                else {
                    layer.msg('请选择一行有物料数据查询!');
                }
            }
            //#endregion
            //#region è¡Œå†…事件
            table.on('tool(mainTable)', function (obj) {
                set_GridDelete(obj);   //行内删除
@@ -406,7 +488,7 @@
                    shift: 2,
                    area: ['80%', '80%'],
                    maxmin: true,
                    content: ['../../PublicPage/DeptInformation.html', 'yes'],
                    content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes'],
                    btn: ['确定', '取消']
                    , btn1: function (index, layero) {
@@ -416,7 +498,7 @@
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HDeptName").val(checkStatus.data[0].HName);
                        $("#HDeptName").val(checkStatus.data[0].部门名称);
                        $("#HDeptID").val(checkStatus.data[0].HItemID);
                        layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
@@ -445,7 +527,7 @@
                    shift: 2,
                    area: ['80%', '80%'],
                    maxmin: true,
                    content: ['../../PublicPage/UserInformation.html', 'yes'],
                    content: ['../../基础资料/公用基础资料/Gy_EmployeeList.html?Type=HMaterEmp', 'yes'],
                    btn: ['确定', '取消']
                    , btn1: function (index, layero) {
@@ -455,7 +537,7 @@
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HMaterEmpName").val(checkStatus.data[0].HName);
                        $("#HMaterEmpName").val(checkStatus.data[0].职员名称);
                        $("#HMaterEmpID").val(checkStatus.data[0].HItemID);
                        layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
@@ -739,6 +821,8 @@
                var HInterID = $("#HInterID").val();
                OperationType = 2;
                set_CopyFromGrid(HInterID);
                //$('#print-btn').addClass("layui-btn-disabled").attr("disabled", true);
            });
            //#endregion
@@ -747,6 +831,12 @@
                clear();
                OperationType = 1;
                set_AddFNew();
                //读取本地存储数据,根据上次设置初始化数据
                get_ReadConfigFile();
                $("#HProcExchBillNo").prop("disabled", false);
                //$('#print-btn').addClass("layui-btn-disabled").attr("disabled", true);
            });
            //#endregion
@@ -780,8 +870,13 @@
                            if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                                layer.msg(data.Message, { time: 1 * 1000, icon: 1 }, function () {
                                    $('#add-btn').addClass("layui-btn-disabled").attr("disabled", true);
                                    var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
                                    parent.layer.close(index); //再执行关闭
                                    //记录本次保存的数据,用于下一次操作时初始化的数据
                                    get_WriteConfigFile();
                                    /*$('#print-btn').addClass("layui-btn-disabled").attr("disabled", false);*/
                                    //var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
                                    //parent.layer.close(index); //再执行关闭
                                });
                            }
                            else {
@@ -808,44 +903,31 @@
            //#region é¢„览
            form.on("submit(planview)", function (data) {
                if (linterid != "" || linterid != null) {
                    layer.open({
                        type: 2
                        , area: ['50%', '50%']
                        , title: '打印模版选择'
                        , shade: 0.6 //遮罩透明度
                        , maxmin: false //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + linterid.toString() + '&MyMsg=' + linterid.toString() + '&Type=HMouldProdInBill', 'yes']
                        , resize: false
                    })
                }
                else {
                    layer.msg('当前单据ID为空!');
                }
                layer.open({
                    type: 2
                    , area: ['50%', '50%']
                    , title: '打印模版选择'
                    , shade: 0.6 //遮罩透明度
                    , maxmin: false //允许全屏最小化
                    , anim: 0 //0-6的动画形式,-1不开启
                    , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + linterid.toString() + '&MyMsg=' + linterid.toString() + '&Type=Kf_MateOutBillList', 'yes']
                    , resize: false
                })
            });
            //#endregion
            //#region æ‰“印
            form.on("submit(print)", function (data) {
                var HInterID = $("#HInterID").val();
                if (HInterID != "" || HInterID != null) {
                    layer.open({
                        type: 2
                        , area: ['50%', '50%']
                        , title: '打印模版选择'
                        , shade: 0.6 //遮罩透明度
                        , maxmin: false //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + linterid.toString() + '&MyMsg=' + linterid.toString() + '&Type=Kf_MateOutBillList', 'yes']
                        , resize: false
                    })
                }
                else {
                    layer.msg('当前单据ID为空!');
                }
                layer.open({
                    type: 2
                    , area: ['50%', '50%']
                    , title: '打印模版选择'
                    , shade: 0.6 //遮罩透明度
                    , maxmin: false //允许全屏最小化
                    , anim: 0 //0-6的动画形式,-1不开启
                    , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + linterid.toString() + '&MyMsg=' + linterid.toString() + '&Type=Kf_MateOutBillList', 'yes']
                    , resize: false
                })
            });
            //#endregion
@@ -917,6 +999,8 @@
                    //    });
                    //    break;
                    case "HRate":     //用量
                        value = (value * 1).toFixed(6);
                        var HWeight = $("#HWeight").val();
                        var HWaterQty = $("#HWaterQty").val();
                        var HRate = value;
@@ -929,8 +1013,10 @@
                        }
                        //同步更新表格和缓存对应的值
                        obj.update({
                            HRate: value,
                            HQty: HQty
                        });
                        table.render(option);
                        break;
                    case "HMaterRuleType":
                        var HWeight = $("#HWeight").val();
@@ -1027,6 +1113,36 @@
            }
            //#endregion
            //#region è¯»å–配置文件
            function get_ReadConfigFile() {
                //获取本地存储的数据
                var data = localStorage.getItem("Kf_MateOutBillLEdit");
                if (data != null) {
                    var data2 = JSON.parse(data);
                    $("#HDeptID").val(data2["HDeptID"]);
                    $("#HDeptName").val(data2["HDeptName"]);
                    $("#HMaterEmpID").val(data2["HMaterEmpID"]);
                    $("#HMaterEmpName").val(data2["HMaterEmpName"]);
                    form.render('select');
                }
            }
            //#endregion
            //#region å­˜å‚¨é…ç½®æ–‡ä»¶
            function get_WriteConfigFile() {
                //清空本地存储的数据
                localStorage.removeItem("Kf_MateOutBillLEdit");
                var data = {
                    HDeptID: $("#HDeptID").val()
                    , HDeptName: $("#HDeptName").val()
                    , HMaterEmpID: $("#HMaterEmpID").val()
                    , HMaterEmpName: $("#HMaterEmpName").val()
                }
                //本地存储
                localStorage.setItem("Kf_MateOutBillLEdit", JSON.stringify(data));
            }
            //#endregion
            //#region åˆå§‹åŒ–表单插件
            function set_InitFrom() {
                laydate.render({
@@ -1059,14 +1175,15 @@
                $("#HInterID").val("0");
                $("#HBillNo").val("");
                $.ajax({
                    url: GetWEBURL() + "/Web/GetMAXNum",
                    url: GetWEBURL() + "/WEBSController/GetMaxBillNoAndID_Json",
                    type: "GET",
                    data: { "HBillType": sBillType },
                    success: function (d) {
                        //console.log(d.data);
                        $("#HBillNo").val(d.data[0].HBillNo);
                        $("#HInterID").val(d.data[0].HInterID);
                        $("#HDate").val(Pub_Format(new Date(), "yyyy-MM-dd"));
                        $("#HInterID").val(0);
                        linterid = $("#HInterID").val();
                    }
                });
            }
@@ -1077,22 +1194,23 @@
                columns = [
                    { type: 'checkbox', fixed: 'left' }
                    , { templet: '#xuhao', title: '序号', sort: true, fixed: 'left', event: "qwe", width: 100 }
                    , { field: 'HMaterID', title: 'HMaterID', edit: 'text', width: 100, hide: true }
                    , { field: 'HMaterID', title: 'HMaterID', width: 100, hide: true }
                    , { field: 'HMaterCode', title: '物料代码', edit: 'text', event: 'HMaterCode', width: 100 }
                    , { field: 'HMaterName', title: '物料名称', edit: 'text', width: 100 }
                    , { field: 'HMaterRuleType', title: '物料分类', edit: 'text', width: 100 }
                    , { field: 'HMaterSpec', title: '规格型号', edit: 'text', width: 100 }
                    , { field: 'HUnitID', title: 'HUnitID', edit: 'text', width: 100, hide: true }
                    , { field: 'HMaterName', title: '物料名称', width: 100 }
                    , { field: 'HMaterRuleType', title: '物料公式', width: 100 }
                    , { field: 'HMaterSpec', title: '规格型号', width: 100 }
                    , { field: 'HUnitID', title: 'HUnitID', width: 100, hide: true }
                    , { field: 'HUnitCode', title: '计量单位代码', edit: 'text', event: 'HUnitCode', width: 100, hide: true }
                    , { field: 'HUnitName', title: '计量单位', edit: 'text', width: 100 }
                    , { field: 'HQtyMust', title: '应发数量', edit: 'text', width: 100, hide: true}
                    , { field: 'HUnitName', title: '计量单位', width: 100 }
                    , { field: 'HQtyMust', title: '应发数量', width: 100, hide: true}
                    , { field: 'HRate', title: '用量‰', edit: 'text', width: 100 }
                    , { field: 'HQty', title: '重量', edit: 'text', width: 100 }
                    , { field: 'HPrice', title: '单价', edit: 'text', width: 100, hide: true}
                    , { field: 'HMoney', title: '金额', edit: 'text', width: 100, hide: true}
                    , { field: 'HWHID', title: 'HWHID', edit: 'text', width: 100, hide: true, hide: true }
                    , { field: 'HQty', title: '重量', width: 100 }
                    , { field: 'HWeight', title: '实际称重', width: 100 }
                    , { field: 'HPrice', title: '单价', width: 100, hide: true}
                    , { field: 'HMoney', title: '金额', width: 100, hide: true}
                    , { field: 'HWHID', title: 'HWHID', width: 100, hide: true, hide: true }
                    , { field: 'HWHCode', title: '发料仓库代码', edit: 'text', event: 'HWHCode', width: 120, hide: true}
                    , { field: 'HWHName', title: '发料仓库名称', edit: 'text', width: 120, hide: true}
                    , { field: 'HWHName', title: '发料仓库名称', width: 120, hide: true}
                    , { field: 'HRemark', title: '备注', edit: 'text', width: 100 }
                    , { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                ];
@@ -1147,7 +1265,7 @@
            function set_AddFNew() {
                //获取最大单据号
                get_MAXNum();
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterRuleType": "", "HMaterSpec": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HQtyMust": 0, "HRate":0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HRemark": "" }];
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterRuleType": "", "HMaterSpec": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HQtyMust": 0, "HRate":0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HRemark": "", "HWeight": "0"}];
                table.render(option);
            }
            //#endregion
@@ -1155,9 +1273,14 @@
            //#region å¤åˆ¶
            function set_CopyFromGrid(linterid) {
                //根据所复制单据的内码获取单据信息,并初始化页面
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HMaterRuleType": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HQtyMust": 0, "HRate": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HRemark": "" }];
                set_EditForm(linterid);  //编辑获取表头
                set_EditGrid(linterid);  //编辑获取表体
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HMaterRuleType":"", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HQtyMust": 0, "HRate": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HRemark": "" }];
                for (var i = 0; i < option.data.length; i++) {
                    option.data[i].HWeight = "0";
                }
                table.render(option);
                //覆盖单据内码、单据号、日期
@@ -1170,14 +1293,16 @@
                $("#HProcExchInterID").val("0");
                $("#HProcExchEntryID").val("0");
                $("#HProcExchBillNo").val("");
                $("#HProcExchBillNo").prop("disabled", false);
            }
            //#endregion
            //#region ç¼–辑
            function set_EditFromGrid(linterid) {
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HMaterRuleType": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HQtyMust": 0, "HRate": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HRemark": "" }];
                set_EditForm(linterid);  //编辑获取表头
                set_EditGrid(linterid);  //编辑获取表体
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HMaterRuleType":"", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HQtyMust": 0, "HRate": 0, "HQty": 0, "HPrice": 0, "HMoney": 0, "HWHID": 0, "HWHCode": "", "HWHName": "", "HRemark": "" }];
                table.render(option);
                $("#HProcExchBillNo").prop("disabled", true);
@@ -1189,6 +1314,7 @@
            function set_EditForm(linterid){
                $.ajax({
                    url: GetWEBURL() + "Kf_MateOutBill/Kf_MateOutBillListCheckDetai",
                    async:false,
                    type: "GET",
                    data: {
                        "HID": linterid
@@ -1219,9 +1345,9 @@
                                , "HICMOInterID": data.任务单内码
                                , "HICMOEntryID": data.任务单子内码
                                , "HICMOBillNo": data.任务单号
                                , "HProExitInterID": data.工序流转卡内码
                                , "HProExitEntryID": data.工序流转卡子内码
                                , "HProExitBillNo": data.工序流转卡号
                                , "HProcExchInterID": data.工序流转卡内码
                                , "HProcExchEntryID": data.工序流转卡子内码
                                , "HProcExchBillNo": data.工序流转卡号
                                , "HMaterID": data.主产品内码
                                , "HMaterName": data.主产品名称
                                , "HVerNo": data.花版号
@@ -1240,6 +1366,7 @@
                                , "HWaterRush": data.水冲
                                , "HWaterQty": data.水量
                                , "HWaterRate": data.水比
                                , "HRemark": data.表头备注
                            });
                        } else {
@@ -1258,11 +1385,15 @@
                //编辑加载数据
                $.ajax({
                    url: GetWEBURL() + 'Kf_MateOutBill/Kf_MateOutBillListProjectDetai',
                    async:false,
                    type: "GET",
                    data: { "sqlWhere": "and hmainid=" + linterid },
                    success: function (result) {
                        if (result.count == 1) {
                            option.data = result.list[0];
                            for (var i = 0; i < option.data.length; i++) {
                                option.data[i]["HRate"] = (option.data[i]["HRate"] * 1).toFixed(6);
                            }
                            table.render(option);
                            //option1.data = result.list[1];
                            //table.render(option1);
@@ -1278,23 +1409,35 @@
            }
            //#endregion
            //#region å¢žåŠ ä¸€è¡Œ
            //#region åœ¨æœ«å°¾å¢žåŠ ä¸€è¡Œ
            function btnAddLine(NewRow) {
                //var tableBak = table.cache["mainTable"]; //获取之前编辑过的表格数据
                //buttonArr = [];//清空数组
                //for (var i = 0; i < tableBak.length; i++) {
                //    buttonArr.push(tableBak[i]);  //将之前的数据存储
                //}
                //buttonArr.push(NewRow);  //在尾部加一行
                //table.reload("mainTable", {
                //    data: buttonArr    //将数据重新载入表格
                //})
                //table.cache["mainTable"].push(AddRow[rows]);
                table.cache["mainTable"].push(NewRow);
                option.data = table.cache["mainTable"];
                table.render(option);
                //rows++;
                layer.msg('增加一行按钮!')
            }
            //#endregion
            //#region åœ¨æŒ‡å®šè¡Œä¸‹æ’入一行
            function btnInsertLine(NewRow) {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    var tables = [];                                    //存储插入一行后的表格数据
                    //获取表格的全部行
                    var rowList = table.cache['mainTable'];
                    for (var i = 0; i < rowList.length; i++) {          //遍历表格的行
                        tables.push(option.data[i]);
                        if (rowList[i].LAY_CHECKED == true) {           //获取选中行的位置
                            tables.push(NewRow);
                        }
                    }
                    option.data = tables;
                    table.render(option);
                } else {
                    layer.msg('请选择一行数据编辑!');
                }
            }
            //#endregion
@@ -1312,7 +1455,70 @@
                    var copyrow = copydata2.substring(0, copydata2.length - 1);//去除末尾字符']'
                    table.cache["mainTable"].push(JSON.parse(copyrow));//将复制的行强转成json追加到表格上
                    option.data = table.cache["mainTable"];//将数据绑定到data上
                    //设置复制得到的记录的实际称重为0
                    option.data[option.data.length - 1].HWeight = "0";
                    table.render(option);//将数据渲染到表格上
                }
            }
            //#endregion
            //#region ä¸Šç§»
            function btn_up() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (data.length == 1) {
                    var tables = [];
                    //获取表格的全部行
                    var rowList = table.cache['mainTable'];
                    for (var i = 0; i < rowList.length; i++) {          //遍历表格的行
                        if (rowList[i].LAY_CHECKED == true) {           //获取选中行的位置
                            //如果是第一行上移,则失败并提醒
                            if (i == 0) {
                                layer.msg("第一行数据无法上移!");
                                return;
                            }
                            tables.push(option.data[i - 1]);
                            data[0].LAY_CHECKED = true;
                            option.data[i - 1] = data[0];
                            option.data[i] = tables[0];
                            table.render(option);
                            break;
                        }
                    }
                } else {
                    layer.msg("请选择一行数据!");
                }
            }
            //#endregion
            //#region ä¸‹ç§»
            function btn_under() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (data.length == 1) {
                    var tables = [];
                    //获取表格的全部行
                    var rowList = table.cache['mainTable'];
                    for (var i = 0; i < rowList.length; i++) {          //遍历表格的行
                        if (rowList[i].LAY_CHECKED == true) {           //获取选中行的位置
                            //如果是最后一行下移,则失败并提醒
                            if (i == option.data.length-1) {
                                layer.msg("最后一行数据无法下移!");
                                return;
                            }
                            tables.push(option.data[i + 1]);
                            data[0].LAY_CHECKED = true;
                            option.data[i + 1] = data[0];
                            option.data[i] = tables[0];
                            table.render(option);
                            break;
                        }
                    }
                }else {
                    layer.msg("请选择一行数据!");
                }
            }
            //#endregion
@@ -1331,7 +1537,8 @@
                            //layer.close(index);
                            var oldData = table.cache["mainTable"];
                            oldData.splice(obj.tr.data('index'), 1);
                            table.reload('mainTable', { data: oldData });
                            option.data = oldData;
                            table.render(option);
                            layer.close(index);
                        }
                    });
@@ -1355,7 +1562,7 @@
                                shift: 2,
                                area: ['80%', '80%'],
                                maxmin: true,
                                content: ['../../PublicPage/PartInformation.html', 'yes'],
                                content: ['../../基础资料/公用基础资料/Gy_Material.html', 'yes'],
                                btn: ['确定', '取消']
                                , btn1: function (index, layero) {
@@ -1388,19 +1595,35 @@
                                        option.data[rowIndex + i].HDesignLife = 0;
                                        option.data[rowIndex + i].HLeaveLife = 0;
                                        option.data[rowIndex + i].HQty = 1;
                                        option.data[rowIndex + i].HMoney = 0;
                                        //根据物料的 ç‰©æ–™å…¬å¼ è®¡ç®— é‡é‡
                                        var HWeight = $("#HWeight").val();
                                        var HWaterQty = $("#HWaterQty").val();
                                        if (option.data[rowIndex + i].HMaterRuleType == "染料") {
                                            option.data[rowIndex + i].HQty = option.data[rowIndex + i].HRate * HWeight;
                                        } else if (option.data[rowIndex + i].HMaterRuleType == "助剂") {
                                            option.data[rowIndex + i].HQty = option.data[rowIndex + i].HRate * HWaterQty;
                                        }
                                    }
                                    table.render(option);
                                    layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                                    layer.closeAll();
                                    //layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                                }
                                , btn2: function (index, layero) {
                                    //按钮【按钮二】的回调
                                    //return false å¼€å¯è¯¥ä»£ç å¯ç¦æ­¢ç‚¹å‡»è¯¥æŒ‰é’®å…³é—­
                                },
                                end: function () {
                                     obj.update({
                                     "HMaterID" :OptionData.HMaterID
                                        ,"HMaterCode" : OptionData.物料代码
                                       , "HMaterName" :OptionData.物料名称
                                        ,"HMaterSpec" : OptionData.规格型号
                                        ,"HUnitID" :OptionData.HUnitID
                                        ,"HUnitName" : OptionData.计量单位名称
                                })
                                }
                            });
                        }
@@ -1441,7 +1664,11 @@
                                    //return false å¼€å¯è¯¥ä»£ç å¯ç¦æ­¢ç‚¹å‡»è¯¥æŒ‰é’®å…³é—­
                                },
                                end: function () {
                                     obj.update({
                                     "HPropertyID" :OptionData.HItemID
                                        ,"HPropertyCode" : OptionData.HNumber
                                       , "辅助属性" :OptionData.HName
                                })
                                }
                            });
                        }
@@ -1483,7 +1710,10 @@
                                    //return false å¼€å¯è¯¥ä»£ç å¯ç¦æ­¢ç‚¹å‡»è¯¥æŒ‰é’®å…³é—­
                                },
                                end: function () {
                                 obj.update({
                                    "HUnitID": OptionData.HItemID
                                    , "计量单位": OptionData.计量单位名称
                                })
                                }
                            });
                        }
@@ -1532,7 +1762,6 @@
                                    //return false å¼€å¯è¯¥ä»£ç å¯ç¦æ­¢ç‚¹å‡»è¯¥æŒ‰é’®å…³é—­
                                },
                                end: function () {
                                }
                            });
                        }
@@ -1615,11 +1844,40 @@
                //    return Result = false;
                //}
                if ($("#HBillNo").val() == '' || $("#HBillNo").val() == null) {
                    layer.msg("单据号不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return Result = false;
                }
                if ($("#HDate").val() == '' || $("#HDate").val() == null) {
                    layer.msg("日期不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return Result = false;
                }
                if ($("#HDeptID").val() == '0' || $("#HDeptID").val() == null) {
                    layer.msg("车间不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return Result = false;
                }
                if ($("#HProcExchBillNo").val() == '' || $("#HProcExchBillNo").val() == null) {
                    layer.msg("工艺单号不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return Result = false;
                }
                if ($("#HICMOBillNo").val() == '' || $("#HICMOBillNo").val() == null) {
                    layer.msg("生产订单号不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return Result = false;
                }
                if ($("#HMaterID").val() == '0' || $("#HMaterID").val() == null) {
                    layer.msg("颜色不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return Result = false;
                }
                //if ($("#HCusID").val() == '0' || $("#HCusID").val() == null) {
                //    layer.msg("客户不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                //    return Result = false;
                //}
                if ($("#HMaterEmpID").val() == '0' || $("#HMaterEmpID").val() == null) {
                    layer.msg("打浆人不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
@@ -1635,18 +1893,18 @@
                    return Result = false;
                }
                var HProcExchBillNo = $("#HProcExchBillNo").val();
                var resultData = getHWeightByHProcExchBillNo(HProcExchBillNo);
                if (typeof (resultData.HWeight) == "undefined") {
                    return Result = false;
                } else {
                    var HWeight = resultData.HWeight * 1;
                    temp = temp * 1;
                    if (temp > HWeight) {
                        layer.msg("布重不能超出工艺单对应数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result = false;
                    }
                }
                //var HProcExchBillNo = $("#HProcExchBillNo").val();
                //var resultData = getHWeightByHProcExchBillNo(HProcExchBillNo);
                //if (typeof (resultData.HWeight) == "undefined") {
                //    return Result = false;
                //} else {
                //    var HWeight = resultData.HWeight * 1;
                //    temp = temp * 1;
                //    if (temp > HWeight) {
                //        layer.msg("布重不能超出工艺单对应数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                //        return Result = false;
                //    }
                //}
                //temp = $("#HLong").val() + "";
                //if (temp == "") {
@@ -1724,12 +1982,24 @@
                if (typeof (sSubStr) != "undefined" && typeof (sSubStr) != "") {
                    sSubStr = JSON.parse(sSubStr);
                    for (var i = 0; i < sSubStr.length; i++) {
                        if (sSubStr[i].HMaterID == "") {
                        if (sSubStr[i].HMaterID == "0") {
                            layer.msg("明细记录第" + (i + 1) + "行,物料信息为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            return Result = false;
                        }
                        if (sSubStr[i].HUnitID == "") {
                        if (sSubStr[i].HUnitID == "0") {
                            layer.msg("明细记录第" + (i + 1) + "行,计量单位为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            return Result = false;
                        }
                        if (sSubStr[i].HMaterRuleType == null || sSubStr[i].HMaterRuleType == "") {
                            layer.msg("明细记录第" + (i + 1) + "行,物料公式为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            return Result = false;
                        }
                        temp = sSubStr[i].HRate + "";
                        if (temp == "" || temp *1 == "0") {
                            layer.msg("明细记录第" + (i + 1) + "行,用量为空或为0!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            return Result = false;
                        } else if (!ref.test(temp)) {
                            layer.msg("明细记录第" + (i + 1) + "行,用量请输入非负数!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            return Result = false;
                        }
                        //if (sSubStr[i].HWHID == "") {
@@ -1743,6 +2013,19 @@
                }
                //#endregion
                //#region å­è¡¨å…³é”®å­—段重复检验
                var num = [];
                for (var i = 0; i < option.data.length; i++) {
                    temp = option.data[i]["HMaterID"];
                    if ($.inArray(temp, num) != -1) {
                        layer.msg("第" + (i + 1) + "行:物料重复,请重新选择!");
                        console.log(option);
                        return Result = false;
                    }
                    num.push(temp);
                }
                //#endregion
                return Result;
            }
@@ -1762,6 +2045,7 @@
                        if (result.code == 1) {
                            var data = result.data.h_v_Sc_ProcessExchangeBillList[0];
                            resultData = data;
                            var HWaterRate = $("#HWaterRate").val();
                            form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                                "HICMOInterID": data.HICMOInterID
@@ -1777,6 +2061,7 @@
                                , "HCusID": data.HCusID
                                , "HCusName": data.HCusName
                                , "HWeight": data.HWeight
                                , "HWaterQty": data.HWeight * HWaterRate
                                //, "HLong": data.米数
                                //, "HMaterEmpID": data.打浆人内码
                                //, "HMaterEmpName": data.打浆人名称
@@ -1847,6 +2132,27 @@
        });
          function GetHDeptNameValue(obj)  //返回车间
        {
            $("#HDeptName").val(obj[0].部门名称);
            $("#HDeptID").val(obj[0].HItemID);
        }
        function GetHMaterEmpValue(obj)  //返回打浆人
        {
            $("#HMaterEmpName").val(obj[0].职员名称);
            $("#HMaterEmpID").val(obj[0].HItemID);
        }
          //双击返回物料
         function GetGyMaterial(data) {
             OptionData = data
         }
           //双击返回计量单位
         function GetGyUnit(data) {
             OptionData = data
         }
    </script>
</body>
</html>