Files
2021-08-13 15:37:49 +08:00

131 lines
5.3 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<Package>
<!--发送预警邮件-->
<Function name="SEND_MAL">
<Input>EVENT|</Input>
<Output>Rsp_Cd|Rsp_Msg</Output>
<Process>
<!--查询邮件模板-->
<Set>SMS_CD=$EVENT.SMS_CD</Set>
<Set>AC_DT=GETDATE()</Set>
<Set>SMS_INF=$EVENT.SMS_INF</Set>
<If condition="IS_EQUAL_STRING($EVENT.IS_SND_MAL,Y)">
<!--发邮件-->
<Set>SMS_INF=$SMS_INF</Set>
<Exec func="PUB:PARAM_GRP_GET" error="IGNORE">
<Arg name="ParamNam" value="CAPPARAMTER"/>
<Arg name="KeyNam" value="MAIL_HOST"/>
<Arg name="GrpNam" value="MAIL_HOST"/>
</Exec>
<Set>host=$MAIL_HOST.P_VALUES</Set>
<Exec func="PUB:PARAM_GRP_GET" error="IGNORE">
<Arg name="ParamNam" value="CAPPARAMTER"/>
<Arg name="KeyNam" value="MAIL_PORT"/>
<Arg name="GrpNam" value="MAIL_PORT"/>
</Exec>
<Set>port=$MAIL_PORT.P_VALUES</Set>
<Exec func="PUB:PARAM_GRP_GET" error="IGNORE">
<Arg name="ParamNam" value="CAPPARAMTER"/>
<Arg name="KeyNam" value="MAIL_USER"/>
<Arg name="GrpNam" value="MAIL_USER"/>
</Exec>
<Set>user=$MAIL_USER.P_VALUES</Set>
<Exec func="PUB:PARAM_GRP_GET" error="IGNORE">
<Arg name="ParamNam" value="CAPPARAMTER"/>
<Arg name="KeyNam" value="MAIL_PWD"/>
<Arg name="GrpNam" value="MAIL_PWD"/>
</Exec>
<Set>pwd=$MAIL_PWD.P_VALUES</Set>
<Set>subject=$EVENT.EVT_DSC</Set><!--主题-->
<Set>receiver=$EVENT.MAL_ADR</Set>
<Exec func="MON:sendMailImpl" error="IGNORE">
<Arg name="host" value="$host"/>
<Arg name="port" value="$port"/>
<Arg name="user" value="$user"/> <!--发送人-->
<Arg name="passwd" value="$pwd"/> <!--发件人密码-->
<Arg name="subject" value="$subject"/> <!--主题-->
<Arg name="txt" value="$SMS_INF"/><!--邮件内容-->
<Arg name="receiver" value="$receiver"/><!--收件人,多人以逗号分隔-->
</Exec>
<!--获取平台流水号-->
<Exec func="PUB:GetUniqueNo">
<Arg name="Name" value="jrn_nextval" />
<Arg name="SeqNam" value="jrn_no_sequence" />
<Arg name="Len" value="10" />
</Exec>
<If condition="~RetCod!=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=平台取流水号失败</Set>
<Return />
</If>
<Set>JRN_NO=STRCAT(SUBSTR($AC_DT,3,6),$jrn_nextval)</Set>
<Delete>jrn_nextval</Delete>
<Set>SEND_MSG=$SMS_INF</Set>
<Set>RECEIVE_NM=$receiver</Set>
<Set>SEND_NM=$user</Set>
<Set>MSG_FLG=1</Set><!--1邮件 2短信-->
<!--登记邮件历史-->
<Exec func="PUB:InsertRecord" error="IGNORE">
<Arg name="TblNam" value="CAPSMSMALINF" />
</Exec>
<If condition="~RetCod!=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=登记发送记录失败</Set>
<Return />
</If>
</If>
<If condition="IS_EQUAL_STRING($EVENT.IS_SND_SMS,Y)">
<!--发送短信-->
<Set>phoneSplits=$EVENT.MOB_TEL</Set>
<Set>text=$SMS_INF</Set>
<Exec func="PUB:CallThirdComm" error="IGNORE">
<Arg name="HTxnCd" value="SendSms"/>
<Arg name="ObjSvr" value="SCAHRO2"/> <!-- 交易发往银行 -->
</Exec>
<If condition="~RetCod !=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=查询失败</Set>
<Return/>
</If>
<!--获取平台流水号-->
<Exec func="PUB:GetUniqueNo">
<Arg name="Name" value="jrn_nextval" />
<Arg name="SeqNam" value="jrn_no_sequence" />
<Arg name="Len" value="10" />
</Exec>
<If condition="~RetCod!=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=平台取流水号失败</Set>
<Return />
</If>
<Set>JRN_NO=STRCAT(SUBSTR($AC_DT,3,6),$jrn_nextval)</Set>
<Delete>jrn_nextval</Delete>
<Set>SEND_MSG=$SMS_INF</Set>
<Set>RECEIVE_NM=$phoneSplits</Set>
<Set>SEND_NM=</Set>
<Set>MSG_FLG=2</Set><!--1邮件 2短信-->
<!--登记邮件历史-->
<Exec func="PUB:InsertRecord" error="IGNORE">
<Arg name="TblNam" value="CAPSMSMALINF" />
</Exec>
<If condition="~RetCod!=0">
<Set>Rsp_Cd=80</Set>
<Set>Rsp_Msg=登记发送记录失败</Set>
<Return />
</If>
</If>
<!--提交事务-->
<Exec func="PUB:CommitWork"/>
<Set>Rsp_Cd=00</Set>
<Set>Rsp_Msg=交易成功</Set>
</Process>
</Function>
</Package>