diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java index c0a11f526..d73961f8e 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java @@ -30,6 +30,7 @@ import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.constant.NumConstant; import com.elink.esua.epdc.commons.tools.constant.OrganizationTypeConstant; import com.elink.esua.epdc.commons.tools.constant.StrConstant; +import com.elink.esua.epdc.commons.tools.dto.LocateInfo; import com.elink.esua.epdc.commons.tools.enums.*; import com.elink.esua.epdc.commons.tools.exception.RenException; import com.elink.esua.epdc.commons.tools.page.PageData; @@ -5653,8 +5654,16 @@ public class ItemServiceImpl extends BaseServiceImpl implem } // 查询网格信息 GisFormDTO gisFormDTO = new GisFormDTO(); - gisFormDTO.setLongitude(longitude); - gisFormDTO.setLatitude(latitude); + // 坐标系转换:GCJ-02坐标系WGS84 + LocateInfo locateInfo = GCJ02_WGS84.gcj02_To_Wgs84(Double.valueOf(latitude), Double.valueOf(longitude)); + if (null != locateInfo) { + gisFormDTO.setLongitude(String.valueOf(locateInfo.getLongitude())); + gisFormDTO.setLatitude(String.valueOf(locateInfo.getLatitude())); + } else { + log.warn("新新向党接收随手拍,坐标系转换为空,原经纬度:" + longitude + "," + latitude); + gisFormDTO.setLongitude(longitude); + gisFormDTO.setLatitude(latitude); + } Result gisGridRes = adminFeignClient.getGridByCoordinate(gisFormDTO); if (!gisGridRes.success() || null == gisGridRes.getData()) { internalRemark = "根据经纬度获取网格信息失败:" + gisGridRes.getMsg();