自动化立体仓库 - WMS系统
zyx
2024-01-08 71d838e032d13a46a07917f5606862496220ea74
src/main/webapp/static/js/pla/plaDetl.js
@@ -5,6 +5,7 @@
var matCodeLayerIdx;
var data = [];
var checkStatus = [];
var dataCheck = [];
function getCol() {
    var cols = [
        {field: 'id', title: 'id', align: 'center',hide:true}
@@ -16,8 +17,9 @@
        ,{field: 'weight', align: 'center',title: '重量(KG)', hide:true}
        ,{field: 'workshop', align: 'center',title: '生产车间', hide:true}
        ,{field: 'line', align: 'center',title: '生产线', hide:true}
        ,{field: 'packageType', align: 'center',title: '包装类型', hide:true}
        ,{field: 'zpalletType', align: 'center',title: '托盘类型', hide:true}
        ,{field: 'packageType', align: 'center',title: '包装类型'}
        ,{field: 'zpalletType', align: 'center',title: '托盘类型'}
        ,{field: 'filmWrap', align: 'center',title: '缠膜', edit: true}
        ,{field: 'fingerMelting', align: 'center',title: '熔指(g/10min)'}
        ,{field: 'fusingPoint', align: 'center',title: '熔点(℃)'}
        ,{field: 'vadf1', align: 'center',title: '挥发份1(%)', hide:true}
@@ -25,9 +27,9 @@
        ,{field: 'yellowness', align: 'center',title: '黄度',  hide:true}
        ,{field: 'opacity', align: 'center',title: '不透明度(0-100%)', hide:true}
        ,{field: 'water', align: 'center',title: '水分(ppm)', hide:true}
        ,{field: 'l', align: 'center',title: 'l值', edit: true}
        ,{field: 'a', align: 'center',title: 'a值', edit: true}
        ,{field: 'b', align: 'center',title: 'b值', edit: true}
        ,{field: 'l', align: 'center',title: 'l值', edit: true, hide:true}
        ,{field: 'a', align: 'center',title: 'a值', edit: true, hide:true}
        ,{field: 'b', align: 'center',title: 'b值', edit: true, hide:true}
        ,{field: 'fillIn', align: 'center',title: '填充(%)', edit: true}
        ,{field: 'massState', align: 'center',title: '质量状态', hide:true}
        ,{field: 'problem', align: 'center',title: '质量问题', hide:true}
@@ -35,14 +37,15 @@
        ,{field: 'locNo', align: 'center',title: '库位', edit:true}
        ,{field: 'weightAnfme', align: 'center',title: '剩余重量(KG)', edit:true}
        ,{field: 'status', align: 'center',title: '状态', edit:true}
        ,{field: 'createUser', align: 'center',title: '单号', edit:true}
        ,{field: 'createUser', align: 'center',title: '出库时间', edit:true}
        ,{field: 'createUser', align: 'center',title: '重量', edit:true}
        ,{field: 'createUser', align: 'center',title: '经办人', edit:true}
        ,{field: 'createUser', align: 'center',title: '流转形式', edit:true}
        ,{field: 'createUser', align: 'center',title: '客户名称', edit:true}
        ,{field: 'createUser', align: 'center',title: '调拨到', edit:true}
        ,{field: 'createUser', align: 'center',title: '备注', edit:true}
        ,{align: 'center', title: '明细', toolbar: '#tbLook'}
        ,{field: 'orderNo', align: 'center',title: '单号', edit:true}
        ,{field: 'pakoutTime', align: 'center',title: '出库时间', edit:true}
        ,{field: 'orderWeight', align: 'center',title: '重量', edit:true}
        ,{field: 'handlerBy', align: 'center',title: '经办人', edit:true}
        ,{field: 'transfer', align: 'center',title: '流转形式', edit:true}
        ,{field: 'customer', align: 'center',title: '客户名称', edit:true}
        ,{field: 'allocate', align: 'center',title: '调拨到', edit:true}
        ,{field: 'memo', align: 'center',title: '备注', edit:true}
    ];
    return cols;
}
@@ -104,6 +107,76 @@
        }
    });
    table.on('tool(plaDetl)', function (obj) {
        var data = obj.data;
        var layEvent = obj.event;
        if (layEvent === 'look') {
            var $a = $(obj.tr).find('a[lay-event="look"]');
            var offset = $a.offset();
            var top = offset.top;
            var left = offset.left;
            layer.open({
                type: 1,
                title: false,
                area: '1200px',
                offset: [top + 'px', (left - 530 + $a.outerWidth()) + 'px'],
                shade: .01,
                shadeClose: true,
                fixed: false,
                content: '<table id="lookSSXMTable" lay-filter="lookSSXMTable"></table>',
                success: function (layero) {
                    table.render({
                        elem: '#lookSSXMTable',
                        headers: {token: localStorage.getItem('token')},
                        url: baseUrl+'/plaQty/list/auth',
                        where: {
                            batch: data.batch,
                            package_no: data.packageNo
                        },
                        page: true,
                        cellMinWidth: 100,
                        cols: [[
                            {type: 'numbers'},
                            {field: 'orderNo', title: '单号'},
                            {field: 'pakoutTime', title: '出库时间'},
                            {field: 'orderWeight', title: '重量'},
                            {field: 'handlerBy', title: '经办人'},
                            {field: 'transfer', title: '流转形式'},
                            {field: 'customer', title: '客户名称'},
                            {field: 'allocate', title: '调拨到'},
                            {field: 'memo', title: '备注'},
                        ]],
                        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 () {
                            $(layero).find('.layui-table-view').css('margin', '0');
                        },
                        size: ''
                    });
                }
            });
        }
    })
    // 搜索栏搜索事件
    form.on('submit(search)', function (data) {
        pageCurr = 1;
        tableReload(false);
    });
    // 重置事件
    form.on('submit(reset)', function (data) {
@@ -118,8 +191,37 @@
    }
    // 重载表格
    function tableReload() {
        tableIns.reload({data: matCodeData});
    // function tableReload() {
    //     tableIns.reload({data: matCodeData});
    // }
    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
            },
            done: function (res, curr, count) {
                if (res.code === 403) {
                    top.location.href = baseUrl+"/";
                }
                pageCurr=curr;
                if (res.data.length === 0 && count !== 0) {
                    tableIns.reload({
                        where: searchData,
                        page: {
                            curr: pageCurr-1
                        }
                    });
                    pageCurr -= 1;
                }
                limit(child);
            }
        });
    }
@@ -185,5 +287,200 @@
        })
    })
    $(document).on('click','#rework', function () {
        let data = table.cache.plaDetl;
        let dataSave = [];
        let dataOld = [];
        for(var i=0; i<data.length; i++){
            if(data[i].LAY_CHECKED){
                dataSave.push(data[i]);
            }else {
                dataOld.push(data[i]);
            }
        }
        if(!dataSave || dataSave.length < 1){
            layer.msg("未勾选,请先勾选需要重做的库存");
            return;
        }
        layer.confirm('确定重做选中的库存吗?', {
            shade: .1,
            skin: 'layui-layer-admin'
        }, function (i) {
            layer.close(i);
            $.ajax({
                url: baseUrl+"/pla/rework/auth",
                headers: {'token': localStorage.getItem('token')},
                data: JSON.stringify(dataSave),
                contentType:'application/json;charset=UTF-8',
                method: 'POST',
                async: false,
                success: function (res) {
                    if (res.code === 200){
                        layer.msg("提交成功");
                        table.reload('productionInfoTable',{
                            data: dataOld
                        })
                    } else if (res.code === 403){
                    }else {
                        layer.msg(res.msg, {icon: 2})
                    }
                }
            })
        })
    })
    $(document).on('click','#updateZpallet', function () {
        let data = table.cache.plaDetl;
        let dataSave = [];
        let dataOld = [];
        for(var i=0; i<data.length; i++){
            if(data[i].LAY_CHECKED){
                data[i].step = 1;
                dataSave.push(data[i]);
            }else {
                dataOld.push(data[i]);
            }
        }
        dataCheck = dataSave;
        if(!dataSave || dataSave.length < 1){
            layer.msg("未勾选,请先勾选需要更改的库存");
            return;
        }
        layer.open({
            type: 2,
            title: '换包装/托盘/缠膜',
            maxmin: true,
            area: ['500px', top.detailHeight],
            shadeClose: false,
            content: 'update.html',
            success: function(layero, index){
                layer.getChildFrame('#data-detail-submit-edit', index).hide();
                top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false);
                layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
                var iframe = window['layui-layer-iframe' + index];
                iframe.child(dataSave)
            }
        });
    })
    $(document).on('click','#sellout', function () {
        let data = table.cache.plaDetl;
        let dataSave = [];
        let dataOld = [];
        for(var i=0; i<data.length; i++){
            if(data[i].LAY_CHECKED){
                if(data[i].status === "待入库" || data[i].status === "全部出库"){
                    layer.msg("选中的明细还未入库或者已全部出库,请重新选择");
                    return;
                }
                dataSave.push(data[i]);
            }else {
                dataOld.push(data[i]);
            }
        }
        dataCheck = dataSave;
        if(!dataSave || dataSave.length < 1){
            layer.msg("未勾选,请先勾选需要更改的库存");
            return;
        }
        if(dataSave.length > 1){
            layer.msg("请勾选一条库存明细");
            return;
        }
        layer.open({
            type: 2,
            title: '卖出',
            maxmin: true,
            area: ['800px', top.detailHeight],
            shadeClose: false,
            content: 'sellout.html',
            success: function(layero, index){
                layer.getChildFrame('#data-detail-submit-edit', index).hide();
                top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false);
                layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
                var iframe = window['layui-layer-iframe' + index];
                iframe.child(dataSave)
            }
        });
    })
    $(document).on('click','#pickup', function () {
        let data = table.cache.plaDetl;
        let dataSave = [];
        let dataOld = [];
        for(var i=0; i<data.length; i++){
            if(data[i].LAY_CHECKED){
                if(data[i].status === "待入库" || data[i].status === "全部出库"){
                    layer.msg("选中的明细还未入库或者已全部出库,请重新选择");
                    return;
                }
                dataSave.push(data[i]);
            }else {
                dataOld.push(data[i]);
            }
        }
        dataCheck = dataSave;
        if(!dataSave || dataSave.length < 1){
            layer.msg("未勾选,请先勾选需要更改的库存");
            return;
        }
        if(dataSave.length > 1){
            layer.msg("请勾选一条库存明细");
            return;
        }
        layer.open({
            type: 2,
            title: '卖出',
            maxmin: true,
            area: ['800px', top.detailHeight],
            shadeClose: false,
            content: 'pickup.html',
            success: function(layero, index){
                layer.getChildFrame('#data-detail-submit-edit', index).hide();
                top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false);
                layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
                var iframe = window['layui-layer-iframe' + index];
                iframe.child(dataSave)
            }
        });
    })
    $(document).on('click','#returned', function () {
        layer.open({
            type: 2,
            title: '退回',
            maxmin: true,
            area: ['800px', '800px'],
            shadeClose: false,
            content: 'returned.html',
            success: function(layero, index){
                layer.getChildFrame('#data-detail-submit-edit', index).hide();
                top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false);
            }
        });
    })
})
// 关闭动作
$(document).on('click','#data-detail-close', function () {
    parent.layer.closeAll();
});