ShippingCombinationMapper.xml 2.82 KB
<?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.huaheng.pc.shipment.shippingCombination.mapper.ShippingCombinationMapper">
    <select id="getInventory" resultType="com.huaheng.pc.inventory.inventory.domain.Inventory">
        SELECT i.id, i.warehouseId, i.warehouseCode, i.locationId, i.locationCode, i.containerCode,
                i.sourceCode, i.sourceLine, i.companyId, i.companyCode, i.materialId, i.materialCode,
                i.receiptId, i.receiptCode,	i.receiptDetailId, i.batch, i.lot, i.project, i.manufactureDate,
                i.expirationDate, i.status, i.qty, i.taskQty, i.costPrice, i.listPrice, i.netPrice, i.created,
                i.createdBy, i.lastUpdated, i.lastUpdatedBy, i.userDef1, i.userDef2, i.userDef3, i.deleted,
                m.name materialName, m.userDef1 materialOldCode ,i.zoneCode
        FROM inventory i
        INNER JOIN material m ON i.materialCode = m.code
                                AND i.companyCode=#{companyCode}
                                AND i.warehouseCode=#{warehouseCode}
                                AND m.warehouseCode=#{warehouseCode}
                                AND i.qty > i.taskQty
                                AND i.materialCode=#{materialCode}

        INNER JOIN location l ON i.locationCode = l.code
                                    AND l.warehouseCode=#{warehouseCode}
        LEFT JOIN shipment_container_header s ON i.locationCode = s.locationCode
                                            AND s.status=0
                                            AND s.warehouseCode=#{warehouseCode}
        <where>
            <if test="project != null and project != ''">
                AND i.project = #{project}
            </if>
            <if test="zoneCode != null and zoneCode !=''">
                AND i.zoneCode = #{zoneCode}
            </if>
            <if test="inventoryStatus != null and inventoryStatus != '' ">
                AND i.status = #{inventoryStatus}
            </if>
            <if test="locationCode != null and locationCode != '' ">
                AND i.locationCode = #{locationCode}
            </if>
            <if test="containerCode != null and containerCode != '' ">
                AND i.containerCode = #{containerCode}
            </if>
            <if test="params != null and params.createdBegin != null and params.createdBegin != ''">
                AND i.created &gt;= #{params.createdBegin}
            </if>
            <if test="params != null and params.createdEnd != null and params.createdEnd != ''">
                AND i.created &lt;= #{params.createdEnd}
            </if>
            AND  l.status='empty' and i.zoneCode&lt;>'QG' OR (l.status='lock' AND s.id  IS NOT NULL)
        </where>
    </select>

</mapper>