入门项目 A5-1 interface-bank 第三方接口1
from db import db_handler # 提现接口 def withdraw_interface(name, money): # 定义提现接口,传入name与money参数 user_dic = db_handler.select(name) # 从数据库模块下面提取查找文件函数功能,传入name # 拿到返回值赋值给便连忙user_dic money2 = money * 1.05 # 钱2 = 提取的钱x1.05 (加了手续费) money3 = money * 0.05 if user_dic['balance'] >= money2: # 如果用户信息字典中的额度 大于 提现与手续费之和 user_dic['balance'] -= money2 # 把用户信息字典中的额度 减去 提现与手续费之和的结果赋值给用户信息字典 info = '用户:[%s] 提现:[%s¥],手续费:[%s]!' % (name, money, money3) # info接收要打印出去的用户提现信息 user_dic['flow'].append(info) # 在用户流水列表中添加流水信息 db_handler.save(user_dic) # 在数据库模块下面的保存功能函数中,存入最新的字典信息 return True, info # 返回 info接收要打印出去的用户提现信息 else: return False, '尊敬的用户,您的余额不足,请充值!' # 转账接口 def transfer_interface(from_name, to_name, money): # (传入来自用户,给谁,钱数的整型) # 1.先查找给谁的用户名是否存在 to_user_dic = db_handler.select(to_name) # 查找给谁的用户名是否存在 将返回结果(用户信息字典/None)给变量名to_user_dic if not to_user_dic: # 如果to_user_dic接收到的返回值是None,说明目标用户信息不存在 # if not to_user_dic等同于if true,执行后续代码 return False, '目标用户不存在!' # 返回False给前端flag,打印'目标用户不存在!' # 2.查找给谁的用户名是否存在,并拿到返回值,用户信息字典中的余额 from_user_dic = db_handler.select(from_name) # 查找给谁的用户名是否存在,并拿到返回值, if from_user_dic['balance'] >= money: # 如果用户信息字典中的balance作为K对应的值 大于等于 输入的money整型 from_user_dic['balance'] -= money # 将来自用户的信息字典中 balance作为K对应的值 减去 money整型,重新赋值给from_user_dic['balance']的值 to_user_dic['balance'] += money # 将目标用户的信息字典中 balance作为K对应的值 加上 money整型,重新赋值给to_user_dic['balance']的值 # 添加流水 info_from_user = '转账成功,用户[%s]转账给用户[%s] %s $!' % (from_name, to_name, money) # info接收要打印出去的用户提现信息 info_to_user = '接收转账,用户[%s]转账给用户[%s] %s $!' % (from_name, to_name, money) # info接收要打印出去的用户提现信息 from_user_dic['flow'].append(info_from_user) # 在用户流水列表中添加流水信息 to_user_dic['flow'].append(info_from_user) # 在用户流水列表中添加流水信息 db_handler.save(from_user_dic) # 调用数据模块下面的save保存功能函数,存入修改过balance值的 来源 用户信息字典 db_handler.save(to_user_dic) # 调用数据模块下面的save保存功能函数,存入修改过balance值的 目标 用户信息字典 return True, info_from_user else: return False, '尊敬的用户,您的余额不足,请充值!' # 如果用户信息字典中的balance作为K对应的值 (没有)大于等于 输入的money整型 # 说明来源用户的余额不足,无法完成转账 # 还款接口 def repay_interface(name, money): # 定义还款接口 user_dic = db_handler.select(name) # 在数据模块中调出name的路径,拿到返回值用户信息字典 user_dic['balance'] += money # 用户信息字典中的余额 = 用户信息字典中的余额 + money整型还款金额 db_handler.save(user_dic) # 调用数据模块下面的保存功能函数,保存更新的用户信息字典 return '还款[%s]成功!' % money # 返回还款额数 # 流水接口 def check_flow_interface(name): # 定义查看流水接口功能函数 user_dic = db_handler.select(name) # 使用数据库模块里面的查找用户名路径函数 # 拿到返回值 用户信息字典 赋值给变量名 user_dic return user_dic['flow'] # 返回用户信息字典中以flow(流水)作为K的值 # 查询余额接口 def check_balance_interface(name): user_dic = db_handler.select(name) return user_dic['balance'] # 支付接口 def pay_interface(name, cost): # 定义支付功能函数,传参(用户姓名,商品总额) user_dic = db_handler.select(name) # 调用db数据模块下面的查询路径函数,得到返回值(用户信息字典) if user_dic['balance'] >= cost: # 如果用户信息字典中的余额 大于等于 商品总额 user_dic['balance'] -= cost # 用户信息字典中的余额 减去 商品总额 再赋值给 用户信息字典中的余额 user_dic['shopping_cart'] = {} # 支付过后,清空购物车 db_handler.save(user_dic) # 调用db数据模块的保存功能函数,存入用户更新了余额的信息字典 return True, '支付成功!' # 返回给外界 True,'支付成功!' else: # 其他情况,即余额小于商品总额的情况 return False, '消费失败!' # 返回给外界 False,'消费失败!'

更多精彩