自动化立体仓库 - WMS系统
#
lsh
2024-10-16 adcfd92279f68d2353e2caa5522f71282f6e0943
#
2个文件已修改
96 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/ReportQueryController.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/home/console.html 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/ReportQueryController.java
@@ -79,12 +79,34 @@
        return R.ok(page);
    }
    // 导出
//    // 导出
//    @RequestMapping(value = "/viewStayTimeExport.action")
//    @ManagerAuth(memo = "库存滞留统计导出")
//    public R viewStayTimeExport(@RequestBody JSONObject param){
//        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
//        List<ViewStayTimeBean> list = reportQueryMapper.getViewStayTimeAll(new ViewStayTimeBean());
//        return R.ok(exportSupport(list, fields));
//    }
// 导出
    @RequestMapping(value = "/viewStayTimeExport.action")
    @ManagerAuth(memo = "库存滞留统计导出")
    public R viewStayTimeExport(@RequestBody JSONObject param){
        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
    public R viewStayTimeExport(){
    //        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
    //        List<ViewStayTimeBean> list = reportQueryMapper.getViewStayTimeAll(new ViewStayTimeBean());
    //        return R.ok(exportSupport(list, fields));
        // 从数据库获取所有 ViewStayTimeBean 列表
        List<ViewStayTimeBean> list = reportQueryMapper.getViewStayTimeAll(new ViewStayTimeBean());
        // 获取需要导出的字段(例如,可以硬编码或从其他来源定义)
        List<String> fields = new ArrayList<>(); // 根据实际字段设置
        fields.add("Begin_date");
        fields.add("Stay_time");
        fields.add("Loc_no");
        fields.add("anfme");
        fields.add("matnr");
        // 调用导出支持方法
        return R.ok(exportSupport(list, fields));
    }
src/main/webapp/views/home/console.html
@@ -103,6 +103,9 @@
<div class="home-elem loc-retention">
    <div class="layui-form">
        <div id="form-header">库存滞留时间统计表</div>
        <div>
            <button class="layui-btn" id="export-btn">导出</button>
        </div>
        <table class="layui-hide" id="stayTime" lay-filter="stayTime"></table>
    </div>
</div>
@@ -303,6 +306,71 @@
                }
            });
        });
        $(document).ready(function() {
            // 为导出按钮添加点击事件
            $('#export-btn').click(function() {
                // 这里添加导出逻辑
                alert('导出功能已触发!');
                // 你可以在这里调用具体的导出函数
                exportData();
            });
        });
        // var table1 = layui.table1;
        function exportData() {
            var searchData = {};
            // 收集当前搜索框的值
            $.each($('#search-box [name]').serializeArray(), function() {
                searchData[this.name] = this.value;
            });
            // 发送导出请求,您需要根据您的具体情况调整 URL
            // $.ajax({
            //     url: baseUrl + '/report/viewStayTimeExport.action', // 请替换为实际的导出接口
            //     method: 'POST',
            //     data: JSON.stringify(searchData),  // 发送的参数
            //     contentType: 'application/json;charset=UTF-8',
            //     headers: {'token': localStorage.getItem('token')}, // 添加 token
            //     success: function(res) {
            //         // 假设后端返回的是一个文件下载链接
            //         if (res.code === 200 && res.data.downloadUrl) {
            //             window.location.href = res.data.downloadUrl; // 自动触发下载
            //         } else {
            //             layer.msg(res.msg || '导出失败');
            //         }
            //     },
            //     error: function() {
            //         layer.msg('导出请求失败');
            //     }
            // });
            var titles=[];
            var fields=[];
            $.ajax({
                url: baseUrl + '/report/viewStayTimeExport.action', // 请替换为实际的导出接口
                method: 'GET', // 尝试使用 GET 请求
                contentType: 'application/json;charset=UTF-8',
                headers: {'token': localStorage.getItem('token')},
                success: function(res) {
                    console.log("res")
                    console.log(res)
                    // 假设后端返回的是一个文件下载链接
                    layer.closeAll();
                    if (res.code === 200) {
                        table.exportFile(titles,res.data,'xls');
                    } else if (res.code === 403) {
                        top.location.href = baseUrl+"/";
                    } else {
                        layer.msg(res.msg)
                    }
                },
                error: function() {
                    layer.msg('导出请求失败');
                }
            });
        }
    });