|
@@ -1,12 +1,21 @@
|
|
|
package org.springblade.community.grid.controller;
|
|
package org.springblade.community.grid.controller;
|
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.lang.Assert;
|
|
|
|
|
+import cn.hutool.http.HttpRequest;
|
|
|
|
|
+import cn.hutool.http.HttpResponse;
|
|
|
|
|
+import cn.hutool.http.HttpUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springblade.common.constant.RequestUrlConstant;
|
|
import org.springblade.common.constant.RequestUrlConstant;
|
|
|
|
|
+import org.springblade.common.constant.ServicesName;
|
|
|
import org.springblade.community.entity.Agency;
|
|
import org.springblade.community.entity.Agency;
|
|
|
|
|
+import org.springblade.community.grid.entity.GridResource;
|
|
|
|
|
+import org.springblade.community.grid.service.IGridResourceService;
|
|
|
import org.springblade.core.tool.api.R;
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springframework.core.ParameterizedTypeReference;
|
|
import org.springframework.core.ParameterizedTypeReference;
|
|
|
import org.springframework.http.HttpEntity;
|
|
import org.springframework.http.HttpEntity;
|
|
@@ -32,6 +41,7 @@ import java.util.Map;
|
|
|
@RequestMapping("/grid-community")
|
|
@RequestMapping("/grid-community")
|
|
|
@Api( tags = "网格社区接口")
|
|
@Api( tags = "网格社区接口")
|
|
|
public class CommunityController {
|
|
public class CommunityController {
|
|
|
|
|
+ private IGridResourceService gridResourceService;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 根据区code获取社区列表
|
|
* 根据区code获取社区列表
|
|
@@ -48,13 +58,31 @@ public class CommunityController {
|
|
|
HttpEntity<String> requestEntity = new HttpEntity<String>(JSONUtil.toJsonStr(map), headers);
|
|
HttpEntity<String> requestEntity = new HttpEntity<String>(JSONUtil.toJsonStr(map), headers);
|
|
|
ParameterizedTypeReference<R<List<Agency>>> reference = new ParameterizedTypeReference<R<List<Agency>>>() {
|
|
ParameterizedTypeReference<R<List<Agency>>> reference = new ParameterizedTypeReference<R<List<Agency>>>() {
|
|
|
};
|
|
};
|
|
|
-
|
|
|
|
|
String url = RequestUrlConstant.AGENCY_BYAREACODE+"?areaCode="+areaCode;
|
|
String url = RequestUrlConstant.AGENCY_BYAREACODE+"?areaCode="+areaCode;
|
|
|
URI uri = URI.create(url);
|
|
URI uri = URI.create(url);
|
|
|
-
|
|
|
|
|
responseEntity = restTemplate.exchange(uri, HttpMethod.GET, requestEntity, reference);
|
|
responseEntity = restTemplate.exchange(uri, HttpMethod.GET, requestEntity, reference);
|
|
|
|
|
+ return (R<List<Agency>>)responseEntity.getBody();
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 自定义网格获取社区列表
|
|
|
|
|
+ **/
|
|
|
|
|
+ @GetMapping("/getAgencyListForCustom")
|
|
|
|
|
+ @ApiOperation("自定义网格获取社区列表")
|
|
|
|
|
+ public R<List<Agency>> getAgencyListForCustom(@RequestParam String gridId){
|
|
|
|
|
+ GridResource detail = gridResourceService.getOne(new QueryWrapper<GridResource>().lambda().eq(GridResource::getGridId, gridId));
|
|
|
|
|
+ Assert.notNull(detail);
|
|
|
|
|
+ String res = HttpUtil.get(RequestUrlConstant.AGENCYLIST_BYIDS, new HashMap<String, Object>() {{
|
|
|
|
|
+ put(CommunityController.getGridResourceLevelName(detail.getLevel()), detail.getResourseIds());
|
|
|
|
|
+ }});
|
|
|
|
|
+ return (R<List<Agency>>) JSON.parseObject(res,R.class);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- return (R<List<Agency>>)responseEntity.getBody();
|
|
|
|
|
|
|
+ public static String getGridResourceLevelName(Integer level){
|
|
|
|
|
+ switch (level){
|
|
|
|
|
+ case 1: return "agencyIds";
|
|
|
|
|
+ case 2: return "residentialIds";
|
|
|
|
|
+ default: return "";
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|