|
@@ -1,12 +1,10 @@
|
|
|
package com.fdkankan.fusion.controller;
|
|
|
|
|
|
import cn.hutool.http.HttpUtil;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.deepoove.poi.XWPFTemplate;
|
|
|
-import com.deepoove.poi.data.RowRenderData;
|
|
|
-import com.deepoove.poi.data.Rows;
|
|
|
-import com.deepoove.poi.data.TableRenderData;
|
|
|
-import com.deepoove.poi.data.Tables;
|
|
|
+import com.deepoove.poi.data.*;
|
|
|
import com.deepoove.poi.util.PoitlIOUtils;
|
|
|
import com.dtflys.forest.annotation.Post;
|
|
|
import com.fdkankan.fusion.common.ResultCode;
|
|
@@ -14,10 +12,13 @@ import com.fdkankan.fusion.common.ResultData;
|
|
|
import com.fdkankan.fusion.common.util.ShellUtil;
|
|
|
import com.fdkankan.fusion.entity.*;
|
|
|
import com.fdkankan.fusion.exception.BusinessException;
|
|
|
+import com.fdkankan.fusion.response.CaseInquestVo;
|
|
|
+import com.fdkankan.fusion.response.WitnessVo;
|
|
|
import com.fdkankan.fusion.service.*;
|
|
|
import com.fdkankan.redis.util.RedisUtil;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.ibatis.annotations.Case;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import sun.java2d.pipe.SpanIterator;
|
|
@@ -29,6 +30,7 @@ import java.io.BufferedOutputStream;
|
|
|
import java.io.IOException;
|
|
|
import java.io.InputStream;
|
|
|
import java.io.OutputStream;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.concurrent.ThreadPoolExecutor;
|
|
|
|
|
@@ -135,12 +137,23 @@ public class TestController {
|
|
|
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("template/inquest-template.docx");
|
|
|
// 渲染模板
|
|
|
|
|
|
- RowRenderData row0 = Rows.of("姓名", "学历").textColor("FFFFFF")
|
|
|
- .bgColor("4472C4").center().create();
|
|
|
- RowRenderData row1 = Rows.create("李四", "博士");
|
|
|
- TableRenderData tableRenderData = Tables.create(row0, row1);
|
|
|
- //caseInquest.setTableRenderData(tableRenderData);
|
|
|
- XWPFTemplate template = XWPFTemplate.compile(inputStream).render(caseInquest);
|
|
|
+ CaseInquestVo vo = new CaseInquestVo();
|
|
|
+ BeanUtils.copyProperties(caseInquest,vo);
|
|
|
+
|
|
|
+
|
|
|
+ String info = "证人或当事人(签名):%s %s年 %s月 %s日身份证件号码:%s\n"
|
|
|
+ +" 单位或住址:%s\n";
|
|
|
+ StringBuilder msg = new StringBuilder();
|
|
|
+ for (Object object : vo.getWitnessInfo()) {
|
|
|
+ JSONObject obj = (JSONObject) object;
|
|
|
+ WitnessVo witnessVo = JSONObject.toJavaObject(obj,WitnessVo.class);
|
|
|
+ String format = String.format(info, witnessVo.getName(), witnessVo.getYear(), witnessVo.getMonth(), witnessVo.getDay(), witnessVo.getId(), witnessVo.getAddress());
|
|
|
+ msg.append(format);
|
|
|
+ }
|
|
|
+ TextRenderData text = new TextRenderData("000000",msg.toString());
|
|
|
+ vo.setText(text);
|
|
|
+
|
|
|
+ XWPFTemplate template = XWPFTemplate.compile(inputStream).render(vo);
|
|
|
|
|
|
// 设置响应头,指定文件类型和内容长度
|
|
|
res.setContentType("application/octet-stream");
|