自动化立体仓库 - WMS系统
zyx
2023-11-02 8808ebb9bb3eb8e6bc9ed8bfc6cfaf53e63d6614
日志统计
5个文件已修改
251 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/ReportQueryController.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/ViewStockUseMapper.xml 201 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/report/reportStockUse.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/report/viewStockUse.html 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/ReportQueryController.java
@@ -39,11 +39,29 @@
    public R queryViewStockUseListByPages(@RequestParam(defaultValue = "1")Integer curr,
                                          @RequestParam(defaultValue = "10")Integer limit,
                                          @RequestParam Map<String, Object> param){
        ViewStockUseBean bean = new ViewStockUseBean();
        bean.setPageSize(limit);
        bean.setPageNumber(curr);
        List<ViewStockUseBean> list= reportQueryMapper.queryViewStockUseList(bean);
        int count = reportQueryMapper.getViewStockUseCount(bean);
        List<ViewStockUseBean> list = new ArrayList<>();
        int count = 0;
        if(Cools.isEmpty(param.get("locType"))){
            param.put("locType","asr_loc");
        }
        if("agv_loc_1".equals(param.get("locType").toString())){
            list = reportQueryMapper.queryViewStockUse1List(bean);
            count = reportQueryMapper.getViewStockUse1Count(bean);
        }else if("agv_loc_3".equals(param.get("locType").toString())){
            list = reportQueryMapper.queryViewStockUse3List(bean);
            count = reportQueryMapper.getViewStockUse3Count(bean);
        }else {
            list = reportQueryMapper.queryViewStockUseList(bean);
            count = reportQueryMapper.getViewStockUseCount(bean);
        }
        Page<ViewStockUseBean> page = new Page<>();
        page.setRecords(list);
        page.setTotal(count);
src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
@@ -12,10 +12,18 @@
@Repository
public interface ReportQueryMapper {
    
    //分页查询库位使用率
    //分页查询四项库库位使用率
    List<ViewStockUseBean> queryViewStockUseList(ViewStockUseBean viewStockUse);
    int getViewStockUseCount(ViewStockUseBean viewStockUse);
    List<ViewStockUseBean> getViewStockUseAll(ViewStockUseBean viewStockUse);
    //分页查询agv1楼库位使用率
    List<ViewStockUseBean> queryViewStockUse1List(ViewStockUseBean viewStockUse);
    int getViewStockUse1Count(ViewStockUseBean viewStockUse);
    List<ViewStockUseBean> getViewStockUse1All(ViewStockUseBean viewStockUse);
    //分页查询agv3楼库位使用率
    List<ViewStockUseBean> queryViewStockUse3List(ViewStockUseBean viewStockUse);
    int getViewStockUse3Count(ViewStockUseBean viewStockUse);
    List<ViewStockUseBean> getViewStockUse3All(ViewStockUseBean viewStockUse);
    //分页查询库存滞留时间
    public List<ViewStayTimeBean> queryViewStayTimeList(ViewStayTimeBean viewStayTime);
src/main/resources/mapper/ViewStockUseMapper.xml
@@ -14,7 +14,7 @@
<select id="queryViewStockUseList" parameterType="com.zy.asrs.entity.ViewStockUseBean" resultType="com.zy.asrs.entity.ViewStockUseBean">
select top (#{pageSize}) * from asr_stk_use_view 
<where>
    row1 not in (select top ((#{pageNumber}-1)*#{pageSize}) row1 from asr_stk_use_view
    row1 not in (select top ((#{pageNumber}-1)*#{pageSize}) row1 from asr_stk_use_view
    <where>
        1=1
        <include refid="viewStockUseConditionSql"></include>        
@@ -50,67 +50,150 @@
    ]]>
</where>
</select>
    <select id="selectWorkCountIn" resultType="com.zy.asrs.entity.ViewWorkCountInView">
        SELECT *
        FROM (
        select
            ROW_NUMBER() OVER(Order by a.oneday desc) as row
        , *
        FROM(
        SELECT * FROM asr_wrkin_count_view
                 WHERE
                 1 = 1 AND
                 (oneday >= #{start}
                 AND
                oneday &lt; #{end})
                 <if test="matnr != null and matnr !=''">
                     and matnr = #{matnr}
                 </if>
<!-- 分页查询所有信息 -->
<select id="queryViewStockUse1List" parameterType="com.zy.asrs.entity.ViewStockUseBean" resultType="com.zy.asrs.entity.ViewStockUseBean">
    select top (#{pageSize}) * from agv_stk_use_view1
    <where>
        row1 not in (select top ((#{pageNumber}-1)*#{pageSize}) row1 from agv_stk_use_view1
        <where>
            1=1
            <include refid="viewStockUseConditionSql"></include>
        </where>
        order by row1 asc)
        <include refid="viewStockUseConditionSql"></include>
        <![CDATA[
    order by row1 asc
]]>
    </where>
</select>
                ) a ) b
        WHERE 1=1 and b.row between ((#{curr}-1)*#{limit}+1) and (#{curr}*#{limit})
<select id="getViewStockUse1Count" parameterType="com.zy.asrs.entity.ViewStockUseBean"    resultType="Integer">
    select count(1) from agv_stk_use_view1
    <where>
        <![CDATA[
1=1
]]>
        <include refid="viewStockUseConditionSql"></include>
    </where>
</select>
    </select>
    <select id="selectWorkCountInTotal" resultType="java.lang.Integer">
        SELECT COUNT(*) FROM asr_wrkin_count_view
        WHERE 1= 1 AND
        (oneday >= #{start}
        AND
        oneday &lt; #{end})
        <if test="matnr != null and matnr !='' ">
            and matnr = #{matnr}
        </if>
    </select>
    <select id="selectWorkCountOut" resultType="com.zy.asrs.entity.ViewWorkCountInView">
        SELECT *
        FROM (
                 select
                     ROW_NUMBER() OVER(Order by a.oneday desc) as row
        , *
                 FROM(
                         SELECT * FROM asr_wrkout_count_view
        WHERE
        1 = 1 AND
        (oneday > #{start}
        AND
        oneday &lt; #{end})
<!-- 不分页查询所有信息,用于excel导出 -->
<select id="getViewStockUse1All" parameterType="com.zy.asrs.entity.ViewStockUseBean" resultType="com.zy.asrs.entity.ViewStockUseBean">
    select * from agv_stk_use_view1
    <where>
        <![CDATA[
    1=1
]]>
        <include refid="viewStockUseConditionSql"></include>
        <![CDATA[
    order by row1 asc
]]>
    </where>
</select>
        <if test="matnr != null and matnr !=''">
            and matnr = #{matnr}
        </if>
        ) a ) b
        WHERE 1=1 and b.row between ((#{curr}-1)*#{limit}+1) and (#{curr}*#{limit})
    </select>
    <select id="selectWorkCountOutTotal" resultType="java.lang.Integer">
        SELECT COUNT(*) FROM asr_wrkout_count_view
        WHERE 1= 1 AND
        (oneday > #{start}
        AND
        oneday &lt; #{end})
        <if test="matnr != null and matnr !='' ">
            and matnr = #{matnr}
        </if>
    </select>
<!-- 分页查询所有信息 -->
<select id="queryViewStockUse3List" parameterType="com.zy.asrs.entity.ViewStockUseBean" resultType="com.zy.asrs.entity.ViewStockUseBean">
    select top (#{pageSize}) * from agv_stk_use_view3
    <where>
        row1 not in (select top ((#{pageNumber}-1)*#{pageSize}) row1 from agv_stk_use_view3
        <where>
            1=1
            <include refid="viewStockUseConditionSql"></include>
        </where>
        order by row1 asc)
        <include refid="viewStockUseConditionSql"></include>
        <![CDATA[
    order by row1 asc
]]>
    </where>
</select>
<select id="getViewStockUse3Count" parameterType="com.zy.asrs.entity.ViewStockUseBean"    resultType="Integer">
    select count(1) from agv_stk_use_view3
    <where>
        <![CDATA[
1=1
]]>
        <include refid="viewStockUseConditionSql"></include>
    </where>
</select>
<!-- 不分页查询所有信息,用于excel导出 -->
<select id="getViewStockUse3All" parameterType="com.zy.asrs.entity.ViewStockUseBean" resultType="com.zy.asrs.entity.ViewStockUseBean">
    select * from agv_stk_use_view3
    <where>
        <![CDATA[
    1=1
]]>
        <include refid="viewStockUseConditionSql"></include>
        <![CDATA[
    order by row1 asc
]]>
    </where>
</select>
<select id="selectWorkCountIn" resultType="com.zy.asrs.entity.ViewWorkCountInView">
    SELECT *
    FROM (
    select
        ROW_NUMBER() OVER(Order by a.oneday desc) as row
    , *
    FROM(
    SELECT * FROM asr_wrkin_count_view
             WHERE
             1 = 1 AND
             (oneday >= #{start}
             AND
            oneday &lt; #{end})
             <if test="matnr != null and matnr !=''">
                 and matnr = #{matnr}
             </if>
            ) a ) b
    WHERE 1=1 and b.row between ((#{curr}-1)*#{limit}+1) and (#{curr}*#{limit})
</select>
<select id="selectWorkCountInTotal" resultType="java.lang.Integer">
    SELECT COUNT(*) FROM asr_wrkin_count_view
    WHERE 1= 1 AND
    (oneday >= #{start}
    AND
    oneday &lt; #{end})
    <if test="matnr != null and matnr !='' ">
        and matnr = #{matnr}
    </if>
</select>
<select id="selectWorkCountOut" resultType="com.zy.asrs.entity.ViewWorkCountInView">
    SELECT *
    FROM (
             select
                 ROW_NUMBER() OVER(Order by a.oneday desc) as row
    , *
             FROM(
                     SELECT * FROM asr_wrkout_count_view
    WHERE
    1 = 1 AND
    (oneday > #{start}
    AND
    oneday &lt; #{end})
    <if test="matnr != null and matnr !=''">
        and matnr = #{matnr}
    </if>
    ) a ) b
    WHERE 1=1 and b.row between ((#{curr}-1)*#{limit}+1) and (#{curr}*#{limit})
</select>
<select id="selectWorkCountOutTotal" resultType="java.lang.Integer">
    SELECT COUNT(*) FROM asr_wrkout_count_view
    WHERE 1= 1 AND
    (oneday > #{start}
    AND
    oneday &lt; #{end})
    <if test="matnr != null and matnr !='' ">
        and matnr = #{matnr}
    </if>
</select>
</mapper>
src/main/webapp/static/js/report/reportStockUse.js
@@ -115,6 +115,12 @@
        }
    });
    // 搜索栏搜索事件
    form.on('submit(search)', function (data) {
        pageCurr = 1;
        tableReload(false);
    });
});
// 关闭动作
src/main/webapp/views/report/viewStockUse.html
@@ -19,6 +19,18 @@
<!-- 搜索栏 -->
<div id="search-box" class="layui-form layui-card-header">
    <div class="layui-input-inline">
        <select id="floorSelect" name="locType" lay-filter="floorSelect">
            <option value="">请选择</option>
            <option value="asr_loc">四项库区</option>
            <option value="agv_loc_1">AGV1楼库区</option>
            <option value="agv_loc_3">AGV3楼库区</option>
        </select>
    </div>
    <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block">
        <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button>
        <!--        <button id="unreason" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="unreason">查看异常数据</button>-->
    </div>
</div>
<!-- 表格 -->