maven
6 小时以前 8e14fa84f6f2dfdda8a739400fca80ac73dca874
src/main/resources/mapper/procurementrecord/CustomStorageMapper.xml
@@ -3,24 +3,53 @@
<mapper namespace="com.ruoyi.procurementrecord.mapper.CustomStorageMapper">
    <select id="listPageCopyByCustom" resultType="com.ruoyi.procurementrecord.pojo.CustomStorage">
        select *,
               sum(inbound_num) as inboundNum,
               sum(inbound_num) as inboundNum0,
               sum(tax_inclusive_total_price) as taxInclusiveTotalPrice
               from custom_storage
        select t1.*,
                sum(t1.tax_inclusive_total_price) as totalPrice,
                sum(t1.inbound_num) as inboundNum,
                sum(t1.inbound_num) as inboundNum0,
                SUM(t1.inbound_num) - COALESCE(SUM(t2.inbound_num), 0) AS availableStock
               from custom_storage t1
               left join procurement_record_out t2 on t1.id = t2.procurement_record_storage_id and t2.type = 3
        <where>
            t2.type = 3
            <if test="req.productCategory != null and req.productCategory != ''">
                and product_category like  concat('%',#{req.productCategory},'%')
                and t1.product_category like  concat('%',#{req.productCategory},'%')
            </if>
            <if test="req.supplierName !=null and req.supplierName != ''">
                and supplier_name like concat('%',#{req.supplierName},'%')
                and t1.supplier_name like concat('%',#{req.supplierName},'%')
            </if>
            <if test="req.inboundDate !=null">
                and inbound_date like concat('%',#{req.inboundDate},'%')
            <if test="req.timeStr != null and req.timeStr != ''">
                and t1.inbound_date like concat('%',#{req.timeStr},'%')
            </if>
        </where>
        group by product_category, specification_model, tax_inclusive_unit_price
        order by inbound_date desc
        group by t1.product_category, t1.specification_model, t1.tax_inclusive_unit_price
        HAVING availableStock > 0
        order by t1.inbound_date desc
    </select>
    <select id="listPageByCustom" resultType="com.ruoyi.procurementrecord.pojo.CustomStorage">
        select t1.*,
        sum(t1.inbound_num) as inboundNum,
        sum(t1.inbound_num) as inboundNum0,
        sum(t1.tax_inclusive_total_price) as taxInclusiveTotalPrice,
        (t1.inbound_num - COALESCE(SUM(t2.inbound_num), 0)) AS availableStock
        from custom_storage t1
        left join procurement_record_out t2 on t1.id = t2.procurement_record_storage_id and t2.type = 3
        <where>
            t2.type = 3
            <if test="req.productCategory != null and req.productCategory != ''">
                and t1.product_category like  concat('%',#{req.productCategory},'%')
            </if>
            <if test="req.supplierName !=null and req.supplierName != ''">
                and t1.supplier_name like concat('%',#{req.supplierName},'%')
            </if>
            <if test="req.timeStr != null and req.timeStr != ''">
                and t1.inbound_date like concat('%',#{req.timeStr},'%')
            </if>
        </where>
        group by t1.id
        <if test="req.flag != null and req.flag">
            having availableStock > 0
        </if>
        order by t1.inbound_date desc
    </select>
</mapper>