liusheng
2024-07-26 32d4054619138c34062fb6bdcfed27caf5d0f97f
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/PdfMergeController.java
@@ -1,54 +1,32 @@
package com.ruoyi.web.controller.project;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.NotRepeatCommit;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.itextpdf.text.DocumentException;
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.constant.HttpStatus;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.MergeFilesToPDFUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.mapper.ServiceFunddetailMapper;
import com.ruoyi.project.service.*;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysPostService;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import com.ruoyi.project.domain.MegerIsRemove;
import com.ruoyi.project.domain.ServiceDonateannex;
import com.ruoyi.project.domain.ServiceDonatebaseinfo;
import com.ruoyi.project.service.IBaseOnlyvalueService;
import com.ruoyi.project.service.IServiceDonateannexService;
import com.ruoyi.project.service.IServiceDonatebaseinfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Options;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
import static com.ruoyi.web.controller.project.ServiceReimbursementController.convert;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
/**
 * PDF合并
@@ -123,10 +101,15 @@
            //获取合并名称
            ServiceDonatebaseinfo donatebaseinfo = donatebaseinfoService.getById(serviceDonateannexes.get(0).getInfoid());
            String fileName = donatebaseinfo.getDonorno() + donatebaseinfo.getName() + ".pdf";
            String[] str = list.toArray(new String[0]);
            //文件合并
            mergeFilesToPDFUtils.mergePDF(str, fileName, response);
            String fileName = donatebaseinfo.getIdcardno() + donatebaseinfo.getName() + ".pdf";
            try {
                //文件合并
                mergeFilesToPDFUtils.mergePdfFiles(list, fileName);
            } catch (IOException e) {
                e.printStackTrace();
            } catch (DocumentException e) {
                e.printStackTrace();
            }
            //删除临时文件
            for (MegerIsRemove megerIsRemove : megerIsRemoveList) {
                if (megerIsRemove.getIsdel()) {