acp_invoice_confirm.lwm 2.91 KB
<?xml version="1.0" encoding="UTF-8"?>
<!--
    $Author: zhuxianfei 
    $Date: 2018/7/26 14:11
    $Revision: 1.0 
-->
<bm:model xmlns:bm="http://www.leaf-framework.org/schema/bm">
    <bm:operations>
        <bm:operation name="update">
            <bm:update-sql><![CDATA[
                DECLARE
                r_acp_invoice_ln_rec acp_invoice_ln%Rowtype;
                v_division VARCHAR2(200);
                BEGIN
                SELECT
                *
                INTO
                r_acp_invoice_ln_rec
                FROM
                acp_invoice_ln
                WHERE
                invoice_line_id = ${@invoice_line_id};
                UPDATE
                acp_invoice_ln t
                SET
                t.invoice_status   = 'CONFIRMED',
                t.last_updated_by  = ${/session/@user_id},
                t.last_update_date = Sysdate
                WHERE
                t.invoice_line_id = ${@invoice_line_id};
                UPDATE
                con_contract t
                SET
                t.invoice_uploaded_flag = 'Y'
                WHERE
                t.contract_id                  = r_acp_invoice_ln_rec.contract_id AND
                t.data_class                   = 'NORMAL';
                IF r_acp_invoice_ln_rec.dealer_cd IS NOT NULL THEN
                SELECT
                t.division
                INTO
                v_division
                FROM
                con_contract t
                WHERE
                t.contract_id = r_acp_invoice_ln_rec.contract_id AND
                t.data_class  = 'NORMAL';
                --装载机
                IF v_division = '01' THEN
                sp_update_invoice_dcfl_zz(pinvoice_code =>r_acp_invoice_ln_rec.invoice_code,pinvoice_no =>r_acp_invoice_ln_rec.invoice_number,pdealer_cd=>r_acp_invoice_ln_rec.dealer_cd,pchance_no=>r_acp_invoice_ln_rec.chance_cd);
                --挖掘机
                ELSE
                sp_update_invoice_dcfl_wj(pinvoice_code =>r_acp_invoice_ln_rec.invoice_code,pinvoice_no =>r_acp_invoice_ln_rec.invoice_number,pdealer_cd=>r_acp_invoice_ln_rec.dealer_cd,pchance_no=>r_acp_invoice_ln_rec.chance_cd);
                END IF;
                END IF;
                END;
                ]]></bm:update-sql>
        </bm:operation>
        <bm:operation name="execute">
            <bm:parameters>
                <bm:parameter name="check_flag" dataType="java.lang.Long" input="false" output="true" outputPath="@check_flag"/>
            </bm:parameters>
            <bm:update-sql><![CDATA[
                DECLARE
                v_check_flag number;
                begin
                v_check_flag := acp_invoice_pkg.check_acp_amount(p_invoice_line_id_s => ${@invoice_line_id_s},
                p_contract_id       => ${@contract_id});
                ${@check_flag}:=v_check_flag;
                end;
                ]]></bm:update-sql>
        </bm:operation>
    </bm:operations>
</bm:model>