From 9cd4074a456fd5c422506279191b6015836347e5 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 30 十月 2026 10:08:35 +0800
Subject: [PATCH] feat: 设备台账启用状态、审批签核展示与导入健壮性

---
 src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java |   37 +++++++++++++++++++++++++++++++++++--
 1 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java b/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java
index bb2ebb5..8d7b690 100644
--- a/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java
+++ b/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java
@@ -476,6 +476,22 @@
                             val = DateUtil.getJavaDate((Double) val);
                         }
                     }
+                    else if (LocalDate.class == fieldType)
+                    {
+                        if (val instanceof String)
+                        {
+                            Date date = DateUtils.parseDate(val);
+                            val = StringUtils.isNull(date) ? null : DateUtils.toLocalDate(date);
+                        }
+                        else if (val instanceof Date)
+                        {
+                            val = DateUtils.toLocalDate((Date) val);
+                        }
+                        else if (val instanceof Double)
+                        {
+                            val = DateUtils.toLocalDate(DateUtil.getJavaDate((Double) val));
+                        }
+                    }
                     else if (Boolean.TYPE == fieldType || Boolean.class == fieldType)
                     {
                         val = Convert.toBool(val, false);
@@ -519,7 +535,11 @@
                         ReflectUtils.invokeSetter(entity, propertyName, val);
                     }
                 }
-                list.add(entity);
+                // 琛ㄥご涓庢ā鏉夸笉涓�鑷存椂杩欎竴琛屽彲鑳芥病鏈夊尮閰嶅埌浠讳綍瀛楁锛宔ntity 涓� null锛岃烦杩囦互鍏嶈皟鐢ㄦ柟绌烘寚閽�
+                if (entity != null)
+                {
+                    list.add(entity);
+                }
             }
         }
         return list;
@@ -657,6 +677,15 @@
                         } else if (val instanceof Double) {
                             val = DateUtil.getJavaDate((Double) val);
                         }
+                    } else if (LocalDate.class == fieldType) {
+                        if (val instanceof String) {
+                            Date date = DateUtils.parseDate(val);
+                            val = StringUtils.isNull(date) ? null : DateUtils.toLocalDate(date);
+                        } else if (val instanceof Date) {
+                            val = DateUtils.toLocalDate((Date) val);
+                        } else if (val instanceof Double) {
+                            val = DateUtils.toLocalDate(DateUtil.getJavaDate((Double) val));
+                        }
                     } else if (Boolean.TYPE == fieldType || Boolean.class == fieldType) {
                         val = Convert.toBool(val, false);
                     }
@@ -689,7 +718,11 @@
                         ReflectUtils.invokeSetter(entity, propertyName, val);
                     }
                 }
-                list.add(entity);
+                // 琛ㄥご涓庢ā鏉夸笉涓�鑷存椂杩欎竴琛屽彲鑳芥病鏈夊尮閰嶅埌浠讳綍瀛楁锛宔ntity 涓� null锛岃烦杩囦互鍏嶈皟鐢ㄦ柟绌烘寚閽�
+                if (entity != null)
+                {
+                    list.add(entity);
+                }
             }
         }
         return list;

--
Gitblit v1.9.3