Browse Source

[fix]
1.完善门户网站关于租房模块的接口

chenchen 4 months ago
parent
commit
c9cea71044
16 changed files with 322 additions and 202 deletions
  1. 59 6
      application-webadmin/src/main/java/com/tourism/webadmin/app/website/controller/TourismHouseRentController.java
  2. 0 1
      application-webadmin/src/main/java/com/tourism/webadmin/app/website/service/HouseRentService.java
  3. 4 6
      application-webadmin/src/main/java/com/tourism/webadmin/app/website/service/impl/HouseRentServiceImpl.java
  4. 16 16
      application-webadmin/src/main/java/com/tourism/webadmin/back/dao/mapper/TourHouseEquipmentMapper.xml
  5. 12 9
      application-webadmin/src/main/java/com/tourism/webadmin/back/dao/mapper/TourHouseRentInfoMapper.xml
  6. 32 32
      application-webadmin/src/main/java/com/tourism/webadmin/back/dto/TourHouseEquipmentDto.java
  7. 2 0
      application-webadmin/src/main/java/com/tourism/webadmin/back/dto/TourHouseRentInfoDto.java
  8. 111 111
      application-webadmin/src/main/java/com/tourism/webadmin/back/model/TourHouseEquipment.java
  9. 3 1
      application-webadmin/src/main/java/com/tourism/webadmin/back/model/TourHouseRentInfo.java
  10. 2 0
      application-webadmin/src/main/java/com/tourism/webadmin/back/service/TourHouseRentInfoService.java
  11. 16 0
      application-webadmin/src/main/java/com/tourism/webadmin/back/service/impl/TourHouseEquipmentServiceImpl.java
  12. 12 0
      application-webadmin/src/main/java/com/tourism/webadmin/back/service/impl/TourHouseRentInfoServiceImpl.java
  13. 12 0
      application-webadmin/src/main/java/com/tourism/webadmin/back/vo/TourHouseAdvisorInfoVo.java
  14. 35 16
      application-webadmin/src/main/java/com/tourism/webadmin/back/vo/TourHouseEquipmentVo.java
  15. 5 3
      application-webadmin/src/main/java/com/tourism/webadmin/back/vo/TourHouseRentInfoVo.java
  16. 1 1
      common/common-additional/src/main/java/com/tourism/common/additional/utils/UrlConvertUtils.java

+ 59 - 6
application-webadmin/src/main/java/com/tourism/webadmin/app/website/controller/TourismHouseRentController.java

@@ -1,5 +1,12 @@
 package com.tourism.webadmin.app.website.controller;
 
+import cn.dev33.satoken.annotation.SaIgnore;
+import com.tourism.common.additional.config.ApplicationConfig;
+import com.tourism.common.additional.model.FileUrlObject;
+import com.tourism.common.additional.utils.JsonUtils;
+import com.tourism.common.additional.utils.StringUtils;
+import com.tourism.common.additional.utils.UrlConvertUtils;
+import com.tourism.common.core.object.MyOrderParam;
 import com.tourism.common.core.object.MyPageData;
 import com.tourism.common.core.object.MyRelationParam;
 import com.tourism.common.core.object.ResponseResult;
@@ -13,16 +20,21 @@ import com.tourism.webadmin.back.dto.TourHouseRentInfoDto;
 import com.tourism.webadmin.back.dto.TourHouseSaleInfoDto;
 import com.tourism.webadmin.back.model.TourHouseRentInfo;
 import com.tourism.webadmin.back.model.TourHouseSaleInfo;
+import com.tourism.webadmin.back.model.TourUserLikeTravelNotes;
 import com.tourism.webadmin.back.service.TourHouseRentInfoService;
+import com.tourism.webadmin.back.vo.TourHouseAdvisorInfoVo;
+import com.tourism.webadmin.back.vo.TourHouseEquipmentVo;
 import com.tourism.webadmin.back.vo.TourHouseRentInfoVo;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 租房信息接口。
@@ -33,6 +45,7 @@ import java.util.List;
 @Tag(name = "租房信息接口")
 @Slf4j
 @RestController
+@SaIgnore
 @RequestMapping("/website/tourism/tourismHouseRent")
 public class TourismHouseRentController {
 
@@ -40,6 +53,8 @@ public class TourismHouseRentController {
     private TourHouseRentInfoService tourHouseRentInfoService;
     @Autowired
     private HouseRentService houseRentService;
+    @Autowired
+    private ApplicationConfig applicationConfig;
 
     /**
      * 返回房屋过滤条件。
@@ -61,12 +76,25 @@ public class TourismHouseRentController {
      */
     @OperationLog(type = SysOperationLogType.LIST)
     @GetMapping("/tourHouseRentInfoList")
-    public ResponseResult<MyPageData<TourHouseRentInfoVo>> tourHouseRentInfoList(String areaIds, TourHouseRentInfoDto tourHouseRentInfoDto) {
+    public ResponseResult<MyPageData<TourHouseRentInfoVo>> tourHouseRentInfoList(TourHouseRentInfoDto tourHouseRentInfoDto) {
 
         TourHouseRentInfo tourHouseRentInfo = MyModelUtil.copyTo(tourHouseRentInfoDto, TourHouseRentInfo.class);
-        tourHouseRentInfo.setAreaIds(areaIds);
-        List<TourHouseRentInfo> tourHouseRentInfoList = tourHouseRentInfoService.getTourHouseRentInfoList(tourHouseRentInfo, "");
-        return ResponseResult.success(MyPageUtil.makeResponseData(tourHouseRentInfoList,TourHouseRentInfoVo.class));
+        if(tourHouseRentInfoDto.getAreaIds() != null){
+            tourHouseRentInfo.setAreaIds(List.of(tourHouseRentInfoDto.getAreaIds().split(",")));
+        }
+        MyOrderParam myOrderParam = new MyOrderParam();
+        myOrderParam.add(new MyOrderParam.OrderInfo("showOrder", true, null));
+        myOrderParam.add(new MyOrderParam.OrderInfo("updateTime", false, null));
+        String orderBy = MyOrderParam.buildOrderBy(myOrderParam, TourHouseRentInfo.class);
+        List<TourHouseRentInfo> tourHouseRentInfoList = tourHouseRentInfoService.getTourHouseRentInfoListWithArea(tourHouseRentInfo, orderBy);
+        MyPageData<TourHouseRentInfoVo> tourHouseRentInfoVoMyPageData = MyPageUtil.makeResponseData(tourHouseRentInfoList, TourHouseRentInfoVo.class);
+        List<TourHouseRentInfoVo> dataList = tourHouseRentInfoVoMyPageData.getDataList();
+        for(TourHouseRentInfoVo item:dataList){
+            if(StringUtils.isNotBlank(item.getCoverUrl())){
+                item.setCoverUrl(UrlConvertUtils.urlConvertSingle(applicationConfig.getHostIpPort(), item.getCoverUrl()));
+            }
+        }
+        return ResponseResult.success(tourHouseRentInfoVoMyPageData);
     }
 
     /**
@@ -79,7 +107,32 @@ public class TourismHouseRentController {
     public TourHouseRentInfoVo tourHouseRentInfoById(Long id) {
 
         TourHouseRentInfo tourHouseRentInfo = tourHouseRentInfoService.getByIdWithRelation(id, MyRelationParam.full());
-
-        return MyModelUtil.copyTo(tourHouseRentInfo, TourHouseRentInfoVo.class);
+        TourHouseRentInfoVo tourHouseRentInfoVo = MyModelUtil.copyTo(tourHouseRentInfo, TourHouseRentInfoVo.class);
+        //转换封面图
+        if(StringUtils.isNotBlank(tourHouseRentInfoVo.getCoverUrl())){
+            tourHouseRentInfoVo.setCoverUrl(UrlConvertUtils.urlConvertSingle(applicationConfig.getHostIpPort(), tourHouseRentInfoVo.getCoverUrl()));
+        }
+        if(tourHouseRentInfoVo.getTourHouseEquipment() != null){
+            TourHouseEquipmentVo tourHouseEquipment = tourHouseRentInfoVo.getTourHouseEquipment();
+            if(StringUtils.isNotBlank(tourHouseEquipment.getHouseDetailImage())){
+                tourHouseEquipment.setHouseDetailConvertImage(UrlConvertUtils.urlConvert(applicationConfig.getHostIpPort(), tourHouseEquipment.getHouseDetailImage()));
+            }
+            if(StringUtils.isNotBlank(tourHouseEquipment.getSurroundingSupportImage())){
+                tourHouseEquipment.setSurroundingSupportConvertImage(UrlConvertUtils.urlConvert(applicationConfig.getHostIpPort(), tourHouseEquipment.getSurroundingSupportImage()));
+            }
+            if(StringUtils.isNotBlank(tourHouseEquipment.getPlotIntroductionImage())){
+                tourHouseEquipment.setPlotIntroductionConvertImage(UrlConvertUtils.urlConvert(applicationConfig.getHostIpPort(), tourHouseEquipment.getPlotIntroductionImage()));
+            }
+        }
+        if(tourHouseRentInfoVo.getTourHouseAdvisorInfo() != null){
+            TourHouseAdvisorInfoVo tourHouseAdvisorInfo = tourHouseRentInfoVo.getTourHouseAdvisorInfo();
+            if(StringUtils.isNotBlank(tourHouseAdvisorInfo.getAvatarUrl())){
+                tourHouseAdvisorInfo.setAvatarUrl(UrlConvertUtils.urlConvertSingle(applicationConfig.getHostIpPort(), tourHouseAdvisorInfo.getAvatarUrl()));
+            }
+            if(StringUtils.isNotBlank(tourHouseAdvisorInfo.getCode())){
+                tourHouseAdvisorInfo.setCovertCode(UrlConvertUtils.urlConvertSingle(applicationConfig.getHostIpPort(), tourHouseAdvisorInfo.getCode()));
+            }
+        }
+        return tourHouseRentInfoVo;
     }
 }

+ 0 - 1
application-webadmin/src/main/java/com/tourism/webadmin/app/website/service/HouseRentService.java

@@ -10,5 +10,4 @@ public interface HouseRentService {
 
     HouseFilterListsVo getHouseFilterLists() throws Exception;
 
-    List<TourHouseRentInfo> getTourHouseRentInfoList(TourHouseRentInfo filter, String orderBy);
 }

+ 4 - 6
application-webadmin/src/main/java/com/tourism/webadmin/app/website/service/impl/HouseRentServiceImpl.java

@@ -1,6 +1,8 @@
 package com.tourism.webadmin.app.website.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.github.pagehelper.Page;
+import com.tourism.common.core.object.MyRelationParam;
 import com.tourism.common.dict.model.GlobalDictItem;
 import com.tourism.common.dict.service.GlobalDictItemService;
 import com.tourism.webadmin.app.website.service.HouseRentService;
@@ -31,12 +33,6 @@ public class HouseRentServiceImpl implements HouseRentService {
 
 
     @Override
-    public List<TourHouseRentInfo> getTourHouseRentInfoList(TourHouseRentInfo filter, String orderBy) {
-        return tourHouseRentInfoMapper.getTourHouseRentInfoListWithArea(filter, orderBy);
-    }
-
-
-    @Override
     public HouseFilterListsVo getHouseFilterLists() throws Exception {
 
         HouseFilterListsVo vo = new HouseFilterListsVo();
@@ -55,6 +51,8 @@ public class HouseRentServiceImpl implements HouseRentService {
         list.add("Orientation");
         //房屋装修
         list.add("Decoration");
+        //房屋楼层类型
+        list.add("HouseFloorType");
         HashMap<String, List<GlobalDictItem>> elseMap = new HashMap<>();
         for (String dictCode : list) {
             List<GlobalDictItem> dictList = globalDictItemService.getGlobalDictItemListByDictCode(dictCode);

+ 16 - 16
application-webadmin/src/main/java/com/tourism/webadmin/back/dao/mapper/TourHouseEquipmentMapper.xml

@@ -5,22 +5,22 @@
         <id column="id" jdbcType="BIGINT" property="id"/>
         <result column="house_id" jdbcType="BIGINT" property="houseId"/>
         <result column="house_detail_image" jdbcType="VARCHAR" property="houseDetailImage"/>
-        <result column="icebox" jdbcType="CHAR" property="icebox"/>
-        <result column="washer" jdbcType="CHAR" property="washer"/>
-        <result column="calorifier" jdbcType="CHAR" property="calorifier"/>
-        <result column="broadband" jdbcType="CHAR" property="broadband"/>
-        <result column="sofa" jdbcType="CHAR" property="sofa"/>
-        <result column="range_hood" jdbcType="CHAR" property="rangeHood"/>
-        <result column="gas_stove" jdbcType="CHAR" property="gasStove"/>
-        <result column="able_cook" jdbcType="CHAR" property="ableCook"/>
-        <result column="television" jdbcType="CHAR" property="television"/>
-        <result column="air_conditioner" jdbcType="CHAR" property="airConditioner"/>
-        <result column="wardrobe" jdbcType="CHAR" property="wardrobe"/>
-        <result column="bed" jdbcType="CHAR" property="bed"/>
-        <result column="rest_room" jdbcType="CHAR" property="restRoom"/>
-        <result column="smart_door_lock" jdbcType="CHAR" property="smartDoorLock"/>
-        <result column="balcony" jdbcType="CHAR" property="balcony"/>
-        <result column="heating" jdbcType="CHAR" property="heating"/>
+        <result column="icebox" jdbcType="TINYINT" property="icebox"/>
+        <result column="washer" jdbcType="TINYINT" property="washer"/>
+        <result column="calorifier" jdbcType="TINYINT" property="calorifier"/>
+        <result column="broadband" jdbcType="TINYINT" property="broadband"/>
+        <result column="sofa" jdbcType="TINYINT" property="sofa"/>
+        <result column="range_hood" jdbcType="TINYINT" property="rangeHood"/>
+        <result column="gas_stove" jdbcType="TINYINT" property="gasStove"/>
+        <result column="able_cook" jdbcType="TINYINT" property="ableCook"/>
+        <result column="television" jdbcType="TINYINT" property="television"/>
+        <result column="air_conditioner" jdbcType="TINYINT" property="airConditioner"/>
+        <result column="wardrobe" jdbcType="TINYINT" property="wardrobe"/>
+        <result column="bed" jdbcType="TINYINT" property="bed"/>
+        <result column="rest_room" jdbcType="TINYINT" property="restRoom"/>
+        <result column="smart_door_lock" jdbcType="TINYINT" property="smartDoorLock"/>
+        <result column="balcony" jdbcType="TINYINT" property="balcony"/>
+        <result column="heating" jdbcType="TINYINT" property="heating"/>
         <result column="surrounding_support" jdbcType="VARCHAR" property="surroundingSupport"/>
         <result column="surrounding_support_image" jdbcType="VARCHAR" property="surroundingSupportImage"/>
         <result column="plot_introduction" jdbcType="VARCHAR" property="plotIntroduction"/>

+ 12 - 9
application-webadmin/src/main/java/com/tourism/webadmin/back/dao/mapper/TourHouseRentInfoMapper.xml

@@ -199,17 +199,20 @@
     <!-- 区域条件&房屋条件混合查询 -->
     <select id="getTourHouseRentInfoListWithArea" resultMap="BaseResultMap" parameterType="com.tourism.webadmin.back.model.TourHouseRentInfo">
         SELECT *
-        FROM tour_house_sale_info AS thsi
+        FROM tour_house_rent_info
         JOIN tour_house_area_menu AS tham
-        ON thsi.area_id = tham.id
+        ON tour_house_rent_info.area_id = tham.id
         <where>
-            <if test="tourHouseRentInfoFilter.areaIds != null and tourHouseRentInfoFilter.areaIds.length > 0">
-                AND tham.id IN
-                <foreach collection="tourHouseRentInfoFilter.areaIds" item="areaId" open="(" close=")" separator=",">
-                    #{areaId}
-                </foreach>
-            </if>
-            <include refid="inputFilterRef"/>
+            <if test="tourHouseRentInfoFilter != null">
+                <if test="tourHouseRentInfoFilter.areaIds != null and tourHouseRentInfoFilter.areaIds.size > 0">
+                    AND tham.id IN
+                    <foreach collection="tourHouseRentInfoFilter.areaIds" item="areaId" open="(" close=")" separator=",">
+                        #{areaId}
+                    </foreach>
+                </if>
+            </if>
+            <include refid="com.tourism.webadmin.back.dao.TourHouseRentInfoMapper.inputFilterRef"/>
+            AND tour_house_rent_info.data_state = ${@com.tourism.common.core.constant.GlobalDeletedFlag@NORMAL}
         </where>
         <if test="orderBy != null and orderBy != ''">
             ORDER BY ${orderBy}

+ 32 - 32
application-webadmin/src/main/java/com/tourism/webadmin/back/dto/TourHouseEquipmentDto.java

@@ -44,113 +44,113 @@ public class TourHouseEquipmentDto {
      * 有无冰箱。
      */
     @Schema(description = "有无冰箱。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无冰箱为无效值!")
-    private String icebox;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无冰箱为无效值!")
+    private Integer icebox;
 
     /**
      * 有无洗衣机。
      */
     @Schema(description = "有无洗衣机。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无洗衣机为无效值!")
-    private String washer;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无洗衣机为无效值!")
+    private Integer washer;
 
     /**
      * 有无热水器。
      */
     @Schema(description = "有无热水器。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无热水器为无效值!")
-    private String calorifier;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无热水器为无效值!")
+    private Integer calorifier;
 
     /**
      * 有无宽带。
      */
     @Schema(description = "有无宽带。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无宽带为无效值!")
-    private String broadband;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无宽带为无效值!")
+    private Integer broadband;
 
     /**
      * 有无沙发。
      */
     @Schema(description = "有无沙发。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无沙发为无效值!")
-    private String sofa;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无沙发为无效值!")
+    private Integer sofa;
 
     /**
      * 有无油烟机。
      */
     @Schema(description = "有无油烟机。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无油烟机为无效值!")
-    private String rangeHood;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无油烟机为无效值!")
+    private Integer rangeHood;
 
     /**
      * 有无燃气灶。
      */
     @Schema(description = "有无燃气灶。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无燃气灶为无效值!")
-    private String gasStove;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无燃气灶为无效值!")
+    private Integer gasStove;
 
     /**
      * 有无做饭。
      */
     @Schema(description = "有无做饭。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无做饭为无效值!")
-    private String ableCook;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无做饭为无效值!")
+    private Integer ableCook;
 
     /**
      * 有无电视。
      */
     @Schema(description = "有无电视。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无电视为无效值!")
-    private String television;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无电视为无效值!")
+    private Integer television;
 
     /**
      * 有无空调。
      */
     @Schema(description = "有无空调。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无空调为无效值!")
-    private String airConditioner;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无空调为无效值!")
+    private Integer airConditioner;
 
     /**
      * 有无衣柜。
      */
     @Schema(description = "有无衣柜。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无衣柜为无效值!")
-    private String wardrobe;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无衣柜为无效值!")
+    private Integer wardrobe;
 
     /**
      * 有无床。
      */
     @Schema(description = "有无床。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无床为无效值!")
-    private String bed;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无床为无效值!")
+    private Integer bed;
 
     /**
      * 有无卫生间。
      */
     @Schema(description = "有无卫生间。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无卫生间为无效值!")
-    private String restRoom;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无卫生间为无效值!")
+    private Integer restRoom;
 
     /**
      * 有无智能门锁。
      */
     @Schema(description = "有无智能门锁。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无智能门锁为无效值!")
-    private String smartDoorLock;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无智能门锁为无效值!")
+    private Integer smartDoorLock;
 
     /**
      * 有无阳台。
      */
     @Schema(description = "有无阳台。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无阳台为无效值!")
-    private String balcony;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无阳台为无效值!")
+    private Integer balcony;
 
     /**
      * 有无暖气。
      */
     @Schema(description = "有无暖气。")
-    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无暖气为无效值!")
-    private String heating;
+//    @ConstDictRef(constDictClass = HouseEequipmentIsHave.class, message = "数据验证失败,有无暖气为无效值!")
+    private Integer heating;
 
     /**
      * 周边配套描述。

+ 2 - 0
application-webadmin/src/main/java/com/tourism/webadmin/back/dto/TourHouseRentInfoDto.java

@@ -231,4 +231,6 @@ public class TourHouseRentInfoDto {
      */
     @Schema(description = "LIKE模糊搜索字符串")
     private String searchString;
+
+    private String areaIds;
 }

+ 111 - 111
application-webadmin/src/main/java/com/tourism/webadmin/back/model/TourHouseEquipment.java

@@ -44,97 +44,97 @@ public class TourHouseEquipment extends BaseModel {
      * 冰箱。
      */
     @TableField(value = "icebox")
-    private String icebox;
+    private Integer icebox;
 
     /**
      * 洗衣机。
      */
     @TableField(value = "washer")
-    private String washer;
+    private Integer washer;
 
     /**
      * 热水器。
      */
     @TableField(value = "calorifier")
-    private String calorifier;
+    private Integer calorifier;
 
     /**
      * 宽带。
      */
     @TableField(value = "broadband")
-    private String broadband;
+    private Integer broadband;
 
     /**
      * 沙发。
      */
     @TableField(value = "sofa")
-    private String sofa;
+    private Integer sofa;
 
     /**
      * 油烟机。
      */
     @TableField(value = "range_hood")
-    private String rangeHood;
+    private Integer rangeHood;
 
     /**
      * 燃气灶。
      */
     @TableField(value = "gas_stove")
-    private String gasStove;
+    private Integer gasStove;
 
     /**
      * 做饭。
      */
     @TableField(value = "able_cook")
-    private String ableCook;
+    private Integer ableCook;
 
     /**
      * 电视。
      */
     @TableField(value = "television")
-    private String television;
+    private Integer television;
 
     /**
      * 空调。
      */
     @TableField(value = "air_conditioner")
-    private String airConditioner;
+    private Integer airConditioner;
 
     /**
      * 衣柜。
      */
     @TableField(value = "wardrobe")
-    private String wardrobe;
+    private Integer wardrobe;
 
     /**
      * 床。
      */
     @TableField(value = "bed")
-    private String bed;
+    private Integer bed;
 
     /**
      * 卫生间。
      */
     @TableField(value = "rest_room")
-    private String restRoom;
+    private Integer restRoom;
 
     /**
      * 智能门锁。
      */
     @TableField(value = "smart_door_lock")
-    private String smartDoorLock;
+    private Integer smartDoorLock;
 
     /**
      * 阳台。
      */
     @TableField(value = "balcony")
-    private String balcony;
+    private Integer balcony;
 
     /**
      * 暖气。
      */
     @TableField(value = "heating")
-    private String heating;
+    private Integer heating;
 
     /**
      * 周边配套描述。
@@ -169,99 +169,99 @@ public class TourHouseEquipment extends BaseModel {
     @TableField(value = "data_state")
     private Integer dataState;
 
-    @RelationConstDict(
-            masterIdField = "icebox",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> iceboxDictMap;
-
-    @RelationConstDict(
-            masterIdField = "washer",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> washerDictMap;
-
-    @RelationConstDict(
-            masterIdField = "calorifier",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> calorifierDictMap;
-
-    @RelationConstDict(
-            masterIdField = "broadband",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> broadbandDictMap;
-
-    @RelationConstDict(
-            masterIdField = "sofa",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> sofaDictMap;
-
-    @RelationConstDict(
-            masterIdField = "rangeHood",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> rangeHoodDictMap;
-
-    @RelationConstDict(
-            masterIdField = "gasStove",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> gasStoveDictMap;
-
-    @RelationConstDict(
-            masterIdField = "ableCook",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> ableCookDictMap;
-
-    @RelationConstDict(
-            masterIdField = "television",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> televisionDictMap;
-
-    @RelationConstDict(
-            masterIdField = "airConditioner",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> airConditionerDictMap;
-
-    @RelationConstDict(
-            masterIdField = "wardrobe",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> wardrobeDictMap;
-
-    @RelationConstDict(
-            masterIdField = "bed",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> bedDictMap;
-
-    @RelationConstDict(
-            masterIdField = "restRoom",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> restRoomDictMap;
-
-    @RelationConstDict(
-            masterIdField = "smartDoorLock",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> smartDoorLockDictMap;
-
-    @RelationConstDict(
-            masterIdField = "balcony",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> balconyDictMap;
-
-    @RelationConstDict(
-            masterIdField = "heating",
-            constantDictClass = HouseEequipmentIsHave.class)
-    @TableField(exist = false)
-    private Map<String, Object> heatingDictMap;
+//    @RelationConstDict(
+//            masterIdField = "icebox",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> iceboxDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "washer",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> washerDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "calorifier",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> calorifierDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "broadband",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> broadbandDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "sofa",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> sofaDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "rangeHood",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> rangeHoodDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "gasStove",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> gasStoveDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "ableCook",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> ableCookDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "television",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> televisionDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "airConditioner",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> airConditionerDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "wardrobe",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> wardrobeDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "bed",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> bedDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "restRoom",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> restRoomDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "smartDoorLock",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> smartDoorLockDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "balcony",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> balconyDictMap;
+//
+//    @RelationConstDict(
+//            masterIdField = "heating",
+//            constantDictClass = HouseEequipmentIsHave.class)
+//    @TableField(exist = false)
+//    private Map<String, Object> heatingDictMap;
 }

+ 3 - 1
application-webadmin/src/main/java/com/tourism/webadmin/back/model/TourHouseRentInfo.java

@@ -10,6 +10,7 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import java.math.BigDecimal;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -289,7 +290,8 @@ public class TourHouseRentInfo extends BaseModel {
     @TableField(exist = false)
     private Map<String, Object> decorationDictMap;
 
-    private String areaIds;
+    @TableField(exist = false)
+    private List<String> areaIds;
 
     @RelationGlobalDict(
             masterIdField = "floorType",

+ 2 - 0
application-webadmin/src/main/java/com/tourism/webadmin/back/service/TourHouseRentInfoService.java

@@ -86,4 +86,6 @@ public interface TourHouseRentInfoService extends IBaseService<TourHouseRentInfo
      * @return 查询结果集。
      */
     List<TourHouseRentInfo> getTourHouseRentInfoListWithRelation(TourHouseRentInfo filter, TourHouseEquipment tourHouseEquipmentFilter, String orderBy);
+
+    List<TourHouseRentInfo> getTourHouseRentInfoListWithArea(TourHouseRentInfo filter, String orderBy);
 }

+ 16 - 0
application-webadmin/src/main/java/com/tourism/webadmin/back/service/impl/TourHouseEquipmentServiceImpl.java

@@ -100,6 +100,22 @@ public class TourHouseEquipmentServiceImpl extends BaseService<TourHouseEquipmen
 
     private TourHouseEquipment buildDefaultValue(TourHouseEquipment tourHouseEquipment) {
         MyModelUtil.fillCommonsForInsert(tourHouseEquipment);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"icebox",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"washer",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"calorifier",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"broadband",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"sofa",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"rangeHood",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"gasStove",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"ableCook",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"television",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"airConditioner",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"wardrobe",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"bed",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"restRoom",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"smartDoorLock",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"balcony",0);
+        MyModelUtil.setDefaultValue(tourHouseEquipment,"heating",0);
         tourHouseEquipment.setDataState(GlobalDeletedFlag.NORMAL);
         return tourHouseEquipment;
     }

+ 12 - 0
application-webadmin/src/main/java/com/tourism/webadmin/back/service/impl/TourHouseRentInfoServiceImpl.java

@@ -186,4 +186,16 @@ public class TourHouseRentInfoServiceImpl extends BaseService<TourHouseRentInfo,
         MyModelUtil.setDefaultValue(tourHouseRentInfo, "remark", "");
         return tourHouseRentInfo;
     }
+
+
+    @Override
+    public List<TourHouseRentInfo> getTourHouseRentInfoListWithArea(TourHouseRentInfo filter, String orderBy) {
+        List<TourHouseRentInfo> resultList = tourHouseRentInfoMapper.getTourHouseRentInfoListWithArea(filter, orderBy);
+
+        // 在缺省生成的代码中,如果查询结果resultList不是Page对象,说明没有分页,那么就很可能是数据导出接口调用了当前方法。
+        // 为了避免一次性的大量数据关联,规避因此而造成的系统运行性能冲击,这里手动进行了分批次读取,开发者可按需修改该值。
+        int batchSize = resultList instanceof Page ? 0 : 1000;
+        this.buildRelationForDataList(resultList, MyRelationParam.normal(), batchSize);
+        return resultList;
+    }
 }

+ 12 - 0
application-webadmin/src/main/java/com/tourism/webadmin/back/vo/TourHouseAdvisorInfoVo.java

@@ -129,6 +129,18 @@ public class TourHouseAdvisorInfoVo extends BaseVo {
     @Schema(description = "type 全局字典关联数据")
     private Map<String, Object> typeDictMap;
 
+    /**
+     * avatarUrlsAfterConvert 转换后的头像图片。
+     */
+    @Schema(description = "avatarUrlsAfterConvert 转换后的头像图片")
     @TableField(exist = false)
     private List<String> avatarUrlsAfterConvert;
+
+    /**
+     * covertCode 转换后的二维码图片。
+     */
+    @Schema(description = "covertCode 转换后的二维码图片")
+    @TableField(exist = false)
+    private String covertCode;
+
 }

+ 35 - 16
application-webadmin/src/main/java/com/tourism/webadmin/back/vo/TourHouseEquipmentVo.java

@@ -4,6 +4,8 @@ import com.tourism.common.core.base.vo.BaseVo;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -39,97 +41,97 @@ public class TourHouseEquipmentVo extends BaseVo {
      * 冰箱。
      */
     @Schema(description = "冰箱")
-    private String icebox;
+    private Integer icebox;
 
     /**
      * 洗衣机。
      */
     @Schema(description = "洗衣机")
-    private String washer;
+    private Integer washer;
 
     /**
      * 热水器。
      */
     @Schema(description = "热水器")
-    private String calorifier;
+    private Integer calorifier;
 
     /**
      * 宽带。
      */
     @Schema(description = "宽带")
-    private String broadband;
+    private Integer broadband;
 
     /**
      * 沙发。
      */
     @Schema(description = "沙发")
-    private String sofa;
+    private Integer sofa;
 
     /**
      * 油烟机。
      */
     @Schema(description = "油烟机")
-    private String rangeHood;
+    private Integer rangeHood;
 
     /**
      * 燃气灶。
      */
     @Schema(description = "燃气灶")
-    private String gasStove;
+    private Integer gasStove;
 
     /**
      * 做饭。
      */
     @Schema(description = "做饭")
-    private String ableCook;
+    private Integer ableCook;
 
     /**
      * 电视。
      */
     @Schema(description = "电视")
-    private String television;
+    private Integer television;
 
     /**
      * 空调。
      */
     @Schema(description = "空调")
-    private String airConditioner;
+    private Integer airConditioner;
 
     /**
      * 衣柜。
      */
     @Schema(description = "衣柜")
-    private String wardrobe;
+    private Integer wardrobe;
 
     /**
      * 床。
      */
     @Schema(description = "床")
-    private String bed;
+    private Integer bed;
 
     /**
      * 卫生间。
      */
     @Schema(description = "卫生间")
-    private String restRoom;
+    private Integer restRoom;
 
     /**
      * 智能门锁。
      */
     @Schema(description = "智能门锁")
-    private String smartDoorLock;
+    private Integer smartDoorLock;
 
     /**
      * 阳台。
      */
     @Schema(description = "阳台")
-    private String balcony;
+    private Integer balcony;
 
     /**
      * 暖气。
      */
     @Schema(description = "暖气")
-    private String heating;
+    private Integer heating;
 
     /**
      * 周边配套描述。
@@ -250,4 +252,21 @@ public class TourHouseEquipmentVo extends BaseVo {
      */
     @Schema(description = "heating 常量字典关联数据")
     private Map<String, Object> heatingDictMap;
+
+    /**
+     * 房屋详情图(转换后的多张图片)。
+     */
+    @Schema(description = "房屋详情图(转换后的多张图片)")
+    private List<String> houseDetailConvertImage;
+
+    /**
+     * 周边配套的图片(转换后的多张图片)。
+     */
+    @Schema(description = "周边配套的图片(转换后的多张图片)")
+    private List<String> surroundingSupportConvertImage;
+    /**
+     * 小区介绍图片(转换后的多张图片)。
+     */
+    @Schema(description = "小区介绍图片(转换后的多张图片)")
+    private List<String> plotIntroductionConvertImage;
 }

+ 5 - 3
application-webadmin/src/main/java/com/tourism/webadmin/back/vo/TourHouseRentInfoVo.java

@@ -1,11 +1,13 @@
 package com.tourism.webadmin.back.vo;
 
 import com.tourism.common.core.base.vo.BaseVo;
+import com.tourism.webadmin.back.model.TourHouseEquipment;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import java.math.BigDecimal;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -23,7 +25,7 @@ public class TourHouseRentInfoVo extends BaseVo {
      * 主键。
      */
     @Schema(description = "主键")
-    private Long id;
+    private String id;
 
     /**
      * 所属地区类型。
@@ -173,7 +175,7 @@ public class TourHouseRentInfoVo extends BaseVo {
      * id 的一对一关联数据对象,数据对应类型为TourHouseEquipmentVo。
      */
     @Schema(description = "id 的一对一关联数据对象,数据对应类型为TourHouseEquipmentVo")
-    private Map<String, Object> tourHouseEquipment;
+    private TourHouseEquipmentVo tourHouseEquipment;
 
     /**
      * areaId 字典关联数据。
@@ -233,7 +235,7 @@ public class TourHouseRentInfoVo extends BaseVo {
      * advisorId 的一对一关联数据对象,数据对应类型为TourHouseAdvisorInfoVo。
      */
     @Schema(description = "advisorId 的一对一关联数据对象,数据对应类型为TourHouseAdvisorInfoVo")
-    private Map<String, Object> tourHouseAdvisorInfo;
+    private TourHouseAdvisorInfoVo tourHouseAdvisorInfo;
 
     /**
      * floorType 全局字典关联数据。

+ 1 - 1
common/common-additional/src/main/java/com/tourism/common/additional/utils/UrlConvertUtils.java

@@ -36,7 +36,7 @@ public class UrlConvertUtils {
         if(url.contains("https")){
             return url;
         }else {
-            FileUrlObject fileUrlObject = JsonUtils.parseObject(url, FileUrlObject.class);
+            FileUrlObject fileUrlObject = JsonUtils.parseFileUrlArray(url, FileUrlObject.class).get(0);
             if(fileUrlObject != null){
                 return hostIpPort + "/" + fileUrlObject.getUploadPath() + "/" + fileUrlObject.getFilename();
             }