自动化立体仓库 - WMS系统
pang.jiabao
2025-04-10 07e07d7666cfb2d822c60db7b67d93e0610072a8
src/main/webapp/static/js/locDetl/locDetl.js
@@ -1,4 +1,49 @@
var pageCurr;
function getCol() {
    var cols = [
        {field: 'locNo$', align: 'center',title: 'Номер складского места'},
        {field: 'matnr', align: 'center',title: 'Код товара', sort:true}
        ,{field: 'maktx', align: 'center',title: 'Наименование товара', sort:true}
        ,{field: 'orderNo', align: 'center',title: 'Номер квитанции', hide: false}
        ,{field: 'batch', align: 'center',title: 'Номер партии', width: 300, sort:true}
        ,{field: 'anfme', align: 'center',title: 'Количество'}
        ,{field: 'zpallet', align: 'center',title: 'Штрих-код поддона'}
        ,{field: 'specs', align: 'center',title: 'Спецификация'}
        ,{field: 'model', align: 'center',title: 'Код', hide: true}
        ,{field: 'color', align: 'center',title: 'Цвет', hide: true}
        ,{field: 'brand', align: 'center',title: 'Бренд', hide: true}
        ,{field: 'unit', align: 'center',title: 'Цена за единицу', hide: true}
        ,{field: 'price', align: 'center',title: 'Цена за единицу', hide: true}
        ,{field: 'sku', align: 'center',title: 'sku', hide: true}
        ,{field: 'units', align: 'center',title: 'Единичное количество', hide: true}
        ,{field: 'barcode', align: 'center',title: 'Штрихкод', hide: true}
        ,{field: 'origin', align: 'center',title: 'Место происхождения', hide: true}
        ,{field: 'manu', align: 'center',title: 'Производитель', hide: true}
        ,{field: 'manuDate', align: 'center',title: 'Дата производства', hide: true}
        ,{field: 'itemNum', align: 'center',title: 'Количество позиций', hide: true}
        ,{field: 'safeQty', align: 'center',title: 'Безопасный запас', hide: true}
        ,{field: 'weight', align: 'center',title: 'Чистый вес одной коробки', hide: true}
        ,{field: 'length', align: 'center',title: 'Брутто-вес одной коробки', hide: true}
        ,{field: 'volume', align: 'center',title: 'Объем одной коробки', hide: true}
        ,{field: 'threeCode', align: 'center',title: 'Размеры коробки', hide: true}
        ,{field: 'supp', align: 'center',title: 'Поставщик', hide: true}
        ,{field: 'suppCode', align: 'center',title: 'Код поставщика', hide: true}
        ,{field: 'beBatch$', align: 'center',title: 'Наличие партии', hide: true}
        ,{field: 'deadTime', align: 'center',title: 'Гарантийный срок', hide: true}
        ,{field: 'deadWarn', align: 'center',title: 'Количество дней предварительного предупреждения', hide: true}
        ,{field: 'source$', align: 'center',title: 'Производство и закупка', hide: true}
        ,{field: 'check$', align: 'center',title: 'Требуется проверка', hide: true}
        ,{field: 'danger$', align: 'center',title: 'Опасные товары', hide: true}
    ];
    // cols.push.apply(cols, detlCols);
    cols.push({field: 'modiUser$', align: 'center',title: 'Редактировал',hide: true}
        ,{field: 'modiTime$', align: 'center',title: 'Время редактирования'}
    )
    return cols;
}
layui.use(['table','laydate', 'form'], function(){
    var table = layui.table;
    var $ = layui.jquery;
@@ -14,29 +59,10 @@
        page: true,
        limit: 16,
        limits: [16, 30, 50, 100, 200, 500],
        skin: 'line',
        even: true,
        toolbar: '#toolbar',
        cellMinWidth: 50,
        cols: [[
            {type: 'checkbox'}
//            ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80}
            ,{field: 'locNo$', align: 'center',title: '库位号'}
            ,{field: 'matnr', align: 'center',title: '物料'}
            ,{field: 'lgnum', align: 'center',title: '仓库号', width:80}
            ,{field: 'tbnum', align: 'center',title: '转储请求编号'}
            // ,{field: 'tbpos', align: 'center',title: '行项目'}
            ,{field: 'zmatid', align: 'center',title: '物料标签ID', width:200}
            ,{field: 'maktx', align: 'center',title: '物料描述', width:150}
            ,{field: 'werks', align: 'center',title: '工厂'}
            ,{field: 'anfme', align: 'center',title: '数量', width:80}
            ,{field: 'altme', align: 'center',title: '单位', width:80}
            ,{field: 'zpallet', align: 'center',title: '托盘条码'}
            ,{field: 'bname', align: 'center',title: '用户ID'}
            // ,{field: 'memo', align: 'center',title: '备注'}
            // ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150}
        ]],
        cols: [getCol()],
        request: {
            pageName: 'curr',
            pageSize: 'limit'
@@ -99,7 +125,7 @@
            case 'addData':
                layer.open({
                    type: 2,
                    title: '新增',
                    title: 'Добавить',
                    maxmin: true,
                    area: [top.detailWidth, top.detailHeight],
                    shadeClose: false,
@@ -122,7 +148,7 @@
            case 'deleteData':
                var data = checkStatus.data;
                if (data.length === 0){
                    layer.msg('请选择数据');
                    layer.msg('Пожалуйста, выберите данные');
                } else {
                    layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){
                        $.ajax({
@@ -146,7 +172,7 @@
                }
                break;
            case 'exportData':
                layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){
                layer.confirm('Подтвердить экспорт в Excel?', {shadeClose: true}, function(){
                    var titles=[];
                    var fields=[];
                    obj.config.cols[0].map(function (col) {
@@ -163,6 +189,7 @@
                        'locDetl': exportData,
                        'fields': fields
                    };
                    var loadIndex = layer.msg('正在导出...', {icon: 16, shade: 0.01, time: false});
                    $.ajax({
                        url: baseUrl+"/locDetl/export/auth",
                        headers: {'token': localStorage.getItem('token')},
@@ -171,6 +198,7 @@
                        contentType:'application/json;charset=UTF-8',
                        method: 'POST',
                        success: function (res) {
                            layer.close(loadIndex);
                            layer.closeAll();
                            if (res.code === 200) {
                                table.exportFile(titles,res.data,'xls');
@@ -194,7 +222,7 @@
            case 'detail':
                layer.open({
                    type: 2,
                    title: '详情',
                    title: 'Детали',
                    maxmin: true,
                    area: [top.detailWidth, top.detailHeight],
                    shadeClose: false,
@@ -213,7 +241,7 @@
            case 'edit':
                layer.open({
                    type: 2,
                    title: '修改',
                    title: 'Изменить',
                    maxmin: true,
                    area: [top.detailWidth, top.detailHeight],
                    shadeClose: false,
@@ -232,7 +260,7 @@
            case 'locNo':
                var param = top.reObject(data).locNo;
                if (param === undefined) {
                    layer.msg("无数据");
                    layer.msg("Нет данных");
                } else {
                   layer.open({
                       type: 2,
@@ -268,7 +296,7 @@
            case 'modiUser':
                var param = top.reObject(data).modiUser;
                if (param === undefined) {
                    layer.msg("无数据");
                    layer.msg("Нет данных");
                } else {
                   layer.open({
                       type: 2,
@@ -304,7 +332,7 @@
            case 'appeUser':
                var param = top.reObject(data).appeUser;
                if (param === undefined) {
                    layer.msg("无数据");
                    layer.msg("Нет данных");
                } else {
                   layer.open({
                       type: 2,
@@ -418,6 +446,7 @@
        tableReload(false);
    });
    // 搜索栏重置事件
    form.on('submit(reset)', function (data) {
        pageCurr = 1;
@@ -444,7 +473,8 @@
});
function tableReload(child) {
    var searchData = {};
    var searchData = {
    };
    $.each($('#search-box [name]').serializeArray(), function() {
        searchData[this.name] = this.value;
    });