比如我们做好了一个套版,也就是一个cpt文件,这个文件配置了程序集
这里填的是后端地址,需要从后端拿到数据并返回
@GetMapping("fineReport/Space")
public Map BookingSpace(@RequestParam(value = "primaryId", required = true) Long goOrderId,
@RequestParam(value = "ids", required = false) String goOrderIds,
@RequestParam(value = "flag", required = false) String flag) {
Map result = Maps.newHashMap();
List<ExportGoodsVo> exportGoodsVoList = tmPlanCustomService.BookingSpace(goOrderId,goOrderIds);
ArrayList<Field> fields = Lists.newArrayList(ExportGoodsVo.class.getDeclaredFields());
List<String> columnNames = fields.stream().map(Field::getName).collect(Collectors.toList());
result.put("success", true);
result.put("datas", exportGoodsVoList);
result.put("columnNames", columnNames);
return result;
}
我们需要返回一个和程序集对应的数据,我这个程序集是必须要返回success
、datas
、columnNames
这几个变量
一个是字段名,一个字段所对应的数据
但是实际开发中应该怎么调用这个cpt套版呢?首先这个套版需要放在FineReport对应的服务器中,因为cpt文件只能用这个软件才可以解析,但是我们前端调用的话,就直接在对应的模板后面拼接你需要传入的参数就好了
http://localhost:8075/WebReport/ReportServer?reportlet=1.cpt
如果我需要传入primaryId
参数,就直接在后面用&
拼接就好了
http://localhost:8075/WebReport/ReportServer?reportlet=1.cpt&primaryId=1
所以前端就可以这样调用了
参考:https://bbs.fanruan.com/wenda/question/970.html