Bläddra i källkod

设备图片优化

zc 3 månader sedan
förälder
incheckning
b840a42caa

+ 29 - 2
alien-store/src/main/java/shop/alien/store/service/impl/SportsEquipmentFacilityServiceImpl.java

@@ -793,8 +793,8 @@ public class SportsEquipmentFacilityServiceImpl extends ServiceImpl<SportsEquipm
         categoryVo.setFacilityList(fitnessEquipmentInfoList);
         categoryVo.setFacilityCount(fitnessEquipmentInfoList.size());
 
-        // 5. 查询并设置图片列表(根据区域ID查询
-        List<String> imageList = queryCategoryImageListByAreaId(storeId, area.getId());
+        // 5. 从sports_facility_area表的area_head_url字段获取图片列表(逗号分隔
+        List<String> imageList = parseImageListFromAreaHeadUrl(area.getAreaHeadUrl());
         categoryVo.setImageList(imageList);
         categoryVo.setAreaLogoImg(area.getAreaLogoImg());
         return categoryVo;
@@ -915,13 +915,40 @@ public class SportsEquipmentFacilityServiceImpl extends ServiceImpl<SportsEquipm
     }
     
     /**
+     * 从area_head_url字段解析图片列表(逗号分隔)
+     *
+     * @param areaHeadUrl 区域头部图片URL字符串(逗号分隔)
+     * @return 图片URL列表
+     */
+    private List<String> parseImageListFromAreaHeadUrl(String areaHeadUrl) {
+        try {
+            if (StringUtils.isBlank(areaHeadUrl)) {
+                return new ArrayList<>();
+            }
+            
+            // 按逗号分隔,去除空白字符,过滤空字符串
+            return java.util.Arrays.stream(areaHeadUrl.split(","))
+                    .map(String::trim)
+                    .filter(StringUtils::isNotBlank)
+                    .distinct()
+                    .collect(Collectors.toList());
+        } catch (Exception e) {
+            log.error("解析区域头部图片URL列表异常,areaHeadUrl={},异常信息:{}", 
+                    areaHeadUrl, e.getMessage(), e);
+            return new ArrayList<>();
+        }
+    }
+    
+    /**
      * 根据区域ID查询图片列表(专门用于categorySummary接口)
      * 图片存储时business_id存储的是区域ID(area_id)
+     * 注意:此方法已废弃,现在使用parseImageListFromAreaHeadUrl方法从area_head_url字段获取
      *
      * @param storeId 门店ID
      * @param areaId  区域ID
      * @return 图片URL列表
      */
+    @Deprecated
     private List<String> queryCategoryImageListByAreaId(Integer storeId, Integer areaId) {
         try {
             // 查询该区域下的图片