zss
2025-03-15 de3832e6560ead526d2ad86dd1feea39a39e3aef
报告调整2.0
已修改6个文件
已添加1个文件
106 ■■■■■ 文件已修改
cnas-server/src/main/java/com/yuanchu/mom/controller/SealController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/dto/ReportPageDto.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/dto/UrlListDto.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java 75 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/mapper/InsReportMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/static/report-template.docx 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/controller/SealController.java
@@ -52,7 +52,7 @@
    @ValueClassify("场所或设施")
    @ApiOperation(value="删除印章")
    @PostMapping("/delectSeal")
    public  Result delectSeal(@RequestBody Seal seal) {
    public  Result delectSeal(Seal seal) {
        return Result.success(sealService.removeById(seal));
    }
}
inspect-server/src/main/java/com/yuanchu/mom/dto/ReportPageDto.java
@@ -28,4 +28,6 @@
    //实验室id
    private Integer labId;
    private String orderType;
}
inspect-server/src/main/java/com/yuanchu/mom/dto/UrlListDto.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package com.yuanchu.mom.dto;
import com.deepoove.poi.data.PictureRenderData;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
//
public class UrlListDto {
    @ApiModelProperty("图片1")
    private PictureRenderData imageOne;
    @ApiModelProperty("图片2")
    private PictureRenderData imageTwo;
}
inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java
@@ -613,7 +613,7 @@
                XWPFParagraph paragraph6 = table.getRow(0).getCell(cell - 1).getParagraphArray(0);
                paragraph6.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run6 = paragraph6.createRun();
                run6.setText("/");
                run6.setText("判定");
                XWPFParagraph paragraph7 = table.getRow(2).getCell(cell - 1).getParagraphArray(0);
                paragraph7.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run7 = paragraph7.createRun();
@@ -625,7 +625,7 @@
                XWPFParagraph paragraph9 = table.getRow(row - 1).getCell(cell - 1).getParagraphArray(0);
                paragraph9.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run9 = paragraph9.createRun();
                run9.setText("/");
                run9.setText("");
                for (int i = 0; i < collect.size(); i++) {
                    String s3 = collect.get(i);
                    if (s3.contains("端口")) {
@@ -838,7 +838,7 @@
                XWPFParagraph paragraph6 = table.getRow(0).getCell(cell - 1).getParagraphArray(0);
                XWPFRun run6 = paragraph6.createRun();
                run6.setText("/");
                run6.setText("判定");
                XWPFParagraph paragraph7 = table.getRow(1).getCell(cell - 1).getParagraphArray(0);
                XWPFRun run7 = paragraph7.createRun();
@@ -851,7 +851,7 @@
                XWPFParagraph paragraph9 = table.getRow(row - 1).getCell(cell - 1).getParagraphArray(0);
                XWPFRun run9 = paragraph9.createRun();
                run9.setText("/");
                run9.setText("");
                for (int i = 0; i < collect.size(); i++) {
                    String s3 = collect.get(i);
inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
@@ -283,7 +283,6 @@
                        cells.add(cellRenderData);
                    }
                    else {
                        i=i-1;
                        if (insOrderState.getVersion() == 1) {
                            //非电调版本(简单版)
                            if (inspectionItemSubclass.contains("电压驻波比") && i <= 2 * portRow) {
@@ -905,7 +904,8 @@
                                    paragraphRenderDataList.add(paragraphRenderData);
                                    cellRenderData.setParagraphs(paragraphRenderDataList);
                                    cells.add(cellRenderData);
                                } else if (j == bb - 1) {
                                }
                                else if (j == bb - 1) {
                                    //最后一列
                                    if (i % (angles + 1) == 1) {
                                        textRenderData.setText("判定");
@@ -2692,16 +2692,15 @@
        List<Map<String, Object>> tables2 = new ArrayList<>();
        if (strings.contains("电路试验")) {
            /*勾选的电路试验表*/
            for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) {
            List<InsReportDto2> dto2s = insReportDto1.getInsReportDto2s().stream().filter(insReportDto2 -> insReportDto2.getLaboratory().equals("电路试验")).collect(Collectors.toList());
            for (InsReportDto2 insReportDto2 : dto2s) {
                InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto2.getInsOrderUsersId());
                InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
                if (orderState.getLaboratory().equals("电路试验")) {
                    orderState.setNum(insOrderUser.getNum());
                    if (!insOrder.getSampleType().equals("无源器件")) {
                        getWord1(insOrderUser.getTerm(), orderState, tables2);
                    } else {
                        getWord2(insOrderUser.getTerm(), orderState, tables2);
                    }
                }
            }
        }
@@ -2948,27 +2947,25 @@
        /*检验样品信息*/
        //样品照片
        List<UrlListDto> urlList = new ArrayList<>();
        //获取附件图片类型
        List<List<Map<String, Object>>> imageRows = new ArrayList<>();
        List<Map<String, Object>> currentRow = new ArrayList<>();
        List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery()
                .eq(InsOrderFile::getType, 1)
                .eq(InsOrderFile::getInsSampleId,insReportDto1.getSampleId())
                .eq(InsOrderFile::getInsOrderId, orderId));
        if (CollectionUtils.isNotEmpty(insOrderFiles)) {
            UrlListDto urlListDto = new UrlListDto();
            for (int i = 0; i < insOrderFiles.size(); i++) {
                Map<String, Object> image = new HashMap<>();
                PictureRenderData pictureRenderData = Pictures.ofLocal(imgUrl + "/" + insOrderFiles.get(i).getFileUrl()).sizeInCm(8, 10).create();
                image.put("url", pictureRenderData);
                currentRow.add(image);
                if ((i + 1) % 2 == 0 || i == insOrderFiles.size() - 1) {
                    imageRows.add(currentRow);
                    currentRow = new ArrayList<>();
                if (i % 2 == 0) {
                    urlListDto = new UrlListDto();
                    urlListDto.setImageOne(Pictures.ofLocal(imgUrl + "/" + insOrderFiles.get(i).getFileUrl()).create());
                } else {
                    urlListDto.setImageTwo(Pictures.ofLocal(imgUrl + "/" + insOrderFiles.get(i).getFileUrl()).create());
                    urlList.add(urlListDto);
                }
                if (i == insOrderFiles.size() - 1) {
                    urlList.add(urlListDto);
            }
            // å¦‚果最后一行不足两个,也添加到结果中
            if (!currentRow.isEmpty()) {
                imageRows.add(currentRow);
            }
        }
        //样品编号参照上述sampleCode
@@ -2990,20 +2987,17 @@
            String insUser = insUserList.stream().map(insSampleUser -> {
                User user = userMapper.selectById(insSampleUser.getUserId());
                return user.getName();
            }).collect(Collectors.joining(","));
            }).distinct().collect(Collectors.joining(","));
            insUserDto.setInsUser(insUser);//测试人员
            List<InsSampleUser> checkUserList = entry.getValue().stream().filter(insSampleUser -> insSampleUser.getState() == 1).collect(Collectors.toList());//复核人
            String checkUser = checkUserList.stream().map(insSampleUser -> {
                User user = userMapper.selectById(insSampleUser.getUserId());
                return user.getName();
            }).collect(Collectors.joining(","));
            }).distinct().collect(Collectors.joining(","));
            insUserDto.setCheckUser(checkUser);//审核人员
            insUsers.add(insUserDto);
            index2++;
        }
        /*测试仪表*/
        Set<String> deviceSet = new HashSet<>();
@@ -3048,6 +3042,7 @@
                .bind("insProductList", new HackLoopTableRenderPolicy())
                .bind("devList", new HackLoopTableRenderPolicy())
                .bind("insUsers", new HackLoopTableRenderPolicy())
                .bind("urlList", new HackLoopTableRenderPolicy())
                .build();
        List<DevListDto> finalDevList = devList;
        String finalTitle = title3;
@@ -3072,7 +3067,7 @@
                    put("title3", finalTitle);                  //检测结果
                    put("tables3", tables3);                    //检测结果
                    put("tables4", tables4);                    //检测结果
                    put("images", imageRows);                   //样品照片
                    put("urlList", urlList);                   //样品照片
                    put("insUsers", insUsers);                //检测人员信息
                    put("devList", finalDevList);                //测试仪表
                    put("writeUrl", null);                      //提交人
@@ -3198,19 +3193,19 @@
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        //目录更新
        try{
            com.spire.doc.Document document = new com.spire.doc.Document();
            document.loadFromFile(path);
            // æ›´æ–°ç›®å½•
            document.updateTableOfContents();
            // ä¿å­˜æ–‡æ¡£
            document.saveToFile(path, FileFormat.Docx);
            document.close();
        }
        catch (Exception e) {
            throw new RuntimeException(e);
        }
//        //目录更新
//        try{
//            com.spire.doc.Document document = new com.spire.doc.Document();
//            document.loadFromFile(path);
//            // æ›´æ–°ç›®å½•
//            document.updateTableOfContents();
//            // ä¿å­˜æ–‡æ¡£
//            document.saveToFile(path, FileFormat.Docx);
//            document.close();
//        }
//        catch (Exception e) {
//            throw new RuntimeException(e);
//        }
    }
@@ -3447,7 +3442,9 @@
                        paragraphRenderDataList.add(paragraphRenderData);
                        cellRenderData.setParagraphs(paragraphRenderDataList);
                        cells.add(cellRenderData);
                    } else {
                    }
                    else {
                        int u = i;
                        i=i-1;
                        if (insOrderState.getVersion() == 1) {
                            //非电调版本(简单版)
@@ -4013,7 +4010,8 @@
                                    cells.add(cellRenderData);
                                }
                            }
                        } else {
                        }
                        else {
                            //电调版本(复杂版)
                            if (inspectionItemSubclass.contains("电压驻波比") && i <= (angles + 1) * portRow) {
                                cc = (angles + 1) * portRow;
@@ -5317,6 +5315,7 @@
                                }
                            }
                        }
                        i=u;
                    }
                }
                rowRenderData.setCells(cells);
inspect-server/src/main/resources/mapper/InsReportMapper.xml
@@ -24,7 +24,7 @@
        from (
        select
        ir.*,io.entrust_code,sample_code,u.name write_user_name,u1.name ratify_user,u2.name
        examine_user,io.laboratory,l.id labId
        examine_user,io.laboratory,l.id labId,order_type
        from ins_report ir
        left join ins_order io on io.id = ir.ins_order_id
        left join ins_sample isa on isa.id = ir.ins_sample_id
inspect-server/src/main/resources/static/report-template.docx
Binary files differ