Files
ctg-app-ui/mkm/etc/pkg/QueryMercUnstl_PKG.XML
2021-01-12 22:04:24 +08:00

83 lines
3.0 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<Package>
<!--商户待清算金额查询(QueryMercUnstl)-->
<Function name="QueryMercUnstl">
<Input>INP_DAT|</Input>
<Output>OUT_DAT|MSG_CD|MSG_DAT|</Output>
<!--查询商户已清算红包金额-->
<DynSentence name="QRY_STL_BON">
<Sentence>
SELECT NVL(SUM(CUR_AC_BAL),0) AS RED_BAL
FROM MKMTMSUM
WHERE MERC_ID=?
AND CAP_TYP IN ('3', '4')
AND PERD_BEG_DT BETWEEN ? AND ?
</Sentence>
<Fields>MERC_ID|CUR_FIR|CUR_DT|</Fields>
</DynSentence>
<!-- 查询商户待清算红包金额 -->
<DynSentence name="QRY_UNSTL_BON">
<Sentence>
SELECT NVL(SUM(DR_AMT),0) AS USL_RED_BAL
FROM MKMTJNL
WHERE TX_ACC_DT = ?
AND MERC_ID=?
AND USE_TYP = '1'
AND PRD_TYP = '0'
AND TX_STS = 'S'
</Sentence>
<Fields>CUR_DT|MERC_ID|</Fields>
</DynSentence>
<Process>
<Set>MERC_ID=DELBOTHSPACE($INP_DAT.MERC_ID)</Set>
<Set>CUR_DT=$GWA.AC_DT</Set>
<!--必输项检查-->
<If condition="ISNULL($MERC_ID)">
<Exec func="PUB:CmpSetMsg">
<!-- @msg 商户编号不能为空 -->
<Arg name="MsgCd" value="MKM20200"/>
<Arg name="MsgDat" value="商户编号不能为空"/>
</Exec>
<Return/>
</If>
<!--计算该月首日-->
<Set>CUR_FIR=STRCAT(SUBSTR($CUR_DT,1,6),01)</Set>
<!--查询商户当天待清算红包金额-->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_UNSTL_BON"/>
</Exec>
<If condition="~RetCod=-1">
<Exec func="PUB:CmpSetMsg">
<!-- @msg 查询商户待清算红包金额失效 -->
<Arg name="MsgCd" value="MKM20212"/>
<Arg name="MsgDat" value="查询商户待清算红包金额失败"/>
</Exec>
<Return/>
</If>
<!--查询商户该月已清算红包金额-->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_STL_BON"/>
</Exec>
<If condition="~RetCod=-1">
<Exec func="PUB:CmpSetMsg">
<!-- @msg 查询商户已清算金额失败 -->
<Arg name="MsgCd" value="MKM41262"/>
<Arg name="MsgDat" value="查询商户已清算红包金额失败"/>
</Exec>
<Return/>
</If>
<!--查询商户待清算积分金额,暂时没有-->
<Set>OUT_DAT.RED_BAL=$RED_BAL</Set>
<Set>OUT_DAT.USL_RED_BAL=$USL_RED_BAL</Set>
<Exec func="PUB:CmpSetMsg">
<!-- @msg 交易成功 -->
<Arg name="MsgCd" value="MKM00000"/>
<Arg name="MsgDat" value="交易成功"/>
</Exec>
<Exec func="PUB:DumpETF"/>
</Process>
</Function>
</Package>