123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- package com.huimv.farm.damsubsidy.controller;
- import cn.hutool.core.date.DateUtil;
- import cn.hutool.core.lang.UUID;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.huimv.farm.damsubsidy.common.token.TokenSign;
- import com.huimv.farm.damsubsidy.common.utils.Result;
- import com.huimv.farm.damsubsidy.common.utils.UploadImage;
- import com.huimv.farm.damsubsidy.entity.AreaAll;
- import com.huimv.farm.damsubsidy.entity.BillSubsidy;
- import com.huimv.farm.damsubsidy.entity.SysUser;
- import com.huimv.farm.damsubsidy.service.IAreaAllService;
- import com.huimv.farm.damsubsidy.service.IBillSubsidyService;
- import com.huimv.farm.damsubsidy.common.utils.PdfUtil;
- import com.huimv.farm.damsubsidy.service.ISysUserService;
- import com.huimv.farm.damsubsidy.test.QrCodeExcelPrinter;
- import com.huimv.farm.test.Print;
- import com.huimv.farm.test.Print2;
- import com.spire.xls.*;
- 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.util.*;
- /**
- * <p>
- * 补贴信息表 前端控制器
- * </p>
- *
- * @author author
- * @since 2023-04-26
- */
- @RestController
- @RequestMapping("/bill-subsidy")
- @CrossOrigin
- public class BillSubsidyController {
- @Autowired
- private IBillSubsidyService iBillSubsidyService;
- @Autowired
- private IAreaAllService iAreaAllService;
- @Autowired
- private ISysUserService iSysUserService;
- @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);
- QrCodeExcelPrinter codeExcelPrinter = new QrCodeExcelPrinter();
- codeExcelPrinter.test();
- Print.print(subsidy);
- String path = "/opt/subsidy/order_contract.xls";
- //加载Excel文档
- Workbook wb = new Workbook();
- wb.loadFromFile(path);
- Worksheet sheet = wb.getWorksheets().get(0);
- //添加图片
- ExcelPicture picture = sheet.getPictures().add(37, 10, "/opt/subsidy/a.png");
- picture.setHeight(70);//设置图片高度
- picture.setWidth(75);//设置图片宽度
- Worksheet worksheet = wb.getWorksheets().get(0);
- worksheet.getRange().get("E3").getStyle().setWrapText(true);//地址自动换行
- worksheet.getRange().get("C3").getStyle().setWrapText(true);//名字自动换行
- worksheet.getRange().get("C18").getStyle().setWrapText(true);//耳标号
- //调用方法保存为PDF格式
- String pdfPath = "/opt/subsidy/" + subsidy.getFarmerName() + ".pdf";
- wb.saveToFile(pdfPath, FileFormat.PDF);
- wb.dispose();
- PdfUtil.returnPdfStream2(response, pdfPath, subsidy.getFarmerName());
- //文件删除 TODO
- File file = new File(pdfPath);
- //
- FileUtils.forceDelete(file);
- }
- @PostMapping("/updatePayStatus")
- public Result updatePayStatus(@RequestBody Map<String, String> paramsMap) {
- String ids = paramsMap.get("ids");
- String[] split = ids.split(",");
- List list = new ArrayList();
- for (String s : split) {
- BillSubsidy billSubsidy = new BillSubsidy();
- billSubsidy.setId(Long.parseLong(s));
- billSubsidy.setIsPay(2);
- list.add(billSubsidy);
- }
- subsidyService.updateBatchById(list);
- return new Result(10000, "批量修改成功", true);
- }
- @PostMapping("/printPay2")
- public Result printPay(HttpServletResponse response, @RequestBody Map<String, String> paramsMap) throws IOException {
- return subsidyService.printPay(response, paramsMap);
- }
- @GetMapping("/printPay")
- public void printPay2(HttpServletResponse response, @RequestParam(name = "startDate", required = false) String startDate,
- @RequestParam(name = "endDate", required = false) String endDate
- ) throws IOException {
- subsidyService.printPay2(response, startDate, endDate);
- }
- //阶段性统计表
- @GetMapping("/printAmount")
- public void printAmount(HttpServletResponse response, HttpServletRequest httpServletRequest, @RequestParam(name = "country", required = false) String country
- , @RequestParam(name = "startDate", required = true) String startDate, @RequestParam(name = "endDate", required = true) String endDate,
- @RequestParam(name = "type", required = true) Integer type, @RequestParam(name = "id", required = false) String id
- ) throws Exception {
- if (type == 0) {
- //畜牧中心
- if (country == null || "".equals(country)) {
- //打印县
- Map<String, String> map = new HashMap<>();
- map.put("start", startDate);
- map.put("end", endDate);
- map.put("code", "1");
- iBillSubsidyService.printAmount(response, map);
- String path = "/opt/subsidy/xian.xls";
- PdfUtil.returnPdfStream3(response, path, "县阶段性统计表");
- } else {
- //打印镇
- Map<String, String> map = new HashMap<>();
- map.put("start", startDate);
- map.put("end", endDate);
- map.put("code", country);
- iBillSubsidyService.printAmount(response, map);
- String path = "/opt/subsidy/amount.xls";
- PdfUtil.returnPdfStream3(response, path, "镇阶段性统计表");
- }
- } else {
- //专干
- SysUser user = iSysUserService.getById(id);
- country = user.getBriefAddressCode();//镇的编码
- Map<String, String> map = new HashMap<>();
- map.put("start", startDate);
- map.put("end", endDate);
- map.put("code", country);
- iBillSubsidyService.printAmount(response, map);
- String path = "/opt/subsidy/amount.xls";
- PdfUtil.returnPdfStream3(response, path, "镇阶段性统计表");
- }
- }
- //阶段性待支付统计表
- @GetMapping("/printWaitPay")
- public void printWaitPay(HttpServletResponse response, @RequestParam(name = "country", required = false) String country
- , @RequestParam(name = "startDate", required = true) String startDate, @RequestParam(name = "endDate", required = true) String endDate,
- @RequestParam(name = "id", required = false) String id, @RequestParam(name = "type", required = false) Integer type
- ) throws Exception {
- if (type == 0) {
- //畜牧中心
- Map<String, String> map = new HashMap<>();
- map.put("start", startDate);
- map.put("end", endDate);
- map.put("code", country);
- iBillSubsidyService.printWaitPay(response, map);
- String path = "/opt/subsidy/pay.xls";
- PdfUtil.returnPdfStream3(response, path, "待支付表");
- } else {
- //专干
- SysUser byId = iSysUserService.getById(id);
- Map<String, String> map = new HashMap<>();
- map.put("start", startDate);
- map.put("end", endDate);
- map.put("code", byId.getBriefAddressCode());
- iBillSubsidyService.printWaitPay(response, map);
- String path = "/opt/subsidy/pay.xls";
- PdfUtil.returnPdfStream3(response, path, "待支付表");
- }
- //文件删除 TODO
- }
- //阶段性统计表展示
- @PostMapping("/listCount")
- public Result listCount(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> parasMap) {
- return iBillSubsidyService.countState(httpServletRequest, parasMap);
- }
- //阶段性待支付统计表展示
- @PostMapping("/listCountPay")
- public Result listCountPay(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> parasMap) {
- return iBillSubsidyService.countPay(httpServletRequest, parasMap);
- }
- }
|