package com.zy.asrs.mapper;
|
|
import com.zy.asrs.entity.*;
|
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
import org.springframework.stereotype.Repository;
|
|
import java.util.List;
|
|
@Mapper
|
@Repository
|
public interface ReportQueryMapper {
|
|
//分页查询库位使用率
|
List<ViewStockUseBean> queryViewStockUseList(ViewStockUseBean viewStockUse);
|
int getViewStockUseCount(ViewStockUseBean viewStockUse);
|
List<ViewStockUseBean> getViewStockUseAll(ViewStockUseBean viewStockUse);
|
|
//分页查询库存滞留时间
|
public List<ViewStayTimeBean> queryViewStayTimeList(ViewStayTimeBean viewStayTime);
|
public int getViewStayTimeCount(ViewStayTimeBean viewStayTime);
|
//不分页查询所有信息,用于excel导出
|
public List<ViewStayTimeBean> getViewStayTimeAll(ViewStayTimeBean viewStayTime);
|
|
// // 库位Map
|
@Select("select distinct row1 from asr_loc_mast order by row1 asc")
|
List<Integer> getViewLocRowTotal();
|
|
@Select("select distinct lev1 from asr_loc_mast where row1=#{row1} order by lev1 desc")
|
public List<String> getViewLocLevCount(@Param("row1") int row1);
|
//
|
@Select("select loc_no as locNo, bay1,loc_sts as locSts from asr_loc_mast where row1=#{row1} and lev1=#{lev1} order by bay1")
|
public List<ViewLocMapDto> getViewLocBays(@Param("row1") int row1, @Param("lev1") int lev1);
|
|
// 库位Map
|
@Select("select distinct bay1 from asr_loc_mast where row1=#{row1} order by bay1")
|
public List<String> getViewLocBayCount(@Param("row1") int row1);
|
|
@Select("select lev1,loc_sts as locSts from asr_loc_mast where row1=#{row1} and bay1=#{bay1} order by bay1")
|
public List<ViewLocMapDto> getViewLocLevs(@Param("row1") int row1, @Param("bay1") int bay1);
|
|
|
//分页查询站点入出库次数统计
|
public List<ViewInOutBean> queryViewInOutList(ViewInOutBean viewInOut);
|
public int getViewInOutCount(ViewInOutBean viewInOut);
|
//不分页查询所有信息,用于excel导出
|
public List<ViewInOutBean> getViewInOutAll(ViewInOutBean viewInOut);
|
|
//分页查询日入库记录
|
public List<ViewWorkInBean> queryViewWorkInList(ViewWorkInBean viewWorkIn);
|
public int getViewWorkInCount(ViewWorkInBean viewWorkIn);
|
//不分页查询所有信息,用于excel导出
|
public List<ViewWorkInBean> getViewWorkInAll(ViewWorkInBean viewWorkIn);
|
|
//分页查询日出库记录
|
public List<ViewWorkInBean> queryViewWorkOutList(ViewWorkInBean viewWorkOut);
|
public int getViewWorkOutCount(ViewWorkInBean viewWorkOut);
|
//不分页查询所有信息,用于excel导出
|
public List<ViewWorkInBean> getViewWorkOutAll(ViewWorkInBean viewWorkOut);
|
|
|
// ------图表
|
//饼状图
|
@Select("select * from asr_loc_use_view")
|
public LocChartPie getLocUseRate();
|
//曲线图
|
@Select("select ymd,SUM(sto_qty) inqty,SUM(ret_qty) outqty from asr_sta_inout_view "
|
+ "where ymd>CONVERT(char(10), DATEADD(DAY,-12,GETDATE()), 120) group by ymd order by ymd")
|
public List<WorkChartAxis> getChartAxis();
|
|
/**
|
* 按小时汇总(视图 v_asr_inout_hourly_stat,ymd 与接口 yyyy-MM-dd HH 对齐)
|
*/
|
@Select("SELECT ymd, inqty, outqty,cube_inqty as cubeInqty,cube_outqty as cubeOutqty FROM v_asr_inout_hourly_stat ")
|
List<WorkChartAxis> getChartAxisHourly();
|
|
/**
|
* 按小时汇总(视图 v_asr_inout_hourly_stat,ymd 与接口 yyyy-MM-dd HH 对齐)
|
*/
|
@Select("SELECT ymd, teu_total FROM asr_wrk_detl_teu_day_view ORDER BY ymd")
|
List<WorkTeuTotalAxis> getteuTotal();
|
|
/**
|
* 最近 12 天体积汇总
|
*/
|
@Select("SELECT CONVERT(char(10), stat_date, 23) AS ymd, "
|
+ "CAST(ISNULL(wrk_sts_5_cube_sum, 0) AS decimal(18,4)) AS cube5Total, "
|
+ "CAST(ISNULL(wrk_sts_15_cube_sum, 0) AS decimal(18,4)) AS cube15Total "
|
+ "FROM dbo.asr_wrk_cube_day_stat ORDER BY stat_date")
|
List<WorkCubeTotalAxis> getCubeTotal();
|
|
/**
|
* 最近 12 天入库体积汇总,先筛选完成状态主档,再关联明细,避免明细日志大范围预聚合。
|
*/
|
@Select("WITH dates AS ( "
|
+ " SELECT DATEADD(DAY, -v.n, CONVERT(date, GETDATE())) AS stat_date "
|
+ " FROM (VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11)) AS v(n) "
|
+ "), completed_mast AS ( "
|
+ " SELECT DISTINCT m.wrk_no, m.io_time "
|
+ " FROM dbo.asr_wrk_mast_log AS m "
|
+ " WHERE m.wrk_sts = 5 "
|
+ " AND m.io_time >= DATEADD(DAY, -11, CONVERT(date, GETDATE())) "
|
+ " AND m.io_time < DATEADD(DAY, 1, CONVERT(date, GETDATE())) "
|
+ "), agg AS ( "
|
+ " SELECT CONVERT(date, cm.io_time) AS stat_date, "
|
+ " SUM(ISNULL(d.cube_number, 0)) AS wrk_sts_5_cube_sum "
|
+ " FROM completed_mast AS cm "
|
+ " INNER JOIN dbo.asr_wrk_detl_log AS d "
|
+ " ON d.wrk_no = cm.wrk_no "
|
+ " AND d.io_time = cm.io_time "
|
+ " GROUP BY CONVERT(date, cm.io_time) "
|
+ ") "
|
+ "SELECT CONVERT(char(10), ds.stat_date, 23) AS ymd, "
|
+ " CAST(ISNULL(a.wrk_sts_5_cube_sum, 0) AS decimal(18,4)) AS cube5Total "
|
+ "FROM dates AS ds "
|
+ "LEFT JOIN agg AS a ON a.stat_date = ds.stat_date "
|
+ "ORDER BY ds.stat_date "
|
+ "OPTION (RECOMPILE)")
|
List<WorkCubeTotalAxis> getInboundCubeTotal();
|
|
|
|
List<ViewWorkCountInView> selectWorkCountIn(@Param("curr") Integer curr, @Param("limit") Integer limit, @Param("matnr")String matnr, @Param("start") String startTime, @Param("end") String endTime);
|
|
Integer selectWorkCountInTotal(String matnr, @Param("start") String startTime, @Param("end") String endTime);
|
|
List<ViewWorkCountInView> selectWorkCountOut(@Param("curr") Integer pageNumber, @Param("limit") Integer pageSize, String matnr, @Param("start") String startTime, @Param("end") String endTime);
|
|
Integer selectWorkCountOutTotal(String matnr, @Param("start") String startTime, @Param("end") String endTime);
|
|
Integer selectWorkCountInSum(String matnr, @Param("start") String startTime, @Param("end") String endTime);
|
|
Integer selectWorkCountOutSum(String matnr, @Param("start") String startTime, @Param("end") String endTime);
|
}
|