|
@@ -2,10 +2,13 @@ package com.fdkankan.fusion.controller;
|
|
|
|
|
|
import cn.hutool.http.HttpUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.deepoove.poi.XWPFTemplate;
|
|
|
import com.dtflys.forest.annotation.Post;
|
|
|
+import com.fdkankan.fusion.common.ResultCode;
|
|
|
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.service.*;
|
|
|
import com.fdkankan.redis.util.RedisUtil;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -14,7 +17,12 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import sun.java2d.pipe.SpanIterator;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
import javax.xml.transform.Result;
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.InputStream;
|
|
|
+import java.io.OutputStream;
|
|
|
import java.util.List;
|
|
|
import java.util.concurrent.ThreadPoolExecutor;
|
|
|
|
|
@@ -104,4 +112,25 @@ public class TestController {
|
|
|
}
|
|
|
return ResultData.ok();
|
|
|
}
|
|
|
+ @Autowired
|
|
|
+ ICaseInquestService caseInquestService;
|
|
|
+ @GetMapping("/downDocx")
|
|
|
+ public void downDocx(@RequestParam(required = false) Integer caseId,
|
|
|
+ HttpServletResponse res, HttpServletRequest req) throws IOException {
|
|
|
+
|
|
|
+ if(caseId == null){
|
|
|
+ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
|
|
|
+ }
|
|
|
+ CaseInquest caseInquest = caseInquestService.getByCaseId(caseId);
|
|
|
+ if(caseInquest == null){
|
|
|
+ throw new BusinessException(ResultCode.INQUEST_ERROR);
|
|
|
+ }
|
|
|
+ OutputStream os = res.getOutputStream();
|
|
|
+
|
|
|
+ InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("template/inquest-template.docx");
|
|
|
+ // 渲染模板
|
|
|
+ XWPFTemplate template = XWPFTemplate.compile(inputStream).render(caseInquest);
|
|
|
+
|
|
|
+ template.writeAndClose(os);
|
|
|
+ }
|
|
|
}
|