zoukankan      html  css  js  c++  java
  • 电子商务系统的设计与实现(五):账务系统的功能接口设计

    电商系统、p2p网贷系统、第三方支付都可以有自己的账务系统,
    账务系统与用户系统可以完全独立,不需要用户ID等信息,只提供给其它系统若干接口。
    服务可以用WebService的方式实现,对内提供服务非常方便,调用接口,就要调用普通的API一样。
    也可以做成HTTP的方式,外部使用相对麻烦一些。
    疑问:WebService提供的接口,可以直接用HTTP的方式调用么?


    账务系统的功能接口设计


    1.开户

      可选输入:用户ID、账户资金类型(人民币、美元)
      功能描述:创建一个账户。
      理论上不需要存入用户的ID,因为账务系统和用户系统是比较独立的。
      
      当然也可以存入用户ID,方便查询。
      另外,构造账户号的时候,可以把用户ID作为账户号的一部分。


    2.交易
      充值:为一个账户增加一笔钱。
      提现:从一个账户减少一笔钱。
      转账:把一个账户中的钱,转移到另外一个账户。
      批量转账:转账的增强版。
      冻结资金:把一个账户的资金,冻结一部分,可用余额会减少相同的数额。
      解冻资金:把一个账户的资金,解冻一部分,可用余额会增加相同的数额。


    3.冻结账户/解冻账户
      冻结;把一个账户给冻结了,冻结的账户可能无法进行提现等操作。
      解冻:把账户从冻结状态,变为正常状态。


    4.查询
     基本信息查询:查询一个账户的总金额、可用余额、冻结余额等信息。
     批量查询:查询多个账户的金额等信息。
     开户-冻结账户-解冻账户
     冻结资金、解冻资金等日志
     交易明细:包含了充值、提现、交易等所有的账户资金变动日志。
     

     补充:一次购物消费,交易行为只会记录一条,而做账需要2条记录,借和贷。

    CSDN2014博客之星评选,帮小雷投一票吧

    http://vote.blog.csdn.net/blogstar2014/details?username=fansunion

  • 相关阅读:
    [PDF]阅读、注释最佳软件
    [CentOS 7]挂载ntfs格式U盘
    如何更改键盘按键---KeyTweak?
    ssh 文件上传、文件目录上传和下载
    centos7安装Anaconda(Anaconda3-2020.02-Linux-x86_64)与基本命令使用
    Ubuntu 下SVN常用操作
    程序员常用docker命令
    numpy&pandas
    Deep Learning with pytorch笔记(第三章)
    pytorch中的ReflectionPad2d
  • 原文地址:https://www.cnblogs.com/qitian1/p/6462969.html
Copyright © 2011-2022 走看看