Переглянути джерело

1。处理化验明细有设备 但是设备列表查询不到的兜底处理 2.修改打完包以后无法获取目标文件的问题

王苗苗 5 місяців тому
батько
коміт
736689b3ac

+ 10 - 4
ruoyi-admin/src/main/java/com/ruoyi/web/controller/business/BusinessController.java

@@ -55,9 +55,15 @@ public class BusinessController extends BaseController {
     @Value("${assay.report.recordDir}")
     private String reportDir;
 
+    @Value("${assay.report.reportTemplateFile}")
+    private String reportTemplateFile;
+
     @Value("${assay.report.countDir}")
     private String countDir;
 
+    @Value("${assay.report.countTemplateFile}")
+    private String countTemplateFile;
+
     @Value("${assay.report.continuousCountDir}")
     private String continuousCountDir;
 
@@ -164,7 +170,7 @@ public class BusinessController extends BaseController {
         List<AssayDetailRes> list = this.businessService.assayPageListByDeviceNoAndDate(assayReq);
         DynamicDataSourceContextHolder.clearDataSourceType();
         // 模板文件路径
-        String templateFilePath = this.getClass().getClassLoader().getResource("").getPath() + "/assay-record.xlsx";
+//        String templateFilePath = this.getClass().getClassLoader().getResource("").getPath() + "/assay-record.xlsx";
 //        String templateFilePath = "classpath:/assay-record.xlsx";
         // 输出文件路径
 //        String outFilePath = "/Users/wangmiaomiao/Desktop/" + DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", DateUtils.getNowDate()) + ".xlsx";
@@ -174,7 +180,7 @@ public class BusinessController extends BaseController {
                 // 写入到
                 .write(reportDir)
                 // 指定模板
-                .withTemplate(templateFilePath)
+                .withTemplate(reportTemplateFile)
                 .build();
         WriteSheet sheet = EasyExcel.writerSheet().build();
 
@@ -220,7 +226,7 @@ public class BusinessController extends BaseController {
         List<AssayQualityDetailRes> list = this.businessService.assayCountListByDates(assayReq);
         DynamicDataSourceContextHolder.clearDataSourceType();
         // 模板文件路径
-        String templateFilePath = this.getClass().getClassLoader().getResource("").getPath() + "/assay-count.xlsx";
+//        String templateFilePath = this.getClass().getClassLoader().getResource("").getPath() + "/assay-count.xlsx";
 //        String templateFilePath = "classpath:/assay-record.xlsx";
         // 输出文件路径
 //        String outFilePath = "/Users/wangmiaomiao/Desktop/" + DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", DateUtils.getNowDate()) + ".xlsx";
@@ -230,7 +236,7 @@ public class BusinessController extends BaseController {
                 // 写入到
                 .write(countDir)
                 // 指定模板
-                .withTemplate(templateFilePath)
+                .withTemplate(countTemplateFile)
                 .build();
         WriteSheet sheet = EasyExcel.writerSheet().build();
 

+ 2 - 0
ruoyi-admin/src/main/resources/application-dev.yml

@@ -68,5 +68,7 @@ log:
 assay:
     report:
         recordDir: /home/smartrobot/化验记录.xlsx
+        reportTemplateFile: /home/smartrobot/assay-record.xlsx
         countDir: /home/smartrobot/实验室报表.xlsx
+        countTemplateFile: //home/smartrobot/assay-count.xlsx
         continuousCountDir: /home/smartrobot/连续检测报表.xlsx

+ 2 - 0
ruoyi-admin/src/main/resources/application-local.yml

@@ -70,5 +70,7 @@ log:
 assay:
     report:
         recordDir: /Users/wangmiaomiao/Desktop/化验记录.xlsx
+        reportTemplateFile: /Users/wangmiaomiao/Desktop/assay-record.xlsx
         countDir: /Users/wangmiaomiao/Desktop/实验室报表.xlsx
+        countTemplateFile: /Users/wangmiaomiao/Desktop/assay-count.xlsx
         continuousCountDir: /Users/wangmiaomiao/Desktop/连续检测报表.xlsx

+ 13 - 10
ruoyi-system/src/main/java/com/ruoyi/business/service/impl/BusinessServiceImpl.java

@@ -334,22 +334,25 @@ public class BusinessServiceImpl implements IBusinessService {
         //分别处理化验设备的名称、水厂的名字字段(没有通过SQL关联查询,数据量大会很慢。。。)
         //化验室
         List<BizDevice> bizDevices = this.bizDeviceMapper.selectBizDeviceList(BizDevice.builder().deviceNo(assayDetailRes.getDeviceNo()).build());
-        if(!CollectionUtils.isEmpty(bizDevices)){
-            assayDetailRes.setDeviceName(bizDevices.get(0).getDeviceName());
-            assayDetailRes.setDeviceWorks(bizDevices.get(0).getDeviceWorks());
-        }
         //水厂
         /*List<BizWaterWork> bizWaterWorks = this.bizWaterWorkMapper.selectBizWaterWorkList(BizWaterWork.builder().worksId(assayDetailRes.getDeviceWorks()).build());
         if(!CollectionUtils.isEmpty(bizWaterWorks)){
             assayDetailRes.setWorksName(bizWaterWorks.get(0).getWorksName());
         }*/
-        Long deviceWorks = bizDevices.get(0).getDeviceWorks();
-        if(Objects.isNull(deviceWorks)){
-            log.error("通过化验结果的化验设备编号查询设备记录时,没有查询到设备记录,导致无法获取水厂信息");
+        if(CollectionUtils.isEmpty(bizDevices)){
+            log.error("通过化验明细的设备号查询设备时,没有查询到对应的设备信息");
         }else{
-            BizWaterWork bizWaterWork = this.bizWaterWorkMapper.selectBizWaterWorkByWorksId(deviceWorks);
-            if(!Objects.isNull(bizWaterWork)){
-                assayDetailRes.setWorksName(bizWaterWork.getWorksName());
+            BizDevice bizDevice = bizDevices.get(0);
+            assayDetailRes.setDeviceName(bizDevice.getDeviceName());
+            assayDetailRes.setDeviceWorks(bizDevice.getDeviceWorks());
+            Long deviceWorks = bizDevice.getDeviceWorks();
+            if(Objects.isNull(deviceWorks)){
+                log.error("通过化验结果的化验设备编号查询设备记录时,没有查询到设备记录id,导致无法获取水厂信息");
+            }else{
+                BizWaterWork bizWaterWork = this.bizWaterWorkMapper.selectBizWaterWorkByWorksId(deviceWorks);
+                if(!Objects.isNull(bizWaterWork)){
+                    assayDetailRes.setWorksName(bizWaterWork.getWorksName());
+                }
             }
         }
         //通过化验编号查询所有的化验明细,然后根据类型计算对应的