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

171 lines
8.7 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<Package>
<Function name="CHK_USER_STS">
<Input>INP_DAT</Input>
<Output>OUT_DAT|MSG_CD</Output>
<!-- 根据手机号查询用户操作员信息表 -->
<DynSentence name="QRY_URMTOPER_BY_MBLNO">
<Sentence>
SELECT USR_NO,USR_OPR_ID,USR_OPR_LOG_ID,USR_OPR_LOG_SHOW,LOG_PSWD_STS,ERR_LPSW_DT,PSN_INF
FROM URMTOPER
WHERE USR_OPR_ID=?
</Sentence>
<Fields>INP_DAT.MBLNO_OR_LOGID|</Fields>
</DynSentence>
<!-- 根据别名查询用户操作员信息表 -->
<DynSentence name="QRY_URMTOPER_BY_LOGID">
<Sentence>
SELECT USR_NO,USR_OPR_ID,USR_OPR_LOG_ID,USR_OPR_LOG_SHOW,LOG_PSWD_STS
FROM URMTOPER
WHERE USR_OPR_LOG_ID=?
</Sentence>
<Fields>INP_DAT.MBLNO_OR_LOGID|</Fields>
</DynSentence>
<!-- 根据手机用户信息表查询用户状态,用户状态字,BOSS状态字及相关信息 -->
<DynSentence name="QRY_URMTPINF">
<Sentence>
SELECT USR_STS,USR_STSW,BOSS_STSW,MAIN_AC,USR_NO,USR_PROV,USR_CITY,REAL_NM_FLG,NEW_REAL_NM_FLG,CUS_NM,ID_TYP,ID_NO,CI_NO,
REG_DT,USR_CITY_NM,REG_BUS_CNL
FROM URMTPINF
WHERE USR_NO=?
</Sentence>
<Fields>USR_NO|</Fields>
</DynSentence>
<Process>
<Exec func="PUB:DumpETF"/> <!-- test -->
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="URM00000"/>
</Exec>
<!--根据手机号或别名查询操作员信息表-->
<If condition="AND(ISNUMBER($INP_DAT.MBLNO_OR_LOGID),IS_EQUAL_STRING(STRLEN($INP_DAT.MBLNO_OR_LOGID),11),
OR(IS_EQUAL_STRING(SUBSTR($INP_DAT.MBLNO_OR_LOGID,1,1),1),
IS_EQUAL_STRING(SUBSTR($INP_DAT.MBLNO_OR_LOGID,1,1),2),
IS_EQUAL_STRING(SUBSTR($INP_DAT.MBLNO_OR_LOGID,1,1),9)))">
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_URMTOPER_BY_MBLNO"/>
<Arg name="IsTrim" value="N"/>
</Exec>
<If condition="~RetCod=2">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="URM20019"/>
</Exec>
<Return/>
</If>
</If>
<Else>
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_URMTOPER_BY_LOGID"/>
<Arg name="IsTrim" value="N"/>
</Exec>
<If condition="~RetCod=2">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="URM20020"/>
</Exec>
<Return/>
</If>
</Else>
<!-- 读取用户基本信息表 -->
<Exec func="PUB:ReadRecord">
<Arg name="SqlCmd" value="QRY_URMTPINF"/>
</Exec>
<If condition="~RetCod=2">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="URM20012"/>
</Exec>
<Return/>
</If>
<!-- 查询帐户状态及状态字 -->
<Set>ASWMQ_INP.FUNC_CD=Q</Set>
<Set>ASWMQ_INP.AC_NO=$MAIN_AC</Set>
<Exec func="ACMPUB:AccountStsWordMaintQuery">
<Arg name="_I_INP_DAT" value="ASWMQ_INP"/>
<Arg name="_O_OUT_DAT" value="ASWMQ_OUT"/>
</Exec>
<If condition="IS_SUCC(@O.MSG_CD)=0">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="@O.MSG_CD"/>
</Exec>
<Return/>
</If>
<!-- 用户状态检查 -->
<Set>CTS_INP.TX_CD=$INP_DAT.TX_CD</Set>
<Set>CTS_INP.SUB_TX_CD=$INP_DAT.SUB_TX_CD</Set>
<Set>CTS_INP.DC_PTY_FLG=$INP_DAT.DC_PTY_FLG</Set>
<Set>CTS_INP.STSW_NUM=8</Set>
<Set>CTS_INP.STSW_VAR_NM_1=USR_STS</Set>
<Set>CTS_INP.STSW_VAL_1=$USR_STS</Set>
<Set>CTS_INP.STSW_VAR_NM_2=USR_STSW</Set>
<Set>CTS_INP.STSW_VAL_2=$USR_STSW</Set>
<Set>CTS_INP.STSW_VAR_NM_3=BOSS_STSW</Set>
<Set>CTS_INP.STSW_VAL_3=$BOSS_STSW</Set>
<Set>CTS_INP.STSW_VAR_NM_4=USR_AC_STS</Set>
<Set>CTS_INP.STSW_VAL_4=@O.ASWMQ_OUT.AC_STS</Set>
<Set>CTS_INP.STSW_VAR_NM_5=USR_AC_STSW</Set>
<Set>CTS_INP.STSW_VAL_5=@O.ASWMQ_OUT.AC_STSW</Set>
<Set>CTS_INP.STSW_VAR_NM_6=USR_LOG_PSWD_STS</Set>
<Set>CTS_INP.STSW_VAL_6=$LOG_PSWD_STS</Set>
<Set>CTS_INP.STSW_VAR_NM_7=USR_PAY_PSWD_STS</Set>
<Set>CTS_INP.STSW_VAL_7=@O.ASWMQ_OUT.PAY_PSWD_STS</Set>
<Set>CTS_INP.STSW_VAR_NM_8=REAL_NM_FLG</Set>
<Set>CTS_INP.STSW_VAL_8=$REAL_NM_FLG</Set>
<Set>CTS_INP.ERR_LPSW_DT=$ERR_LPSW_DT</Set>
<Set>CTS_INP.ERR_PPSW_DT=@O.ASWMQ_OUT.ERR_PPSW_DT</Set>
<Exec func="CMM:CheckTxnStsWord">
<Arg name="_I_INP_DAT" value="CTS_INP"/>
<Arg name="_O_OUT_DAT" value="CTS_OUT"/>
</Exec>
<If condition="IS_SUCC(@O.MSG_CD)=0">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="@O.MSG_CD"/>
</Exec>
<Return/>
</If>
<If condition="IS_EQUAL_STRING($USR_STS,2)">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="URM30067"/> <!-- 录入未激活 -->
</Exec>
<Return/>
</If>
<!-- 用户状态检查返回信息 -->
<Set>OUT_DAT.USR_NO=$USR_NO</Set> <!-- 内部用户号 -->
<Set>OUT_DAT.MBL_NO=$USR_OPR_ID</Set> <!-- 手机号 -->
<Set>OUT_DAT.USR_OPR_LOG_ID=$USR_OPR_LOG_ID</Set> <!-- 别名,全小写-->
<Set>OUT_DAT.USR_OPR_LOG_SHOW=$USR_OPR_LOG_SHOW</Set> <!-- 别名 -->
<Set>OUT_DAT.AC_NO=$MAIN_AC</Set> <!-- 账号 -->
<Set>OUT_DAT.AC_TYP=@O.ASWMQ_OUT.AC_TYP</Set> <!-- 帐户类型 -->
<Set>OUT_DAT.USR_STS=$USR_STS</Set> <!-- 用户状态 -->
<Set>OUT_DAT.USR_STSW=$USR_STSW</Set> <!-- 用户状态字 -->
<Set>OUT_DAT.BOSS_STSW=$BOSS_STSW</Set> <!-- BOSS状态字 -->
<Set>OUT_DAT.USR_AC_STS=@O.ASWMQ_OUT.AC_STS</Set> <!-- 账户状态 -->
<Set>OUT_DAT.USR_AC_STSW=@O.ASWMQ_OUT.AC_STSW</Set> <!-- 账户状态子 -->
<Set>OUT_DAT.USR_PROV=$USR_PROV</Set> <!-- 用户归属省 -->
<Set>OUT_DAT.USR_CITY=$USR_CITY</Set> <!-- 用户归属市 -->
<Set>OUT_DAT.REAL_NM_FLG=$REAL_NM_FLG</Set> <!-- 实名标志 -->
<Set>OUT_DAT.NEW_REAL_NM_FLG=$NEW_REAL_NM_FLG</Set> <!-- 新实名标志 -->
<Set>OUT_DAT.CUS_NM=$CUS_NM</Set> <!-- 用户姓名 -->
<Set>OUT_DAT.ID_TYP=$ID_TYP</Set> <!-- 证件类型 -->
<Set>OUT_DAT.ID_NO=$ID_NO</Set> <!-- 证件号码 -->
<Set>OUT_DAT.LOG_PSWD_STS=$LOG_PSWD_STS</Set> <!-- 登录密码状态 -->
<Set>OUT_DAT.PAY_PSWD_STS=@O.ASWMQ_OUT.PAY_PSWD_STS</Set> <!-- 支付密码状态 -->
<Set>OUT_DAT.USR_CITY_NM=$USR_CITY_NM</Set> <!-- 用户归属城市名 -->
<Set>OUT_DAT.REG_DT=$REG_DT</Set> <!-- 注册时间 -->
<Set>OUT_DAT.REG_BUS_CNL=$REG_BUS_CNL</Set> <!-- 注册渠道 -->
<Set>OUT_DAT.CI_NO=$CI_NO</Set> <!-- 客户号 -->
<Set>OUT_DAT.PSN_INF=$PSN_INF</Set> <!-- 防钓鱼参数 -->
</Process>
</Function>
</Package>