zhuo
2025-04-22 cfbb549f0e21b8729046070c702be9fdd432b3e0
样品处理导出调整
已修改4个文件
37 ■■■■ 文件已修改
cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-process/src/main/java/com/ruoyi/process/service/impl/ProcessTotaldealServiceImpl.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-process/src/main/resources/static/sample-deal.docx 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-ztzb.yml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java
@@ -174,7 +174,7 @@
                processSample.setSampleName(insSample.getSample());//样品名称
                processSample.setNum(1);//样品数量=1
                processSample.setSampleSupplier(inspectionOrder.getCommissionUnit());//来样单位
                LocalDate plusMonths = inspectionOrder.getSampleData().plusMonths(1);
                LocalDate plusMonths = inspectionOrder.getSampleData() == null ? null : inspectionOrder.getSampleData().plusMonths(1);
                processSample.setLeaveDate(plusMonths);//留样日期=收样日期往后延一个月
                processSample.setSampleState(inspectionOrder.getSampleStatus());//样品状态
                processSample.setDealTime(plusMonths);//退样日期=留样日期
cnas-process/src/main/java/com/ruoyi/process/service/impl/ProcessTotaldealServiceImpl.java
@@ -16,6 +16,7 @@
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.framework.exception.ErrorException;
import com.ruoyi.inspect.util.HackLoopTableRenderPolicy;
import com.ruoyi.inspect.util.UserUtils;
import com.ruoyi.process.mapper.InspectionOrderMapper;
import com.ruoyi.process.mapper.ProcessDealMapper;
import com.ruoyi.process.mapper.ProcessSampleMapper;
@@ -186,41 +187,18 @@
    public void exportProcessTotaldeal(Integer id, HttpServletResponse response) {
        List<ProcessDeal> sampleDealDtos = processDealMapper.selectDeal(id);
        ProcessTotaldeal processTotaldeal = processTotaldealMapper.selectById(id);
        String submitUserUrl="1";
        String examineUserUrl="1";
        String ratifyUserUrl="1";
        //获取提交人签名
        if (ObjectUtils.isNotNull(processTotaldeal.getSubmitUser())) {
            User user1 = userMapper.selectById(processTotaldeal.getSubmitUser());
            if (ObjectUtils.isEmpty(user1.getSignatureUrl())) throw new ErrorException("未找到提交人的电子签名,请上传自己的电子签名!");
            submitUserUrl = user1.getSignatureUrl();
        }
        //获取审核人签名
        if (ObjectUtils.isNotNull(processTotaldeal.getExamineUser())) {
            User user2 = userMapper.selectById(processTotaldeal.getExamineUser());
            if (ObjectUtils.isEmpty(user2.getSignatureUrl())) throw new ErrorException("未找到审核人的电子签名,请上传自己的电子签名!");
            examineUserUrl = user2.getSignatureUrl();
        }
        //获取批准人签名
        if (ObjectUtils.isNotNull(processTotaldeal.getRatifyUser())) {
            User user3 = userMapper.selectById(processTotaldeal.getRatifyUser());
            if (ObjectUtils.isEmpty(user3.getSignatureUrl())) throw new ErrorException("未找到批准人的电子签名,请上传自己的电子签名!");
            ratifyUserUrl = user3.getSignatureUrl();
        }
        // 获取路径
        InputStream inputStream = this.getClass().getResourceAsStream("/static/sample-deal.docx");
        Configure configure = Configure.builder()
                .bind("sampleList", new HackLoopTableRenderPolicy())
                .build();
        FilePictureRenderData finalSubmitUserUrl = submitUserUrl!="1" ? new FilePictureRenderData(100, 50, imgUrl + "/" + submitUserUrl) : null;
        FilePictureRenderData finalExamineUserUrl = examineUserUrl!="1" ? new FilePictureRenderData(100, 50, imgUrl + "/" + examineUserUrl) : null;
        FilePictureRenderData finalRatifyUserUrl = ratifyUserUrl!="1" ? new FilePictureRenderData(100, 50, imgUrl + "/" + ratifyUserUrl) : null;
        XWPFTemplate template = XWPFTemplate.compile(inputStream, configure).render(
                new HashMap<String, Object>() {{
                    put("sampleList", sampleDealDtos);
                    put("examineUrl", finalExamineUserUrl);//审核人
                    put("ratifyUrl", finalRatifyUserUrl);//批准人
                    put("writeUrl",finalSubmitUserUrl);//提交人
                    put("writeUrl",UserUtils.getFinalUserSignatureUrl(processTotaldeal.getSubmitUser()));//提交人
                    put("examineUrl", UserUtils.getFinalUserSignatureUrl(processTotaldeal.getExamineUser()));//审核人
                    put("ratifyUrl", UserUtils.getFinalUserSignatureUrl(processTotaldeal.getRatifyUser()));//批准人
                }});
        try {
            response.setContentType("application/msword");
cnas-process/src/main/resources/static/sample-deal.docx
Binary files differ
ruoyi-admin/src/main/resources/application-ztzb.yml
@@ -11,6 +11,9 @@
        url: jdbc:mysql://127.0.0.1:3306/center-lims?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: zttZTT123!
#        只读用户权限
#        username: readonly
#        password: zttZTT123@@
      # 从库数据源
      slave: