| | |
| | | and a.standby3 like '%' + #{standby3} + '%' |
| | | </if> |
| | | <if test="boxType3!=null and boxType3!='' "> |
| | | and a.boxType3 like '%' + #{boxType3} + '%' |
| | | and a.box_type3 like '%' + #{boxType3} + '%' |
| | | </if> |
| | | </sql> |
| | | |
| | | <sql id="stockOutCondition1"> |
| | | <if test="matnr!=null and matnr!='' "> |
| | | and a.matnr like '%' + #{matnr} + '%' |
| | | </if> |
| | | <if test="standby1!=null and standby1!='' "> |
| | | and a.standby1 like '%' + #{standby1} + '%' |
| | | </if> |
| | | <if test="standby2!=null and standby2!='' "> |
| | | and a.standby2 like '%' + #{standby2} + '%' |
| | | </if> |
| | | <if test="boxType3!=null and boxType3!='' "> |
| | | and a.box_type3 like '%' + #{boxType3} + '%' |
| | | </if> |
| | | </sql> |
| | | |
| | |
| | | <include refid="stockOutCondition"></include> |
| | | </select> |
| | | |
| | | <select id="getStockStatis" resultType="com.zy.asrs.entity.LocDetl"> |
| | | select * from |
| | | ( |
| | | select |
| | | ROW_NUMBER() over (order by sum(a.anfme) desc) as row |
| | | , a.matnr |
| | | , a.batch |
| | | , a.standby1 |
| | | , a.standby2 |
| | | , sum(a.anfme) as anfme |
| | | from asr_loc_detl a |
| | | where 1=1 |
| | | <include refid="stockOutCondition"></include> |
| | | group by a.matnr, a.batch, a.standby1, a.standby2 |
| | | ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) |
| | | <select id="getStockStatis" resultMap="BaseResultMap"> |
| | | SELECT * FROM ( |
| | | SELECT |
| | | ROW_NUMBER() OVER (ORDER BY SUM(a.anfme) DESC) AS row, |
| | | a.matnr, |
| | | a.batch, |
| | | a.standby1, |
| | | a.standby2, |
| | | MAX(a.box_type3) AS box_type3, -- 关键:用 MAX 避免 null 或不确定性 |
| | | SUM(a.anfme) AS anfme |
| | | FROM asr_loc_detl a |
| | | WHERE 1=1 |
| | | <include refid="stockOutCondition"/> |
| | | GROUP BY |
| | | a.matnr, |
| | | a.batch, |
| | | a.standby1, |
| | | a.standby2, |
| | | a.box_type3 -- 保留,因为业务需要按采购单区分 |
| | | ) t |
| | | WHERE t.row BETWEEN ((#{pageNumber}-1)*#{pageSize}+1) AND (#{pageNumber}*#{pageSize}) |
| | | </select> |
| | | |
| | | <!-- 库存统计导出:全量汇总数据(不分页) --> |
| | | <select id="selectStockStatisExport" resultMap="BaseResultMap"> |
| | | SELECT |
| | | a.matnr, |
| | | a.batch, |
| | | a.standby1, |
| | | a.standby2, |
| | | MAX(a.box_type3) AS box_type3, |
| | | SUM(a.anfme) AS anfme |
| | | FROM asr_loc_detl a |
| | | WHERE 1=1 |
| | | <include refid="stockOutCondition1"/> |
| | | GROUP BY |
| | | a.matnr, |
| | | a.batch, |
| | | a.standby1, |
| | | a.standby2, |
| | | a.box_type3 |
| | | ORDER BY SUM(a.anfme) DESC |
| | | </select> |
| | | |
| | | <select id="getStockStatisCount" parameterType="java.util.Map" resultType="java.lang.Integer"> |