From ca53d255cec99c13e371ca33928fdb4c833852f2 Mon Sep 17 00:00:00 2001
From: liyj <15602261488@163.com>
Date: Mon, 23 Sep 2024 16:20:43 +0800
Subject: [PATCH] 1、小程序反应诉求临时区域检测接口

---
 dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/wechat/SyregionWechatController.java |   70 +++++++++++++++++++++++++++++++++++
 dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java                    |    8 ++--
 2 files changed, 74 insertions(+), 4 deletions(-)

diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/wechat/SyregionWechatController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/wechat/SyregionWechatController.java
new file mode 100644
index 0000000..498a1b7
--- /dev/null
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/wechat/SyregionWechatController.java
@@ -0,0 +1,70 @@
+package cn.huge.module.kind.controller.wechat;
+
+import cn.huge.base.common.constant.GzAreaEnum;
+import cn.huge.base.common.utils.ObjectUtils;
+import cn.huge.base.common.utils.ReturnFailUtils;
+import cn.huge.base.common.utils.ReturnSucUtils;
+import cn.huge.module.kind.domain.po.SyRegion;
+import cn.huge.module.kind.service.SyRegionService;
+import cn.huge.module.sys.dto.QueAddrBaseDTO;
+import cn.huge.module.utils.BaiduMapAddrDTO;
+import cn.huge.module.utils.BaiduMapUtils;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+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 javax.servlet.http.HttpServletRequest;
+
+/**
+ * @title: 地域表接口api-小程序端
+ * @description: 地域表接口api-小程序端
+ * @company: hugeinfo
+ * @author: wangwh
+ * @time: 2024-09-04 16:48:57
+ * @version: 1.0.0
+ */
+@Slf4j
+@RestController
+@RequestMapping("/api/wechat/syRegion")
+public class SyregionWechatController {
+
+    @Autowired(required = false)
+    private HttpServletRequest request;
+
+    @Autowired
+    private SyRegionService service;
+
+    /**
+     * 根据百度地图经纬度获取街道
+     * @url {ctx}/api/wechat/syRegion/checkRegisterArea
+     * @param lng 经度
+     * @param lat 维度
+     * @return
+     */
+    @GetMapping("/checkRegisterArea")
+    public Object checkRegisterArea(@RequestParam(value = "lng") String lng, @RequestParam(value = "lat") String lat) {
+        try {
+            BaiduMapAddrDTO baiduMapAddrDTO = BaiduMapUtils.getAddrByLngLat(lng, lat, BaiduMapUtils.coordtype_bd09ll);
+            QueryWrapper<SyRegion> syRegionQueryWrapper = new QueryWrapper<>();
+            // 查询区
+            syRegionQueryWrapper.clear();
+            syRegionQueryWrapper.like("name", baiduMapAddrDTO.getDistrict());
+            SyRegion district = service.getOne(syRegionQueryWrapper);
+            if (ObjectUtils.isNotEmpty(district)) {
+                if (GzAreaEnum.GZAREAEnum_7.getIndex().equals(district.getId())) {
+                    return ReturnSucUtils.getRepInfo();
+                } else {
+                    return ReturnSucUtils.getRepInfo(200, "反映诉求服务目前仅支持纠纷发生地为白云区内的申请。", null);
+                }
+            }else {
+                return ReturnSucUtils.getRepInfo(200, "反映诉求服务目前仅支持纠纷发生地为白云区内的申请。", null);
+            }
+        } catch (Exception e) {
+            return ReturnFailUtils.getRepInfo();
+        }
+    }
+}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java
index e77afff..f440a41 100644
--- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java
@@ -178,25 +178,25 @@
             if (ObjectUtils.isNotEmpty(baiduMapAddrDTO)) {
                 QueryWrapper<SyRegion> syRegionQueryWrapper = new QueryWrapper<>();
                 // 查询省
-                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getProvince());
+                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getProvince());
                 SyRegion province = mapper.selectOne(syRegionQueryWrapper);
                 queAddrBaseDTO.setQueProv(province.getId());
                 queAddrBaseDTO.setQueProvName(province.getName());
                 // 查询市
                 syRegionQueryWrapper.clear();
-                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getCity());
+                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getCity());
                 SyRegion city = mapper.selectOne(syRegionQueryWrapper);
                 queAddrBaseDTO.setQueCity(city.getId());
                 queAddrBaseDTO.setQueCityName(city.getName());
                 // 查询区
                 syRegionQueryWrapper.clear();
-                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getDistrict());
+                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getDistrict());
                 SyRegion district = mapper.selectOne(syRegionQueryWrapper);
                 queAddrBaseDTO.setQueArea(district.getId());
                 queAddrBaseDTO.setQueAreaName(district.getName());
                 // 查询街道
                 syRegionQueryWrapper.clear();
-                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getTown());
+                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getTown());
                 SyRegion town = mapper.selectOne(syRegionQueryWrapper);
                 queAddrBaseDTO.setQueRoad(town.getId());
                 queAddrBaseDTO.setQueRoadName(town.getName());

--
Gitblit v1.8.0