wms/nflg-wms-repository/src/main/resources/mapper/WmsStorageMapper.xml

50 lines
1.9 KiB
XML
Raw Normal View History

2025-07-02 16:59:42 +08:00
<?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.nflg.wms.repository.mapper.WmsStorageMapper">
<select id="search" resultType="com.nflg.wms.common.pojo.vo.StorageVO">
SELECT *
FROM (
SELECT
s.*,
wh.no AS "warehouseNo",
m.no AS "materialNo",
m.describe AS "materialDescribe",
get_binnos(s.id) AS "binNos"
FROM wms_storage s
LEFT JOIN wms_warehouse wh ON s.warehouse_id = wh.id
LEFT JOIN wms_material m ON s.material_id = m.id
<where>
<if test="request.warehouseNo!=null and request.warehouseNo!=''">
and wh.no like concat('%', #{request.warehouseNo}, '%')
</if>
<if test="request.materialNo!=null and request.materialNo!=''">
and (m.no like concat('%', #{request.materialNo}, '%') or m.describe like concat('%',
#{request.materialNo}, '%'))
</if>
</where>
) t
<where>
<if test="request.binNo!=null and request.binNo!=''">
and t."binNos" like concat('%', #{request.binNo}, '%')
</if>
</where>
</select>
<select id="getList" resultType="com.nflg.wms.common.pojo.vo.StorageVO">
SELECT
s.*,
wh.no AS "warehouseNo",
m.no AS "materialNo",
m.describe AS "materialDescribe",
get_binnos(s.id) AS "binNos"
FROM wms_storage s
LEFT JOIN wms_warehouse wh ON s.warehouse_id = wh.id
LEFT JOIN wms_material m ON s.material_id = m.id
where s.id in
<foreach item="item" collection="ids" separator="," open="(" close=")">
#{item}
</foreach>
</select>
</mapper>