ReceiptHeaderMapper.xml 11.6 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.receipt.receiptHeader.mapper.ReceiptHeaderMapper">

    <select id="createCode" resultType="java.lang.String">
        SELECT code FROM receipt_header WHERE type = #{receiptType,jdbcType=VARCHAR} ORDER BY id DESC LIMIT 1
    </select>

    <insert id="headerToHistory">
        INSERT INTO receipt_header_history (
                code, warehouseCode, companyId, type, sourceCode, sourcePlatform, companyCode, totalQty,
                totalLines, remark, uploadStatus, uploadremark, uploadTime, appointmentTime, firstStatus, lastStatus,
                created, createdBy, lastUpdated, lastUpdatedBy, ENABLE, userDef1, userDef2, userDef3, deleted)
        SELECT
                code, warehouseCode, companyId, type, sourceCode, sourcePlatform, companyCode, totalQty,
                totalLines, remark,  uploadStatus, uploadremark, uploadTime, appointmentTime, firstStatus,
                lastStatus, created, createdBy, lastUpdated, lastUpdatedBy, ENABLE, userDef1, userDef2, userDef3, 1
        FROM receipt_header WHERE code = #{code,jdbcType=VARCHAR}
    </insert>

    <insert id="detailToHistory">
        INSERT INTO receipt_detail_history (
                id,sourceLine,receiptCode,materialCode,batch,lot,project,manufactureDate,expirationDate,inventoryStatus,qty,
                price,uploadTime,created,createdBy,lastUpdated,lastUpdatedBy,enable,deleted,userDef1,userDef2,userDef3)
        SELECT
                id,sourceLine,receiptCode,materialCode,batch,lot,project,manufactureDate,expirationDate,inventoryStatus,qty,
                price,uploadTime,created,createdBy,lastUpdated,lastUpdatedBy,enable,1,userDef1,userDef2,userDef3
        FROM receipt_detail WHERE receiptCode = #{code,jdbcType=VARCHAR}
    </insert>

    <select id="getLastStatus" resultType="java.lang.Short">
        SELECT  MIN(`status`) AS lastStatus FROM receipt_detail WHERE receiptId = #{receiptId}
    </select>

    <update id="updateDetailStatus">
        UPDATE receipt_detail SET status=#{status} WHERE id=#{receiptDetailId} AND qty &lt;= qtyCompleted AND status &gt;= 200
    </update>

    <update id="updateHeaderStatus">
        UPDATE receipt_header SET
        firstStatus = (CASE WHEN firstStatus&lt;=#{firstStatus} THEN #{firstStatus} ELSE firstStatus END),
        lastStatus = #{lastStatus}
        WHERE id = #{receiptId}
    </update>

    <select id="selectModel"
            resultType="com.huaheng.api.U8.domain.ICSReceiptHeader">
        SELECT cCode, ID, dPODate, cVenCode, cVenName, cBusType, cDepCode, cDepName, cPersonCode, cPersonName, cMemo, cMaker, type, cVerifier, CompanyCode, cModifyDate,cTVCode, dDate, cRDName, cWHCode, cWHName,iWHCode, iWHName, cPOID, POID, DLID, cDLCode, cCusCode, cCusName, cSTName
        from icsreceipt_header
        <where>
            <if test="cCode != null">
                AND cCode = #{cCode}
            </if>
            <if test="ID != null">
                AND ID = #{ID}
            </if>
            <if test="dPODate != null">
                AND dPODate = #{dPODate}
            </if>
            <if test="cVenCode != null">
                AND cVenCode = #{cVenCode}
            </if>
            <if test="cVenName != null">
                AND cVenName = #{cVenName}
            </if>
            <if test="cBusType != null">
                AND cBusType = #{cBusType}
            </if>
            <if test="cDepCode != null">
                AND cDepCode = #{cDepCode}
            </if>
            <if test="cDepName != null">
                AND cDepName = #{cDepName}
            </if>
            <if test="cPersonCode != null">
                AND cPersonCode = #{cPersonCode}
            </if>
            <if test="cPersonName != null">
                AND cPersonName = #{cPersonName}
            </if>
            <if test="cMemo != null">
                AND cMemo = #{cMemo}
            </if>
            <if test="cMaker != null">
                AND cMaker = #{cMaker}
            </if>
            <if test="cVerifier != null">
                AND cVerifier = #{cVerifier}
            </if>
            <if test="CompanyCode != null">
                AND CompanyCode = #{CompanyCode}
            </if>
            <if test="cModifyDate != null">
                AND cModifyDate = #{cModifyDate}
            </if>
            <if test="dDate != null">
                AND dDate = #{dDate}
            </if>
            <if test="cRDName != null">
                AND cRDName = #{cRDName}
            </if>
            <if test="cWHCode != null">
                AND cWHCode = #{cWHCode}
            </if>
            <if test="cWHName != null">
                AND cWHName = #{cWHName}
            </if>
            <if test="iWHCode != null">
                AND iWHCode = #{iWHCode}
            </if>
            <if test="iWHName != null">
                AND iWHName = #{iWHName}
            </if>
            <if test="cTVCode != null">
                AND cTVCode = #{cTVCode}
            </if>
            <if test="cPOID != null">
                AND cPOID = #{cPOID}
            </if>
            <if test="POID != null">
                AND POID = #{POID}
            </if>
            <if test="DLID != null">
                AND DLID = #{DLID}
            </if>
            <if test="cDLCode != null">
                AND cDLCode = #{cDLCode}
            </if>
            <if test="cCusCode != null">
                AND cCusCode = #{cCusCode}
            </if>
            <if test="cCusName != null">
                AND cCusName = #{cCusName}
            </if>
            <if test="cSTName != null">
                AND cSTName = #{cSTName}
            </if>
            <if test="type != null">
                AND type = #{type}
            </if>
        </where>
    </select>




    <insert id="insertModel">
        INSERT INTO icsreceipt_header
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="cCode != null">
                cCode,
            </if>
            <if test="ID != null">
                ID,
            </if>
            <if test="dPODate != null">
                dPODate,
            </if>
            <if test="cVenCode != null">
                cVenCode,
            </if>
            <if test="cVenName != null">
                cVenName,
            </if>
            <if test="cBusType != null">
                cBusType,
            </if>
            <if test="cDepCode != null">
                cDepCode,
            </if>
            <if test="cDepName != null">
                cDepName,
            </if>
            <if test="cPersonCode != null">
                cPersonCode,
            </if>
            <if test="cPersonName != null">
                cPersonName,
            </if>
            <if test="cMemo != null">
                cMemo,
            </if>
            <if test="cMaker != null">
                cMaker,
            </if>
            <if test="cVerifier != null">
                cVerifier,
            </if>
            <if test="CompanyCode != null">
                CompanyCode,
            </if>
            <if test="cModifyDate != null">
                cModifyDate,
            </if>
            <if test="dDate != null">
                dDate,
            </if>
            <if test="cRDName != null">
                cRDName,
            </if>
            <if test="cWHCode != null">
                cWHCode,
            </if>
            <if test="cWHName != null">
                cWHName,
            </if>
            <if test="iWHCode != null">
                iWHCode,
            </if>
            <if test="iWHName != null">
                iWHName,
            </if>
            <if test="cTVCode != null">
                cTVCode,
            </if>
            <if test="cPOID != null">
                cPOID,
            </if>
            <if test="POID != null">
                POID,
            </if>
            <if test="DLID != null">
                DLID,
            </if>
            <if test="cDLCode != null">
                cDLCode,
            </if>
            <if test="cCusCode != null">
                cCusCode,
            </if>
            <if test="cCusName != null">
                cCusName,
            </if>
            <if test="cSTName != null">
                cSTName,
            </if>
            <if test="type != null">
                type,
            </if>
        </trim>
        <trim prefix=" values (" suffix=")" suffixOverrides=",">
            <if test="cCode != null">
                #{cCode, jdbcType=VARCHAR},
            </if>
            <if test="ID != null">
                #{ID, jdbcType=INTEGER},
            </if>
            <if test="dPODate != null">
                #{dPODate, jdbcType=TIMESTAMP},
            </if>
            <if test="cVenCode != null">
                #{cVenCode, jdbcType=VARCHAR},
            </if>
            <if test="cVenName != null">
                #{cVenName, jdbcType=VARCHAR},
            </if>
            <if test="cBusType != null">
                #{cBusType, jdbcType=VARCHAR},
            </if>
            <if test="cDepCode != null">
                #{cDepCode, jdbcType=VARCHAR},
            </if>
            <if test="cDepName != null">
                #{cDepName, jdbcType=VARCHAR},
            </if>
            <if test="cPersonCode != null">
                #{cPersonCode, jdbcType=VARCHAR},
            </if>
            <if test="cPersonName != null">
                #{cPersonName, jdbcType=VARCHAR},
            </if>
            <if test="cMemo != null">
                #{cMemo, jdbcType=VARCHAR},
            </if>
            <if test="cMaker != null">
                #{cMaker, jdbcType=VARCHAR},
            </if>
            <if test="cVerifier != null">
                #{cVerifier, jdbcType=VARCHAR},
            </if>
            <if test="CompanyCode != null">
                #{CompanyCode, jdbcType=VARCHAR},
            </if>
            <if test="cModifyDate != null">
                #{cModifyDate, jdbcType=TIMESTAMP},
            </if>
            <if test="dDate != null">
                #{dDate, jdbcType=TIMESTAMP},
            </if>
            <if test="cRDName != null">
                #{cRDName, jdbcType=VARCHAR},
            </if>
            <if test="cWHCode != null">
                #{cWHCode, jdbcType=VARCHAR},
            </if>
            <if test="cWHName != null">
                #{cWHName, jdbcType=VARCHAR},
            </if>
            <if test="iWHCode != null">
                #{iWHCode, jdbcType=VARCHAR},
            </if>
            <if test="iWHName != null">
                #{iWHName, jdbcType=VARCHAR},
            </if>
            <if test="cTVCode != null">
                #{cTVCode, jdbcType=VARCHAR},
            </if>
            <if test="POID != null">
                #{POID, jdbcType=INTEGER},
            </if>
            <if test="cPOID != null">
                #{cPOID, jdbcType=VARCHAR},
            </if>
            <if test="DLID != null">
                #{DLID, jdbcType=INTEGER},
            </if>
            <if test="cDLCode != null">
                #{cDLCode, jdbcType=VARCHAR},
            </if>
            <if test="cCusCode != null">
                #{cCusCode, jdbcType=VARCHAR},
            </if>
            <if test="cCusName != null">
                #{cCusName, jdbcType=VARCHAR},
            </if>
            <if test="cSTName != null">
                #{cSTName, jdbcType=VARCHAR},
            </if>
            <if test="type != null">
                #{type, jdbcType=VARCHAR},
            </if>
        </trim>
    </insert>

</mapper>