1
duhe
2024-07-15 a2574099d74dbc873b9a8316500bdd79da516e68
WebTM/views/¼Æ»®¹ÜÀí/¹¤ÒÕ·Ïß/Gy_RoutingBillList.html
@@ -15,6 +15,7 @@
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/HideButton.js"></script>
    <script src="../../../layuiadmin/soulTable.slim.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
</head>
<body>
    <div class="layui-fluid">
@@ -27,6 +28,25 @@
                                <div class="layui-colla-title layui-inline">
                                    <div class="layui-inline">
                                        <span>更多</span>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">日期间隔</label>
                                    <div class="layui-input-block">
                                        <select name="HInitTimeCycle" id="HInitTimeCycle" class="ForFilteringSchemes" lay-filter="HInitTimeCycle" style="width:190px;">
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">开始日期</label>
                                    <div class="layui-input-block">
                                        <input type="date" class="layui-input ForFilteringSchemes" id="HBeginDate" style="width:190px;">
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">结束日期</label>
                                    <div class="layui-input-block">
                                        <input type="date" class="layui-input ForFilteringSchemes" id="HEndDate" style="width:190px;">
                                    </div>
                                </div>
                                <div class="layui-inline">
@@ -101,6 +121,61 @@
                                            <input type="text" class="layui-input" value="" name="ColContent" id="ColContent">
                                        </div>
                                    </div>
                                    <div class="layui-row" style=" margin-top: 10px; margin-left: 70px;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">过滤</label>
                                            <div class="layui-input-block">
                                                <select name="ColName1" id="ColName1" class="ForFilteringSchemes" lay-filter="ColName1" style="width:190px;">
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <select name="Comparator1" id="Comparator1" class="ForFilteringSchemes" lay-filter="Comparator1" style="width:190px;">
                                                <option value="0" selected="selected"></option>
                                                <option value="=">=</option>
                                                <option value=">=">>=</option>
                                                <option value=">">></option>
                                                <option value="<="><=</option>
                                                <option value="<"><</option>
                                                <option value="<>"><></option>
                                                <option value="7">包含</option>
                                                <option value="8">左包含</option>
                                                <option value="9">右包含</option>
                                                <option value="10">不包含</option>
                                            </select>
                                        </div>
                                        <div class="layui-inline">
                                            <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent1" id="ColContent1">
                                        </div>
                                    </div>
                                    <div class="layui-row" style=" margin-top: 10px; margin-left: 70px;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">过滤</label>
                                            <div class="layui-input-block">
                                                <select name="ColName2" id="ColName2" class="ForFilteringSchemes" lay-filter="ColName2" style="width:190px;">
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <select name="Comparator2" id="Comparator2" class="ForFilteringSchemes" lay-filter="Comparator2" style="width:190px;">
                                                <option value="0" selected="selected"></option>
                                                <option value="=">=</option>
                                                <option value=">=">>=</option>
                                                <option value=">">></option>
                                                <option value="<="><=</option>
                                                <option value="<"><</option>
                                                <option value="<>"><></option>
                                                <option value="7">包含</option>
                                                <option value="8">左包含</option>
                                                <option value="9">右包含</option>
                                                <option value="10">不包含</option>
                                            </select>
                                        </div>
                                        <div class="layui-inline">
                                            <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent2" id="ColContent2">
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
@@ -118,6 +193,7 @@
                                <button type="button" class="layui-btn layui-btn-sm"  style="display:none;" lay-event="set_AbandonCheck" id="AbandonCheck"><i class="layui-icon layui-icon-form"></i>反审核</button>
                                <button type="button" class="layui-btn layui-btn-sm"  style="display:none;" lay-event="set_CloseBill" id="set_CloseBill"><i class="layui-icon layui-icon-form"></i>关闭</button>
                                <button type="button" class="layui-btn layui-btn-sm"  style="display:none;" lay-event="set_CancelCloseBill" id="set_CancelCloseBill"><i class="layui-icon layui-icon-form"></i>反关闭</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-ProcPriceRequestBills" id="btn-ProcPriceRequestBills"><i class="layui-icon layui-icon-delete"></i>多行下推(定额申请单)</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-view"><i class="layui-icon layui-icon-tips"></i>预览</button>
        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-print"><i class="layui-icon layui-icon-print"></i>打印</button>
        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-audit"><i class="layui-icon layui-icon-repeat"></i>审核</button>
@@ -155,7 +231,7 @@
            var option = [];
            var ins;                        //用于导出excel
            var HModName = "Gy_RoutingBillList";
            var titleData = [];//不需要显示的字段 å¯æ‰©å±•
            //获取参数
            function getUrlVars() {
                var vars = [], hash;
@@ -199,6 +275,9 @@
                        break;
                    //编辑
                    case 'set_ShowBill': set_ShowBill();
                        break;
                    //多行下推
                    case 'btn-ProcPriceRequestBills': set_ProcPriceRequestBills();
                        break;
                    //删除
                    case 'set_DeleteBill': set_DeleteBill();
@@ -288,9 +367,44 @@
                })
            }
            //日期间隔下拉列表监听
            form.on('select(HInitTimeCycle)', function (data) {
                var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
                if (HInitTimeCycle != -1) {
                    $('#HBeginDate').prop('disabled', true);
                    $('#HEndDate').prop('disabled', true);
                    $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
                    $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                    //执行查询方法
                    get_FastQuery();
                } else {
                    $('#HBeginDate').prop('disabled', false);
                    $('#HEndDate').prop('disabled', false);
                }
            });
            //#endregion
            //#region åˆå§‹åŒ–界面
            function set_ClearBill() {
                //初始化日期间隔、开始日期、结束日期
                setSelect_HInitTimeCycle();
                //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
                var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                if (HInitTimeCycle != -1) {
                    $('#HBeginDate').prop('disabled', true);
                    $('#HEndDate').prop('disabled', true);
                } else {
                    $('#HBeginDate').prop('disabled', false);
                    $('#HEndDate').prop('disabled', false);
                }
                //根据日期间隔设置开始时间与结束时间
                $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
                $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                //初始化表格
                set_InitGrid();
                Organ();
@@ -392,6 +506,9 @@
            //#region é‡ç½®è¿‡æ»¤æ¡ä»¶æ–¹æ³•
            function set_ClearQuery() {
                var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd")); //开始日期
                $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));  //结束日期
                $("#WorkCenter").val("");//单据号
                $("#HMaterID").val(0);//物料
                $("#HMaterName").val("");//物料
@@ -400,7 +517,11 @@
                $("#HOrderProcNO").val("");//单据类型
                $("#ColContent").val("");
                $("#ColName").val("0");
                $("#Comparator").val("0");
                $("#Comparator").val("0"); $("#ColContent1").val("");
                $("#ColName1").val("0");
                $("#Comparator1").val("0"); $("#ColContent2").val("");
                $("#ColName2").val("0");
                $("#Comparator2").val("0");
                $("#HOrgID").val(sessionStorage["OrganizationID"]);
                form.render('select');
                $("#btnSearch").click();
@@ -435,7 +556,35 @@
                    }
                })
            }
            //#endregion  ç›‘听网格表体事件
            table.on('tool(mainTable)', function (obj) {
                var data = obj.data;
                //单据号超链接
                if (obj.event == '单据号') {                  //检查 obj.event æ˜¯å¦ç­‰äºŽå­—符串 '单据号'。如果等于,则执行if循环
                    var linterid = data.hmainid.toString();    //声明变量linterid ä¸º data.hmainid
                    //if (AllowLoadData(sSubStr) != false) {//非空验证
                    layer.open({                //使用 layer的open打开弹出 å±‚
                        type: 2                         //表示弹出层的内容是一个 iframe
                        , area: ['100%', '100%']
                        , title: '编辑'  //设置弹出层的名字和变量
                        , closeBtn: 1//显示关闭按钮
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: '../工艺路线/Gy_RoutingBill.html?OperationType=3&linterid=' + linterid + '&HSouceBillType=3301'  //设置 iframe çš„ URL,URL ä¸­åŒ…含了查询参数,来调用所需要的值
                        , resize: false,  //是否允许用户调整弹出大小
                        end: function () {  //当关闭时调用
                            get_FastQuery(table, option);
                        }
                        , cancel: function () {  //点击取消时使用回调
                            //$(".layui-btn").removeClass("layui-btn-disabled");
                        }
                    })
                }
            });
             //#endregion
            //#region æŸ¥è¯¢
            function get_Display(sWhere) {
                //sWhere += " and HPRDORGID=" + sessionStorage["OrganizationID"] + " ";
@@ -453,6 +602,51 @@
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"], "HBillSubType":"3301" },
                    success: function (data1) {
                        if (data1.count == 1) {
                            var data = [];//列字段数据
                            var col = [];
                            var totalArray = [];
                            //给空的数组赋值
                            for (var key in data1.list) {//循序遍历数组
                                data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });//从每个对象中提取数据
                            }
                            //在列表左边添加勾选框
                            col.push({ type: 'checkbox', fixed: 'left', totalRowText: '合计' });
                            for (var i = 0; i < data.length; i++) {//遍历data数组重的数据
                                // if (data[i].name == 'HInterID' || data[i].name == 'HBillType' || data[i].name == 'hmainid') {
                                if ($.inArray(data[i].name, titleData) > -1) {//检查data【i】.name是否在数组中  //计算列
                                    col.push({ field: data[i].id, title: data[i].name, align: 'center', hide: true }); //隐藏id列
                                }
                                else if ($.inArray(data[i].name, totalArray) > -1) { //计算列
                                    col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, totalRow: true, width: 120 });
                                } else if (data[i].name == '单据号') {
                                    col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200, event: '单据号' });
                                } 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 == "行关闭日期" ? "行关闭人" : data[i].name) + " ==''?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd HH:mm:ss')}}</div>", width: 200 });
                                            break;
                                        default:
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200 });
                                    }
                                }
                            }
                            //动态显示列名
                            option = {
                                elem: '#mainTable'
                                , toolbar: '#toolbarDemo'
                                , cols: [col]
                                , data: data1.data
                                , height: 800
                                , page: true
                                , totalRow: true
                                , cellMinWidth: 90
                                , limit: 50
                                , limits: [50, 500, 5000, 20000]
                                , done: function (res, curr, count) {
                                    soulTable.render(this);
                                }
                            }
                            //设置列表同一个单据只有第一条数据显示主表信息,其它记录只显示子表信息
                            //获取子表列数据
@@ -468,7 +662,7 @@
                                    temp = result[i]["单据号"];
                                } else {
                                    var initIndex = $.inArray("单据号", colList);
                                    var lastIndex = $.inArray("工序号", colList);
                                    var lastIndex = $.inArray("hsubid", colList);
                                    for (var j = initIndex; j < lastIndex; j++) {
                                        var fieldName = colList[j];
                                        result[i][fieldName] = "";
@@ -480,7 +674,7 @@
                            option.data = result;
                            ins = table.render(option);
                            layer.close(ajaxLoad);
                            DisPlay_HideColumn();
                            //刷新按钮显示
                            var btns = document.getElementsByTagName("button");     //获取本页所有按钮对象
                            Display_HideButton(btns, "3301", HModName, sessionStorage["HUserName"]);
@@ -502,6 +696,8 @@
            //#region å¿«é€Ÿè¿‡æ»¤
            function get_FastQuery(number) {
                var HDate = $("#HBeginDate").val();//开始日期
                var HDate1 = $("#HEndDate").val();//结束日期
                var HOrgID = "";
                var HOrderProcNO = $("#HOrderProcNO").val();//单据类型
                //var HMaterID = $("#HMaterID").val();
@@ -512,6 +708,12 @@
                var ColName = $("#ColName").val();//复选框
                var Comparator = $("#Comparator").val()
                var ColContent = $("#ColContent").val();
                var ColName1 = $("#ColName1").val();//复选框
                var Comparator1 = $("#Comparator1").val()
                var ColContent1 = $("#ColContent1").val();
                var ColName2 = $("#ColName2").val();//复选框
                var Comparator2 = $("#Comparator2").val()
                var ColContent2 = $("#ColContent2").val();
                if (ColName != 0 && Comparator != 0) {
                    var com = "";
@@ -535,7 +737,54 @@
                    sWhere += " and " + ColName + " " + com;
                }
                if (ColName1 != 0 && Comparator1 != 0) {
                    var com1 = "";
                    switch (Comparator1) {
                        case "7":
                            com1 = "like'%" + ColContent1 + "%'";
                            break;
                        case "8":
                            com1 = "like'%" + ColContent1 + "'";
                            break;
                        case "9":
                            com1 = "like'" + ColContent1 + "%'";
                            break;
                        case "10":
                            com1 = "not like'%" + ColContent1 + "%'";
                            break;
                        default:
                            com1 = "" + Comparator1 + "'" + ColContent1 + "'";
                            break;
                    }
                    sWhere += " and " + ColName1 + " " + com1;
                }
                if (ColName2 != 0 && Comparator2 != 0) {
                    var com2 = "";
                    switch (Comparator2) {
                        case "7":
                            com2 = "like'%" + ColContent2 + "%'";
                            break;
                        case "8":
                            com2 = "like'%" + ColContent2 + "'";
                            break;
                        case "9":
                            com2 = "like'" + ColContent2 + "%'";
                            break;
                        case "10":
                            com2 = "not like'%" + ColContent2 + "%'";
                            break;
                        default:
                            com2 = "" + Comparator + "'" + ColContent + "'";
                            break;
                    }
                    sWhere += " and " + ColName2 + " " + com2;
                }
                if (HDate) {
                    sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + HDate + "'";
                }
                if (HDate1) {
                    sWhere += " and CONVERT(varchar(100),日期, 23) <= '" + HDate1 + "'";
                }
                if (number == 1) {
                    HOrgID = sessionStorage["OrganizationID"];
                }
@@ -669,6 +918,52 @@
            }
            //#endregion
            //#region å¤šè¡Œä¸‹æŽ¨ï¼ˆé‡‡è´­å…¥åº“单)
            function set_ProcPriceRequestBills() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (data.length > 0) {
                    var dataArray = [];
                    for (var i = 0; i < data.length; i++) {
                        var temp = {
                            "hmainid": data[i].hmainid
                            , "hsubid": data[i].hsubid
                        }
                        dataArray.push(temp);
                        //if (data[i].状态 != "审核") {
                        //    var err = "下推失败!单据【" + data[i].单据号 + "】的状态为“" + data[0].状态 + "”,不允许下推!";
                        //    layer.alert(err, { icon: 5 });
                        //    return;
                        //}
                        //if (data[i].行状态 != "") {
                        //    var err = "下推失败!单据【" + data[i].单据号 + "】的状态为“" + data[0].行状态 + "”,不允许下推!";
                        //    layer.alert(err, { icon: 5 });
                        //    return;
                        //}
                    }
                    var datajson = {
                        "data": dataArray
                    };
                    var url = encodeURI('../../工资管理/定额申请/Pay_ProcPriceRequestBill.html?OperationType=4&linterid=0&HSouceBillType=3301&res=' + JSON.stringify(datajson))
                    layer.open({
                        type: 2
                        , area: ['100%', '100%']
                        , title: '工艺路线-多行下推定额申请单'
                        , shift: 0//弹出动画
                        , content: url
                        , btn: [],
                        // æŒ‰é’®1 çš„回调
                        end: function (index, layero, that) {
                            //刷新页面
                            $("#btnSearch").trigger('click');
                        }
                    })
                } else {
                    layer.msg('请选择数据下推!');
                }
            }
            //#endregion
            //复制
            function set_Copy() {
                var checkStatus = table.checkStatus('mainTable')
@@ -909,7 +1204,23 @@
                    }
                })
            }
            //#region åˆå§‹æ—¥æœŸé—´éš” ä¸‹æ‹‰åˆ—表
            function setSelect_HInitTimeCycle() {
                var valueList = [0, 1, 2, 3, 4, 5, 6, 29];
                var titleList = ["今天", "近两天", "近三天", "近四天", "近五天", "近六天", "近七天", "近30天"];
                var HInitTimeCycle_ArrayList = '<option  value="-1" selected="selected" >任意间隔</option>';
                for (var i = 0; i < valueList.length; i++) {
                    HInitTimeCycle_ArrayList += '<option  style="color:blue;" value="' + valueList[i] + '">' + titleList[i] + '</option>';
                }
                $("#HInitTimeCycle").empty();
                $("#HInitTimeCycle").append(HInitTimeCycle_ArrayList);
                form.render('select');
                $("#HInitTimeCycle").val("29");
            }
            //#endregion
            //#region åˆ—明显示下拉框
            function ColFilter() {
                var Organization = '<option  value="0" selected="selected" ></option>';
@@ -919,7 +1230,9 @@
                    }
                }
                $("#ColName").empty();
                $("#ColName").append(Organization);
                $("#ColName").append(Organization);       $("#ColName1").empty();
                $("#ColName1").append(Organization);       $("#ColName2").empty();
                $("#ColName2").append(Organization);
                form.render('select');
            }
            //#endregion