Jelajahi Sumber

同一经纬度人员查询

helixiao 2 tahun lalu
induk
melakukan
112f959263

+ 13 - 0
src/main/java/com/ydtech/modules/admin/controller/SysPcAddressController.java

@@ -86,6 +86,19 @@ public class SysPcAddressController extends BaseController{
         return HttpResult.ok("success", this.sysPcAddressService.queryRegionInfo(sysPcAddressDto));
     }
 
+    @PostMapping("/queryPcAddressInfo")
+    @ApiOperation(value = "查询同一经纬度人员信息")
+    public HttpResult<BasePageResult<SysPcAddress>> queryPcAddressInfo(@RequestBody PcAddressInfoDto addressInfoDto) {
+        if (addressInfoDto.getPageNum() == 0) {
+            addressInfoDto.setPageNum(1);
+        }
+        if (addressInfoDto.getPageSize() == 0) {
+            addressInfoDto.setPageSize(10);
+        }
+
+        return HttpResult.ok("success", this.sysPcAddressService.queryPcAddressInfo(addressInfoDto));
+    }
+
 
 
 

+ 15 - 6
src/main/java/com/ydtech/modules/admin/controller/websocket/SysGeographyPositionController.java

@@ -3,10 +3,7 @@ package com.ydtech.modules.admin.controller.websocket;
 
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.SysGeographyPositionRecord;
-import com.ydtech.modules.admin.model.dto.AdressRangeDto;
-import com.ydtech.modules.admin.model.dto.SysGeographyPositionDto;
-import com.ydtech.modules.admin.model.dto.SysGeographyPositionPageDto;
-import com.ydtech.modules.admin.model.dto.SysPcAddressNumVo;
+import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.vo.RegionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionVo;
@@ -14,7 +11,6 @@ import com.ydtech.modules.admin.service.SysGeographyPositionService;
 import com.ydtech.modules.order.entity.BasePageResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -53,7 +49,7 @@ public class SysGeographyPositionController {
         return HttpResult.ok("success", this.sysGeographyPositionService.queryPcNum(sysGeographyPositionDto));
     }
 
-    @PostMapping("/queryRegionInfo/{type}")
+    @PostMapping("/queryRegionInfo")
     @ApiOperation(value = "区域人员概览")
     public HttpResult<List<RegionInfoVo>> queryRegionInfo(@RequestBody SysGeographyPositionDto sysGeographyPositionDto) {
         return HttpResult.ok("success", this.sysGeographyPositionService.queryRegionInfo(sysGeographyPositionDto));
@@ -65,6 +61,19 @@ public class SysGeographyPositionController {
         return sysGeographyPositionService.findLocationsWithinRadius(adressRangeDto);
     }
 
+    @PostMapping("/queryGeographyInfo")
+    @ApiOperation(value = "查询同一经纬度人员信息")
+    public HttpResult<BasePageResult<SysGeographyPositionInfoVo>> queryPcAddressInfo(@RequestBody PcAddressInfoDto addressInfoDto) {
+        if (addressInfoDto.getPageNum() == 0) {
+            addressInfoDto.setPageNum(1);
+        }
+        if (addressInfoDto.getPageSize() == 0) {
+            addressInfoDto.setPageSize(10);
+        }
+
+        return HttpResult.ok("success", this.sysGeographyPositionService.queryPcAddressInfo(addressInfoDto));
+    }
+
 
 
 }

+ 2 - 0
src/main/java/com/ydtech/modules/admin/model/dto/AdressRangeDto.java

@@ -1,10 +1,12 @@
 package com.ydtech.modules.admin.model.dto;
 
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springframework.web.bind.annotation.RequestParam;
 
 @Data
+@ApiModel(value = "PC范围筛选")
 public class AdressRangeDto {
 
     @ApiModelProperty("经度")

+ 30 - 0
src/main/java/com/ydtech/modules/admin/model/dto/PcAddressInfoDto.java

@@ -0,0 +1,30 @@
+package com.ydtech.modules.admin.model.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "经纬度筛选")
+public class PcAddressInfoDto {
+
+    /**
+     * 经度
+     */
+    @ApiModelProperty("经度")
+    private String lng;
+
+    /**
+     * 维度
+     */
+    @ApiModelProperty("维度")
+    private String lat;
+
+    @ApiModelProperty(value = "页数")
+    private int pageNum;
+
+    @ApiModelProperty(value = "每页条数")
+    private int pageSize;
+
+
+}

+ 3 - 4
src/main/java/com/ydtech/modules/admin/service/SysGeographyPositionService.java

@@ -3,10 +3,7 @@ package com.ydtech.modules.admin.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ydtech.modules.admin.model.SysGeographyPosition;
 import com.ydtech.modules.admin.model.SysGeographyPositionRecord;
-import com.ydtech.modules.admin.model.dto.AdressRangeDto;
-import com.ydtech.modules.admin.model.dto.SysGeographyPositionDto;
-import com.ydtech.modules.admin.model.dto.SysGeographyPositionPageDto;
-import com.ydtech.modules.admin.model.dto.SysPcAddressNumVo;
+import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.vo.RegionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionVo;
@@ -25,4 +22,6 @@ public interface SysGeographyPositionService extends IService<SysGeographyPositi
     List<RegionInfoVo> queryRegionInfo(SysGeographyPositionDto sysGeographyPositionDto);
 
     List<SysGeographyPositionInfoVo> findLocationsWithinRadius(AdressRangeDto adressRangeDto);
+
+    BasePageResult<SysGeographyPositionInfoVo> queryPcAddressInfo(PcAddressInfoDto addressInfoDto);
 }

+ 3 - 0
src/main/java/com/ydtech/modules/admin/service/SysPcAddressService.java

@@ -5,6 +5,7 @@ import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.po.SysPcAddress;
 import com.ydtech.modules.admin.model.vo.RegionInfoVo;
+import com.ydtech.modules.order.entity.BasePageResult;
 
 import java.util.List;
 
@@ -35,4 +36,6 @@ public interface SysPcAddressService extends IService<SysPcAddress> {
     SysPcAddressNumVo queryPcNum(SysPcAddressDto sysPcAddressDto);
 
     List<RegionInfoVo> queryRegionInfo(SysPcAddressDto sysPcAddressDto);
+
+    BasePageResult<SysPcAddress> queryPcAddressInfo(PcAddressInfoDto addressInfoDto);
 }

+ 31 - 4
src/main/java/com/ydtech/modules/admin/service/impl/SysGeographyPositionServiceImpl.java

@@ -12,10 +12,7 @@ import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.model.SysGeographyPosition;
 import com.ydtech.modules.admin.model.SysGeographyPositionRecord;
 import com.ydtech.modules.admin.model.SysUser;
-import com.ydtech.modules.admin.model.dto.AdressRangeDto;
-import com.ydtech.modules.admin.model.dto.SysGeographyPositionDto;
-import com.ydtech.modules.admin.model.dto.SysGeographyPositionPageDto;
-import com.ydtech.modules.admin.model.dto.SysPcAddressNumVo;
+import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.vo.RegionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionVo;
@@ -186,5 +183,35 @@ public class SysGeographyPositionServiceImpl extends ServiceImpl<SysGeographyPos
 
     }
 
+    @Override
+    public BasePageResult<SysGeographyPositionInfoVo> queryPcAddressInfo(PcAddressInfoDto addressInfoDto) {
+        Page<SysGeographyPosition> page = new Page<>(addressInfoDto.getPageNum(), addressInfoDto.getPageSize());
+
+        LambdaQueryWrapper<SysGeographyPosition> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLng()), SysGeographyPosition::getLongitude, addressInfoDto.getLng());
+        wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLat()), SysGeographyPosition::getLatitude, addressInfoDto.getLat());
+        wrapper.orderByDesc(SysGeographyPosition::getCreateTime);
+
+        Page<SysGeographyPosition> insOrdersPage = page(page, wrapper);
+        List<SysGeographyPosition> records = insOrdersPage.getRecords();
+
+        List<SysGeographyPositionInfoVo> sysGeographyPositionList = BeanUtil.copyToList(records, SysGeographyPositionInfoVo.class);
+        //填充机构名
+        for (SysGeographyPositionInfoVo sysGeographyPositionInfoVo : sysGeographyPositionList) {
+            SysUser sysUser = sysUserService.getById(sysGeographyPositionInfoVo.getId());
+            if (sysUser == null) continue;
+            SysDept sysDept = sysDeptMapper.selectOne(new LambdaQueryWrapper<SysDept>()
+                    .eq(SysDept::getId, sysUser.getDeptId()).eq(SysDept::getDelFlag, 0));
+            if (sysDept == null) continue;
+            sysGeographyPositionInfoVo.setDeptName(sysDept.getName());
+
+        }
+
+
+
+        return new BasePageResult<>(addressInfoDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
+                sysGeographyPositionList);
+    }
+
 
 }

+ 17 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysPcAddressServiceImpl.java

@@ -2,6 +2,7 @@ package com.ydtech.modules.admin.service.impl;
 
 import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ydtech.modules.admin.dao.SysDeptMapper;
 import com.ydtech.modules.admin.dao.SysPcAddressMapper;
@@ -14,6 +15,7 @@ import com.ydtech.modules.admin.model.vo.RegionInfoVo;
 import com.ydtech.modules.admin.service.GeoService;
 import com.ydtech.modules.admin.service.SysPcAddressHistoryService;
 import com.ydtech.modules.admin.service.SysPcAddressService;
+import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.utils.StringUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.BeanUtils;
@@ -161,6 +163,21 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
 
     }
 
+    @Override
+    public BasePageResult<SysPcAddress> queryPcAddressInfo(PcAddressInfoDto addressInfoDto) {
+        Page<SysPcAddress> page = new Page<>(addressInfoDto.getPageNum(), addressInfoDto.getPageSize());
+
+        LambdaQueryWrapper<SysPcAddress> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLng()), SysPcAddress::getLongitude, addressInfoDto.getLng());
+        wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLat()), SysPcAddress::getLatitude, addressInfoDto.getLat());
+        wrapper.orderByDesc(SysPcAddress::getOperationTime);
+
+        Page<SysPcAddress> insOrdersPage = page(page, wrapper);
+
+        return new BasePageResult<>(addressInfoDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
+                insOrdersPage.getRecords());
+    }
+
 
 }