From f60cf23a76972c0e0c7a437b17f37e1237e7d8d9 Mon Sep 17 00:00:00 2001 From: shicf <shi_chongfu@163.com> Date: 星期一, 04 八月 2025 16:17:10 +0800 Subject: [PATCH] GPS坐标转换成百度坐标 --- src/main/java/com/product/mobile/core/controller/SignInController.java | 26 ++++++++++++++++++++++++++ src/main/java/com/product/mobile/core/service/SignInService.java | 23 +++++++++++++++++++++-- 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/product/mobile/core/controller/SignInController.java b/src/main/java/com/product/mobile/core/controller/SignInController.java index de7750c..b6ea1fe 100644 --- a/src/main/java/com/product/mobile/core/controller/SignInController.java +++ b/src/main/java/com/product/mobile/core/controller/SignInController.java @@ -106,4 +106,30 @@ return this.error(MobileCoreCode.SIGN_IN_FAIL); } } + /** + * 鍦扮悊鍧愭爣杞崲鎺ュ彛 + * + * @param request + * @return + */ + @RequestMapping(value = "/map/coord/convert/{version}", method = RequestMethod.POST) + @ApiVersion(1) + public String coordinateTransform(HttpServletRequest request) { + FieldSetEntity fse = null; + Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); + if (bean != null) { + RequestParameterEntity reqp = (RequestParameterEntity) bean; + fse = reqp.getFormData(); + } + try { + //杩斿洖缁忕含搴� + return this.OK_List(signInService.coordinateTransform(fse.getInteger("type"),fse.getDouble("longitude"),fse.getDouble("latitude"))); + + } catch (BaseException e) { + return this.error(e); + } catch (Exception e) { + + return this.error(MobileCoreCode.SIGN_IN_FAIL); + } + } } diff --git a/src/main/java/com/product/mobile/core/service/SignInService.java b/src/main/java/com/product/mobile/core/service/SignInService.java index 05c9c4c..b1dd0f3 100644 --- a/src/main/java/com/product/mobile/core/service/SignInService.java +++ b/src/main/java/com/product/mobile/core/service/SignInService.java @@ -17,7 +17,8 @@ import com.product.mobile.core.config.MobileCoreCode; import com.product.mobile.core.config.MobileCoreConst; import com.product.module.sys.entity.SystemUser; -import com.product.util.BaseUtil; +import com.product.util.baidu.map.CoordinateTransformUtil; +import com.product.util.baidu.map.CoordinateTransformUtil.Coordinate; import cn.hutool.core.date.DateUtil; @@ -215,5 +216,23 @@ sql.append(" a left join product_oa_punch_time b on b.punch_site_uuid=a.uuid where a.org_level_uuid=?"); return baseDao.listTable(sql.toString(), new String[] {org_level_uuid}); } - + /** + *鍧愭爣杞崲 + * @param type杞崲绫诲瀷 + * @param lng 缁忓害 + * @param lat 绾害 + * @return + */ + public FieldSetEntity coordinateTransform(int type,double lng,double lat) { + + FieldSetEntity newCoord=new FieldSetEntity(); + newCoord.setTableName("product_oa_punch_time"); + Coordinate nc=CoordinateTransformUtil.toConvert(type, lng, lat); + if(nc!=null) { + newCoord.setValue("longitude", nc.longitude); + newCoord.setValue("latitude", nc.latitude); + } + + return newCoord; + } } -- Gitblit v1.9.2