From a0192d4e092d0330745bfb0b8f83d9039d53c57c Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期日, 20 九月 2026 09:55:45 +0800
Subject: [PATCH] bug:加载问题

---
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java |   40 ++++++++++++++++++++++++++++++----------
 1 files changed, 30 insertions(+), 10 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
index 70f6226..388efe3 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -610,7 +610,7 @@
             return ResultUtil.error("验证码无效", "");
         }
         TAppUser tAppUser = this.baseMapper.selectOne(new QueryWrapper<TAppUser>().eq("phone", loginSMSCodeVo.getPhone()).ne("state", 3));
-        System.out.println(tAppUser.getId()+"!!!!!!!!");
+//        System.out.println(tAppUser.getId()+"!!!!!!!!");
         if (null == tAppUser) {
             tAppUser = new TAppUser();
             tAppUser.setCode(UUIDUtil.getNumberRandom(16));
@@ -829,6 +829,9 @@
             Store s = null;
             Double d = 0D;
             for (Store store : stores) {
+                if (store == null || !isValidCoordinate(store.getLon(), store.getLat())) {
+                    continue;
+                }
                 Map<String, Double> distance = GeodesyUtil.getDistance(lon + "," + lat, store.getLon() + "," + store.getLat());
                 Double wgs84 = distance.get("WGS84");
                 if (s == null || d > wgs84) {
@@ -836,19 +839,36 @@
                     d = wgs84;
                 }
             }
-            joinPlayPaiVo.setName(s.getName());
-            joinPlayPaiVo.setLon(s.getLon());
-            joinPlayPaiVo.setLat(s.getLat());
-            joinPlayPaiVo.setStoreId(s.getId());
-            joinPlayPaiVo.setPhone(s.getPhone());
-            joinPlayPaiVo.setProvince(s.getProvince());
-            joinPlayPaiVo.setProvinceCode(s.getProvinceCode());
-            joinPlayPaiVo.setCity(s.getCity());
-            joinPlayPaiVo.setCityCode(s.getCityCode());
+            if (s != null) {
+                joinPlayPaiVo.setName(s.getName());
+                joinPlayPaiVo.setLon(s.getLon());
+                joinPlayPaiVo.setLat(s.getLat());
+                joinPlayPaiVo.setStoreId(s.getId());
+                joinPlayPaiVo.setPhone(s.getPhone());
+                joinPlayPaiVo.setProvince(s.getProvince());
+                joinPlayPaiVo.setProvinceCode(s.getProvinceCode());
+                joinPlayPaiVo.setCity(s.getCity());
+                joinPlayPaiVo.setCityCode(s.getCityCode());
+            }
         }
         return joinPlayPaiVo;
     }
 
+    private boolean isValidCoordinate(String lon, String lat) {
+        if (ToolUtil.isEmpty(lon) || ToolUtil.isEmpty(lat)) {
+            return false;
+        }
+        try {
+            double longitude = Double.parseDouble(lon.trim());
+            double latitude = Double.parseDouble(lat.trim());
+            return Double.isFinite(longitude) && Double.isFinite(latitude)
+                    && longitude >= -180 && longitude <= 180
+                    && latitude >= -90 && latitude <= 90;
+        } catch (NumberFormatException e) {
+            return false;
+        }
+    }
+
     @Override
     public IndexOfUserBenefirVo queryBenefitDetails(Integer appUserId, String lon, String lat) {
         IndexOfUserBenefirVo benefirVo = new IndexOfUserBenefirVo();

--
Gitblit v1.7.1