版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30546099/article/details/83061109
用iReport做打印的时候,在后端代码中得到map集合后,map中存放list
用$F获取属性,栏属性代表每行的空、间隔
/***
*
* @author xxx
* @param checkVisaReqVo
* @return CheckVisaRespVo
*/
@Override
public void originalPrintNew(String policyNo,String riskCode,HttpServletRequest request, HttpServletResponse response) throws Exception {
InputStream inputStreamBusiness = null;
InputStream inputStreamCi = null;
OriginalPrintPrintReqVo originalPrintPrintReqVo = new OriginalPrintPrintReqVo();
originalPrintPrintReqVo.setPolicyNo(policyNo);
originalPrintPrintReqVo.setRiskCode(riskCode);
originalPrintPrintReqVo.setBizNo(policyNo);
String requestJson = JSON.toJSONString(originalPrintPrintReqVo);
Map<String, Object> emptyHashMapBusiness = null;
Map<String, Object> emptyHashMapCi = null;
if("0518".equals(riskCode)||"0508".equals(riskCode)){
String responseJson= new ChannelUtil().callChannel(requestJson,ChannelConstants.INTERFACE_CODE_26);
// String responseJsonBusiness = HttpUtil.validateIdentity(
UIPolicyCardFormatPrint4to1OutputVo uIPolicyCardFormatPrint4to1OutputVo = JSON.parseObject(responseJson,UIPolicyCardFormatPrint4to1OutputVo.class);
emptyHashMapBusiness = this.assignmentProposalCheckOutPrintBusiness(uIPolicyCardFormatPrint4to1OutputVo);
} else if ("0507".equals(riskCode)) {
String responseJson= new ChannelUtil().callChannel(requestJson,ChannelConstants.INTERFACE_CODE_27);
UIPolicy0507NoneFormatRespShema uIPolicy0507NoneFormatRespShema = JSON.parseObject(responseJson,
UIPolicy0507NoneFormatRespShema.class);// 交强
emptyHashMapCi = this.assignmentProposalCheckOutPrintCi(uIPolicy0507NoneFormatRespShema);// 交强
}
try {
ClassLoader classLoader = this.getClass().getClassLoader();
List<Map<String, Object>> list = new ArrayList<>();
if("0518".equals(riskCode)||"0508".equals(riskCode)){
//打印模板地址
inputStreamBusiness = classLoader.getResourceAsStream("template/policy0518td.jrxml");
emptyHashMapBusiness.put("templetPath", inputStreamBusiness);
list.add(emptyHashMapBusiness);
}else if("0507".equals(riskCode)){
//打印模板地址
inputStreamCi = classLoader.getResourceAsStream("template/policy0507td.jrxml");
emptyHashMapCi.put("templetPath", inputStreamCi);
list.add(emptyHashMapCi);
}
PrintUtil.printReportPdfMore(list, 1, response);
} catch (Exception e) {
e.printStackTrace();
}finally {
if(inputStreamBusiness != null){
inputStreamBusiness.close();
}
}
}
/**
* 商业
* @param uIPolicyCardFormatPrint4to1OutputVo
* @return
* @throws Exception
*/
public Map<String,Object> assignmentProposalCheckOutPrintBusiness(UIPolicyCardFormatPrint4to1OutputVo uIPolicyCardFormatPrint4to1OutputVo) throws Exception{
Map<String, Object> emptyHashMap = new HashMap<String, Object>();
emptyHashMap.put("strValidNo",uIPolicyCardFormatPrint4to1OutputVo.getValidNo());
..........................
emptyHashMap.put("strOperatorCode", uIPolicyCardFormatPrint4to1OutputVo.getOperatorCode());
emptyHashMap.put("strHandlerCode",uIPolicyCardFormatPrint4to1OutputVo.getHandlerCode());
return emptyHashMap;
}