Pārlūkot izejas kodu

[chg] 年检和急修导出生成临时文件的目录移出到user.dir下

wcz 5 gadi atpakaļ
vecāks
revīzija
c4484539e2

+ 4 - 4
.gitignore

@@ -20,11 +20,11 @@
 .DS_Store
 node_modules
 /dist
-./logs
-./sql
+logs
+sql
 rest-client.env.json
-./repair
-./inspection
+repair
+inspection
 
 # local env files
 .env.local

+ 8 - 10
lift-business-service/src/main/java/cn/com/ty/lift/business/annualinspection/controller/AnnualInspectionController.java

@@ -27,7 +27,6 @@ import cn.hutool.http.HttpUtil;
 import cn.hutool.poi.excel.ExcelUtil;
 import cn.hutool.poi.excel.ExcelWriter;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.jms.core.JmsMessagingTemplate;
@@ -454,20 +453,19 @@ public class AnnualInspectionController {
         Validate.notNull(inspections, ValuePool.INSPECTION_NOT_EXIST);
 
         //压缩文件夹
-        File baseDir = null;
-        File zipFile = null;
+        File zipFile;
         try {
             //获取根目录
-            String dir = StrUtil.join(File.separator, System.getProperty("user.dir"), "inspection", IdWorker.getIdStr());
+            String generateCode = DateUtils.generateCode();
+            String dir = StrUtil.join(File.separator, System.getProperty("user.dir"), "inspection", generateCode);
             String zip = dir + ".zip";
-            baseDir = new File(dir);
             zipFile = new File(zip);
             log.info("dir: {}", dir);
             log.info("zip: {}", zip);
 
 
             //生成excel文件
-            String excel = File.separator + dir + File.separator + DateUtils.generateCode() + ".xlsx";
+            String excel = File.separator + dir + File.separator + generateCode + ".xlsx";
             log.info("生成excel: {}", excel);
             File excelFile = new File(excel);
             ExcelWriter writer = ExcelUtil.getBigWriter(excelFile, "年检记录表");
@@ -503,8 +501,8 @@ public class AnnualInspectionController {
             log.info("生成zipfile: {}", zip);
             ZipUtil.zip(dir, zip);
         } catch (Exception e) {
-            FileUtil.del(zipFile);
-            FileUtil.del(baseDir);
+//            FileUtil.del(zipFile);
+//            FileUtil.del(baseDir);
             log.error("生成文件失败", e);
             throw Validate.validateException("生成文件失败");
         }
@@ -527,8 +525,8 @@ public class AnnualInspectionController {
                 throw Validate.validateException("下载文件失败");
             }finally {
                 //删除临时根目录和zip文件
-                FileUtil.del(zipFile);
-                FileUtil.del(baseDir);
+//                FileUtil.del(zipFile);
+//                FileUtil.del(baseDir);
             }
         }
     }

+ 7 - 6
lift-business-service/src/main/java/cn/com/ty/lift/business/emergency/controller/EmergencyRepairController.java

@@ -33,7 +33,6 @@ import cn.hutool.http.HttpUtil;
 import cn.hutool.poi.excel.ExcelUtil;
 import cn.hutool.poi.excel.ExcelWriter;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.jms.core.JmsMessagingTemplate;
@@ -381,7 +380,7 @@ public class EmergencyRepairController {
 
         Validate.equals(entity.getStatus(), ValuePool.EMERGENCY_STATE_TO_DO, ValuePool.EMERGENCY_MUST_TO_DO);
         LocalDateTime assignTime = entity.getAssignTime();
-        LocalDateTime takingTime = entity.getTakingTime();
+        LocalDateTime takingTime = request.getTakingTime();
         if(Objects.nonNull(assignTime)){
             Validate.isTrue(assignTime.isBefore(takingTime), String.format(ValuePool.EMERGENCY_PROCESS_TIME_ILLEGAL,"派单时间", assignTime, assignTime));
         }
@@ -815,9 +814,11 @@ public class EmergencyRepairController {
         File zipFile = null;
         try {
             //获取根目录
+            String root = System.getProperty("user.dir") + File.separator + "repair";
             String templates = ResourceUtils.getURL("classpath:templates").getPath();
             String missing = templates + File.separator + "missing.jpg";
-            String dir = StrUtil.join(File.separator, System.getProperty("user.dir"), "repair", IdWorker.getIdStr());
+            String generateCode = DateUtils.generateCode();
+            String dir = StrUtil.join(File.separator, System.getProperty("user.dir"), "repair", generateCode);
             String zip = dir + ".zip";
             baseDir = new File(dir);
             zipFile = new File(zip);
@@ -825,7 +826,7 @@ public class EmergencyRepairController {
             log.info("zip: {}", zip);
 
             //生成excel文件
-            String excel = File.separator + dir + File.separator + DateUtils.generateCode() + ".xlsx";
+            String excel = File.separator + dir + File.separator + generateCode + ".xlsx";
             log.info("生成excel: {}", excel);
             File excelFile = new File(excel);
             ExcelWriter writer = ExcelUtil.getBigWriter(excelFile, "急修记录表");
@@ -923,8 +924,8 @@ public class EmergencyRepairController {
                 throw Validate.validateException("下载文件失败");
             } finally {
                 //删除临时根目录和zip文件
-                FileUtil.del(zipFile);
-                FileUtil.del(baseDir);
+//                FileUtil.del(zipFile);
+//                FileUtil.del(baseDir);
             }
         }
     }

+ 1 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/framework/aspect/GlobalDefaultExceptionHandler.java

@@ -70,7 +70,7 @@ public class GlobalDefaultExceptionHandler {
 
         // 过滤错误信息
         final List<StackTraceElement> elements = Stream.of(stackTrace)
-                .filter(st -> (st.getClassName().contains(classPrefix) && st.getFileName().contains(ValuePool.DOT_JAVA)))
+                .filter(st -> (st.getClassName().startsWith(classPrefix) && st.getFileName().endsWith(ValuePool.DOT_JAVA)))
                 .collect(Collectors.toCollection(LinkedList::new));
 
         final StackTraceElement[] dwStackTrace = new StackTraceElement[elements.size()];

+ 11 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/framework/conf/BigDecimalDeserializer.java

@@ -8,6 +8,7 @@ import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer;
 
 import java.io.IOException;
 import java.math.BigDecimal;
+import java.util.Objects;
 
 /**
  * BigDecimal反序列化: 默认四舍五入保留两位小数
@@ -23,6 +24,11 @@ public class BigDecimalDeserializer extends StdScalarDeserializer<BigDecimal> {
         super(BigDecimal.class);
     }
 
+    @Override
+    public Object getEmptyValue(DeserializationContext ctxt) {
+        return BigDecimal.ZERO;
+    }
+
     @Override
     public BigDecimal deserialize(JsonParser parser, DeserializationContext context) throws IOException, JsonProcessingException {
         BigDecimal value;
@@ -54,6 +60,10 @@ public class BigDecimalDeserializer extends StdScalarDeserializer<BigDecimal> {
                 // Otherwise, no can do:
                 value = ((BigDecimal) context.handleUnexpectedToken(_valueClass, parser));
         }
-        return value.setScale(2, BigDecimal.ROUND_HALF_UP);
+        if (Objects.nonNull(value)) {
+            return value.setScale(2, BigDecimal.ROUND_HALF_UP);
+        } else {
+            return value;
+        }
     }
 }