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

65 lines
2.7 KiB
XML
Raw Normal View History

2025-07-19 20:23:37 +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">
2025-07-28 18:37:45 +08:00
<mapper namespace="com.nflg.wms.repository.mapper.WmsInventoryMapper">
2025-07-19 20:23:37 +08:00
2025-08-08 14:20:15 +08:00
<select id="search" resultType="com.nflg.wms.common.pojo.vo.InventoryVO">
2025-09-22 17:47:51 +08:00
SELECT i."id",i.material_no,i.factory_no,i.warehouse_no,i.num,i.batch_number
2025-08-08 14:20:15 +08:00
FROM wms_inventory i
LEFT JOIN dictionary_item di ON di."value"=i.factory_no
2025-09-04 14:45:58 +08:00
LEFT JOIN wms_warehouse wh ON wh.factory_id=di."id" and i.warehouse_no=wh.no
2025-08-08 14:20:15 +08:00
<where>
<if test="request.materialNo != null and request.materialNo!=''">
AND i.material_no=#{request.materialNo}
</if>
<if test="request.factoryNo != null and request.factoryNo!=''">
AND i.factory_no=#{request.factoryNo}
</if>
<if test="request.warehouseNo != null and request.warehouseNo!=''">
AND i.warehouse_no=#{request.warehouseNo}
</if>
<if test="request.batchNo != null and request.batchNo!=''">
AND i.batch_number= #{request.batchNo}
</if>
</where>
2025-09-22 17:47:51 +08:00
order by i.id desc
2025-08-08 14:20:15 +08:00
</select>
2025-08-12 15:57:33 +08:00
2025-09-04 20:09:52 +08:00
<select id="getNum" resultType="com.nflg.wms.common.pojo.dto.InventoryDTO">
2025-08-12 15:57:33 +08:00
SELECT material_no,SUM(num) num
FROM wms_inventory
WHERE factory_no=#{factoryNo} AND warehouse_no=#{warehouseNo}
<if test="materialNos != null and materialNos.size() > 0">
AND material_no IN
<foreach item="item" collection="materialNos" separator="," close=")" open="(">
#{item}
</foreach>
</if>
GROUP BY material_no,factory_no,warehouse_no
</select>
2025-09-04 20:09:52 +08:00
<select id="getLockedNum" resultType="com.nflg.wms.common.pojo.dto.InventoryDTO">
2025-08-13 18:18:47 +08:00
SELECT material_no,num
FROM v_inventory_lock
WHERE factory_no=#{factoryNo} AND warehouse_no=#{warehouseNo}
2025-08-12 15:57:33 +08:00
<if test="materialNos != null and materialNos.size() > 0">
2025-08-13 18:18:47 +08:00
AND material_no IN
2025-08-12 15:57:33 +08:00
<foreach item="item" collection="materialNos" separator="," close=")" open="(">
#{item}
</foreach>
</if>
</select>
<select id="getNumOne" resultType="java.math.BigDecimal">
SELECT SUM(num) num
FROM wms_inventory
WHERE factory_no=#{factoryNo} AND warehouse_no=#{warehouseNo} AND material_no=#{materialNo}
GROUP BY factory_no,warehouse_no,material_no
</select>
<select id="getLockedNumOne" resultType="java.math.BigDecimal">
2025-08-13 18:18:47 +08:00
SELECT num
FROM v_inventory_lock
WHERE factory_no=#{factoryNo} AND warehouse_no=#{warehouseNo} AND material_no=#{materialNo}
2025-08-12 15:57:33 +08:00
</select>
2025-07-19 20:23:37 +08:00
</mapper>