流程图-预授权撤销
2015-08-17 15:48:26 0 举报
预授权撤销
作者其他创作
大纲/内容
N
DealPosLimit();检查POS限制如流水满,存储满,未结算等
输入授权码
FindWaterWithInvno();设置预授权为已调整UpdateWater();查找流水并显示
Y
采集系统结构信息DealSystem();AddEMVInfo();
输入凭证号是否为空
Pack();将ISO8583包数据存放到缓冲区
输入卡有效期
CommConnect();判断拨号
判断应答码的各种情况ChkRespIsSucc();
是否设置了冲正标志
IncVarTraceNo();流水号+1
DispPan();显示主账号
DoAdviseAndReveral();执行冲正
CheckOper();验证操作员
应答码改为06SetVarReversalData();保存冲正数据
是否为手机芯片交易
设置冲正标志位NO,保存流水
TradeInit();交易初始化
VoidPreAuth();预授权撤销
设置22域为无密码
CommRecv();接收报文,检查通讯头,删除通讯头和TPDU头
DealPackAndComm();打包发送接收解包
ChkLoginStatus();检查签到标志,未签到则返回失败
返回失败
打印流水
预授权撤销
CommSend();增加通讯投和TPDU投,发送报文
输入密码
是否为手输卡号
报MAC出错,返回失败
挂断
清包;打包系统结构信息ClrPack();SetField();
保存流水SysToWater();
PubSaveVar();EmvPackField55();SetVarReversalData();保存数据
设置22域为需密码
SendOffline(0);LBS基站联机上送
失败挂断返回
是否要输入密码
ChangeSettle();记录结算数据
AddMac();添加64域校验
CommPreDial();预拨号
获取主账号GetTrack();GetPan();
CommHangUpSocket();挂断Socket
根据具体交易属性进行相应的刷卡任务InputCard();手机UpCardDeal();磁条
失败
是否为预授权完成请求冲正
PubSaveVar();SetVarReversalData();保存数据
复制38域授权码同原交易
Unpack();ChkRespMsgID();ChkRespon();解包;检查各域信息
GetField();解包消息域
GetVarReversalData();\t\tSetVarReversalData();保存冲正数据,改冲正原因为96CommHangUp();
是否密码输错
设置交易属性为手机交易
密码输入次数+1
AppendWater();增加流失记录,LBS间隔笔数加1;是否成功
操作成功
输入金额,检查有效性
是否输入主管密码
失败挂断
输入密码是否为空
保存冲正数据,设置冲正标志SetVarReversalData();\t\tSetVarIsReversal();
校验64域是否需要验证
SystemToReveral();保存冲正信息
CommHangUp();挂断返回
CheckMac();验证MAC是否成功
设置交易属性为磁条卡交易
0 条评论
下一页