WebTM/views/³µ¼ä¹ÜÀí/¹¤ÐòÁ÷ת/MES_StationOutBill_PDA_Detail.html
@@ -65,6 +65,8 @@
                                    <th>流水号</th>
                                    <td class="bz_td">
                                        <input type="text" name="HProcNo" class="layui-input" id="HProcNo" placeholder="流水号" style="border-radius:50px;background-color:#efefef4d;" readonly>
                                        <input type="hidden" name="HBillNo_bak" id="HBillNo_bak" autocomplete="off" class="layui-input">
                                        <input type="hidden" name="HInterID" id="HInterID" autocomplete="off" class="layui-input">
                                    </td>
                                </tr>
                                <tr>
@@ -139,7 +141,19 @@
                }
                return vars;
            }
            var params = getUrlVars();
            var params = getUrlVars();
            $("#HBillNo_bak").val(params[params[0]]);
            $("#HProcNo").val(params[params[2]]);
            $("#HPlanQty").val(params[params[3]]);
            $("#HWorkProcID").val(params[params[4]]);
            $("#HInterID").val(params[params[8]]);
            var HProcExchBillNo = params[params[1]];
            var HWorkProcID = params[params[4]];
            var HMaterID = params[params[5]];
            var HProcExchHinteID = params[params[6]];
            if (typeof (params[params[0]]) == "undefined") {
                var OperationType = 1;//操作类型
                var closeType = 2;  //关闭类型
@@ -159,7 +173,7 @@
                    get_DisplayTech(HBillNo);
                }
            } else {
                var OperationType = params[params[0]];//操作类型
                var OperationType = params[params[7]];//操作类型
                var linterid = params[params[1]];//源单id
                var HSouceBillType = params[params[2]];//源单类型
                var HBillNo = params[params[3]];  //获取单据号
@@ -169,9 +183,10 @@
            var option = [];
            get_Display(HMaterID, HWorkProcID, HProcExchBillNo);
            set_InitGrid();
            //头工具栏事件
            //#region [头工具栏事件]
            table.on('toolbar(mainTable)', function (obj) {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
@@ -213,6 +228,12 @@
                        break;
                }
            });
            //#endregion
            //提交按钮
            form.on('submit(Saver)', function (data) {
                Saver(data);
            });
            //#region é€€å‡ºæŒ‰é’®
            form.on('submit(Cancel)', function () {
@@ -230,8 +251,10 @@
            })
            //#endregion
            //行内事件
            //#region [行内事件]
            table.on('tool(mainTable)', function (obj) {
                set_GridCellCheck(obj); //行内获取数据
                var data = obj.data;
                var rowIndex = $(obj.tr).attr("data-index");
                if (obj.event === 'del') {
@@ -244,20 +267,38 @@
                            layer.close(index);
                        }
                    });
                }
            });
            //#endregion
            //监听单元格编辑  å•元格编辑后 å˜æ›´
            table.on('edit(mainTable)', function (obj) {
                var value = obj.value //得到修改后的值
                    , data = obj.data //得到所在行所有键值
                    , field = obj.field; //得到字段
                switch (field) {
                    case 'HQty':
                        obj.update({
                            HMoney: HProcPrice * HQty     //工资=工价 * æ•°é‡
                        });
                        break;
                }
            });
            //初始化表格
            function set_InitGrid() {
                //表头
                //表头
                columns = [ //表头
                    //{ type: 'checkbox', totalRowText: '合计行' }
                    { field: 'HProcID', title: '工资', width: 70 }
                    , { field: 'HProcNumber', title: '职员', width: 60 }
                    , { field: 'HProcName', title: '工价', width: 60 }
                    , { field: 'HGroupID', title: '数量', width: 60 }
                    , { field: 'HGroupNumber', title: '生产资源', width: 60 }
                    , { type: 'numbers', title: '序号', totalRow: true, width: 50 }
                    { field: 'HMoney', title: '工资', width: 70 }
                    , { field: 'HWorkEmpID', title: '职员ID', width: 60, hide: true }
                    , { field: 'HWorkName', title: '职员', edit: 'text', event: "HWorkName" }
                    , { field: 'HRate', title: '职员系数', width: 60, hide: true }
                    , { field: 'HProcPrice', title: '工价', width: 60 }
                    , { field: 'HQty', title: '数量', width: 60, edit: 'text', event:'HQty',totalRow: true}
                    , { field: 'HWorkSourceID', title: '生产资源ID', width: 60, hide: true }
                    , { field: 'HWorkSourceName', title: '生产资源', width: 60 }
                    , { type: 'numbers', title: '序号', width: 50 }
                    //, { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                ];
@@ -269,32 +310,154 @@
                    , cellMinWidth: 120
                    , height: 400
                    , cols: [columns]
                    , limit: Number.MAX_VALUE//默认显示全部
                    , done: function (res, curr, count) {
                        option.data = res.data;
                        //去掉下拉框失焦事件否则在下拉框里输入值
                        $('.layui-form-select').find('input').unbind("blur");
                        //表格重载回显下拉框里的数据
                        $('tr').each(function (e) {
                            var $cr = $(this);
                            var dataIndex = $cr.attr("data-index");
                            $.each(option.data, function (index, value) {
                                if (value.LAY_TNDEX == dataIndex) {
                                    $cr.find('input').val(value.HSupFlag);
                    //, totalRow: true
                };
                table.render(option);
            }
            //#region åŠ è½½è¡¨å¤´
            function get_Display(HMaterID, HWorkProcID, HProcExchBillNo) {
                var ajaxLoad = layer.load();
                $.ajax({
                    url: GetWEBURL() + "/Cj_StationOutBill_Detail/get_Display2",
                    type: "GET",
                    data: { "HMaterID": HMaterID, "HWorkProcID": HWorkProcID, "HProcExchBillNo": HProcExchBillNo },
                    success: function (result) {
                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            var data = result.data;
                            $("#HWorkProcName").val(result.data[0]["工序名称"]);
                            form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                                //"HWorkProcName": data.工序名称
                                //"HBillNo": data.单据号
                                //, "HDate": formatDate(data.日期)
                            });
                            //子表  èµ‹å€¼
                            var rowdata = [];
                            for (var i = 0; i < result.data.length; i++) {
                                rowdata.push(
                                    {
                                        "HWorkEmpID": 0, "HWorkEmpNumber": "", "HWorkName": "", "HWorkSourceID": data[i].生产资源ID, "HWorkSourceNumber": "", "HWorkSourceName": data[i].生产资源名称,
                                        "HQty": 0, "HRate": 0, "HProcPrice": data[i].工价, "HMoney": 0, "HWorkProcID": 0, "HWorkProcNumber": "", "HWorkProcName": ""
                                    }
                                )
                            }
                            option.data = rowdata;
                            table.render(option);
                            form.render('select');
                            layer.close(ajaxLoad);
                        } else {
                            layer.close(ajaxLoad);
                            layer.alert(result.Message, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                        }
                    }, error: function () {
                        layer.close(ajaxLoad);
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region æäº¤æ–¹æ³•
            function Saver(data) {
                var num = [];
                var number = 0;
                for (var i = 0; i < table.cache["mainTable"].length; i++) {
                    if (table.cache["mainTable"][i] != "") {
                        table.cache["mainTable"][i].LAY_TABLE_INDEX = i;
                        num.push(table.cache["mainTable"][i])
                        number = parseInt(number) + parseInt(num[i].HQty);
                    }
                }
                if ($("#HPlanQty").val() < number) {
                    layer.msg("数量超出!");
                    return;
                }
                var sMainStr = JSON.stringify(data.field);
                var sSubStr = JSON.stringify(num);
                //var hentryid = linteridSub;//子表 æŽ’序id
                var sMainSub = sMainStr + ';' + sSubStr + ';' + OperationType + ';' + sessionStorage["HUserName"];
                $.ajax({
                    type: "POST",
                    url: GetWEBURL() + "Cj_StationOutBill/AddBill_Detail", //方法所在页面和方法名
                    async: true,
                    data: { "sMainSub": sMainSub },
                    dataType: "json",
                    success: function (data) {
                        if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            layer.msg(data.Message, { icon: 1 });
                            $('#add-btn').addClass("layui-btn-disabled").attr("disabled", true);
                            //保存后浏览
                            //ReRoadBillMain();
                        }
                        else {
                            layer.alert(data.Message, { icon: 5 });
                        }
                        layer.closeAll("loading");
                    },
                    error: function (err) {
                        layer.alert("错误:" + err, { icon: 5 });
                        console.log("Reason" + sMainStr);
                    }
                });
            }
            //#endregion
            function set_GridCellCheck(obj) {
                var employeeBar;
                var employeeName;
                table.on('edit(mainTable)', function (obj) {
                    employeeBar = obj.value;
                    obj.update({
                        "HMoney": obj.data.HProcPrice * obj.data.HQty
                    })
                    $("#HPlanQty").focus();
                    $(document).on('keydown', '.layui-table-edit', function (event) {
                        if (event.keyCode == 13) {
                            var data = obj.data;
                            var index = layer.load();
                            $.ajax({
                                url: GetWEBURL() + "/Cj_StationBill/txtHBarCode_KeyDown2",
                                type: "GET",
                                async: false,
                                data: { "HBarCode": employeeBar, "HInterID": HProcExchHinteID, "UserID": sessionStorage["Czybm"], "HBillType": "Out" },
                                success: function (result) {
                                    if (result.count == 1) {
                                        $("#HPlanQty").focus();
                                        obj.update({
                                            "HWorkEmpID": result.data[0].HItemID,
                                            "HWorkName": result.data[0].职员名称,
                                            "HRate": result.data[0].职员系数
                                        })
                                        layer.close(index);
                                        return;
                                    }
                                    else {
                                        layer.close(index);
                                        layer.msg(result.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                                    }
                                },
                                error: function (err) {
                                    layer.close(index);
                                    layer.msg("接口请求失败!" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                                }
                            });
                        });
                    }
                    , done: function (res, curr, count) {
                            setTimeout(function () {
                            }, 1000);
                    }
                };
                option.data = [{
                    "HWorkEmpID": 0, "HWorkEmpNumber": "", "HWorkName": "", "HWorkSourceID ": 0, "HWorkSourceNumber": "", "HWorkSourceName": "",
                    "HQty": 0, "HRate": 0, "HProcPrice": 0, "HMoney": 0, "HWorkProcID": 0, "HWorkProcNumber": "", "HWorkProcName": ""
                }];
                table.render(option);
                            obj.event = "";
                            return false;
                        }
                    })
                });
            }
            
            //以上为layui模块