ParkingRunningStatisticSMapper.java 2.99 KB
package com.zteits.park.mapper.smapper;

import java.util.Date;
import java.util.List;

import com.zteits.clouds.api.dto.clouds.dto.TurnoverRatioDTO;
import org.apache.ibatis.annotations.Param;

import com.zteits.clouds.api.dto.park.dto.ParkingRunningStatisticDTO;
import com.zteits.clouds.api.dto.park.dto.TodayVehicleFlowOccupyRateAndTurnOverDTO;
import com.zteits.clouds.api.dto.park.param.ParkingRunningStatisticForPageRequest;
import com.zteits.park.domain.ParkingRunningStatistic;

public interface ParkingRunningStatisticSMapper {

    /**
     * 根据停车场编号 及 统计时间周期查询最新一条的 停车场统计数据
     *
     * @param
     * @return
     * @Author: atao
     * @Date: 2018/3/19 下午12:55
     */
    ParkingRunningStatistic queryRecentParkingStatisticData(@Param("plNo") String plNo,
                                                            @Param("timeCycle") Integer timeCycle, @Param("dataSource") Integer dataSource);



    /**
     * 按日/月查询车流量图表数据
     * @param request
     * @return
     * 2018年3月19日 wangfei
     */
    List<ParkingRunningStatisticDTO> queryCarFlowChartByDayOrMonth(ParkingRunningStatisticForPageRequest request);

    /**
     * 按时间类型(天、周、月)查询车流量列表详情
     * langlw 2018-5-18 edit
     * @param request
     * @return
     * 2018年3月19日 wangfei
     */
    List<ParkingRunningStatisticDTO> queryCarFlowByTimeTypeForList(ParkingRunningStatisticForPageRequest request);

    /***
     * 查询周转率新的
     * langlw 2018-3-19
     * @param request
     * @return
     */
    List<TurnoverRatioDTO> queryTurnoverRatioForTable(ParkingRunningStatisticForPageRequest request);

    /***
     * 查询周转率新的图表
     * langlw 2018-3-19
     * @param request
     * @return
     */
    List<TurnoverRatioDTO> queryTurnoverRatioChart(ParkingRunningStatisticForPageRequest request);

    /**
     * 根据停车场编号查询 当前时间的进出场车流量、周转率、占用率
     * @param
     * @return
     */
    List<TodayVehicleFlowOccupyRateAndTurnOverDTO> queryTodayVehicleFlowOccupyRateAndTurnOver(
            @Param("beginTime") Date beginTime, @Param("endTime") Date endTime,
            @Param("timeCycle") Integer timeCycle, @Param("plNos") List<String> plNos);

    /**
     * 首页按停车场类型查询当前停车场的占用率、周转次数
     * @param
     * @return
     */
    List<TodayVehicleFlowOccupyRateAndTurnOverDTO> queryCurrentOccupyRateAndTurnOver(
            @Param("beginTime") Date beginTime, @Param("endTime") Date endTime,
            @Param("timeCycle") Integer timeCycle, @Param("plNos") List<String> plNos);


    /**
     * 根据时间 查询平均占用率
     * @param plNo
     * @param timeCycle
     * @param startTime
     * @param endTime
     * @return
     */
    Double queryAvgOccUpyRatio(@Param("plNo") String plNo,@Param("timeCycle") Integer timeCycle, @Param("startTime")Date startTime,
        @Param("endTime")Date endTime );

}