var pageCurr; 
 | 
var insTb2; 
 | 
layui.config({ 
 | 
    base: baseUrl + "/static/layui/lay/modules/" 
 | 
}).extend({ 
 | 
    notice: 'notice/notice', 
 | 
}).use(['table','laydate', 'form', 'util', 'admin', 'notice', 'treeTable', 'xmSelect', 'tableMerge', 'tableX'], function(){ 
 | 
    var table = layui.table; 
 | 
    var $ = layui.jquery; 
 | 
    var layer = layui.layer; 
 | 
    var layDate = layui.laydate; 
 | 
    var form = layui.form; 
 | 
    var admin = layui.admin; 
 | 
    var util = layui.util; 
 | 
    var notice = layui.notice; 
 | 
    var treeTable = layui.treeTable; 
 | 
    var xmSelect = layui.xmSelect; 
 | 
    var tableMerge = layui.tableMerge; 
 | 
    var tableX = layui.tableX; 
 | 
  
 | 
    insTb2 = table.render({ 
 | 
        elem: '#orderDetlTable', 
 | 
        headers: {token: localStorage.getItem('token')}, 
 | 
        url: baseUrl+'/orderDetl/pakout/list/auth', 
 | 
        page: true, 
 | 
        limit: 15, 
 | 
        limits: [15, 30, 50, 100, 200, 500], 
 | 
        toolbar: '#orderDetToolbar', 
 | 
        height: 'full-120', 
 | 
        where: {order_id: 9999999999}, 
 | 
        cols: [[ 
 | 
            {type: 'checkbox'} 
 | 
            ,{type: 'numbers', title: '#'} 
 | 
            ,{field: 'orderNo', align: 'center',title: '单据编号', templet: '#orderNoTpl', width: 160} 
 | 
            ,{field: 'matnr', align: 'center',title: '物料号', width: 160} 
 | 
            ,{field: 'maktx', align: 'center',title: '物料名称', width: 200} 
 | 
            ,{field: 'batch', align: 'center',title: '序列码'} 
 | 
            ,{field: 'specs', align: 'center',title: '规格'} 
 | 
            // ,{field: 'anfme', align: 'center',title: '数量'} 
 | 
            // ,{field: 'qty', align: 'center',title: '作业数量', style: 'font-weight: bold'} 
 | 
            ,{field: 'enableQty', align: 'center',title: '待出数量', style: 'font-weight: bold'} 
 | 
            ,{field: 'threeCode', align: 'center',title: '销售订单号'} 
 | 
            ,{field: 'deadTime', align: 'center',title: '销售订单行号'} 
 | 
            // ,{field: 'name', align: 'center',title: '名称'} 
 | 
            // ,{field: 'model', align: 'center',title: '通用型号'} 
 | 
            ,{field: 'unit', align: 'center',title: '单位', hide: true} 
 | 
            ,{field: 'barcode', align: 'center',title: '商品条码', hide: true} 
 | 
            // ,{field: 'supplier', align: 'center',title: '供应商'} 
 | 
            // ,{field: 'unitPrice', align: 'center',title: '单价'} 
 | 
            // ,{field: 'itemNum', align: 'center',title: '品项数'} 
 | 
            // ,{field: 'count', align: 'center',title: '数量'} 
 | 
            // ,{field: 'weight', align: 'center',title: '重量'} 
 | 
            // ,{field: 'status$', align: 'center',title: '状态'} 
 | 
            // ,{field: 'createBy$', align: 'center',title: '添加人员'} 
 | 
            // ,{field: 'createTime$', align: 'center',title: '添加时间'} 
 | 
            // ,{field: 'updateBy$', align: 'center',title: '修改人员'} 
 | 
            // ,{field: 'updateTime$', align: 'center',title: '修改时间'} 
 | 
            // ,{field: 'memo', align: 'center',title: '备注'} 
 | 
            ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width: 160} 
 | 
        ]], 
 | 
        request: { 
 | 
            pageName: 'curr', 
 | 
            pageSize: 'limit' 
 | 
        }, 
 | 
        parseData: function (res) { 
 | 
            return { 
 | 
                'code': res.code, 
 | 
                'msg': res.msg, 
 | 
                'count': res.data.total, 
 | 
                'data': res.data.records 
 | 
            } 
 | 
        }, 
 | 
        response: { 
 | 
            statusCode: 200 
 | 
        }, 
 | 
        done: function(res, curr, count) { 
 | 
            if (res.code === 403) { 
 | 
                top.location.href = baseUrl+"/"; 
 | 
            } 
 | 
            pageCurr=curr; 
 | 
            limit(); 
 | 
        } 
 | 
    }); 
 | 
  
 | 
    /* 表格2搜索 */ 
 | 
    form.on('submit(sensorTbSearch)', function (data) { 
 | 
        insTb2.reload({where: data.field, page: {curr: 1}}); 
 | 
        return false; 
 | 
    }); 
 | 
  
 | 
    /* 表格2头工具栏点击事件 */ 
 | 
    table.on('toolbar(orderDetlTable)', function (obj) { 
 | 
        var checkStatus = table.checkStatus(obj.config.id).data; 
 | 
        if (obj.event === 'pakoutPreview') { // 添加 
 | 
            if (checkStatus.length === 0) { 
 | 
                layer.msg('请选择至少一条出库明细', {icon: 2}); 
 | 
                return; 
 | 
            } 
 | 
            pakoutPreview(checkStatus.map(function (d) { 
 | 
                return d.id; 
 | 
            })); 
 | 
        } else if (obj.event === 'del') { // 删除 
 | 
            var checkRows = table.checkStatus('sensorTable'); 
 | 
            if (checkRows.data.length === 0) { 
 | 
                layer.msg('请选择要删除的数据', {icon: 2}); 
 | 
                return; 
 | 
            } 
 | 
            var ids = checkRows.data.map(function (d) { 
 | 
                return d.id; 
 | 
            }); 
 | 
            doDelSensor({ids: ids}); 
 | 
        } 
 | 
    }); 
 | 
  
 | 
    /* 表格2工具条点击事件 */ 
 | 
    table.on('tool(orderDetlTable)', function (obj) { 
 | 
        var data = obj.data; 
 | 
        switch (obj.event) { 
 | 
            // 出库 
 | 
            case 'pakoutPreview': 
 | 
                pakoutPreview([data.id]) 
 | 
                break; 
 | 
        } 
 | 
    }); 
 | 
  
 | 
    function pakoutPreview(ids) { 
 | 
        let loadIndex = layer.load(2); 
 | 
        $.ajax({ 
 | 
            url: baseUrl + "/out/pakout/preview/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            contentType: 'application/json;charset=UTF-8', 
 | 
            data: JSON.stringify(ids), 
 | 
            method: 'POST', 
 | 
            success: function (res) { 
 | 
                layer.close(loadIndex); 
 | 
                if (res.code === 200){ 
 | 
                    pakoutPreviewDialog(res.data) 
 | 
                } else if (res.code === 403){ 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                } else { 
 | 
                    layer.msg(res.msg, {icon: 2}) 
 | 
                } 
 | 
            } 
 | 
        }) 
 | 
    } 
 | 
  
 | 
    function pakoutPreviewDialog(data) { 
 | 
        for(var i=0; i<data.length; i++){ 
 | 
            if(!data[i].staNos){ 
 | 
                data[i].staNos = data[i].agvStaNos; 
 | 
                data[i].staNo = data[i].agvStaNo; 
 | 
            } 
 | 
        } 
 | 
        var tableCache; 
 | 
        layer.open({ 
 | 
            type: 1 
 | 
            ,title: false 
 | 
            ,closeBtn: false 
 | 
            ,offset: '50px' 
 | 
            ,area: ['1200px', '700px'] 
 | 
            ,shade: 0.5 
 | 
            ,shadeClose: false 
 | 
            ,btn: ['立即出库', '稍后处理'] 
 | 
            ,btnAlign: 'c' 
 | 
            ,moveType: 1 //拖拽模式,0或者1 
 | 
            ,content: $('#pakoutPreviewBox').html() 
 | 
            ,success: function(layero, index){ 
 | 
                stoPreTabIdx = table.render({ 
 | 
                    elem: '#stoPreTab', 
 | 
                    data: data, 
 | 
                    height: 520, 
 | 
                    page: false, 
 | 
                    limit: Number.MAX_VALUE, 
 | 
                    cellMinWidth: 100, 
 | 
                    cols: [[ 
 | 
                        // {type: 'checkbox', merge: ['orderNo']}, 
 | 
                        {field: 'orderNo', title: '单据编号', merge: true, align: 'center'}, 
 | 
                        {field: 'title', title: '商品', merge: true, align: 'center', width: 350}, 
 | 
                        {field: 'batch', title: '序列码', align: 'center'}, 
 | 
                        {field: 'anfme', title: '数量', align: 'center', width: 90, style: 'font-weight: bold', edit:true}, 
 | 
                        {field: 'locNo', title: '货位', align: 'center', templet: '#locNoTpl'}, 
 | 
                        {field: 'staNos', align: 'center', title: '出库站', merge: ['locNo'], templet: '#tbBasicTbStaNos'}, 
 | 
                        // {type: 'checkbox', merge: ['locNo']}, 
 | 
                    ]], 
 | 
                    //cols: getCol(data), 
 | 
                    done: function (res) { 
 | 
                        tableMerge.render(this); 
 | 
                        $('.layui-table-body.layui-table-main').css("overflow", "auto"); 
 | 
                        tableCache = tableData = table.cache.stoPreTab; 
 | 
                    } 
 | 
                }); 
 | 
                // 修改出库站 
 | 
                form.on('select(tbBasicTbStaNos)', function (obj) { 
 | 
                    let index  = obj.othis.parents('tr').attr("data-index"); 
 | 
                    let data = tableCache[index]; 
 | 
                    for (let i = 0; i<tableCache.length; i++) { 
 | 
                        if (tableCache[i].locNo === data.locNo) { 
 | 
                            //tableCache[i]['staNo'] = Number(obj.elem.value); 
 | 
                            tableCache[i]['staNo'] = obj.elem.value; 
 | 
                        } 
 | 
                    } 
 | 
                    obj.othis.children().find("input").css("color", "blue"); 
 | 
                    return false; 
 | 
                }); 
 | 
                // 批量修改出库站 
 | 
                form.on('submit(batchModifySta)', function () { 
 | 
                    modifySta(); 
 | 
                }); 
 | 
                // 批量修改出库站 - 站点选择 
 | 
                function modifySta() { 
 | 
                    // 出库站取交集 
 | 
                    let staBatchSelectVal = []; 
 | 
                    for(let i = 0; i<tableCache.length; i++) { 
 | 
                        let staNos = tableCache[i].staNos; 
 | 
                        if (staNos !== null) { 
 | 
                            if (staBatchSelectVal.length === 0) { 
 | 
                                staBatchSelectVal = staNos; 
 | 
                            } else { 
 | 
                                staBatchSelectVal = staBatchSelectVal.filter(val => 
 | 
                                    { 
 | 
                                        return new Set(staNos).has(val) 
 | 
                                    } 
 | 
                                ) 
 | 
                            } 
 | 
                        } 
 | 
                    } 
 | 
                    if (staBatchSelectVal.length === 0) { 
 | 
                        layer.msg("出库站没有交集,无法批量修改", {icon: 2}); 
 | 
                        return; 
 | 
                    } 
 | 
                    admin.open({ 
 | 
                        type: 1, 
 | 
                        area: '300px', 
 | 
                        offset: 'auto', 
 | 
                        title: '请选择站点', 
 | 
                        content: $('#staBatchSelectDialog').html(), 
 | 
                        success: function (layero, ddIndex) { 
 | 
                            // 渲染下拉框 
 | 
                            let template = Handlebars.compile($('#batchStaSelectTpl').html()); 
 | 
                            $('#batchSelectStaBox').html(template({list: staBatchSelectVal})); 
 | 
                            // 确认 
 | 
                            form.on('submit(staBatchSelectConfirm)', function (obj) { 
 | 
                                let loadIdx = layer.load(2); 
 | 
                                //let batchSta = Number(obj.field.batchSta); 
 | 
                                let batchSta = obj.field.batchSta; 
 | 
                                let arr = []; 
 | 
                                for (let i = 0; i<tableCache.length; i++) { 
 | 
                                    tableCache[i]['staNo'] = batchSta; 
 | 
                                    arr.push(i); 
 | 
                                } 
 | 
                                stoPreTabIdx.reload({data: tableCache}); 
 | 
                                arr.forEach(item => { 
 | 
                                    $('div[lay-id=stoPreTab] tr[data-index="' + item + '"] .order-sta-select').val(batchSta); 
 | 
                                }); 
 | 
                                layui.form.render('select'); 
 | 
                                arr.forEach(item => { 
 | 
                                    $('div[lay-id=stoPreTab] tr[data-index="' + item + '"] .layui-select-title').find("input").css("color", "blue"); 
 | 
                                }); 
 | 
                                layer.close(loadIdx); layer.close(ddIndex); 
 | 
                                return false; 
 | 
                            }); 
 | 
                            // 弹窗不出现滚动条 
 | 
                            $(layero).children('.layui-layer-content').css('overflow', 'visible'); 
 | 
                            layui.form.render('select'); 
 | 
                        }, 
 | 
                    }) 
 | 
                } 
 | 
  
 | 
            } 
 | 
            ,yes: function(index, layero){ 
 | 
                //按钮【立即出库】的回调 
 | 
                pakout(tableCache, index); 
 | 
            } 
 | 
            ,btn2: function(index, layero){ 
 | 
                //按钮【稍后处理】的回调 
 | 
                layer.close(index) 
 | 
                //return false 开启该代码可禁止点击该按钮关闭 
 | 
            } 
 | 
        }); 
 | 
    } 
 | 
  
 | 
    function pakout(tableCache, layerIndex) { 
 | 
        // let loadIndex = layer.load(2); 
 | 
        for(var i=0; i<tableCache.length; i++){ 
 | 
            if(tableCache[i].agvStaNos){ 
 | 
                tableCache[i].agvStaNo = tableCache[i].staNo; 
 | 
                tableCache[i].staNos = null; 
 | 
                tableCache[i].staNo = null; 
 | 
            } 
 | 
        } 
 | 
        notice.msg('正在生成出库任务......', {icon: 4}); 
 | 
        $.ajax({ 
 | 
            url: baseUrl + "/out/pakout/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            contentType: 'application/json;charset=UTF-8', 
 | 
            data: JSON.stringify(tableCache), 
 | 
            method: 'POST', 
 | 
            success: function (res) { 
 | 
                notice.destroy(); 
 | 
                if (res.code === 200) { 
 | 
                    layer.close(layerIndex); 
 | 
                    layer.msg(res.msg, {icon: 1}); 
 | 
                    insTb.reload({where: null}); 
 | 
                    insTb2.reload({where: null, page: {curr: 1}}); 
 | 
                } else if (res.code === 403) { 
 | 
                    top.location.href = baseUrl + "/"; 
 | 
                } else { 
 | 
                    layer.msg(res.msg, {icon: 2}) 
 | 
                } 
 | 
            } 
 | 
        }); 
 | 
    } 
 | 
  
 | 
  
 | 
  
 | 
    /* 删除订单 */ 
 | 
    function doDelSensor(obj) { 
 | 
        layer.confirm('确定要删除选中数据吗?', { 
 | 
            skin: 'layui-layer-admin', 
 | 
            shade: .1 
 | 
        }, function (i) { 
 | 
            layer.close(i); 
 | 
            var loadIndex = layer.load(2); 
 | 
            $.ajax({ 
 | 
                url: baseUrl+"/sensor/delete/auth", 
 | 
                headers: {'token': localStorage.getItem('token')}, 
 | 
                data: {ids: obj.ids}, 
 | 
                method: 'POST', 
 | 
                success: function (res) { 
 | 
                    layer.close(loadIndex); 
 | 
                    if (res.code === 200){ 
 | 
                        layer.msg(res.msg, {icon: 1}); 
 | 
                        $(".layui-laypage-btn")[0].click(); 
 | 
                    } else if (res.code === 403){ 
 | 
                        top.location.href = baseUrl+"/"; 
 | 
                    }else { 
 | 
                        layer.msg(res.msg, {icon: 2}); 
 | 
                    } 
 | 
                } 
 | 
            }) 
 | 
  
 | 
        }); 
 | 
    } 
 | 
  
 | 
    // 修改状态 
 | 
    form.on('switch(statusSwitch)', function (obj) { 
 | 
        var index  = obj.othis.parents('tr').attr("data-index"); 
 | 
        var data = tableData[index]; 
 | 
        data[this.name] = obj.elem.checked?1:0; 
 | 
        http.post(baseUrl+"/sensor/edit/auth", {id: data.id, status: data[this.name]}, function (res) { 
 | 
            layer.msg(res.msg, {icon: 1}); 
 | 
        }) 
 | 
    }) 
 | 
  
 | 
    window.pakoutPreview = pakoutPreview; 
 | 
  
 | 
    // ---------------------------------------------------------------------------------------------------------------------------------- 
 | 
  
 | 
    // 合并出库 
 | 
    form.on('submit(mergeOut)', function (data) { 
 | 
        let checkStatus = layui.table.checkStatus('originTable').data; 
 | 
        if (checkStatus.length < 2) { 
 | 
            layer.msg("请至少选择两条以上合并数据", {icon: 7}); 
 | 
            return false; 
 | 
        } 
 | 
        showMerge(checkStatus.map(function (d) { 
 | 
            return d.id; 
 | 
        })); 
 | 
    }); 
 | 
  
 | 
    // 订单合并窗口 
 | 
    function showMerge(orderIds) { 
 | 
        let loadIndex = layer.load(2); 
 | 
        $.ajax({ 
 | 
            url: baseUrl+"/order/merge/preview/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            method: 'GET', 
 | 
            data: { 
 | 
                orderIds: orderIds 
 | 
            }, 
 | 
            success: function (res) { 
 | 
                layer.close(loadIndex); 
 | 
                if (res.code === 200){ 
 | 
                    layer.open({ 
 | 
                        type: 1 
 | 
                        , title: false 
 | 
                        , closeBtn: false 
 | 
                        , offset: '50px' 
 | 
                        , area: ['1200px', '700px'] 
 | 
                        , shade: 0.5 
 | 
                        , shadeClose: false 
 | 
                        , btn: ['确定', '取消'] 
 | 
                        , btnAlign: 'c' 
 | 
                        , moveType: 1 //拖拽模式,0或者1 
 | 
                        , content: $('#mergeDialog').html() 
 | 
                        , success: function (layero, index) { 
 | 
                            orderMergeTabIdx = table.render({ 
 | 
                                elem: '#orderMergeTab', 
 | 
                                data: res.data, 
 | 
                                height: 550, 
 | 
                                page: false, 
 | 
                                limit: Number.MAX_VALUE, 
 | 
                                cellMinWidth: 100, 
 | 
                                cols: [[ 
 | 
                                    {type: 'checkbox'}, 
 | 
                                    {field: 'matnr', title: '物料号', align: 'center', width: 350}, 
 | 
                                    {field: 'maktx', title: '物料名称', align: 'center'}, 
 | 
                                    {field: 'specs', title: '规格', align: 'center'}, 
 | 
                                    {field: 'batch', title: '批号', align: 'center'}, 
 | 
                                    {field: 'anfme', title: '数量', align: 'center', width: 90, style: 'font-weight: bold'}, 
 | 
                                ]], 
 | 
                                done: function (res) { 
 | 
                                    $('.layui-table-body.layui-table-main').css("overflow", "auto"); 
 | 
                                } 
 | 
                            }); 
 | 
                        } 
 | 
                        , yes: function (index, layero) { 
 | 
                            //按钮【确定】的回调 
 | 
                            let checkStatus = layui.table.checkStatus('orderMergeTab').data; 
 | 
                            if (checkStatus.length < 1) { 
 | 
                                layer.msg("请至少选择一条数据", {icon: 7}); 
 | 
                                return false; 
 | 
                            } 
 | 
                            let loadIndex = layer.load(2); 
 | 
                            $.ajax({ 
 | 
                                url: baseUrl + "/out/pakout/preview/merge/auth", 
 | 
                                headers: {'token': localStorage.getItem('token')}, 
 | 
                                contentType: 'application/json;charset=UTF-8', 
 | 
                                data: JSON.stringify(checkStatus), 
 | 
                                method: 'POST', 
 | 
                                success: function (res) { 
 | 
                                    layer.close(loadIndex); 
 | 
                                    if (res.code === 200){ 
 | 
                                        layer.close(index) 
 | 
                                        pakoutPreviewMergeDialog(res.data) 
 | 
                                    } else if (res.code === 403){ 
 | 
                                        top.location.href = baseUrl+"/"; 
 | 
                                    } else { 
 | 
                                        layer.msg(res.msg, {icon: 2}) 
 | 
                                    } 
 | 
                                } 
 | 
                            }) 
 | 
                        } 
 | 
                        , btn2: function (index, layero) { 
 | 
                            //按钮【取消】的回调 
 | 
                            layer.close(index) 
 | 
                            //return false 开启该代码可禁止点击该按钮关闭 
 | 
                        } 
 | 
                    }) 
 | 
                } else if (res.code === 403){ 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                } else { 
 | 
                    layer.msg(res.msg, {icon: 2}) 
 | 
                } 
 | 
            } 
 | 
        }) 
 | 
    } 
 | 
  
 | 
    function pakoutPreviewMergeDialog(data) { 
 | 
        for(var i=0; i<data.length; i++){ 
 | 
            if(!data[i].staNos){ 
 | 
                data[i].staNos = data[i].agvStaNos; 
 | 
                data[i].staNo = data[i].agvStaNo; 
 | 
            } 
 | 
        } 
 | 
        var mergeTabCache; 
 | 
        layer.open({ 
 | 
            type: 1 
 | 
            ,title: false 
 | 
            ,closeBtn: false 
 | 
            ,offset: '50px' 
 | 
            ,area: ['1200px', '700px'] 
 | 
            ,shade: 0.5 
 | 
            ,shadeClose: false 
 | 
            ,btn: ['立即出库', '稍后处理'] 
 | 
            ,btnAlign: 'c' 
 | 
            ,moveType: 1 //拖拽模式,0或者1 
 | 
            ,content: $('#pakoutPreviewMergeBox').html() 
 | 
            ,success: function(layero, index){ 
 | 
                stoPreTabMergeIdx = table.render({ 
 | 
                    elem: '#stoPreTabMerge', 
 | 
                    data: data, 
 | 
                    height: 520, 
 | 
                    page: false, 
 | 
                    limit: Number.MAX_VALUE, 
 | 
                    cellMinWidth: 100, 
 | 
                    cols: [[ 
 | 
                        // {type: 'checkbox', merge: ['orderNo']}, 
 | 
                        {field: 'title', title: '商品', merge: true, align: 'center', width: 350}, 
 | 
                        {field: 'specs', title: '规格', align: 'center'}, 
 | 
                        {field: 'batch', title: '序列码', align: 'center'}, 
 | 
                        {field: 'anfme', title: '数量', align: 'center', width: 90, style: 'font-weight: bold'}, 
 | 
                        {field: 'locNo', title: '货位', align: 'center', templet: '#locNoTpl'}, 
 | 
                        {field: 'staNos', align: 'center', title: '出库站', merge: ['locNo'], templet: '#tbBasicTbStaNos'}, 
 | 
                        // {type: 'checkbox', merge: ['locNo']}, 
 | 
                    ]], 
 | 
                    done: function (res) { 
 | 
                        tableMerge.render(this); 
 | 
                        $('.layui-table-body.layui-table-main').css("overflow", "auto"); 
 | 
                        mergeTabCache = table.cache.stoPreTabMerge; 
 | 
                    } 
 | 
                }); 
 | 
                // 修改出库站 
 | 
                form.on('select(tbBasicTbStaNos)', function (obj) { 
 | 
                    let index  = obj.othis.parents('tr').attr("data-index"); 
 | 
                    let data = mergeTabCache[index]; 
 | 
                    for (let i = 0; i<mergeTabCache.length; i++) { 
 | 
                        if (mergeTabCache[i].locNo === data.locNo) { 
 | 
                            //mergeTabCache[i]['staNo'] = Number(obj.elem.value); 
 | 
                            mergeTabCache[i]['staNo'] = obj.elem.value; 
 | 
                        } 
 | 
                    } 
 | 
                    obj.othis.children().find("input").css("color", "blue"); 
 | 
                    return false; 
 | 
                }); 
 | 
                // 批量修改出库站 
 | 
                form.on('submit(batchModifySta)', function () { 
 | 
                    modifySta(); 
 | 
                }); 
 | 
                // 批量修改出库站 - 站点选择 
 | 
                function modifySta() { 
 | 
                    // 出库站取交集 
 | 
                    let staBatchSelectVal = []; 
 | 
                    for(let i = 0; i<mergeTabCache.length; i++) { 
 | 
                        let staNos = mergeTabCache[i].staNos; 
 | 
                        if (staNos !== null) { 
 | 
                            if (staBatchSelectVal.length === 0) { 
 | 
                                staBatchSelectVal = staNos; 
 | 
                            } else { 
 | 
                                staBatchSelectVal = staBatchSelectVal.filter(val => 
 | 
                                    { 
 | 
                                        return new Set(staNos).has(val) 
 | 
                                    } 
 | 
                                ) 
 | 
                            } 
 | 
                        } 
 | 
                    } 
 | 
                    if (staBatchSelectVal.length === 0) { 
 | 
                        layer.msg("出库站没有交集,无法批量修改", {icon: 2}); 
 | 
                        return; 
 | 
                    } 
 | 
                    admin.open({ 
 | 
                        type: 1, 
 | 
                        area: '300px', 
 | 
                        offset: 'auto', 
 | 
                        title: '请选择站点', 
 | 
                        content: $('#staBatchSelectDialog').html(), 
 | 
                        success: function (layero, ddIndex) { 
 | 
                            // 渲染下拉框 
 | 
                            let template = Handlebars.compile($('#batchStaSelectTpl').html()); 
 | 
                            $('#batchSelectStaBox').html(template({list: staBatchSelectVal})); 
 | 
                            // 确认 
 | 
                            form.on('submit(staBatchSelectConfirm)', function (obj) { 
 | 
                                let loadIdx = layer.load(2); 
 | 
                                //let batchSta = Number(obj.field.batchSta); 
 | 
                                let batchSta = obj.field.batchSta; 
 | 
                                let arr = []; 
 | 
                                for (let i = 0; i<mergeTabCache.length; i++) { 
 | 
                                    mergeTabCache[i]['staNo'] = batchSta; 
 | 
                                    arr.push(i); 
 | 
                                } 
 | 
                                console.log(mergeTabCache) 
 | 
                                stoPreTabMergeIdx.reload({data: mergeTabCache}); 
 | 
                                arr.forEach(item => { 
 | 
                                    $('div[lay-id=stoPreTabMerge] tr[data-index="' + item + '"] .order-sta-select').val(batchSta); 
 | 
                                }); 
 | 
                                layui.form.render('select'); 
 | 
                                arr.forEach(item => { 
 | 
                                    $('div[lay-id=stoPreTabMerge] tr[data-index="' + item + '"] .layui-select-title').find("input").css("color", "blue"); 
 | 
                                }); 
 | 
                                layer.close(loadIdx); layer.close(ddIndex); 
 | 
                                return false; 
 | 
                            }); 
 | 
                            // 弹窗不出现滚动条 
 | 
                            $(layero).children('.layui-layer-content').css('overflow', 'visible'); 
 | 
                            layui.form.render('select'); 
 | 
                        }, 
 | 
                    }) 
 | 
                } 
 | 
  
 | 
            } 
 | 
            ,yes: function(index, layero){ 
 | 
                //按钮【立即出库】的回调 
 | 
                pakout(mergeTabCache, index); 
 | 
            } 
 | 
            ,btn2: function(index, layero){ 
 | 
                //按钮【稍后处理】的回调 
 | 
                layer.close(index) 
 | 
                //return false 开启该代码可禁止点击该按钮关闭 
 | 
            } 
 | 
        }); 
 | 
    } 
 | 
  
 | 
  
 | 
}); 
 | 
  
 | 
function tableReload(child) { 
 | 
    var searchData = {}; 
 | 
    $.each($('#search-box [name]').serializeArray(), function() { 
 | 
        searchData[this.name] = this.value; 
 | 
    }); 
 | 
    (child ? parent.tableIns : tableIns).reload({ 
 | 
        where: searchData, 
 | 
        page: { 
 | 
            curr: pageCurr 
 | 
        } 
 | 
    }); 
 | 
} 
 | 
  
 | 
/** 
 | 
 * 一键出库 
 | 
 */ 
 | 
function autoOut(orderId) { 
 | 
    let loadIndex = layer.msg('请求中...', {icon: 16, shade: 0.01, time: false}); 
 | 
    $.ajax({ 
 | 
        url: baseUrl + "/out/pakout/orderDetlIds/auth", 
 | 
        headers: {'token': localStorage.getItem('token')}, 
 | 
        data: { orderId : orderId }, 
 | 
        method: 'POST', 
 | 
        success: function (res) { 
 | 
            layer.close(loadIndex); 
 | 
            if (res.code === 200){ 
 | 
                pakoutPreview(res.data); 
 | 
            } else if (res.code === 403){ 
 | 
                top.location.href = baseUrl+"/"; 
 | 
            } else { 
 | 
                layer.msg(res.msg, {icon: 2}); 
 | 
            } 
 | 
        } 
 | 
    }) 
 | 
} 
 |