当前位置:首页 > JAVA > 正文内容

x2-300自定义api表头导出数据,带参数

高老师2年前 (2024-05-21)JAVA310

x2-300中导出excel支持分页api导出,但是由于表头的信息需要入参查询才能得到结果,由于复制前同事代码,一直下载失败,无奈定位底层包,底层包位置com.x3.plug.bills.business.exports.hook.ExportBillsOneHeadUrlHookImpl

在底层包中找到可以支持的方式

@Override
public ResponseMsg exportReport(String request) {

    // 解析请求参
    ExcelManyChildRequest childRequest = JsonUtil.parseObject(request, ExcelManyChildRequest.class);

    // 填充请求参数
    PresaleDepotPaytypeOrderItemRequest req = JsonUtil.parseObject(childRequest.getRequest(), PresaleDepotPaytypeOrderItemRequest.class);
    req.setSelectDepotIds(new SelectGetdepotModuleFilter());
    req.setAdditionalDepotIds(dao.getSelectDepotIds());
    childRequest.setRequest(JsonUtil.toJSONString(req));

    // 转换请求参数
    String finalReq = JsonUtil.toJSONString(childRequest);
    ExcelOneHeadRequest headRequest = new ExcelOneHeadRequest();
    headRequest.setHeaderUrl("POST/x3-service-bi-report-center/bireport/presaledepotorderitems/head/params");
    headRequest.setUrl("/x3-service-bi-report-center/bireport/presaledepotorderitems/page/query");
    headRequest.setRequest(finalReq);
    headRequest.setHeadName("预售店铺每日收款明细表导出");
    ResponseEntity<String> response = restTemplate.postForEntity(bill_home.concat("/bills/exports/common/one/header/url"), headRequest, String.class);
    return JsonUtil.parseObject(response.getBody(), ResponseMsg.class);
}

要注意底层中将汇总合并地址默认为Url+/total,代码写死了,可能是出于规范考虑,必须统一命名吧

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/767.html

分享给朋友:

“x2-300自定义api表头导出数据,带参数” 的相关文章

java增强型for循环

java增强型for循环

Java5 引入了一种主要用于数组的增强型 for 循环,类似js中的for inpublic class Member {     public static void main(String[]&...

java String 类 ,java 字符串类,java创建字符串,java获取字符串长度,java连接字符串,java格式化字符串

java String 类 ,java 字符串类,java创建字符串,java获取字符串长度,java连接字符串,java格式化字符串

在java中字符串属于对象,刚开始我就疑惑为什么int char等类型都是小写,结果String是大写,java太反人类,后来才知道String是对象。(1).java创建字符串String text = "net"; String tex...

java日期和时间

java日期和时间

(1).java获取当前日期时间Date date = new Date();  System.out.println(date.toString());输出Fri Jul 02 10:29:55 CST 2021(2).java获取时间戳秒/毫秒D...

java睡眠方法,java睡眠函数,java睡眠时间,java睡眠一分钟,java睡眠五秒钟

java睡眠方法,java睡眠函数,java睡眠时间,java睡眠一分钟,java睡眠五秒钟

(1).java睡眠函数Thread.sleep(时间);  //单位为毫秒(2).java睡眠函数例子Date dNow = new Date(); SimpleDateFormat ft = new&nbs...

java匹配一个字符串在另外一个字符串中出现的次数,java正则start,java正则end

java匹配一个字符串在另外一个字符串中出现的次数,java正则start,java正则end

java匹配一个字符串在另外一个字符串中出现的次数,java正则start,java正则end// 正则 String pattern = "\\bgao\\b"; // 字符串 String content ...

java命令行传参,java从命令行接收参数

java命令行传参,java从命令行接收参数

java命令行传参,java从命令行接收参数public static void main(String[] args) {     for (int i = 0;&nb...