YL
2021-07-20 ad643da4a87fd46bff66cdd4e95b9fa7a3239438
WebTM/views/Éú²ú¹ÜÀí/Éú²ú»ã±¨µ¥/Sc_Add_ICMOReportBillList.html
@@ -90,16 +90,21 @@
                                            <div class="layui-inline">
                                                <label class="layui-form-label">源单类型</label>
                                                <div class="layui-input-inline">
                                                    <select name="HSourceBillType" lay-filter="aihao" id="HSourceBillType">
                                                        <option value="生产任务单">生产任务单</option>
                                                        <option value="手工录入">手工录入</option>
                                                    <select name="HSourceBillType" lay-filter="HSourceBillType" id="HSourceBillType">
                                                        <option value="0" selected="selected">生产任务单</option>
                                                        <option value="1">手工录入</option>
                                                    </select>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">选单号</label>
                                                <div class="layui-input-inline">
                                                    <input type="text" name="XDH" id="XDH" class="layui-input" value="" style="float:left;width:150px;">
                                                    <input type="text" name="HSourceBillNo" id="HSourceBillNo" class="layui-input" value="" style="float:left;width:150px;">
                                                    <input type="hidden" name="HSourceInterID" id="HSourceInterID" class="layui-input" value="" style="float:left;width:150px;">
                                                    <input type="hidden" name="HSourceEntryID" id="HSourceEntryID" class="layui-input" value="" style="float:left;width:150px;">
                                                    <button type="button" lay-submit="" class="layui-btn" lay-filter="XDHList" id="XDHList" style="width:40px;">
                                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                    </button>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
@@ -118,8 +123,8 @@
                        <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-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLine" id="btn-AddLine"><i class="layui-icon layui-icon-form"></i>增加一行</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine" id="btn-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                            </div>
                        </script>
@@ -140,7 +145,7 @@
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script>
        var TabRow = { "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HSourceID": 0, "HSourceCode": "", "HSourceName": "", "HWorkerid": 0, "HWorkerCode": "", "HWorkerName": "", "HQty": 0, "HRemark": "" };
        //获取参数
        function getUrlVars() {
            var vars = [], hash;
@@ -157,7 +162,7 @@
        var params = getUrlVars();
        var hID = params[params[0]];//编辑查看
        var Sctag = "0";
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
@@ -172,6 +177,19 @@
                , laydate = layui.laydate
                , element = layui.element;
            var fn1 = function (field) {
                return function (data) {
                    var value = data[field];
                    return [
                        '<select name="type" lay-filter="type" lay-search="true" value="' + value + '">',
                        '<option value="" >请选择状态</option>',
                        '<option value="0"' + (value === 0 ? 'selected' : '') + '>国产</option>',
                        '<option value="1"' + (value === 1 ? 'selected' : '') + '>进口</option>',
                        '</select>'
                    ].join('');
                };
            };
            //常规用法
            laydate.render({
                elem: '#HDate'
@@ -183,9 +201,10 @@
            //        icon: 4, skin: 'layui-layer-lan', title: "温馨提示", closeBtn: 0, btn: ['重新登录']
            //    }, function () { window.location.href = "../../user/login.html"; });
            //}
            var tableReload = table.reload;
            //var tableReload = table.reload;
            var option = {
                elem: '#mainTable'
                id:'mainTable'
                ,elem: '#mainTable'
                , toolbar: '#toolbarDemo'
                , height: 500
                //,url: '/demo/table/user/' //数据接口
@@ -194,7 +213,7 @@
                    { 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: 'HMaterCode', title: '物料代码', edit: 'text', event: 'HMaterCode', width: 100 }
                    , { field: 'HMaterCode', title: '物料代码', edit: 'text', event: 'HMaterCode', width: 100, templet: fn1('HMaterCode') }
                    , { field: 'HMaterName', title: '物料名称', edit: 'text', width: 100 }
                    , { field: 'HMaterSpec', title: '规格型号', edit: 'text', width: 100 }
                    , { field: 'HUnitID', title: 'HUnitID', edit: 'text', width: 100, hide: true }
@@ -212,10 +231,12 @@
                ]]
                , limit: 500 //每页默认显示的数量
            };
            //判断是否新增
            if (hID == null || hID == 0) {
                //初始加载表格{ "ID": 0, "HWasterReasonName": " ","HBadReasonID":0,"HEmpName": "  ", "HSQProcName": "   ","HProcID":0, "HZRProcName": "  ", "HMRBChecker": "  ", "HRemark": "  ", "HPSProcName": "  ", "HCloseMan": "   " }
                option.data = [{ "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HSourceID": 0, "HSourceCode": "", "HSourceName": "", "HWorkerid": 0, "HWorkerCode": "", "HWorkerName": "", "HQty": 0, "HRemark": "" }];
                option.data = [TabRow];
                table.render(option);
            }
            else {
@@ -251,7 +272,7 @@
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;;
                var AddRow = table.cache['mainTable'];
                var NewRow = { "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HSourceID": 0, "HSourceCode": "", "HSourceName": "", "HWorkerid": 0, "HWorkerCode": "", "HWorkerName": "", "HQty": 0, "HRemark": "" };
                var NewRow = TabRow;
                switch (obj.event) {
                    case 'btn-AddLine':
                        //table.cache["mainTable"].push(AddRow[rows]);
@@ -282,7 +303,7 @@
            });
            //行内事件
            table.on('tool(mainTable)', function (obj) {
                var data = obj.data;
                var rowIndex = $(obj.tr).attr("data-index");
                if (obj.event === 'del') {
@@ -291,19 +312,23 @@
                        if (rowIndex === '0') {
                            layer.msg('首行无法删除!!!');
                        } else {
                            obj.del();
                            option.data = table.cache["mainTable"];//将数据绑定到data上
                            table.reload(option);
                            layer.close(index);
                            //obj.del();
                            //layer.close(index);
                            var oldData = table.cache["mainTable"];
                            oldData.splice(obj.tr.data('index'), 1);
                            table.reload('mainTable', { data: oldData });
                            layer.close(index);
                            //var oldData = table.cache["mainTable"];
                            //oldData.splice(obj.tr.data('index'), 1);
                            //table.reload('mainTable', { data: oldData });
                            //layer.close(index);
                        }
                    });
                }
                $(document).off('keydown', ".layui-table-edit").on('keydown', '.layui-table-edit', function (e) {
                    if (event.key == "F7")
                    {
                    if (event.key == "F7") {
                        if (obj.event === 'HMaterCode')  //物料信息
                        {
                            //页面层-自定义
@@ -470,9 +495,9 @@
                        }
                        obj.event = "";
                        return false;
                    }
                })
                })
            });
@@ -485,7 +510,7 @@
            function RoadBillMain(hID)//加载表头
            {
                alert(hID);
                //查询检验方案单是否存在
                $.ajax({
                    url: GetWEBURL() + "Sc_ICMOReportBill/Sc_GetICMOReportBillListCheckDetai",
@@ -552,6 +577,19 @@
                RoadBillMain(hID);
                /* RoadBillSub(linterid);*/
            }
            //获取下拉选中值
            form.on('select(HSourceBillType)', function (data) {
                Sctag = data.value;
                form.render('select');
                if (Sctag != "0") {
                    $('#XDHList').addClass("layui-btn-disabled").attr("disabled", true);
                }
                else {
                    $('#XDHList').removeClass("layui-btn-disabled").attr("disabled", false);
                }
            });
            //表头信息车间弹窗
            form.on('submit(HShopList)', function () {
@@ -635,7 +673,7 @@
                layer.open({
                    type: 2,
                    skin: 'layui-layer-rim', //加上边框
                    title: '仓库列表',
                    title: '人员列表',
                    closeBtn: 1,
                    shift: 2,
                    area: ['80%', '80%'],
@@ -667,7 +705,81 @@
                });
            });
            //表头信息选择单据弹窗
            form.on('submit(XDHList)', function () {
                //页面层-自定义
                layer.open({
                    type: 2,
                    skin: 'layui-layer-rim', //加上边框
                    title: '生产任务单列表',
                    closeBtn: 1,
                    shift: 2,
                    area: ['80%', '80%'],
                    maxmin: false,
                    content: ['../../PublicPage/ProductionOrder.html', 'yes'],
                    btn: ['确定', '取消']
                    , btn1: function (index, layero) {
                        option.data = [TabRow];
                        table.render(option);
                        //按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择单据数据');
                        }
                        //刷新当前页表格数据重载
                        //var oldData = table.cache["mainTable"];
                        //var rowIndex = $("#mainTable").find("tbody tr").attr('data-index');//当前行的索引
                        //$(".layui-table-view .layui-table tbody tr[data-index=" + 1+ "]").remove();
                        $("#HSourceBillNo").val(checkStatus.data[0].单据号);
                        $("#HSourceInterID").val(checkStatus.data[0].hmainid);
                        $("#HSourceEntryID").val(checkStatus.data[0].HEntryID);
                        var list = [];
                        for (var i = 0; i <checkStatus.data.length; i++) {
                            list.push(checkStatus.data[i].单据号)
                        }
                        if (isAllEqual(list))  //相同单号
                        {
                            if (checkStatus.data.length>1)
                            {
                                for (var i = 0; i < checkStatus.data.length-1; i++) //补行
                                {
                                    //var NewRow = { "HMaterID": 0, "HMaterCode": "", "HMaterName": "", "HMaterSpec": "", "HUnitID": 0, "HUnitCode": "", "HUnitName": "", "HSourceID": 0, "HSourceCode": "", "HSourceName": "", "HWorkerid": 0, "HWorkerCode": "", "HWorkerName": "", "HQty": 0, "HRemark": "" };
                                    table.cache["mainTable"].push(TabRow);
                                    option.data = table.cache["mainTable"];
                                    table.render(option);
                                }
                            }
                            for (var i = 0; i < checkStatus.data.length; i++) {
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HMaterID"] .layui-table-cell').text(checkStatus.data[i].HMaterID);
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HMaterCode"] .layui-table-cell').text(checkStatus.data[i].HMaterCode);
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HMaterName"] .layui-table-cell').text(checkStatus.data[i].HMaterName);
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HMaterSpec"] .layui-table-cell').text(checkStatus.data[i].HMaterSpec);
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HUnitID"] .layui-table-cell').text(checkStatus.data[i].HUnitID);
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HUnitCode"] .layui-table-cell').text(checkStatus.data[i].HUnitCode);
                                $('.layui-table-view[lay-id="mainTable"]').children('.layui-table-box').children('.layui-table-body').find('table tbody tr[data-index="' + i + '"]').find('td[data-field="HUnitName"] .layui-table-cell').text(checkStatus.data[i].HUnitName);
                            }
                            layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                        }
                        else
                        {
                            layer.msg("请选择相同单号!", { time: 1 * 2000, icon: 5 });
                        }
                    }
                    , btn2: function (index, layero) {
                        //按钮【按钮二】的回调
                        //return false å¼€å¯è¯¥ä»£ç å¯ç¦æ­¢ç‚¹å‡»è¯¥æŒ‰é’®å…³é—­
                    },
                    end: function () {
                    },
                    success: function (layero, index) {
                        layer.full(index);
                    }
                });
            });
@@ -717,14 +829,14 @@
                {
                    return false;
                }
                $.ajax(
                    {
                        type: "POST",
                        url: GetWEBURL() + "/Sc_ICMOReportBill/SaveGetICMOReportBillList", //方法所在页面和方法名
                        async: true,
                        data: { "msg": sMainSub},
                        data: { "msg": sMainSub },
                        dataType: "json",
                        success: function (data) {
                            if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
@@ -748,6 +860,7 @@
                        }
                    });
            });
            function f_alert(sMsg) {
                layer.alert(sMsg, { icon: 5 });
@@ -766,6 +879,17 @@
        });
        //判断数组中的值是否相同
        function isAllEqual(array) {
            if (array.length > 0) {
                return !array.some(function (value, index) {
                    return value !== array[0];
                });
            } else {
                return true;
            }
        }
        //定义全局变量
        var HReasonName, ReasonID, EmpName, SQProcName,
            ProcID, ZRProcName, QRName
@@ -825,49 +949,48 @@
            var Result = true;
            if ($("#HDeptID").val() == '' || $("#HDeptID").val() == null) {
                layer.msg("车间不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                return Result =false;
                return Result = false;
            }
            if ($("#HGroupID").val() == '' || $("#HGroupID").val() == null) {
                layer.msg("班组不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                return Result =false;
                return Result = false;
            }
            if ($("#HEmpID").val() == '' || $("#HEmpID").val() == null) {
                layer.msg("统计员不能为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                return Result =false;
                return Result = false;
            }
            if (typeof (sSubStr) == "undefined" || sSubStr == "") {
                layer.msg("没有物料明细记录", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                return Result =false;
                return Result = false;
            }
            if (typeof (sSubStr) != "undefined" && typeof (sSubStr) != "") {
                sSubStr = JSON.parse(sSubStr);
                for (var i = 0; i < sSubStr.length; i++) {
                    if (sSubStr[i].HMaterID == "")
                    {
                        layer.msg("明细记录第"+(i+1)+"行,物料信息为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result =false;
                    if (sSubStr[i].HMaterID == "") {
                        layer.msg("明细记录第" + (i + 1) + "行,物料信息为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result = false;
                    }
                    if (sSubStr[i].HUnitID == "") {
                        layer.msg("明细记录第" + (i + 1) + "行,单位信息为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result =false;
                        return Result = false;
                    }
                    if (sSubStr[i].HSourceID == "") {
                        layer.msg("明细记录第" + (i + 1) + "行,资源信息为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result =false;
                        return Result = false;
                    }
                    if (sSubStr[i].HWorkerid == "") {
                        layer.msg("明细记录第" + (i + 1) + "行,操作员信息为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result =false;
                        return Result = false;
                    }
                    if (parseFloat(sSubStr[i].HQty) <= 0 || sSubStr[i].HQty=="") {
                    if (parseFloat(sSubStr[i].HQty) <= 0 || sSubStr[i].HQty == "") {
                        layer.msg("明细记录第" + (i + 1) + "行,生产数量不能为空或0或者小于0!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        return Result =false;
                   }
                        return Result = false;
                    }
                }
            }
            else {
                return Result =true;
                return Result = true;
            }
            return Result;
        }