148 lines
6.1 KiB
XML
148 lines
6.1 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<Package>
|
|
|
|
<!--更新商户使用营销工具汇总表(UpdMerSum)-->
|
|
<Function name="UpdMerSum">
|
|
<Input>BON_ID|MERC_ID|CUR_BON_AMT|GWA|</Input>
|
|
<Output>MSG_CD|MSG_DAT|</Output>
|
|
<!--查询红包信息-->
|
|
<DynSentence name="QRY_MKMTBON_INF">
|
|
<Sentence>
|
|
SELECT MKT_ID,ISS_ID,PRD_ID,CAP_ID_TYP,CAP_ID
|
|
FROM MKMTBON
|
|
WHERE BON_ID=?
|
|
</Sentence>
|
|
<Fields>BON_ID|</Fields>
|
|
</DynSentence>
|
|
<!--查询红包所属活动信息-->
|
|
<DynSentence name="QRY_MKMTACT_INF">
|
|
<Sentence>
|
|
SELECT CAP_TYP
|
|
FROM MKMTACT
|
|
WHERE MKT_ID=?
|
|
</Sentence>
|
|
<Fields>MKT_ID|</Fields>
|
|
</DynSentence>
|
|
<!--查询该商户该周期的记录信息-->
|
|
<DynSentence name="QRY_MKMTMSUM_REC">
|
|
<Sentence>
|
|
SELECT UPD_DT,LAST_AC_BAL,CUR_AC_BAL
|
|
FROM MKMTMSUM
|
|
WHERE MERC_ID=?
|
|
AND MKT_ID=?
|
|
AND CAP_TYP=?
|
|
AND CAP_ID_TYP=?
|
|
AND CAP_ID=?
|
|
AND IS_INV_FLG='Y'
|
|
AND PERD_END_DT=?
|
|
FOR UPDATE
|
|
</Sentence>
|
|
<Fields>MERC_ID|MKT_ID|CAP_TYP|CAP_ID_TYP|CAP_ID|CUR_LAST_DAY|</Fields>
|
|
</DynSentence>
|
|
<!--更新商户营销工具汇总表中上日余额、当前余额、交易总笔数、最后记账日期、最后交易流水号-->
|
|
<DynSentence name="UPD_MKMTMSUM_IN">
|
|
<Sentence>
|
|
UPDATE MKMTMSUM
|
|
SET LAST_AC_BAL=?,
|
|
CUR_AC_BAL=?,
|
|
TXN_TOT_CNT=TXN_TOT_CNT+1,
|
|
UPD_DT=?,
|
|
UPD_JRN=?
|
|
WHERE MERC_ID=?
|
|
AND MKT_ID=?
|
|
AND CAP_TYP=?
|
|
AND CAP_ID_TYP=?
|
|
AND CAP_ID=?
|
|
AND IS_INV_FLG='Y'
|
|
AND PERD_END_DT=?
|
|
</Sentence>
|
|
<Fields>NLAST_AC_BAL|NCUR_AC_BAL|CUR_DT|UPD_JRN|MERC_ID|MKT_ID|CAP_TYP|CAP_ID_TYP|CAP_ID|CUR_LAST_DAY|</Fields>
|
|
</DynSentence>
|
|
<!-- 查询商户归属省市信息 -->
|
|
<DynSentence name="QRY_URMTMINF_MER">
|
|
<Sentence>
|
|
SELECT MERC_CNM ,MERC_PROV,MERC_CITY,MERC_CITY_NM
|
|
FROM URMTMINF
|
|
WHERE MERC_ID=?
|
|
</Sentence>
|
|
<Fields>MERC_ID|</Fields>
|
|
</DynSentence>
|
|
<Process>
|
|
<!--计算月底日期-->
|
|
<Set>CUR_DT=$GWA.AC_DT</Set> <!-- 取会计日期 -->
|
|
<Set>CUR_MON_FIR=STRCAT(SUBSTR($CUR_DT,1,6),01)</Set>
|
|
<Set>CUR_NEXT_MON=CALCDATE($CUR_DT,+,m,1)</Set>
|
|
<Set>CUR_NEXT_FIR=STRCAT(SUBSTR($CUR_NEXT_MON,1,6),01)</Set>
|
|
<Set>CUR_LAST_DAY=CALCDATE($CUR_NEXT_FIR,-,d,1)</Set>
|
|
<!--查询该营销工具信息-->
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_MKMTBON_INF"/>
|
|
</Exec>
|
|
<!--查询营销工具所属活动信息-->
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_MKMTACT_INF"/>
|
|
</Exec>
|
|
<!--查询该商户该周期的汇总信息-->
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_MKMTMSUM_REC"/>
|
|
</Exec>
|
|
<!--记录已经存在,则更新上日余额,当前余额,交易总笔数,最后记帐日期,最后交易流水号-->
|
|
<If condition="~RetCod=0">
|
|
<If condition="IS_NOEQUAL_STRING($CUR_DT,$UPD_DT)">
|
|
<Set>NLAST_AC_BAL=$CUR_AC_BAL</Set>
|
|
</If>
|
|
<Else>
|
|
<Set>NLAST_AC_BAL=$LAST_AC_BAL</Set>
|
|
</Else>
|
|
<Set>NCUR_AC_BAL=ADDAMT($CUR_AC_BAL,$CUR_BON_AMT)</Set>
|
|
<Set>UPD_JRN=$GWA.JRN_NO</Set>
|
|
<!--更新商户营销工具汇总表中上日余额、当前余额、最后记账日期、最后交易流水号-->
|
|
<Exec func="PUB:ExecSql">
|
|
<Arg name="SqlCmd" value="UPD_MKMTMSUM_IN"/>
|
|
</Exec>
|
|
</If>
|
|
<!--记录不存在,则插入新记录-->
|
|
<ElseIf condition="~RetCod=2">
|
|
<Set>IS_INV_FLG=Y</Set>
|
|
<Set>PERD_BEG_DT=$CUR_MON_FIR</Set>
|
|
<Set>PERD_END_DT=$CUR_LAST_DAY</Set>
|
|
<!--调用组件查询出资方名称-->
|
|
<Set>MP_ID_TYP=$CAP_ID_TYP</Set>
|
|
<Set>MP_ID=$CAP_ID</Set>
|
|
<Call function="QueryMerProvName" package="MKM">
|
|
<Input>MP_ID_TYP|MP_ID|</Input>
|
|
<Output>MP_NM|MERC_PROV|MERC_CITY|MERC_CITY_NM|MSG_CD|MSG_DAT|</Output>
|
|
</Call>
|
|
<If condition="IS_SUCC(@O.MSG_CD)=0">
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<Arg name="MsgCd" value="@O.MSG_CD"/>
|
|
<Arg name="MsgDat" value="@O.MSG_DAT"/>
|
|
</Exec>
|
|
<Return/>
|
|
</If>
|
|
<Set>CAP_NM=@O.MP_NM</Set> <!--出资方名称-->
|
|
<!-- 查询商户归属省市信息 -->
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_URMTMINF_MER"/>
|
|
</Exec>
|
|
<Set>MERC_PROV=$MERC_PROV</Set> <!--商户归属省-->
|
|
<Set>MERC_CITY=$MERC_CITY</Set> <!--商户归属市-->
|
|
<Set>INV_STS=0</Set> <!--待确定 发票状态 0-正常 1-冻结 2-已结算-->
|
|
<Set>LAST_AC_BAL=0</Set> <!--上日余额-->
|
|
<Set>CUR_AC_BAL=$CUR_BON_AMT</Set> <!--当日余额-->
|
|
<Set>TXN_TOT_CNT=1</Set> <!--交易笔数-->
|
|
<Set>UPD_DT=$CUR_DT</Set> <!--记帐日期-->
|
|
<Set>UPD_JRN=$GWA.JRN_NO</Set> <!--最后交易流水号-->
|
|
<Exec func="PUB:InsertRecord">
|
|
<Arg name="TblNam" value="MKMTMSUM"/>
|
|
</Exec>
|
|
</ElseIf>
|
|
<Exec func="PUB:CmpSetMsg">
|
|
<!-- @msg交易成功 -->
|
|
<Arg name="MsgCd" value="MKM00000"/>
|
|
<Arg name="MsgDat" value="交易成功"/>
|
|
</Exec>
|
|
</Process>
|
|
</Function>
|
|
</Package>
|