WebTM/views/Éú²ú¹ÜÀí/Éú²úÈÎÎñµ¥/Sc_ICMOBillList.html
@@ -227,7 +227,7 @@
                                    </div>
                                </div>
                            </div>
                        </div>
                        </div>
                        <table class="" id="mainTable" lay-filter="mainTable"></table>
                        <script type="text/html" id="toolbarDemo">
                            <!--<div class="layui-btn-container">
@@ -259,11 +259,12 @@
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_ShowBill_dh"><i class="layui-icon layui-icon-form"></i>多行下推</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushICMOChangeBill" id="btn-PushICMOChangeBill"><i class="layui-icon layui-icon-delete"></i>下推(生产订单变更单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushProductInBill" id="btn-PushProductInBill"><i class="layui-icon layui-icon-delete"></i>下推(生产入库单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushQualityReportBill" id="btn-PushQualityReportBill"><i class="layui-icon layui-icon-delete"></i>下推(生产质量汇报单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushProductionReturnBill" id="btn-PushProductionReturnBill"><i class="layui-icon layui-icon-delete"></i>下推(生产退库单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_AddNew" id="AddNew"><i class="layui-icon layui-icon-file-b"></i>新增</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_Edit" id="Edit"><i class="layui-icon layui-icon-form"></i>编辑</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_copy" id="copy"><i class="layui-icon layui-icon-form"></i>复制</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_AddNew_NT" id="AddNew_NT"><i class="layui-icon layui-icon-file-b"></i>新增(无列表)</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_AddNew" id="AddNew"><i class="layui-icon layui-icon-file-b"></i>新增</button>
    <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_Edit" id="Edit"><i class="layui-icon layui-icon-form"></i>编辑</button>
    <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_copy" id="copy"><i class="layui-icon layui-icon-form"></i>复制</button>
    <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_AddNew_NT" id="AddNew_NT"><i class="layui-icon layui-icon-file-b"></i>新增(无列表)</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_Edit_NT" id="Edit_NT"><i class="layui-icon layui-icon-form"></i>编辑(无列表)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_copy_NT" id="copy_NT"><i class="layui-icon layui-icon-form"></i>复制(无列表)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_CheckBill" id="CheckBill"><i class="layui-icon layui-icon-form"></i>审核</button>
@@ -315,13 +316,13 @@
            var sWhere = "";
            var HModName = "Sc_ICMOBillList";
            var HDeptID = 0;
            var params = getUrlVars();
            var HDeptID = params[params[0]];
            var option = [];
            var ins;                        //用于导出excel
            var titleData = ["销售订单日期", "订单跟踪号", "业务员代码", "业务员",  "客户代码", "客户",  "hbomid", "BOM单编码", "HRoutingInterID", "工艺路线代码", "工艺路线", "订单包装备注", "hsubid", "源单单号", "源单主内码", "源单子内码", "关闭类型", "单据类型", "计划跟踪号"];//不需要显示的字段 å¯æ‰©å±•
            var titleData = ["hmainid", "HEntryID", "作废人", "作废日期", "销售订单日期", "订单跟踪号", "HDeptID", "HMaterID", "hunitid", "hempid", "业务员代码", "业务员", "hcusid", "客户代码", "客户", "HCenterID", "工作中心代码", "工作中心", "hbomid", "BOM单编码", "HRoutingInterID", "工艺路线代码", "工艺路线", "订单包装备注", "hsubid", "源单单号", "源单主内码", "源单子内码", "行关闭人", "关闭类型", "单据类型", "计划跟踪号"];//不需要显示的字段 å¯æ‰©å±•
            titleData = [];
            //判断是否有参数传递
            //#region ã€åŠ¨æ€èŽ·å–æ¨¡å—åç§°ã€‘
@@ -332,10 +333,10 @@
            //#region ã€è¿‡æ»¤æ–¹æ¡ˆã€‘
            //过滤条件的classç±»
            var HClassTag = "ForFilteringSchemes";
            //过滤条件的classç±»
            var HClassTag = "ForFilteringSchemes";
            //模块名称(中文版) æ¯ä¸ªæ¨¡å—页面都需要修改
            window.HModuleName = "生产订单";
            window.HModuleName = "生产订单";
            //是否已经选择了过滤方案(全局变量)
            window.HDefaultFilter = "";
            //选择的过滤方案内码(全局变量)
@@ -408,6 +409,9 @@
                        break;
                    //下推(生产入库单)
                    case 'btn-PushProductInBill': set_PushProductInBill();
                        break;
                    //下推(生产质量汇报单)
                    case 'btn-PushQualityReportBill': set_PushQualityReportBill();
                        break;
                    //下推(生产退库单)
                    case 'btn-PushProductionReturnBill':set_PushProductionReturnBill();
@@ -520,7 +524,7 @@
            });
         //获取组织
            //获取组织
            function Organ() {
                //获取登录页组织列
                $.ajax({
@@ -572,13 +576,13 @@
            //#endregion
            //#region åˆå§‹åŒ–界面
            function set_ClearBill() {
            function set_ClearBill() {
                //初始化表格
                set_InitGrid();
                //查询
                get_FastQuery();
                //查询当前登录用户有没有在当前模块设置默认过滤方案
                get_DefaultModule();
                get_DefaultModule();
            }
            //#endregion
@@ -688,7 +692,7 @@
                        , { field: '日期', title: '日期', sort: true }
                        , { field: '单据号', title: '单据号', sort: true }
                        , { field: '单据状态', title: '单据状态', sort: true }
                        , { field: '行状态', title: '行状态', width: 125, sort: true }
                        //, { field: '行状态', title: '行状态', width: 125, sort: true }
                        , { field: '产品代码', title: '产品代码', sort: true }
                        , { field: '产品名称', title: '产品名称', sort: true }
                        , { field: '客户', title: '客户', sort: true }
@@ -777,64 +781,69 @@
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                    success: function (data1) {
                        if (data1.count == 1) {
                            var data = [];
                            var col = [];
                            //给空的数组赋值
                            for (var key in data1.list) {
                                //动态获取列表所有列名
                                data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });
                                //获取不需要显示的列(H开头的列不显示)
                                var patrn = new RegExp(/^h/i);
                                if (patrn.test(data1.list[key].ColmCols)) {
                                    titleData[key] = data1.list[key].ColmCols;
                                }
                            }
                            //在列表左边添加勾选框
                            col.push({ type: 'checkbox', fixed: 'left', totalRowText: '合计行' });
                            for (var i = 0; i < data.length; i++) {
                                // if (data[i].name == 'HInterID' || data[i].name == 'HBillType' || data[i].name == 'hmainid') {
                                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: 'center', sort: true, templet: "<div>{{d." + data[i].name + " ==null ?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd')}}</div>", width: 200 });
                                            break;
                                        case 'long':
                                        case 'Int32':
                                        case 'Int64':
                                        case 'double':
                                        case 'Decimal':
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 120, totalRow: true });
                                            break;
                                        default:
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200 });
                                    }
                                }
                            }
                            //var data = [];
                            //var col = [];
                            ////给空的数组赋值
                            //for (var key in data1.list) {
                            //    //动态获取列表所有列名
                            //    data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });
                            //    //获取不需要显示的列(H开头的列不显示)
                            //    var patrn = new RegExp(/^h/i);
                            //    if (patrn.test(data1.list[key].ColmCols)) {
                            //        titleData[key] = data1.list[key].ColmCols;
                            //    }
                            //}
                            ////在列表左边添加勾选框
                            //col.push({ type: 'checkbox', fixed: 'left', totalRowText: '合计行' });
                            //for (var i = 0; i < data.length; i++) {
                            //    // if (data[i].name == 'HInterID' || data[i].name == 'HBillType' || data[i].name == 'hmainid') {
                            //    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: 'center', sort: true, templet: "<div>{{d." + data[i].name + " ==null ?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd')}}</div>", width: 200 });
                            //                break;
                            //            case 'long':
                            //            case 'Int32':
                            //            case 'Int64':
                            //            case 'double':
                            //            case 'Decimal':
                            //                col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 120, totalRow: true });
                            //                break;
                            //            default:
                            //                col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200 });
                            //        }
                            //    }
                            //}
                            //动态显示列名
                            option = {
                                elem: '#mainTable'
                                , toolbar: '#toolbarDemo'
                                , totalRow: true
                                , cols: [col]
                                , data: data1.data
                                , height: 'full-120'
                                , page: true
                                , limits: [50, 500, 5000, 50000]
                                , limit: 50
                                , cellMinWidth: 90
                                , done: function (res, curr, count) {
                                    soulTable.render(this);
                                }
                            }
                            table.render(option);
                            ////动态显示列名
                            //option = {
                            //    elem: '#mainTable'
                            //    , toolbar: '#toolbarDemo'
                            //    , totalRow: true
                            //    , cols: [col]
                            //    , data: data1.data
                            //    , height: 'full-120'
                            //    , page: true
                            //    , limits: [50, 500, 5000, 50000]
                            //    , limit: 50
                            //    , cellMinWidth: 90
                            //    , done: function (res, curr, count) {
                            //        soulTable.render(this);
                            //    }
                            //}
                            //ins = table.render(option);
                            //刷新表格数据
                            DisPlay_HideColumn();
                            ////刷新表格数据
                            //DisPlay_HideColumn();
                            option.data = data1.data;
                            ins = table.render(option);
                            layer.close(ajaxLoad);
                            //刷新按钮显示
                            var btns = document.getElementsByTagName("button");     //获取本页所有按钮对象
@@ -845,11 +854,10 @@
                                ColFilter();
                            }
                            layer.close(ajaxLoad);
                            //layer.alert("查询成功", { icon: 1 });
                        } else {
                            layer.close(ajaxLoad);
                            layer.alert(data1.code + data1.Message, { icon: 5 });
                        }
                        }
                    }, error: function () {
                        layer.close(ajaxLoad);
                        layer.alert("接口请求失败!", { icon: 5 });
@@ -1007,7 +1015,7 @@
                if (GetDataCols != "") {
                    sWhere += GetDataCols;
                }
                 sWhere += addSWhereByOpenType();
                sWhere += addSWhereByOpenType();
                //根据用户过滤用户关联客户的记录
                sWhere += getSWhereByHUser();
@@ -1193,7 +1201,7 @@
            //#endregion
          //#region ä¸‹æŽ¨ï¼ˆç”Ÿäº§å…¥åº“单)
            //#region ä¸‹æŽ¨ï¼ˆç”Ÿäº§å…¥åº“单)
            function set_PushProductInBill() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
@@ -1214,7 +1222,7 @@
                        }
                        if (data[i].行状态 != "" ) {
                             var err = "下推失败!单据【" + data[i].单据号 + "】的状态为“" + data[0].行状态 + "”,不允许下推!";
                            var err = "下推失败!单据【" + data[i].单据号 + "】的状态为“" + data[0].行状态 + "”,不允许下推!";
                            layer.alert(err, { icon: 5 });
                            return;
                        }
@@ -1244,8 +1252,58 @@
            }
            //#endregion
         //#region ä¸‹æŽ¨ï¼ˆç”Ÿäº§é€€åº“单)
            //#region ä¸‹æŽ¨(生产质量汇报单)
            function set_PushQualityReportBill() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    var hID = data[0].hmainid.toString();
                    var HEntryID = data[0].hsubid.toString();
                    //#region åˆ¤æ–­æºå•状态
                    var HSourceBillData = "";
                    var HSourceBillData = getSourceBillStatus_ICMOBill(hID);            //获取源单数据
                    if (HSourceBillData != "none") {
                        if (HSourceBillData.length == 0) {
                            layer.alert("保存失败!未查询到生产订单单据!", { icon: 5 });
                            return;
                        } else if (HSourceBillData[0]["单据状态"] != "已审核") {
                            var err = "保存失败!原因:生产订单单据状态为“" + HSourceBillData[0]["单据状态"] + "”,不允许下推生产质量汇报单!";
                            layer.alert(err, { icon: 5 });
                            return;
                        }
                    } else {
                        return;
                    }
                    //#endregion
                    layer.open({
                        type: 2
                        , area: ['100%', '100%']
                        , title: '下推-生产质量汇报单'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: '../../生产管理/报工台工序/不良采集/Sc_QualityReportStepBill_New.html?OperationType=4&linterid=' + hID + '&HSouceBillType=3710&closeType=1&HEntryID=' + HEntryID
                        , resize: false,
                        end: function () {
                            //刷新页面,
                            $("#btnSearch").trigger('click');
                        }
                        , cancel: function () {
                        }
                    })
                } else {
                    layer.msg('请选择一行数据编辑!');
                }
            }
            //#endregion
            //#region ä¸‹æŽ¨ï¼ˆç”Ÿäº§é€€åº“单)
            function set_PushProductionReturnBill() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
@@ -1266,7 +1324,7 @@
                        }
                        if (data[i].行状态 != "" ) {
                             var err = "下推失败!单据【" + data[i].单据号 + "】的状态为“" + data[0].行状态 + "”,不允许下推!";
                            var err = "下推失败!单据【" + data[i].单据号 + "】的状态为“" + data[0].行状态 + "”,不允许下推!";
                            layer.alert(err, { icon: 5 });
                            return;
                        }
@@ -1398,7 +1456,7 @@
                } else {
                    layer.msg('请选择一行数据编辑!');
                }
            }
            }
            // å¤åˆ¶
            function set_copy() {
@@ -1693,10 +1751,27 @@
            //导出Execel
            //#region å¯¼å‡ºExecel
            function get_Export() {
                table.exportFile(ins.config.id, option.data, "xls");
                var ModRightNameCheck = "Sc_ICMOBillList_ExportExcel";
                //逻辑审核方法
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/LMES/getReportByModRightNameCheck", //方法所在页面和方法名
                    data: { "ModRightNameCheck": ModRightNameCheck, "user": sessionStorage["HUserName"] },
                    success: function (result) {
                        if (result.count == 1) {
                            table.exportFile(ins.config.id, option.data, "xls");
                        } else {
                            layer.alert("当前模块没有导出权限!", { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#endregion
@@ -1747,7 +1822,7 @@
                            var dataCol = [];//数据库查询出的列数据
                           /* var titleData = ["hmainid", "HEntryID", "作废人", "作废日期", "销售订单日期", "订单跟踪号", "HDeptID", "HMaterID", "hunitid", "hempid", "业务员代码", "业务员", "hcusid", "客户代码", "客户", "HCenterID", "工作中心代码", "工作中心", "hbomid", "BOM单编码", "HRoutingInterID", "工艺路线代码", "工艺路线", "订单包装备注", "hsubid", "源单单号", "源单主内码", "源单子内码", "行关闭人", "关闭类型", "单据类型", "计划跟踪号"];//不需要显示的字段 å¯æ‰©å±•*/
                            //var titleData = ["hmainid", "HEntryID", "作废人", "作废日期", "销售订单日期", "订单跟踪号", "HDeptID", "HMaterID", "hunitid", "hempid", "业务员代码", "业务员", "hcusid", "客户代码", "客户", "HCenterID", "工作中心代码", "工作中心", "hbomid", "BOM单编码", "HRoutingInterID", "工艺路线代码", "工艺路线", "订单包装备注", "hsubid", "源单单号", "源单主内码", "源单子内码", "行关闭人", "关闭类型", "单据类型", "计划跟踪号"];//不需要显示的字段 å¯æ‰©å±•
                            dataCol = data1.data[0].HGridString.split(',');
@@ -2068,7 +2143,7 @@
                //判断用户是否点击了右上角的“叉号”关闭弹窗页面
                var HIsClose_Manual = false;
                //获取本页所有过滤条件对象(class中包含"ForFilteringSchemes"的元素)
                var Filter = document.getElementsByClassName(HClassTag);
                var Filter = document.getElementsByClassName(HClassTag);
                var HFilterIdList = "";//过滤条件
                var HFilterIdLists = "";//拼接多个过滤条件
@@ -2078,7 +2153,7 @@
                for (var i = 0; i < Filter.length; i++) {
                    HFilterIdList = Filter[i].id; //过滤条件ID
                    HFilterIdLists += Filter[i].id + ","; //过滤条件ID(拼接)
                    HValue += $("#" + HFilterIdList).val() + ","; //过滤条件中输入的值
                    HValue += $("#" + HFilterIdList).val() + ","; //过滤条件中输入的值
                    HElement_type += document.getElementById(HFilterIdList).tagName + ",";//通过标签id获取标签类型
                }
@@ -2279,7 +2354,7 @@
            //#endregion
            //#endregion
            //#region èŽ·å–æºå•-生产订单单据状态
@@ -2305,7 +2380,7 @@
            }
            //#endregion
        //#region èŽ·å–å‚æ•°
            //#region èŽ·å–å‚æ•°
            function getUrlVars() {
                var vars = [], hash;
                var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
@@ -2317,7 +2392,7 @@
                return vars;
            }
            //#endregion
          //#region åˆ¤æ–­æ˜¯ç›´æŽ¥æ‰“开页面还是其它页面通过选择按钮打开,并显示相应数据
            //#region åˆ¤æ–­æ˜¯ç›´æŽ¥æ‰“开页面还是其它页面通过选择按钮打开,并显示相应数据
            function addSWhereByOpenType() {
                //获取参数
                var params = getUrlVars();
@@ -2353,7 +2428,7 @@
                        var HRemark = data[0].备注
                        //显示当前的过滤方案
                        document.getElementById("HFilterScheme_Now").style.display = "block";
                        document.getElementById('HFilterScheme_Now').innerHTML = "当前过滤方案:" + HDefaultFilter + '<span style="font-size: 15px; font-weight: bold; color:#7b90fb">  ' + "(" + HRemark + ")" + '</span>';
                        document.getElementById('HFilterScheme_Now').innerHTML = "当前过滤方案:" + HDefaultFilter + '<span style="font-size: 15px; font-weight: bold; color:#7b90fb">  ' + "(" + HRemark + ")" + '</span>';
                        HInterID = data[0].hmainid
                        //根据选择的过滤方案回填数据到列表过滤条件
                        for (let i = 0; i < data.length; i++) {
@@ -2373,7 +2448,7 @@
                }
            });
        }
        //#endregion
        //#endregion
        function GetDataCol(data) {
            GetDataCols = data;