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

45 lines
1.5 KiB
XML

<?xml version="1.0" encoding='UTF-8'?>
<Package>
<!-- 检查卡片余额合法性 -->
<Function name="CheckSubacBal">
<Input>INP_DAT|GWA|</Input>
<Output>MSG_CD|</Output>
<process>
<Set>MSG_CD=LPS00000</Set>
<Set>CRD_BAL=$INP_DAT.CRD_BAL</Set> <!-- 金额格式化 -->
<!--查询平台记录卡片余额-->
<Set>CRD_QPB.SUB_AC=$INP_DAT.SUB_AC</Set>
<Set>CRD_QPB.CAP_TYP=1</Set>
<Exec func="ACM_MNG:QueryPurseBalance">
<Arg name="_I_GWA" value="GWA"/>
<Arg name="_I_INP_DAT" value="CRD_QPB"/>
<Arg name="_O_OUT_DAT" value="CRD_QPB_OUT"/>
</Exec>
<If condition="NOT(IS_SUCC(@O.MSG_CD))">
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="@O.MSG_CD"/>
</Exec>
<Return/>
</If>
<!--平台记录余额小于卡片余额不允许换卡 -->
<If condition="DOUBLECMP(FSUB(@O.CRD_QPB_OUT.CUR_AC_BAL,@O.CRD_QPB_OUT.UAVA_BAL,2),1,$CRD_BAL)">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="LPS81029"/>
<Arg name="MsgDat" value="卡片余额大于平台余额"/>
</Exec>
<Return/>
</If>
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="LPS00000"/>
<Arg name="MsgDat" value="卡片金额合法"/>
</Exec>
</process>
</Function>
</Package>