shicf
10 天以前 f60cf23a76972c0e0c7a437b17f37e1237e7d8d9
GPS坐标转换成百度坐标
已修改2个文件
49 ■■■■■ 文件已修改
src/main/java/com/product/mobile/core/controller/SignInController.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/mobile/core/service/SignInService.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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);
        }
    }
}
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;
    }
}