|
|
<?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.xujie.modules.quality.mapper.SrmQualityIssuePoMapper">
<select id="getAvailablePoList" resultType="com.xujie.modules.quality.data.QualityIssuePoSelectDto"> SELECT p.site, p.order_ref1 as poNo, p.item_no as itemNo, p.part_no as partNo, pt.part_desc as partDesc, h.order_date as poDate, p.qty, h.supplier_no as supplierNo, ss.supplier_name as supplierName, h.buyer as buyer FROM PODetail p LEFT JOIN POHeader h ON p.site = h.site AND p.order_no = h.order_no LEFT JOIN srm_supplier ss ON ss.site = h.site AND ss.supplier_no = h.supplier_no LEFT JOIN part pt ON p.part_no = pt.part_no AND p.site = pt.site WHERE p.site = #{site} <if test="supplierNo != null and supplierNo != ''"> AND h.supplier_no = #{supplierNo} </if> <if test="poNo != null and poNo != ''"> AND p.order_ref1 LIKE '%' + #{poNo} + '%' </if> <if test="partNo != null and partNo != ''"> AND p.part_no LIKE '%' + #{partNo} + '%' </if> <if test="beginDate != null"> AND h.order_date >= #{beginDate} </if> <if test="endDate != null"> AND h.order_date <= #{endDate} </if> ORDER BY h.order_date DESC <if test="limit != null and limit > 0"> OFFSET 0 ROWS FETCH NEXT #{limit} ROWS ONLY </if> </select>
<!-- 其他方法保持不变 --> <delete id="deleteByIssueNo"> DELETE FROM srm_quality_issue_po WHERE site = #{site} AND issue_no = #{issueNo} </delete>
<insert id="batchInsert"> INSERT INTO srm_quality_issue_po ( site, issue_no, po_no, item_no, part_no, po_qty, shipped_qty, create_by, create_date ) VALUES <foreach collection="list" item="item" separator=","> ( #{item.site}, #{item.issueNo}, #{item.poNo}, #{item.itemNo}, #{item.partNo}, #{item.poQty}, #{item.shippedQty,jdbcType=DECIMAL}, #{item.createBy}, GETDATE() ) </foreach> </insert>
<select id="getIssuePoList" resultType="com.xujie.modules.quality.entity.SrmQualityIssuePo"> SELECT qip.site, qip.issue_no, qip.po_no, qip.item_no, qip.part_no, pt.part_desc as partDesc, qip.po_qty, h.order_date as poDate, h.supplier_no as supplierNo, ss.supplier_name as supplierName, h.buyer as buyer, qip.create_by, qip.create_date FROM srm_quality_issue_po qip LEFT JOIN part pt ON qip.part_no = pt.part_no AND qip.site = pt.site LEFT JOIN PODetail p ON p.site = qip.site AND p.order_ref1 = qip.po_no AND p.item_no = qip.item_no LEFT JOIN POHeader h ON h.site = p.site AND h.order_no = p.order_no LEFT JOIN srm_supplier ss ON ss.site = h.site AND ss.supplier_no = h.supplier_no WHERE qip.site = #{site} AND qip.issue_no = #{issueNo} </select>
<delete id="deleteByPoNo"> DELETE FROM srm_quality_issue_po WHERE site = #{site} AND issue_no = #{issueNo} AND po_no = #{poNo} AND item_no = #{itemNo} </delete></mapper>
|