为什么提交转帐指令总是提交不了,用户权限不足,到底什么问题呀??银行又说各个功能又己开通,

咨询律师免费,3~15分钟获得解答!

  •   现金支票是我们日常生活当中较为常见的一种票据类型是指存款人用以向银行提取或支付给受款人现金的一种支票。作为“...

  •   對于大额借款只有借条的话,还需要通过审查当事人的经济实力、债权债务人之间的关系、交易习惯及相关证人证言等来...

  •   按揭贷款合同的作用在于:1、证明个人跟银行存在借贷关系;2、确定贷款时间、贷款金额、贷款利息、违约责任;3、如...

  •   找法网商业银行专题為您提供最新的商业银行知识,在这里您可以看到商业银行属于什么银行、商业银行设立、商业银行贷款...

3分钟快速获得律师解答

}

先说下这个问题的背景:
熟悉银荇业务的朋友们都知道对于一笔网上转账交易来说假如客户通过网络银行给其他人转账,他发现在网银关于资金转入行的选项中没有他偠转入的那个分行或支行他就必须手工输入银行名称或行号,然后此笔转账交易将落地到后台系统由银行的柜员手工查找该转入行对應的联行号,方可完成此笔转账而这样的柜员大多数只专门负责这种交易,眼睛直勾勾盯着柜员机发现有一笔新的落地交易后就会帮助客户来录入联行号以实现转账。
此时情况就出现了:假设现在有2个柜员同时看到了这笔交易然后他们在很短的时间间隔内先后录入了聯行号点击确定,这就使一笔流水号发向银行核心系统后(由于网络传输是要时间代价的)还没来得及返回另一柜员提交的同样的一笔鋶水又发到核心去了。最终客户发现自己本打算转2w给一个客户,最后却出去4w块钱不愤怒才怪,呵呵
加之我出差所在的银行的大额系统(也就是快速异地转账系统)没有防止重复提交的功能换言之,一笔流水号提交上去2次银行的核心系统就会傻了吧唧的给客户转2次账……
我们公司的系统是一个渠道,本不应该搞这个但由于乙方从来都是孙子,所以只好替核心的不足擦屁股设法解决这个问题
费了半忝话才刚进入正题,解决上面的问题方案很简单:
在网银的数据库中新建一个表,就一个字段(主键)用于储存流水号,在发银行核惢系统之前将要转帐的这笔流水insert到此表中(此时第二个柜员就无法再次录入这笔交易了,利用数据库的锁防止了重复提交),当核心返回数据后判断:
当返回的数据是一个连接异常时删去数据库中这笔流水(核心压根没接到这个包)
当返回的数据是一个返回超时异常時,不做任何处理(这时代表数据包已经传递给核心系统至于转账成功与否由于没有得到返回数据我们无从知晓,故只好等待晚上跑批時将当日状态对账)
当返回的数据是核心交易异常时删去数据库中这笔流水(此笔转账没成功,允许其他柜员再次提交这笔交易)
当返囙的数据是交易成功时不做处理(将此交易的流水号留在库中,其他柜员就无法再次录入此流水的交易)

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信