123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- package com.huimv.farm.damsubsidy.controller;
- import cn.hutool.core.date.DateUtil;
- import cn.hutool.core.lang.UUID;
- import com.huimv.farm.damsubsidy.common.utils.Result;
- import com.huimv.farm.damsubsidy.common.utils.UploadImage;
- import com.huimv.farm.damsubsidy.entity.BillSubsidy;
- import com.huimv.farm.damsubsidy.service.IBillSubsidyService;
- import com.huimv.farm.damsubsidy.common.utils.PdfUtil;
- import com.huimv.farm.test.Print;
- import com.spire.xls.FileFormat;
- import com.spire.xls.Workbook;
- import org.apache.tomcat.util.http.fileupload.FileUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.util.StringUtils;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.io.*;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.Map;
- /**
- * <p>
- * 补贴信息表 前端控制器
- * </p>
- *
- * @author author
- * @since 2023-04-26
- */
- @RestController
- @RequestMapping("/bill-subsidy")
- @CrossOrigin
- public class BillSubsidyController {
- @Autowired
- private IBillSubsidyService iBillSubsidyService;
- @PostMapping("/addApplication")
- public Result addApplication(HttpServletRequest httpServletRequest, @RequestBody BillSubsidy billSubsidy){
- return iBillSubsidyService.addApplication(httpServletRequest,billSubsidy);
- }
- @PostMapping("/saveApplication")
- public Result saveApplication(HttpServletRequest httpServletRequest, @RequestBody BillSubsidy billSubsidy){
- return iBillSubsidyService.saveApplication(httpServletRequest,billSubsidy);
- }
- @Autowired
- private IBillSubsidyService subsidyService;
- @RequestMapping("/list")
- public Result list(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
- return subsidyService.list(httpServletRequest, paramsMap);
- }
- @RequestMapping("/listById")
- public Result listById(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
- return subsidyService.listById(httpServletRequest, paramsMap);
- }
- @RequestMapping("/edit")
- public Result edit(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
- return subsidyService.edit(httpServletRequest, paramsMap);
- }
- @RequestMapping("/edit2")
- public Result edit2(HttpServletRequest httpServletRequest,
- @RequestParam("workImg") MultipartFile workImg,
- @RequestParam("id") String id,
- @RequestParam("type") String type,
- @RequestParam("rejectReason") String rejectReason) {
- String imgname = "成功";
- String originalFilename = workImg.getOriginalFilename();
- String filenameExtension = StringUtils.getFilenameExtension(originalFilename);
- String path = DateUtil.format(new Date(), "yyyy-MM");
- try {
- InputStream inputStream = workImg.getInputStream();
- BufferedInputStream in = new BufferedInputStream(inputStream);
- ByteArrayOutputStream out = new ByteArrayOutputStream(1024);
- byte[] temp = new byte[1024];
- int size = 0;
- while ((size = in.read(temp)) != -1) {
- out.write(temp, 0, size);
- }
- in.close();
- byte[] content = out.toByteArray();
- imgname = UUID.randomUUID() + "." + filenameExtension;
- UploadImage.sshSftp(content, path, imgname);
- } catch (Exception e) {
- e.printStackTrace();
- }
- String content = "https://img.ifarmcloud.com/images/" + path + "/" + imgname;
- Map<String, String> map = new HashMap<>();
- map.put("id", id);
- map.put("type", type);
- map.put("rejectReason", rejectReason);
- map.put("workAccptUrl", content);
- return subsidyService.edit2(httpServletRequest, map);
- }
- @RequestMapping("/appeal")
- public Result appeal(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
- return subsidyService.appeal(httpServletRequest, paramsMap);
- }
- @PostMapping("/editApplication")
- public Result editApplication(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> parasMap){
- return iBillSubsidyService.editApplication(httpServletRequest,parasMap);
- }
- @PostMapping("/listApplication")
- public Result listApplication(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> parasMap){
- return iBillSubsidyService.listApplication(httpServletRequest,parasMap);
- }
- @PostMapping("/getLast")
- public Result getLast(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> parasMap){
- return iBillSubsidyService.getLast(httpServletRequest,parasMap);
- }
- @PostMapping("/listPcSub")
- public Result listPcSub(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> parasMap){
- return subsidyService.listPcSub(httpServletRequest,parasMap);
- }
- @PostMapping("/listFlow")
- public Result listFlow(@RequestBody Map<String, String> parasMap){
- return iBillSubsidyService.listFlow(parasMap);
- }
- //打印
- @GetMapping("/print")
- public void print(HttpServletResponse response, HttpServletRequest httpServletRequest,@RequestParam(name = "id", required = true) Integer id) throws Exception {
- // Integer id=Integer.parseInt(parasMap.get("id"));
- BillSubsidy subsidy = subsidyService.getById(id);
- Print.print(subsidy);
- String path = "/opt/subsidy/order_contract.xls";
- //加载Excel文档
- Workbook wb = new Workbook();
- wb.loadFromFile(path);
- //调用方法保存为PDF格式
- String pdfPath = "/opt/subsidy/"+subsidy.getFarmerName()+".pdf";
- wb.saveToFile(pdfPath, FileFormat.PDF);
- // wb.getConverterSetting().setSheetFitToPage(true);
- // OutputStream outputStream = null;
- // wb.saveToStream(outputStream);
- PdfUtil.returnPdfStream2(response,pdfPath,subsidy.getFarmerName());
- //文件删除 TODO
- // File file = new File("G://"+subsidy.getFarmerName() + ".pdf");
- //
- // FileUtils.forceDelete(file);
- // Path path1 = Paths.get("/opt/subsidy/"+subsidy.getFarmerName()+".pdf");
- // Files.delete(path1);
- // Path path2 = Paths.get("/opt/subsidy/"+"order_contract"+".xls");
- // Files.delete(path2);
- }
- }
|