package com.jiuqi.mobile.nigo.comeclose.manager.report;
import java.util.List;
import com.jiuqi.mobile.nigo.comeclose.bean.LoadOnGetList;
import com.jiuqi.mobile.nigo.comeclose.bean.cross.AdminAreaUtilBean;
import com.jiuqi.mobile.nigo.comeclose.bean.cross.CarDistributionAreaBean;
import com.jiuqi.mobile.nigo.comeclose.bean.cross.CarDistributionBaseBean;
import com.jiuqi.mobile.nigo.comeclose.bean.cross.CarDistributionKey;
import com.jiuqi.mobile.nigo.comeclose.bean.cross.SelectCarDistrbutionByAreaKey;
import com.jiuqi.mobile.nigo.comeclose.manager.IManager;
import com.jiuqi.mobile.nigo.comeclose.manager.ManagerAnnotation;
import com.jiuqi.mobile.nigo.comeclose.portal.PortalAnnotation;
import com.jiuqi.mobile.nigo.comeclose.portal.PortalMethodAnnctation;
/**
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(谨慎使用)
* 此类已废弃,车辆分布 慢慢移植到 ICarCrossManager里
* 20140305 将门户的flash车辆分布 以及 门户农机分布移植过去
* 后台的车辆分布 暂时使用此类方法
*
*/
@ManagerAnnotation(implClass = "com.jiuqi.mobile.nigo.report.manager.CarDistributionMangerImpl")
@PortalAnnotation(implClass = "com.jiuqi.mobile.nigo.biz.portal.CarDistributionManagerPortalImpl")
@Deprecated
public interface ICarDistributionManager extends IManager{
/**
* 获得直属下级行政区划车辆分布情况(以机手表为基础)
* <p>20130823 返回结果不包含数量是0的
* @param superAreaCode
* @return
*/
@PortalMethodAnnctation
CarDistrbutionInfo getChilds(long superAreaCode, Integer bigMachineCategories,
Integer smallMachineCategories, Integer machineItems);
/**
* 获得直属下级行政区划车辆分布情况(以机手表为基础)
* <p>201308237 返回结果不包含数量是0的
* <p>未实现
* @param superAreaCode
* @return
*/
@PortalMethodAnnctation
CarDistrbutionInfo getChilds(SelectNumberKey key);
/**
* 获得直属下级行政区划车辆分布情况(以机手表为基础)
* <p>20130823 返回结果包含数量是0的
* @param superAreaCode
* @return
*/
@PortalMethodAnnctation
CarDistrbutionInfo getChildsHavZero(long superAreaCode, Integer bigMachineCategories,
Integer smallMachineCategories, Integer machineItems);
/**
* 获得直属车手及其位置信息集合(此方法存在严重效率问题。谨慎使用)
*
* @param areadCode
* @return
*/
DriverPostionInfo[] getDrivers(long areadCode, Integer bigMachineCategories,
Integer smallMachineCategories, Integer machineItems);
/**
* 获得直属车手及其位置信息集合(此方法存在严重效率问题。谨慎使用)
*
* @param areadCode
* @return
*/
@Deprecated
LoadOnGetList<String> getDriverNumbers(SelectNumberKey key);
/**
* 跟据条件查询机手或机主(机主暂未实现)
* @auth lizh
* @Date 2014-2-14下午5:00:29
* @method getSmsDriverNumbers
* @fileName ICarDistributionManager
* @package com.jiuqi.mobile.nigo.comeclose.manager.report
* @project comeclose
* @param key
* @return
* @return LoadOnGetList<String>
*/
LoadOnGetList<String> getSmsDriverNumbers(SelectNumberKey key);
/**
* 辖内车辆 全国车辆 车辆分布
* <p>未实现
* @return
*/
@Deprecated
CarDistributionBaseBean[] getCarDistribution(CarDistributionKey key);
CarDistributionAreaBean get(SelectCarDistrbutionByAreaKey key);
List<AdminAreaUtilBean> getTotal(SelectCarDistrbutionByAreaKey key,List<AdminAreaUtilBean> list);
List<DriverPostionInfo> getDrivers(SelectCarDistrbutionByAreaKey key);
/**
* 短信调度使用 跟据查询条件查出来所有符合条件的司机的电话号码(谨慎使用)
* @auth lizh
* @Date 2013-9-25下午4:24:27
* @method getSimByKey
* @fileName ICarDistributionManager
* @package com.jiuqi.mobile.nigo.comeclose.manager.report
* @project comeclose
* @param key
* @return
* @return List<String>
*/
List<String> getSimByKey(SelectCarDistrbutionByAreaKey key,String areaCodes);
}