You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
udi-wms-java/src/main/resources/mybatis/mapper/inv/InvRemindSetDao.xml

78 lines
3.1 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.InvRemindSetDao">
<select id="filterList" resultType="com.glxp.api.res.inv.InvRemindSetResponse">
select irs.id,
irs.relId,
irs.deptCode,
irs.invCode,
irs.invSpaceCode,
irs.lowStock,
irs.lackStock,
irs.overStock,
irs.expireDate,
irs.recentDate,
irs.remark,
bu.lowStockNum,
bu.overStockNum,
bu.recentDateTime,
bu.useExpireTime,
bu.isDateBy,
bp.cpmctymc productName,
bp.ggxh,
(select `name` from auth_warehouse where `code` = irs.invCode) invName,
(select `name` from auth_space where `code` = irs.invSpaceCode and invCode = irs.invCode) invSpaceName
from inv_remind_set irs
left join basic_udirel bu on bu.id = irs.relId
left join basic_products bp on bp.uuid = bu.uuid
<where>
<if test="relId != null and relId != ''">
AND irs.relId = #{relId}
</if>
<if test="invCode != null and invCode != ''">
AND irs.invCode = #{invCode}
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND irs.invSpaceCode = #{invSpaceCode}
</if>
<if test="status != null">
AND irs.status = #{status}
</if>
<if test="relIds != null">
AND irs.relId IN
<foreach collection="relIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
</where>
order by irs.updateTime desc
</select>
<select id="selectInfoByInvId" resultType="com.glxp.api.res.inv.InvRemindSetResponse">
select ip.relIdFk relId,
ip.deptCode,
ip.invCode,
ipd.invSpaceCode,
(select `name` from auth_warehouse where code = ip.invCode) invName,
(select `name`
from auth_space
where code = ipd.invSpaceCode
and invWarehouseCode = ip.invCode) invSpaceName,
bp.ggxh,
bp.cpmctymc productName,
bu.lowStockNum,
bu.overStockNum,
bu.recentDateTime,
bu.isDateBy
from inv_product ip
left join basic_udirel bu on ip.relIdFk = bu.id
left join basic_products bp on bu.uuid = bp.uuid
left join inv_product_detail ipd
on ip.relIdFk = ipd.relId and IFNULL(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
and ip.invCode = ipd.invCode
where ip.id = #{invId}
group by ip.id
</select>
</mapper>