自动化立体仓库 - WMS系统
zwl
3 天以前 b0877a3275ed5bc96fb80f84949904e149946cf2
src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
@@ -66,57 +66,44 @@
   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")
         + "where ymd>CONVERT(char(10), DATEADD(DAY,-7,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 ")
   @Select("SELECT ymd, inqty, outqty,cube_inqty as cubeInqty,cube_outqty as cubeOutqty,out_teu as outTeu 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")
   @Select("SELECT ymd, teu_total FROM asr_wrk_detl_teu_day_view "
         + "WHERE ymd>CONVERT(char(10), DATEADD(DAY,-7,GETDATE()), 120) ORDER BY ymd")
   List<WorkTeuTotalAxis> getteuTotal();
   /**
    * 最近 12 天体积汇总
    * 最近 7 天体积汇总
    */
   @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")
         + "FROM dbo.asr_wrk_cube_day_stat "
         + "WHERE stat_date >= DATEADD(DAY, -6, CONVERT(date, GETDATE())) "
         + "  AND stat_date < DATEADD(DAY, 1, CONVERT(date, GETDATE())) "
         + "ORDER BY stat_date")
   List<WorkCubeTotalAxis> getCubeTotal();
   /**
    * 最近 12 天入库体积汇总,先筛选完成状态主档,再关联明细,避免明细日志大范围预聚合。
    * 最近 7 天入库体积汇总。
    * 接口只读取汇总表,避免每次请求实时扫描工作日志明细。
    */
   @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)")
   @Select("SELECT CONVERT(char(10), stat_date, 23) AS ymd, "
         + "CAST(ISNULL(wrk_sts_5_cube_sum, 0) AS decimal(18,4)) AS cube5Total "
         + "FROM dbo.asr_wrk_cube_day_stat "
         + "WHERE stat_date >= DATEADD(DAY, -6, CONVERT(date, GETDATE())) "
         + "  AND stat_date < DATEADD(DAY, 1, CONVERT(date, GETDATE())) "
         + "ORDER BY stat_date")
   List<WorkCubeTotalAxis> getInboundCubeTotal();