44323
2024-02-22 aa8ff2d61669d0779fdacdba76e26388587b435d
guns-admin/src/main/java/com/stylefeng/guns/modular/api/HouseResourceController.java
@@ -1,12 +1,20 @@
package com.stylefeng.guns.modular.api;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alipay.api.internal.util.codec.Base64;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.stylefeng.guns.modular.file.OSSService;
import com.stylefeng.guns.modular.system.model.AppUser;
import com.stylefeng.guns.modular.system.model.HouseResource;
import com.stylefeng.guns.modular.system.model.HouseType;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.HttpRequestUtil;
import com.stylefeng.guns.modular.system.util.HttpUtils;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.util.WxAppletTools;
import com.stylefeng.guns.modular.system.warpper.req.*;
@@ -21,6 +29,7 @@
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.multipart.MultipartFile;
@@ -32,10 +41,8 @@
import java.security.SecureRandom;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
 * @author zhibing.pu
@@ -110,7 +117,75 @@
        HouseResource houseResource = houseResourceService.selectById(id);
        return ResultUtil.success(houseResource.getQrCode());
    }
    @ResponseBody
    @GetMapping("/base/houseResource/historyTitle")
    @ApiOperation(value = "选择之前填入过的标题", tags = {"房源"})
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header")
    })
    public ResultUtil<List<String>> historyTitle(){
        Integer id = appUserService.getAppUser().getId();
        List<String> titles = houseResourceService.selectList(new EntityWrapper<HouseResource>()
                .eq("app_user_id", id)).stream().filter(t-> StringUtils.hasLength(t.getTitle())).map(HouseResource::getTitle)
                .collect(Collectors.toList());
        return ResultUtil.success(titles);
    }
    @ResponseBody
    @GetMapping("/base/houseResource/historyIntroduce")
    @ApiOperation(value = "选择之前填入过的更多介绍", tags = {"房源"})
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header")
    })
    public ResultUtil<List<String>> historyIntroduce(){
        Integer id = appUserService.getAppUser().getId();
        List<String> titles = houseResourceService.selectList(new EntityWrapper<HouseResource>()
                .eq("app_user_id", id)).stream().filter(t-> StringUtils.hasLength(t.getMoreIntroduction())).map(HouseResource::getMoreIntroduction)
                .collect(Collectors.toList());
        return ResultUtil.success(titles);
    }
    @ResponseBody
    @GetMapping("/base/houseResource/getHouse")
    @ApiOperation(value = "根据选择的区域 获取附近小区", tags = {"房源"})
    public ResultUtil<List<String>> getHouse(String cityName){
        List<String> res = new ArrayList<>();
        String url = "https://apis.map.qq.com/ws/place/v1/search?boundary=region(香港,0)&keyword="+cityName+"&filter=category=住宅区,别墅,社区,宿舍&page_size=30&page_index=1&key=G52BZ-X5AKH-V2JDQ-WSLRK-7DSMZ-YWFXZ";
        String s = HttpUtils.sendGet(url);
        Gson gson = new Gson();
        JsonObject jsonObject = gson.fromJson(s, JsonObject.class);
        JsonArray dataArray = jsonObject.getAsJsonArray("data");
        List<String> titles = new ArrayList<>();
        for (JsonElement element : dataArray) {
            JsonObject dataObject = element.getAsJsonObject();
            String title = dataObject.get("title").getAsString();
            titles.add(title);
        }
        for (String title : titles) {
            res.add(title);
        }
        return ResultUtil.success(res);
    }
    public static void main(String[] args) {
        String url = "https://apis.map.qq.com/ws/place/v1/search?boundary=region(香港,0)&keyword=上环/中环/金钟&filter=category=住宅区,别墅,社区,宿舍&page_size=30&page_index=1&key=G52BZ-X5AKH-V2JDQ-WSLRK-7DSMZ-YWFXZ";
        String s = HttpUtils.sendGet(url);
        // 使用Gson库解析JSON
        Gson gson = new Gson();
        JsonObject jsonObject = gson.fromJson(s, JsonObject.class);
        JsonArray dataArray = jsonObject.getAsJsonArray("data");
        // 遍历data数组,提取title字段值并放入集合
        List<String> titles = new ArrayList<>();
        for (JsonElement element : dataArray) {
            JsonObject dataObject = element.getAsJsonObject();
            String title = dataObject.get("title").getAsString();
            titles.add(title);
        }
        // 打印集合中的title字段值
        for (String title : titles) {
            System.out.println(title);
        }
    }
    // todo 放行
    @ResponseBody
    @PostMapping("/base/addHouse/confirm")