package com.jiuqi.mobile.lbs.intf; import com.jiuqi.mobile.lbs.intf.pub.LBSInfo; import com.jiuqi.mobile.lbs.intf.pub.LBSRegister; import com.jiuqi.mobile.lbs.intf.pub.LBSResult; import com.jqmobile.core.server.rmi2.RMI; import com.jqmobile.core.service.Login; import com.jqmobile.core.service.Service; /** * 定位服务 * @author MODI * * @project com.jiuqi.mobile.lbs-intf * @date 2013年12月6日 */ @Service(impl="com.jiuqi.mobile.lbs.service.LBSServiceImpl") @RMI public interface ILBSService { /** * 用户允许定位注册 * @param userId * @param userSim */ @RMI void reg(LBSRegister lbsReg) throws LBSRegisterException; /** * 定位服务(执行第三方定位) * <p>2014-4-1 标记为废弃方法,后续不再维护。请使用get(String mobileNumber)方法 * @param userId 发起人用户ID * @param sim 被定位手机号码 * @return */ @Deprecated LBSResult execute(String userId, String sim) throws LBSException; /** * 位置上报 * @param lbsSession * @param lbs 一次个数不得超过20个 * @throws LBSException void * @user modi qq:411051729 * @return int * <p>0:成功; 4:超过最大连接数,稍后重试; 5:session失效; * <p>-1:上传位置不能为空 -2:一次上传位置数不得超过100个 */ @Login @RMI int appear(String lbsSession, LBSInfo... lbs) throws LBSException; /** * 获取历史位置信息 * 所有返回值按定位位置先后顺序获取 * @param startTime 开始时间 * @param endTime 结束时间 * @param startIndex 开始行数 * @param userIds 用户ID,存储时使用的用户ID。一次查询用户数在1-100之间,超过100个时,取前100个 * @return LBSInfo[] 每次最多返回100行。没有返回空 * @user modi qq:411051729 */ @RMI LBSInfo[] get(long startTime, long endTime, int startIndex, String... userIds); /** * 获取用户最新位置信息(5分钟误差) * @param mobileNumber * @return LBSInfo * @user modi qq:411051729 */ @RMI LBSInfo get(String mobileNumber); // /** // * 精定位接口 // * @param userId 发起人用户ID // * @param sim 被定位手机号码 // * @return // */ // LBSResult findExact(String userId, String sim) throws LBSException; }