智云srmLayUi(安瑞和瑞琪)(通用版本)
WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html
@@ -63,6 +63,12 @@
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">规格型号</label>
                                        <div class="layui-input-block">
                                            <input type="text" class="layui-input" name="HModel" id="HModel">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">开始日期</label>
                                        <div class="layui-input-block" style="width:100px;">
                                            <input type="text" class="layui-input" name="HDate1" id="HDate1">
@@ -75,22 +81,17 @@
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">状态</label>
                                        <div class="layui-input-block" style="width:120px">
                                            <select name="HStatus" id="HStatus" lay-filter="">
                                                <option value="" selected="">全部</option>
                                                <option value="未确认">未确认</option>
                                                <option value="已确认">已确认</option>
                                                <option value="已驳回">已驳回</option>
                                            </select>
                                        <label class="layui-form-label">供应商名称</label>
                                        <div class="layui-input-block" style="width:130px;">
                                            <input type="text" class="layui-input" name="HSupName" id="HSupName">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">关闭状态</label>
                                        <div class="layui-input-block" style="width:120px">
                                            <select id="HClStatus" name="HClStatus" lay-filter="">
                                                <option value="" selected>全部</option>
                                                <option value="未关闭">未关闭</option>
                                                <option value="">全部</option>
                                                <option value="未关闭" selected>未关闭</option>
                                                <option value="已关闭">已关闭</option>
                                            </select>
                                        </div>
@@ -136,14 +137,6 @@
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">供应商名称</label>
                                        <div class="layui-input-block" style="width:130px;">
                                            <input type="text" class="layui-input" name="HSupName" id="HSupName">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch">
                                            <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
@@ -151,9 +144,14 @@
                                    </div>
                                    <div class="layui-colla-content" style="padding-left:82px">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">规格型号</label>
                                            <div class="layui-input-block">
                                                <input type="text" class="layui-input" name="HModel" id="HModel">
                                            <label class="layui-form-label">状态</label>
                                            <div class="layui-input-block" style="width:120px">
                                                <select name="HStatus" id="HStatus" lay-filter="">
                                                    <option value="" selected="">全部</option>
                                                    <option value="未确认">未确认</option>
                                                    <option value="已确认">已确认</option>
                                                    <option value="已驳回">已驳回</option>
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -243,6 +241,8 @@
        }
        var params = getUrlVars();
        var type = params[params[0]];
        var HSupName = params[params[1]];
        var HOrderType = params[params[2]];
        layui.config({
            base: '../../layuiadmin/' //静态资源所在路径
@@ -270,6 +270,12 @@
            var option = [];
            var HModName = "SRM_POOrderBillList";
            var sqlWhere = "";
            //将url参数中的中文乱码重新转换成中文。 注:HBillType 是参数命名,不是值
            HOrderType = getParams("HOrderType");
            HSupName = getParams("HSupName");
            //#region 进入页面既加载
            switch (type) {
                case "UnConfirm":
@@ -286,22 +292,29 @@
                    options[3].selected = true;
                    sql += " and 状态 like ^^%已驳回%^^";
                    break;
                //case "AddRow":
                //    $("#HStatus").attr("disabled", "disabled");
                //    $("#HStatus").val('已确认');
                //    $("#HFinishStatus").attr("disabled", "disabled");
                //    form.render('select');
                //    sqlWhere += " and 状态 like ^^%已确认%^^";
                //    sqlWhere += " and 完成状态 like ^^%" + $("#HFinishStatus").val() + "%^^";
                //    $('#btn_reload').addClass("layui-btn-disabled").attr("visibility", "hidden");
                //    $('#btn_confirm').addClass("layui-btn-disabled").attr("disabled", true);
                //    $('#btn_back').addClass("layui-btn-disabled").attr("disabled", true);
                //    $('#btn_report').addClass("layui-btn-disabled").attr("disabled", true);
                //    $('#btn_details').addClass("layui-btn-disabled").attr("disabled", true);
                //    $('#btn_barcode').addClass("layui-btn-disabled").attr("disabled", true);
                //    $('#btn_generate').addClass("layui-btn-disabled").attr("disabled", true);
                //    $('#set_dao').addClass("layui-btn-disabled").attr("disabled", true);
                //    break;
                case "AddRow":
                    //$("#HStatus").attr("disabled", "disabled");
                    //$("#HStatus").val('已确认');
                    //$("#HFinishStatus").attr("disabled", "disabled");
                    //form.render('select');
                    //sqlWhere += " and 状态 like ^^%已确认%^^";
                    //sqlWhere += " and 完成状态 like ^^%" + $("#HFinishStatus").val() + "%^^";
                    //$('#btn_reload').addClass("layui-btn-disabled").attr("visibility", "hidden");
                    //$('#btn_confirm').addClass("layui-btn-disabled").attr("disabled", true);
                    //$('#btn_back').addClass("layui-btn-disabled").attr("disabled", true);
                    //$('#btn_report').addClass("layui-btn-disabled").attr("disabled", true);
                    //$('#btn_details').addClass("layui-btn-disabled").attr("disabled", true);
                    //$('#btn_barcode').addClass("layui-btn-disabled").attr("disabled", true);
                    //$('#btn_generate').addClass("layui-btn-disabled").attr("disabled", true);
                    //$('#set_dao').addClass("layui-btn-disabled").attr("disabled", true);
                    if (HSupName != undefined) {
                        sql += " and 供应商 = ^^" + HSupName + "^^";
                    }
                    if (HOrderType != undefined) {
                        sql += " and 订单类型 = ^^" + HOrderType + "^^";
                    }
                    break;
            }
          
            set_ClearBill();
@@ -519,7 +532,7 @@
                                        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;
                                    default:
                                        if (data[i].name == '订单数量' || data[i].name == '已发货数量' || data[i].name == '未发货数量' || data[i].name == '剩余收料数量' || data[i].name == '未到货数量' || data[i].name == '累计收料数量' || data[i].name == '剩余入库数量' || data[i].name == '入库数量') {
                                        if (data[i].name == '订单数量' || data[i].name == '已发货数量' || data[i].name == '未发货数量' || data[i].name == '剩余收料数量' || data[i].name == '未到货数量' || data[i].name == '累计收料数量' || data[i].name == '剩余入库数量' || data[i].name == '入库数量' || data[i].name == '可发货数量') {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200, totalRow: true });
                                        } else if (data[i].name == '供应商交期回复') {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200, event: 'HSupSendGoodsDateRemark' });
@@ -657,7 +670,8 @@
                        sqlWhere += " and 交货日期 <= ^^" + dt + "^^";
                    }
                }
                sql = sqlWhere;
                sqlWhere = sqlWhere + sql;
                //从第一页开始
                _cur_page = 1;
                get_Display(sqlWhere);
@@ -696,6 +710,18 @@
                        });
                    });
                }
            });
            table.on('sort(mainTable)', function (obj) { //注:sort 是工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值"
                table.reload('mainTable', {
                    initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。 layui 2.1.1 新增参数
                    , where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式)
                        field: obj.field //排序字段   在接口作为参数字段  field order
                        , order: obj.type //排序方式   在接口作为参数字段  field order
                    }
                });
                option.data = layui.table.cache["mainTable"];
                table.render(option);
            });
            //头工具栏事件
@@ -819,25 +845,30 @@
                        if (data.length == 0) {
                            layer.alert("请选择数据", { icon: 5 });
                            return;
                        }
                        if (data[0].完成状态 == "已完成") {
                            return layer.msg('订单已完成!')
                        }
                        }
                        ajaxLabelData = data;
                        //根据选中的采购订单,重新从金蝶云同步采购订单关联数量过来。考虑采购订单删除和关闭状态,同步状态
                        var ids = "";
                        var entryids = "";
                        var HBillType = data[0].订单类型
                        var HSupNumber = data[0].供应商代码
                        var HErr = "";
                        var HSupErr = "";
                        $.each(data, function (obj) {
                            ids += data[obj].hmainid + ",";
                            entryids += data[obj].hsubid + ",";
                            if (HBillType != data[obj].订单类型) {
                                HErr += data[obj].订单类型;
                            }
                            if (HSupNumber != data[obj].供应商代码) {
                                HSupErr += data[obj].供应商代码;
                            }
                        })
                        if (HErr != "") {
                            return layer.msg('采购订单订单类型不同,不允许合并下推生成送货单!')
                        }
                        if (HSupErr != "") {
                            return layer.msg('供应商不同,不允许合并下推生成送货单!')
                        }
                       
                        ids = ids.substring(0, ids.length - 1);
@@ -877,8 +908,10 @@
                        if (!hasPrivileage) {
                            return;
                        }
                        var rows = '';
                        var HEntry = '';
                        var HOrderRows = '';
                        for (var i = 0; i < data.length; i++) {
                            if (data[i]["状态"] == "已确认") {
                                rows += data[i].hmainid.toString() + ',' + data[i].hsubid.toString() + ';';
@@ -886,10 +919,18 @@
                            else {
                                HEntry += (i + 1) + ',';
                            }
                            if (data[i].完成状态 == "已完成") {
                                HOrderRows += (i + 1) + ',';
                            }
                        }
                        if (HEntry != '') {
                            HEntry = HEntry.substring(0, HEntry.length - 1);
                            layer.msg("第" + HEntry + "行未确认!", { icon: 5 });
                        }
                        else if (HOrderRows != '') {
                            HOrderRows = HOrderRows.substring(0, HOrderRows.length - 1);
                            layer.msg("第" + HOrderRows + "行,订单已完成!", { icon: 5 });
                        }
                        else {
                            layer.open({
@@ -899,7 +940,7 @@
                                , shade: 0.6 //遮罩透明度
                                , maxmin: false //允许全屏最小化
                                , anim: 0 //0-6的动画形式,-1不开启
                                , content: ['../../views/SRM/SRM_POInStockBill_Edit.html?linterid=' + data[0].hmainid.toString() + '&lentryid=' + rows.toString() + '&lSourceBillType=1102', 'yes']
                                , content: ['../../views/SRM/SRM_POInStockBill_Edit.html?linterid=' + data[0].hmainid.toString() + '&lentryid=' + rows.toString() + '&lSourceBillType=1102' + '&type =add', 'yes']
                                , resize: false
                                ,end: function () {
                                    get_FastQuery(table, option)
@@ -1010,9 +1051,23 @@
                        var ColName = [];
                        for (var i = 1; i < option.cols[0].length; i++) {
                            if (option.cols[0][i]["hide"] != true) {
                                ColName.push(option.cols[0][i]["field"]);
                                ColName.push(option.cols[0][i]["field"]);
                            }
                        }
                        //替换换行符
                        option.data.forEach((item) => {
                            for (let itemobj in item) {
                                if (item[itemobj] == null) {
                                    item[itemobj] = "";
                                }
                                if (item[itemobj].length > 0) {  // 假设字段名为field
                                    item[itemobj] = item[itemobj].toString().replaceAll(/[\r\n]+/g, '');  // 将换行符替换为空字符串
                                }
                                if (itemobj === '规格型号') {
                                    item[itemobj] = item[itemobj].replace(/,/g, ',');  // 替换英文逗号为中文逗号
                                }
                            }
                        });
                        //绑定数据
                        var data = excel.filterExportData(option.data, ColName)
@@ -1058,6 +1113,18 @@
                });
            });
            //将url参数中的中文乱码重新转换成中文
            function getParams(key) {
                var reg = new RegExp("(^|&)" + key + "=([^&]*)(&|$)");
                //如果地址栏中出现中文则进行编码
                var r = encodeURI(window.location.search).substr(1).match(reg);
                if (r != null) {
                    //将中文编码的字符重新变成中文
                    return decodeURI(unescape(r[2]));
                }
                return null;
            };
        });
    </script>
</body>