Files
2021-01-12 22:04:24 +08:00

278 lines
11 KiB
XML

<?xml version="1.0" encoding='UTF-8'?>
<Root>
<!-- UI查询商户结算方式信息 -->
<Transaction code="BUI0302310" log_switch="1">
<!-- UI查询商户结算方式 -->
<DynSentence name="QRY_MKMTMERCRL_VARS">
<Sentence>
SELECT *
FROM
(SELECT MERC_ID, MERC_NM AS MERC_NM, STL_PERD_FLG
FROM MKMTMERCRL
WHERE MERC_ID LIKE '%%%s%%'
AND MERC_NM LIKE '%%%s%%'
AND (MERC_PROV = ? OR ? IS NULL)
AND (MERC_CITY = ? OR ? IS NULL)
AND MERC_GRP = '0'
UNION ALL
SELECT MERC_ID, MERC_CNM, '' AS STL_PERD_FLG
FROM URMTMINF
WHERE MERC_ID LIKE '%%%s%%'
AND MERC_CNM LIKE '%%%s%%'
AND (MERC_PROV = ? OR ? IS NULL)
AND (MERC_CITY = ? OR ? IS NULL)
AND MERC_STS = '0'
AND MERC_ID NOT IN
(SELECT DISTINCT MERC_ID
FROM MKMTMERCRL
WHERE MERC_GRP = '0'))
ORDER BY MERC_ID
</Sentence>
<Fields>MERC_ID|MERC_NM|PROV_CD|PROV_CD|CITY_CD|CITY_CD|MERC_ID|MERC_NM|PROV_CD|PROV_CD|CITY_CD|CITY_CD|</Fields>
</DynSentence>
<FlowCtrl>
<!-- 从Session中获取操作员归属省 -->
<Exec func="WEB:GetSession" >
<Arg name="ObjNam" value="OPR_INF" />
<Arg name="OPR_PROV" value="OPR_PROV" />
</Exec>
<!-- 若操作员为基地 -->
<If condition="IS_EQUAL_STRING($OPR_PROV,99)">
<!-- 若查询省编号不为空 -->
<If condition="NOT(ISNULL($PROV_CD))">
<Set>PROV_CD=$PROV_CD</Set>
</If>
<Else>
<Set>PROV_CD=</Set>
</Else>
</If>
<!-- 若操作员为省 -->
<Else>
<Set>PROV_CD=$OPR_PROV</Set>
</Else>
<Set>FLG_LOG=0</Set> <!--值为0:代表此交易不用写入操作日志 -->
<Exec func="PUB:DBMultiQueryPage">
<Arg name="PageNo" value="$PAG_NO"/>
<Arg name="SqlCmd" value="QRY_MKMTMERCRL_VARS"/>
<Arg name="RecNumPerPage" value="$PAG_NUM"/>
</Exec>
<If condition="~RetCod=2">
<!-- @msg 查询没有记录 -->
<Set>GWA.MSG_CD=MKM61000</Set>
<Set>GWA.MSG_INF=查询没有记录</Set>
<Return/>
</If>
<Else>
<Set>GWA.MSG_CD=MKM00000</Set>
<Set>GWA.MSG_INF=交易成功</Set>
</Else>
</FlowCtrl>
</Transaction>
<!-- UI维护商户结算方式 -->
<Transaction code="BUI030231A" log_switch="1">
<!-- 查询商户结算方式 -->
<DynSentence name="QRY_MKMTMERCRL_INFO">
<Sentence>
SELECT 'Y'
FROM MKMTMERCRL
WHERE MERC_ID = ?
AND STL_PERD_FLG = ?
AND MERC_GRP = '0'
</Sentence>
<Fields>MERC_ID|STL_PERD_FLG|</Fields>
</DynSentence>
<!-- 查询商户基本信息 -->
<DynSentence name="QRY_URMTMINF_INFO">
<Sentence>
SELECT MERC_PROV, MERC_CITY, MERC_CNM AS MERC_NM
FROM URMTMINF
WHERE MERC_ID = ?
AND MERC_STS = '0'
</Sentence>
<Fields>MERC_ID|</Fields>
</DynSentence>
<!-- UI添加商户结算方式 -->
<DynSentence name="INSERT_MKMTMERCRL_VARS">
<Sentence>
INSERT INTO MKMTMERCRL
(MERC_ID, STL_PERD_FLG, MERC_NM, MERC_PROV, MERC_CITY, MERC_GRP, TM_SMP)
VALUES (?, ?, ?, ?, ?, '0', TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS'))
</Sentence>
<Fields>MERC_ID|STL_PERD_FLG|MERC_NM|MERC_PROV|MERC_CITY|</Fields>
</DynSentence>
<!-- UI修改商户结算方式 -->
<DynSentence name="UPDATE_MKMTMERCRL_VARS">
<Sentence>
UPDATE MKMTMERCRL
SET STL_PERD_FLG = ?,
TM_SMP = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
WHERE MERC_ID = ?
AND STL_PERD_FLG = ?
AND MERC_GRP = '0'
</Sentence>
<Fields>STL_PERD_FLG|MERC_ID|OLD_STL_PERD_FLG|</Fields>
</DynSentence>
<!-- UI删除商户结算方式 -->
<DynSentence name="DELETE_MKMTMERCRL_VARS">
<Sentence>
DELETE
FROM MKMTMERCRL
WHERE MERC_ID = ?
AND STL_PERD_FLG = ?
AND MERC_GRP = '0'
</Sentence>
<Fields>MERC_ID|STL_PERD_FLG|</Fields>
</DynSentence>
<!-- 查询商户是否参加了商户组 -->
<DynSentence name="CHK_MKMTMERCRL_EXISTGRP">
<Sentence>
SELECT MERC_GRP_NM
FROM MKMTMERCRL
WHERE MERC_ID = ?
AND MERC_GRP != '0'
</Sentence>
<Fields>MERC_ID|</Fields>
</DynSentence>
<!-- 查询商户是否有正在参加的活动 -->
<DynSentence name="CHK_MKMTPINF_CLRDT">
<Sentence>
SELECT (CASE WHEN X.URL_CLR_DT IS NULL THEN '0' ELSE X.URL_CLR_DT END) AS URL_CLR_DT
FROM (SELECT MAX(ULT_CLR_DT) AS URL_CLR_DT
FROM MKMTPINF
WHERE MKT_ID IN (SELECT DISTINCT MKT_ID
FROM MKMTMERC
WHERE MERC_ID = ?
AND STL_PERD_FLG = ?)) X
</Sentence>
<Fields>MERC_ID|OLD_STL_PERD_FLG|</Fields>
</DynSentence>
<FlowCtrl>
<!-- 查询记录是否存在 -->
<Set>FLG_LOG=0</Set> <!--值为0:代表此交易不用写入操作日志 -->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_MKMTMERCRL_INFO"/>
</Exec>
<If condition="~RetCod=2">
<If condition="IS_EQUAL_STRING($OPR_FLG,D)">
<Set>GWA.MSG_CD=MKM41315</Set>
<Set>GWA.MSG_INF=选定的记录不存在</Set>
<Return />
</If>
</If>
<If condition="~RetCod=0">
<If condition="IS_EQUAL_STRING($OPR_FLG,A,U)">
<Set>GWA.MSG_CD=MKM41314</Set>
<Set>GWA.MSG_INF=该结算方式已存在</Set>
<Return />
</If>
</If>
<!-- 新增操作 -->
<If condition="IS_EQUAL_STRING($OPR_FLG,A)">
<!-- 查询商户相关信息 -->
<Set>FLG_LOG=0</Set> <!--值为0:代表此交易不用写入操作日志 -->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_URMTMINF_INFO" />
</Exec>
<If condition="~RetCod=2">
<Set>GWA.MSG_CD=MKM41315</Set>
<Set>GWA.MSG_INF=选定的记录不存在</Set>
<Return />
</If>
<Exec func="PUB:ExecSql">
<Arg name="SqlCmd" value="INSERT_MKMTMERCRL_VARS" />
</Exec>
<If condition="~RetCod!=0">
<Set>GWA.MSG_CD=MKM10372</Set>
<Set>GWA.MSG_INF=系统错误,操作数据库失败</Set>
<Return />
</If>
</If>
<!-- 修改操作 -->
<If condition="IS_EQUAL_STRING($OPR_FLG,U)">
<!-- 检查商户是否参加了组别 -->
<Exec func="PUB:QueryInGroup" error="IGNORE">
<Arg name="SqlCmd" value="CHK_MKMTMERCRL_EXISTGRP"/>
<Arg name="RecordName" value="MERC_REC" />
<Arg name="Limit" value="500" />
</Exec>
<If condition="~RetCod=-1">
<Set>GWA.MSG_CD=MKM20705</Set>
<Set>GWA.MSG_INF=系统错误!</Set>
<Return/>
</If>
<If condition="~RetCod=0">
<Set>GWA.MSG_CD=MKM41317</Set>
<Set>GWA.MSG_INF=所选商户已存在于商户组别中</Set>
<Return/>
</If>
<!-- 检查商户是否有正在参加的活动 -->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="CHK_MKMTPINF_CLRDT" />
</Exec>
<If condition="~RetCod!=0">
<Set>GWA.MSG_CD=MKM10372</Set>
<Set>GWA.MSG_INF=系统错误</Set>
<Return />
</If>
<Set>CUR_DT=$GWA.TX_DT</Set>
<If condition="$CUR_DT &lt;= $URL_CLR_DT">
<Set>GWA.MSG_CD=MKM41320</Set>
<Set>GWA.MSG_INF=该商户有正在参与的营销活动,无法修改结算类型</Set>
<Return />
</If>
<Exec func="PUB:ExecSql">
<Arg name="SqlCmd" value="UPDATE_MKMTMERCRL_VARS" />
</Exec>
<If condition="~RetCod!=0">
<Set>GWA.MSG_CD=MKM10372</Set>
<Set>GWA.MSG_INF=系统错误,操作数据库失败</Set>
<Return />
</If>
</If>
<!-- 删除操作 -->
<If condition="IS_EQUAL_STRING($OPR_FLG,D)">
<!-- 检查商户是否有正在参加的活动 -->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="CHK_MKMTPINF_CLRDT" />
</Exec>
<If condition="~RetCod!=0">
<Set>GWA.MSG_CD=MKM10372</Set>
<Set>GWA.MSG_INF=系统错误</Set>
<Return />
</If>
<Set>CUR_DT=$GWA.TX_DT</Set>
<If condition="$CUR_DT &lt;= $URL_CLR_DT">
<Set>GWA.MSG_CD=MKM41320</Set>
<Set>GWA.MSG_INF=该商户有正在参与的营销活动,无法修改结算类型</Set>
<Return />
</If>
<Exec func="PUB:ExecSql">
<Arg name="SqlCmd" value="DELETE_MKMTMERCRL_VARS" />
</Exec>
<If condition="~RetCod!=0">
<Set>GWA.MSG_CD=MKM10372</Set>
<Set>GWA.MSG_INF=系统错误,操作数据库失败</Set>
<Return />
</If>
</If>
<Set>GWA.MSG_CD=MKM00000</Set>
<Set>GWA.MSG_INF=交易成功</Set>
</FlowCtrl>
</Transaction>
</Root>