自动化立体仓库 - WMS系统
pang.jiabao
2025-04-15 b4227b5145943e067351a2a59ca34826b41d6fb7
src/main/webapp/static/js/waitPakin/waitPakin.js
@@ -1,10 +1,34 @@
var pageCurr;
layui.use(['table','laydate', 'form'], function(){
function getCol() {
    var cols = [ {type: 'checkbox'} ];
    cols.push.apply(cols, detlCols);
    cols.push({field: 'locNo', align: 'center',title: 'Номер складского места'}
        ,{field: 'status', align: 'center',title: 'Статус данных', templet:function(row){
                var html = "<input value='status' type='checkbox' lay-skin='switch' lay-text='Нормально|Ошибка' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'";
                if(row.status === 'Y'){html += " checked ";}
                html += ">";
                return html;
            }, hide: true}
        ,{field: 'ioStatus', align: 'center',title: 'Статус поступления/выхода', templet:function(row){
                var html = "<input value='ioStatus' type='checkbox' lay-skin='switch' lay-text='В процессе поступления|Ожидает поступления' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'";
                if(row.ioStatus === 'Y'){html += " checked ";}
                html += ">";
                return html;
            }}
        ,{field: 'modiUser$', align: 'center',title: 'Редактировал', hide:true}
        ,{field: 'modiTime$', align: 'center',title: 'Время редактирования', hide:true})
    return cols;
}
layui.config({
    base: baseUrl + "/static/layui/lay/modules/"
}).use(['table','laydate', 'form', 'tableMerge'], function(){
    var table = layui.table;
    var $ = layui.jquery;
    var layer = layui.layer;
    var layDate = layui.laydate;
    var form = layui.form;
    var tableMerge = layui.tableMerge;
    // 数据渲染
    tableIns = table.render({
@@ -17,27 +41,7 @@
        even: true,
        toolbar: '#toolbar',
        cellMinWidth: 50,
        cols: [[
            {type: 'checkbox'}
//            ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80}
            ,{field: 'id', align: 'center',title: '编号', sort: true}
            ,{field: 'barcode', align: 'center',title: '托盘码'}
            ,{field: 'matnr', align: 'center',title: '物料编码'}
            ,{field: 'maktx', align: 'center',title: '物料描述'}
            ,{field: 'anfme', align: 'center',title: '数量'}
            ,{field: 'unit', align: 'center',title: '单位'}
            ,{field: 'status', align: 'center',title: '状态', templet:function(row){
                    var html = "<input value='status' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
                    if(row.inEnable === 'Y'){html += " checked ";}
                    html += ">";
                    return html;
                }}
            ,{field: 'memo', align: 'center',title: '备注'}
            ,{field: 'modiTime$', align: 'center',title: '修改时间', hide: true}
            ,{field: 'modiUser$', align: 'center',title: '修改人员', hide: true}
            // ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150}
        ]],
        cols: [getCol()],
        request: {
            pageName: 'curr',
            pageSize: 'limit'
@@ -54,6 +58,7 @@
            statusCode: 200
        },
        done: function(res, curr, count) {
            // tableMerge.render(this);
            if (res.code === 403) {
                top.location.href = baseUrl+"/";
            }
@@ -97,10 +102,37 @@
    table.on('toolbar(waitPakin)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id);
        switch(obj.event) {
            case 'addWrk':
                if (checkStatus.data.length === 0){
                    layer.msg('请至少选择一条数据', {icon: 2});
                } else {
                    layer.confirm('确定生成工作档任务吗', function(){
                        $.ajax({
                            url: baseUrl+"/create/waitPain/wrkMast/start",
                            headers: {'token': localStorage.getItem('token')},
                            data: JSON.stringify(checkStatus.data),
                            contentType:'application/json;charset=UTF-8',
                            method: 'POST',
                            traditional:true,
                            success: function (res) {
                                if (res.code === 200){
                                    layer.closeAll();
                                    tableReload(false);
                                    layer.msg(res.msg, {icon: 1})
                                } else if (res.code === 403){
                                    top.location.href = baseUrl+"/";
                                } else {
                                    layer.msg(res.msg, {icon: 2})
                                }
                            }
                        })
                    });
                }
                break;
            case 'addData':
                layer.open({
                    type: 2,
                    title: '新增',
                    title: 'Добавить',
                    maxmin: true,
                    area: [top.detailWidth, top.detailHeight],
                    content: 'waitPakin_detail.html',
@@ -114,9 +146,9 @@
            case 'deleteData':
                var data = checkStatus.data;
                if (data.length === 0){
                    layer.msg('请选择数据');
                    layer.msg('Пожалуйста, выберите данные');
                } else {
                    layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){
                    layer.confirm(data.length === 1 ? 'Подтвердить удаление?' : 'Удалить ' + data.length + ' записи?', function () {
                        $.ajax({
                            url: baseUrl+"/waitPakin/delete/auth",
                            headers: {'token': localStorage.getItem('token')},
@@ -138,7 +170,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) {
@@ -186,7 +218,7 @@
            case 'detail':
                layer.open({
                    type: 2,
                    title: '详情',
                    title: 'Детали',
                    maxmin: true,
                    area: [top.detailWidth, top.detailHeight],
                    shadeClose: true,
@@ -205,7 +237,7 @@
            case 'edit':
                layer.open({
                    type: 2,
                    title: '修改',
                    title: 'Изменить',
                    maxmin: true,
                    area: [top.detailWidth, top.detailHeight],
                    content: 'waitPakin_detail.html',
@@ -223,7 +255,7 @@
            case 'modiUser':
                var param = top.reObject(data).modiUser;
                if (param === undefined) {
                    layer.msg("无数据");
                    layer.msg("Нет данных");
                } else {
                   layer.open({
                       type: 2,
@@ -259,7 +291,7 @@
            case 'appeUser':
                var param = top.reObject(data).appeUser;
                if (param === undefined) {
                    layer.msg("无数据");
                    layer.msg("Нет данных");
                } else {
                   layer.open({
                       type: 2,
@@ -384,7 +416,11 @@
        elem: '#appeTime\\$',
        type: 'datetime'
    });
    layDate.render({
        elem: '.layui-laydate-range'
        ,type: 'datetime'
        ,range: true
    });
});