80 lines
3.1 KiB
XML
80 lines
3.1 KiB
XML
<?xml version="1.0" encoding='UTF-8'?>
|
|
<Package>
|
|
<!--交通对账:对账文件入库-->
|
|
<Function name="PPD_CUP_FILE_VERIFY">
|
|
<Output>MSG_CD|</Output>
|
|
|
|
<Process>
|
|
<Set>SrcDir=STRCAT(GETENV(HWORKDIR),/data/pwm/recv/CUP/)
|
|
</Set> <!-- 对账文件目录 -->
|
|
|
|
<!-- 检验对账文件 -->
|
|
<Exec func="PUB:IsValidFile">
|
|
<Arg name="FileName" value="STRCAT($SrcDir,$FIL_NM)" />
|
|
</Exec>
|
|
|
|
<!-- 打开对账文件 -->
|
|
<Exec func="PUB:OpenFile" error="IGNORE">
|
|
<Arg name="FileName" value="STRCAT($SrcDir,$FIL_NM)" />
|
|
<Arg name="Mode" value="r" />
|
|
</Exec>
|
|
<If condition="~RetCod!=0">
|
|
<!-- @msg 打开ChinaPay对账文件失败 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22165" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
<Else>
|
|
<Set>LINE_NO=0</Set>
|
|
<While>
|
|
<Exec func="PUB:GetFileLine" error="IGNORE">
|
|
<Arg name="FieldName" value="LINEBUFF" />
|
|
</Exec>
|
|
<If condition="~RetCod=0">
|
|
<Set>LINE_NO=ADD($LINE_NO,1)</Set>
|
|
<If condition="$LINE_NO < 2">
|
|
<Continue />
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="~RetCod=1">
|
|
<!-- 文件读取完毕 -->
|
|
<Break />
|
|
</ElseIf>
|
|
<Else>
|
|
<!-- @msg ChinaPay对账文件为空或者不完整 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM22181" />
|
|
</Exec>
|
|
<Exec func="PUB:CloseFile" />
|
|
<Return />
|
|
</Else>
|
|
|
|
<Set>INP_DAT.SIG_DAT=SUBSTR($LINEBUFF,1,SUB(STRLEN($LINEBUFF),256))
|
|
</Set>
|
|
<Set>INP_DAT.CHK_VAL=SUBSTR($LINEBUFF,ADD(STRLEN($INP_DAT.SIG_DAT),1),256)
|
|
</Set>
|
|
|
|
<!-- 银联对账文件明细验签 -->
|
|
<Call package="PWM" function="CHINAPAY_VERIFYSIGATURE">
|
|
<Input>INP_DAT</Input>
|
|
<Output>MSG_CD</Output>
|
|
</Call>
|
|
<If condition="IS_SUCC(@O.MSG_CD)=0">
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="@O.MSG_CD" />
|
|
</Exec>
|
|
<Return />
|
|
</If>
|
|
</While>
|
|
<!--关闭文件-->
|
|
<Exec func="PUB:CloseFile" />
|
|
</Else>
|
|
|
|
<!-- 交易成功 -->
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="PWM00000" />
|
|
</Exec>
|
|
</Process>
|
|
</Function>
|
|
</Package> |