184 lines
8.1 KiB
XML
184 lines
8.1 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<Application name="lps" trace="yes">
|
|
<!-- 商户对账 -->
|
|
<Transaction code="2151022" log_switch="1" trace="yes" desc="商户对账">
|
|
<!-- 清分查询 -->
|
|
<!-- 查询消费记录 -->
|
|
<DynSentence name="QRY_SOMETRM_REC">
|
|
<Sentence>
|
|
SELECT AC_DT,TX_DT,TX_TM,POS_BAT_NO,POS_JRN,POS_TRM, 'N' AS LP_ORD_STS,TX_AMT,FEE_AMT,
|
|
SUBSTR(SUB_AC,0,6)||'**********'||SUBSTR(SUB_AC,17,4) AS SUB_AC
|
|
FROM LPSTOFP
|
|
WHERE MERC_ID =? AND (? IS NULL OR POS_TRM = ?) AND PROC_RSL='00' AND LP_ORD_STS IN('N','R')
|
|
AND AC_DT BETWEEN ? AND ? AND CLR_STS='1'
|
|
UNION ALL
|
|
SELECT AC_DT,TX_DT,TX_TM,'' AS POS_BAT_NO,POS_JRN,POS_TRM,'R' AS LP_ORD_STS, 0-TX_AMT AS TX_AMT,
|
|
CASE RFD_FEE_PRC_MOD
|
|
WHEN '1' THEN 0
|
|
ELSE 0-FEE_AMT END AS FEE_AMT,
|
|
SUBSTR(SUB_AC,0,6)||'**********'||SUBSTR(SUB_AC,17,4) AS SUB_AC
|
|
FROM LPSTRVS
|
|
WHERE MERC_ID = ? AND (? IS NULL OR POS_TRM = ?) AND AC_DT BETWEEN ? AND ? AND BIL_STS='1'
|
|
AND RVS_FLG = 'R'
|
|
UNION ALL
|
|
SELECT AC_DT,TX_DT,TX_TM,POS_BAT_NO,POS_JRN,POS_TRM, 'A' AS LP_ORD_STS,TX_AMT,FEE_AMT,
|
|
SUBSTR(SUB_AC,0,6)||'**********'||SUBSTR(SUB_AC,17,4) AS SUB_AC
|
|
FROM LPSTOFP
|
|
WHERE MERC_ID =? AND (? IS NULL OR POS_TRM = ?) AND PROC_RSL='00' AND LP_ORD_STS ='A'
|
|
AND AC_DT BETWEEN ? AND ? AND CLR_STS='1'
|
|
ORDER BY AC_DT,TX_DT,TX_TM DESC
|
|
</Sentence>
|
|
<Fields>SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|</Fields>
|
|
</DynSentence>
|
|
<!-- 统计 -->
|
|
<DynSentence name="QRY_SOMETRM_LPSTOFP">
|
|
<Sentence>
|
|
SELECT SUM(TX_AMT) AS SUM_CSM_AMT,SUM(FEE_AMT) AS SUM_CSM_FEE
|
|
FROM LPSTOFP
|
|
WHERE MERC_ID =? AND (? IS NULL OR POS_TRM = ?) AND PROC_RSL='00' AND LP_ORD_STS IN('N','R','A')
|
|
AND AC_DT BETWEEN ? AND ? AND CLR_STS='1'
|
|
</Sentence>
|
|
<Fields>SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|</Fields>
|
|
</DynSentence>
|
|
|
|
<DynSentence name="QRY_SOMETRM_LPSTRVS">
|
|
<Sentence>
|
|
SELECT SUM(TX_AMT) AS SUM_RVS_AMT,
|
|
SUM(
|
|
CASE RFD_FEE_PRC_MOD
|
|
WHEN '1' THEN 0
|
|
ELSE FEE_AMT END
|
|
) AS SUM_RVS_FEE
|
|
FROM LPSTRVS
|
|
WHERE MERC_ID = ? AND (? IS NULL OR POS_TRM = ?) AND AC_DT BETWEEN ? AND ? AND BIL_STS='1'
|
|
AND RVS_FLG = 'R'
|
|
</Sentence>
|
|
<Fields>SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|</Fields>
|
|
</DynSentence>
|
|
|
|
<!-- 交易查询 -->
|
|
<!-- 查询消费记录 -->
|
|
<DynSentence name="QRY_SOMETRM_REC_TX">
|
|
<Sentence>
|
|
SELECT AC_DT,TX_DT,TX_TM,POS_BAT_NO,POS_JRN,POS_TRM, 'N' AS LP_ORD_STS,TX_AMT,FEE_AMT,
|
|
SUBSTR(SUB_AC,0,6)||'**********'||SUBSTR(SUB_AC,17,4) AS SUB_AC
|
|
FROM LPSTOFP
|
|
WHERE MERC_ID =? AND (? IS NULL OR POS_TRM = ?) AND PROC_RSL='00' AND LP_ORD_STS IN('N','R')
|
|
AND TX_DT BETWEEN ? AND ? AND CLR_STS='1'
|
|
UNION ALL
|
|
SELECT AC_DT,TX_DT,TX_TM,'' AS POS_BAT_NO,POS_JRN,POS_TRM,'R' AS LP_ORD_STS, 0-TX_AMT AS TX_AMT,
|
|
CASE RFD_FEE_PRC_MOD
|
|
WHEN '1' THEN 0
|
|
ELSE 0-FEE_AMT END AS FEE_AMT,
|
|
SUBSTR(SUB_AC,0,6)||'**********'||SUBSTR(SUB_AC,17,4) AS SUB_AC
|
|
FROM LPSTRVS
|
|
WHERE MERC_ID = ? AND (? IS NULL OR POS_TRM = ?) AND TX_DT BETWEEN ? AND ? AND BIL_STS='1'
|
|
AND RVS_FLG = 'R'
|
|
UNION ALL
|
|
SELECT AC_DT,TX_DT,TX_TM,POS_BAT_NO,POS_JRN,POS_TRM, 'A' AS LP_ORD_STS,TX_AMT,FEE_AMT,
|
|
SUBSTR(SUB_AC,0,6)||'**********'||SUBSTR(SUB_AC,17,4) AS SUB_AC
|
|
FROM LPSTOFP
|
|
WHERE MERC_ID =? AND (? IS NULL OR POS_TRM = ?) AND PROC_RSL='00' AND LP_ORD_STS ='A'
|
|
AND TX_DT BETWEEN ? AND ? AND CLR_STS='1'
|
|
ORDER BY AC_DT,TX_DT,TX_TM DESC
|
|
</Sentence>
|
|
<Fields>SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|</Fields>
|
|
</DynSentence>
|
|
<!-- 统计 -->
|
|
<DynSentence name="QRY_SOMETRM_LPSTOFP_TX">
|
|
<Sentence>
|
|
SELECT SUM(TX_AMT) AS SUM_CSM_AMT,SUM(FEE_AMT) AS SUM_CSM_FEE
|
|
FROM LPSTOFP
|
|
WHERE MERC_ID =? AND (? IS NULL OR POS_TRM = ?) AND PROC_RSL='00' AND LP_ORD_STS IN('N','R','A')
|
|
AND TX_DT BETWEEN ? AND ? AND CLR_STS='1'
|
|
</Sentence>
|
|
<Fields>SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|</Fields>
|
|
</DynSentence>
|
|
|
|
<DynSentence name="QRY_SOMETRM_LPSTRVS_TX">
|
|
<Sentence>
|
|
SELECT SUM(TX_AMT) AS SUM_RVS_AMT,
|
|
SUM(
|
|
CASE RFD_FEE_PRC_MOD
|
|
WHEN '1' THEN 0
|
|
ELSE FEE_AMT END
|
|
) AS SUM_RVS_FEE
|
|
FROM LPSTRVS
|
|
WHERE MERC_ID = ? AND (? IS NULL OR POS_TRM = ?) AND TX_DT BETWEEN ? AND ? AND BIL_STS='1'
|
|
AND RVS_FLG = 'R'
|
|
</Sentence>
|
|
<Fields>SUBMERC_ID|POS_TRM|POS_TRM|BEG_DT|END_DT|</Fields>
|
|
</DynSentence>
|
|
|
|
<FlowCtrl>
|
|
|
|
<!-- 并非 当前点击的是“详情” 且 上一步点击的也是“详情”或"全部详情" -->
|
|
<If condition="AND(IS_NOEQUAL_STRING(2,$IN_MODE),IS_NOEQUAL_STRING(4,$IN_MODE))">
|
|
<Exec func="PUB:GWASetMsg">
|
|
<Arg name="MsgCd" value="LPS30091" />
|
|
<Arg name="MsgDat" value="连接非法"/>
|
|
</Exec>
|
|
<Return/>
|
|
</If>
|
|
|
|
<!-- 当前点击的是“详情” 且 上一步点击的也是“详情”或"全部详情" -->
|
|
<If condition="IS_EQUAL_STRING($DT_TYP,A)">
|
|
<Exec func="PUB:DBMultiQueryPage">
|
|
<Arg name="PageNo" value="$PAG_NO"/>
|
|
<Arg name="SqlCmd" value="QRY_SOMETRM_REC"/>
|
|
<Arg name="RecNumPerPage" value="$PAG_NUM"/>
|
|
</Exec>
|
|
<If condition="IS_EQUAL_STRING(~RetCod,0)">
|
|
<If condition="IS_EQUAL_STRING($PAG_CNT,$CURRENTPAGE)">
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_SOMETRM_LPSTOFP"/>
|
|
</Exec>
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_SOMETRM_LPSTRVS"/>
|
|
</Exec>
|
|
</If>
|
|
</If>
|
|
</If>
|
|
<ElseIf condition="IS_EQUAL_STRING($DT_TYP,T)">
|
|
<Exec func="PUB:DBMultiQueryPage">
|
|
<Arg name="PageNo" value="$PAG_NO"/>
|
|
<Arg name="SqlCmd" value="QRY_SOMETRM_REC_TX"/>
|
|
<Arg name="RecNumPerPage" value="$PAG_NUM"/>
|
|
</Exec>
|
|
<If condition="IS_EQUAL_STRING(~RetCod,0)">
|
|
<If condition="IS_EQUAL_STRING($PAG_CNT,$CURRENTPAGE)">
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_SOMETRM_LPSTOFP_TX"/>
|
|
</Exec>
|
|
<Exec func="PUB:ReadRecord">
|
|
<Arg name="SqlCmd" value="QRY_SOMETRM_LPSTRVS_TX"/>
|
|
</Exec>
|
|
</If>
|
|
</If>
|
|
</ElseIf>
|
|
<If condition="ISNULL($SUM_CSM_AMT)">
|
|
<Set>SUM_CSM_AMT=0</Set>
|
|
</If>
|
|
<If condition="ISNULL($SUM_CSM_FEE)">
|
|
<Set>SUM_CSM_FEE=0</Set>
|
|
</If>
|
|
<If condition="ISNULL($SUM_RVS_FEE)">
|
|
<Set>SUM_RVS_FEE=0</Set>
|
|
</If>
|
|
<If condition="ISNULL($SUM_RVS_AMT)">
|
|
<Set>SUM_RVS_AMT=0</Set>
|
|
</If>
|
|
|
|
<!-- 统计数据 -->
|
|
<Set>~TOT_NUM=$TOT_REC_NUM</Set>
|
|
<Set>TOTAL_AMT=FSUB($SUM_CSM_AMT,$SUM_RVS_AMT,2)</Set>
|
|
<Set>TOTAL_FEE=FSUB($SUM_CSM_FEE,$SUM_RVS_FEE,2)</Set>
|
|
<Exec func="PUB:GWASetMsg">
|
|
<Arg name="MsgCd" value="LPS00000" />
|
|
</Exec>
|
|
|
|
</FlowCtrl>
|
|
</Transaction>
|
|
|
|
</Application>
|
|
|