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

67 lines
2.8 KiB
XML
Raw Normal View History

<?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.WmsPoReceiptMapper">
<select id="checkItemStatus" resultType="java.lang.Long">
select id
from wms_po_receipt_item
where receive_id = #{taskId}
and in_qty != receipt_num
</select>
<select id="search" resultType="com.nflg.wms.common.pojo.vo.POReceiptVO">
select
a.id,a.in_num,b.note_num,b.ou_code,b.iu_code,b.purchase_group,b.delivery_note_date,
b.waybill_num,
c.supplier_name,b.supplier_num,
a.is_completed,a.create_time as receive_time,
a.update_time as in_time, a.create_user_name as receive_user_name,
a.update_user_name as in_user_name from wms_po_receipt a left join
wms_srm_order b on a.order_no=b.note_num
left join user_supplier c on b.supplier_num=c.supplier_code
<where>
<if test="request.inNum !=null and request.inNum !='' ">
and a.in_num like concat('%', #{request.inNum}, '%')
</if>
<if test="request.orderNo !=null and request.orderNo !='' ">
and b.note_num like concat('%', #{request.orderNo}, '%')
</if>
<if test="request.supplierNum !=null and request.supplierNum !='' ">
and b.supplier_num =#{request.supplierNum}
</if>
<if test="request.itemCode !=null and request.itemCode !='' ">
and EXISTS (select 1 from wms_srm_order_item where a.id=wms_srm_order_item.order_id and
wms_srm_order_item.item_code like concat('%', #{request.itemCode}, '%')
</if>
<if test="request.receiveStartDate !=null and request.receiveStartDate !='' ">
and a.create_time >= #{request.receiveStartDate}
</if>
<if test="request.receiveEndDate !=null and request.receiveEndDate !='' ">
and a.create_time &lt; #{request.receiveEndDate}
</if>
<if test="request.deliveryStartDate !=null and request.deliveryStartDate !='' ">
and a.delivery_note_date >= #{request.deliveryStartDate}
</if>
<if test="request.deliveryEndDate !=null and request.deliveryEndDate !='' ">
and a.delivery_note_date &lt; #{request.deliveryEndDate}
</if>
<if test="request.inStartDate !=null and request.inStartDate !='' ">
and a.update_time >= #{request.inStartDate}
</if>
<if test="request.inEndDate !=null and request.inEndDate !='' ">
and a.update_time &lt; #{request.inEndDate}
</if>
</where>
order by a.create_time desc
</select>
</mapper>