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

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

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

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限制1个方法同一时间只能被一个线程访问

java限制1个方法同一时间只能被一个线程访问

java限制1个方法同一时间只能被一个线程访问public synchronized void setOrderPay(){ }加上synchronized 修饰符即可...

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时间戳获取

System.out.println("当前时间戳(秒): " + System.currentTimeMillis()/1000); System.out.println("当前时间戳(毫秒): " +&nb...

java正则表达式判断字符串是否包含,java判断字符串是否包含

java正则表达式判断字符串是否包含,java判断字符串是否包含

pattern表示正则表达式,接收正则表达式作为参数例子:String content = "my name is gaojiufeng"; String pattern = "....

java lookingAt匹配字符串和java matches匹配字符串,java正则replaceAll,java正则replaceFirst

java lookingAt匹配字符串和java matches匹配字符串,java正则replaceAll,java正则replaceFirst

(4).java lookingAt匹配字符串和java matches匹配字符串lookingAt不要求整个字符串全匹配,例如me和me_you都是匹配的,但是lookingAt从第一个字符串开始匹配,匹配失败了也不会继续匹配,意味着me和you_me是无法匹配的matches匹配字符串要求全部匹...