From aa8ff2d61669d0779fdacdba76e26388587b435d Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期四, 22 二月 2024 15:40:23 +0800 Subject: [PATCH] 租房新增需求 --- guns-admin/src/main/java/com/stylefeng/guns/modular/api/HouseResourceController.java | 131 ++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 120 insertions(+), 11 deletions(-) diff --git a/guns-admin/src/main/java/com/stylefeng/guns/modular/api/HouseResourceController.java b/guns-admin/src/main/java/com/stylefeng/guns/modular/api/HouseResourceController.java index e8d7fae..3a6a77c 100644 --- a/guns-admin/src/main/java/com/stylefeng/guns/modular/api/HouseResourceController.java +++ b/guns-admin/src/main/java/com/stylefeng/guns/modular/api/HouseResourceController.java @@ -1,11 +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.*; @@ -20,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; @@ -31,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 @@ -109,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") @@ -117,7 +193,26 @@ @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header") public ResultUtil confirm(Integer userType){ + AppUser appUser = appUserService.getAppUser(); + if(null != appUser && (appUser.getStatus() == 2|| appUser.getStatus() == 3)){ + return ResultUtil.errorLogin("当前账号已被冻结或删除"); + } return houseResourceService.confirm(userType); + } + + @ResponseBody + @PostMapping("/base/addHouse/userInfo") + @ApiOperation(value = "发布房源获取当前人的中介认证状态", tags = {"发布"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header") + }) + public ResultUtil userInfo(){ + AppUser appUser = appUserService.getAppUser(); + if(null != appUser && (appUser.getStatus() == 2|| appUser.getStatus() == 3)){ + return ResultUtil.errorLogin("当前账号已被冻结或删除"); + } + Integer auth = appUserService.getAppUser().getAuth(); + return ResultUtil.success(appUser); } @ResponseBody @@ -127,6 +222,10 @@ @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header") }) public ResultUtil addHouse(@RequestBody AddHouseReq req){ + AppUser appUser = appUserService.getAppUser(); + if(null != appUser && (appUser.getStatus() == 2|| appUser.getStatus() == 3)){ + return ResultUtil.errorLogin("当前账号已被冻结或删除"); + } return houseResourceService.addHouse(req); } @@ -158,7 +257,6 @@ return ResultUtil.success(districtHouseResourceNumber); } - @ResponseBody @PostMapping("/base/houseResource/getHouseResourceInfo") @ApiOperation(value = "获取房源详情", tags = {"详情"}) @@ -171,7 +269,6 @@ return ResultUtil.success(houseResourceInfo); } - @ResponseBody @PostMapping("/base/houseResource/collectionHouseResource") @ApiOperation(value = "收藏/取消收藏房源操作", tags = {"详情"}) @@ -180,10 +277,12 @@ @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header") }) public ResultUtil collectionHouseResource(Integer id){ + AppUser appUser = appUserService.getAppUser(); + if(null != appUser && (appUser.getStatus() == 2|| appUser.getStatus() == 3)){ + return ResultUtil.errorLogin("当前账号已被冻结或删除"); + } return collectionHouseResourceService.collectionHouseResource(id); } - - @ResponseBody @GetMapping("/base/houseResource/getNearbyHouseResource") @@ -195,7 +294,6 @@ List<SearchHouseResourceListRes> nearbyHouseResource = houseResourceService.getNearbyHouseResource(id); return ResultUtil.success(nearbyHouseResource); } - @ResponseBody @GetMapping("/base/houseResource/getContactInformation/{id}") @@ -212,8 +310,13 @@ @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header") }) public ResultUtil addReportHouseResource(@RequestBody ReportHouseResourceReq req){ + AppUser appUser = appUserService.getAppUser(); + if(null != appUser && (appUser.getStatus() == 2|| appUser.getStatus() == 3)){ + return ResultUtil.errorLogin("当前账号已被冻结或删除"); + } return reportHouseResourceService.addReportHouseResource(req); } + @ResponseBody @PostMapping("/base/intermediary/list") @ApiOperation(value = "找中介", tags = {"服务"}) @@ -221,6 +324,7 @@ SearchIntermediaryRes res= appUserService.searchIntermediaryList(req); return ResultUtil.success(res); } + @ResponseBody @PostMapping("/base/intermediary/intermediaryInfo") @ApiOperation(value = "找中介-中介信息", tags = {"服务"}) @@ -241,6 +345,7 @@ } return ResultUtil.success(res); } + @ResponseBody @GetMapping("/base/intermediary/getContactInfo/{id}") @ApiOperation(value = "获取中介联系方式", tags = {"详情"}) @@ -260,12 +365,16 @@ } @ResponseBody - @PostMapping("/api/housingDemand/getSurplusPushNumber1") + @PostMapping("/base/housingDemand/getSurplusPushNumber1") @ApiOperation(value = "获取剩余发布数量", tags = {"房源"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer eyJhbGciOiJIUzUxMiJ....", required = true, paramType = "header") }) - public ResultUtil<Integer> getSurplusPushNumber1(){ + public ResultUtil getSurplusPushNumber1(){ + AppUser appUser = appUserService.getAppUser(); + if(null != appUser && (appUser.getStatus() == 2|| appUser.getStatus() == 3)){ + return ResultUtil.errorLogin("当前账号已被冻结或删除"); + } return houseResourceService.getSurplusPushNumber1(); } } -- Gitblit v1.7.1