Пример #1
0
    def show_transaction_detail():
        '''
        查看消费流水函数
        :return: 无
        '''
        import time
        account = atm.get_crurrent()

        page = 1
        flag = True
        logger.info('atm_main:%s查看消费流水' % (account['cardid']))
        while flag:
            # 调用mylib的pagination函数分页,或的分页后的列表和最多可以分多少页
            res_list, max_page = mylib.pagination(
                account['transaction_detail'], conf.MAX_PER_PAGE, page)
            # 打印分页后的消费流水
            print(mylib.mycenter('消费流水', 65))
            print('-' * 65)
            print(' %s %s %s %s' %
                  (mylib.myljust('序号', 6), mylib.myljust('时间', 25),
                   mylib.myljust('项目', 20), mylib.myljust('金额', 20)))
            for num, item in enumerate(res_list, 1):
                print(' %s   %s %s %s' %
                      (mylib.myrjust(str(num), 4),
                       mylib.myljust(
                           time.strftime("%Y-%m-%d %H:%M:%S",
                                         time.localtime(item['date'])),
                           25), mylib.myljust(item['description'], 20),
                       mylib.myljust(str(item['amount']), 20)))
            print('-' * 65)
            print(mylib.myrjust('当前第%s页/共%s页' % (page, max_page), 65))
            # 获取用户的操作输入
            chose = input(
                '操作提示:\n 输入n进入下一页,输入b进入上一页,输入r返回上一级菜单\n 请输入: ').strip()
            if chose == 'n':
                # 选择n下一页,页码加1
                if page < max_page:
                    page = page + 1
                else:
                    input("已经是最后一页了,按任意键继续")
            elif chose == 'b':
                # 选择b上一页,页码减1
                if page == 1:
                    input("已经是第1页了,按任意键继续")
                else:
                    page = page - 1

            elif chose == 'r':
                # 选择r,退出循环返回主菜单
                flag = False
            else:
                input('输入错误,任意键')
Пример #2
0
    def show_transaction_detail():
        '''
        查看消费流水函数
        :return: 无
        '''
        import time
        account = atm.get_crurrent()

        page = 1
        flag = True
        logger.info('atm_main:%s查看消费流水' %(account['cardid']))
        while flag:
            # 调用mylib的pagination函数分页,或的分页后的列表和最多可以分多少页
            res_list, max_page = mylib.pagination(account['transaction_detail'], conf.MAX_PER_PAGE, page)
            # 打印分页后的消费流水
            print(mylib.mycenter('消费流水', 65))
            print('-' * 65)
            print(' %s %s %s %s' %(mylib.myljust('序号', 6), mylib.myljust('时间', 25), mylib.myljust('项目', 20), mylib.myljust('金额', 20)))
            for num, item in enumerate(res_list, 1):
                print(' %s   %s %s %s' %(mylib.myrjust(str(num), 4), mylib.myljust(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(item['date'])), 25), mylib.myljust(item['description'], 20), mylib.myljust(str(item['amount']), 20)))
            print('-' * 65)
            print(mylib.myrjust('当前第%s页/共%s页' %(page, max_page), 65))
            # 获取用户的操作输入
            chose = input('操作提示:\n 输入n进入下一页,输入b进入上一页,输入r返回上一级菜单\n 请输入: ').strip()
            if chose == 'n':
                # 选择n下一页,页码加1
                if page < max_page:
                    page = page + 1
                else:
                    input("已经是最后一页了,按任意键继续")
            elif chose == 'b':
                # 选择b上一页,页码减1
                if page == 1:
                    input("已经是第1页了,按任意键继续")
                else:
                    page = page - 1

            elif chose == 'r':
                # 选择r,退出循环返回主菜单
                flag = False
            else:
                input('输入错误,任意键')
Пример #3
0
 def show_accounts():
     '''
     查看所有账户信息函数
     :return: 无
     '''
     page = 1 # 初始化页码
     flag = True
     while flag:
         # 获取所有账户
         accounts = ac.get_accounts()
         if accounts:
             # 分页,获取分页后的列表和最多可以分多少页
             res_list, max_page = mylib.pagination(accounts, conf.MAX_PER_PAGE, page)
             # 打印分页后的用户列表
             print(mylib.mycenter('查看用户', 65))
             print('-' * 65)
             print(' %s %s %s %s %s %s' %(mylib.myljust('序号', 6), mylib.myljust('卡号', 11), mylib.myljust('账户名', 12), mylib.myljust('电话', 13), mylib.myljust('状态', 6), mylib.myljust('可用额度', 8)))
             for num, account in enumerate(res_list, 1):
                 print(' %s   %s %s %s %s %s' %(mylib.myrjust(str(num), 4), mylib.myljust(account['cardid'], 11), mylib.myljust(account['name'], 12), mylib.myljust(account['tel'], 13), mylib.myljust(account['status'], 6), mylib.myljust(str(account['max_balance']), 8)))
             print('-' * 65)
             print(mylib.myrjust('当前第%s页/共%s页' %(page, max_page), 65))
             print()
             chose = input('操作提示:\n 输入相应序号选择用户\n 输入n进入下一页,输入b进入上一页,输入r返回主菜单\n 请输入: ').strip()
             if chose == 'n':
                 # 选择n下一页,页码加1
                 if page < max_page:
                     page = page + 1
                 else:
                     input("已经是最后一页了,按任意键继续")
             elif chose == 'b':
                 # 选择b上一页,页码减1
                 if page == 1:
                     input("已经是第1页了,按任意键继续")
                 else:
                     page = page - 1
             elif chose == 'r':
                 # 选择r,退出循环返回主菜单
                 flag = False
             elif  chose in list(map(lambda x: str(x), range(1, len(res_list) + 1))):
                 # 如果用户输入的是列表的编号,相当于选定改用进行相应操作
                 chose_account = res_list[int(chose) - 1] # 获取输入的序号对应的账户
                 do_flag = True
                 while do_flag:
                     show_account_info(chose_account) # 显示该用户信息
                     do_chose = print_menu(['冻结账户', '解冻账户', '调整账户额度', '锁定账户', '解锁账户','注销账户', '返回'])
                     if do_chose == '1':
                         freeze_account(chose_account)
                     elif do_chose == '2':
                         unfreeze_account(chose_account)
                     elif do_chose == '3':
                         change_max_balance(chose_account)
                     elif do_chose == '4':
                         lock_account(chose_account)
                     elif do_chose == '5':
                         unlock_account(chose_account)
                     elif do_chose == '6':
                         if remove_account(chose_account):
                             do_flag = False
                     elif do_chose == '7':
                         do_flag = False
                     else:
                         input('输入错误,按任意键继续')
             else:
                 input('输入错误,任意键')
         else:
             input('账户列表为空,请先添加账户,按任意键返回上级菜单')
             flag = False
Пример #4
0
 def shop():
     '''
     购物函数
     :return: 无
     '''
     # 获取所有商品列表
     all_goods = goo.get_all_goods()
     # 初始化页码
     page = 1
     flag = True
     while flag:
         #all_goods = goods.get_all_goods()
         if all_goods:
             # 如果商品列表不为空显示商品信息
             # 分页商品列表,获取分页后的商品列表及最多可以分多少页
             res_list, max_page = mylib.pagination(all_goods, conf.MAX_PER_PAGE, page)
             # 输出分页后的商品列表
             print("商品列表")
             print('-' * 80)
             print(' %s %s %s %s %s' %(mylib.myljust('序号', 6), mylib.myljust('编号', 7), mylib.myljust('商品名', 45), mylib.myljust('价格', 10), mylib.myljust('分类', 8)))
             for num, goods in enumerate(res_list, 1):
                 print(' %s   %s %s %s %s' %(mylib.myrjust(str(num), 4), mylib.myljust(goods['id'], 7), mylib.myljust(goods['name'], 45), mylib.myljust(str(goods['price']), 10), mylib.myljust(goods['class'], 6)))
             print('-' * 80)
             print(mylib.myrjust('当前第%s页/共%s页' %(page, max_page), 80))
             print()
             # 获取用户输入的操作选项,输入序号表示选定商品
             chose = input('操作提示:\n 输入相应序号选择商品\n 输入n进入下一页,输入b进入上一页,输入r返回上一级菜单\n 请输入: ').strip()
             if chose == 'n':
                 # 选择n下一页,页码加1
                 if page < max_page:
                     page = page + 1
                 else:
                     input("已经是最后一页了,按任意键继续")
             elif chose == 'b':
                 # 选择b上一页,页码减1
                 if page == 1:
                     input("已经是第1页了,按任意键继续")
                 else:
                     page = page - 1
             elif chose == 'r':
                 # 选择r,退出循环返回主菜单
                 flag = False
             elif  chose in list(map(lambda x: str(x), range(1, len(res_list) + 1))):
                 # 如果选择的是商品序号,说明选定该商品
                 # 获取选定的商品
                 chose_goods = res_list[int(chose) - 1]
                 do_flag = True
                 while do_flag:
                     # 显示商品信息
                     show_goods_info(chose_goods)
                     # 获取用户操作选项
                     do_chose = print_menu(['加入购物车', '返回'])
                     if do_chose == '1':
                         # 调用shopping对象add_to_shopping_cart将选定的商品加入到购物车
                         shopping.add_to_shopping_cart(chose_goods, 1)
                         if shopping.get_crurrent_customer():
                             logger.info('用户%s将%s添加到购物车' %(shopping.get_crurrent_customer()['username'], chose_goods['name']))
                         else:
                             logger.info('游客将%s添加到购物车' %chose_goods['name'])
                         input('成功将%s加入购物车,按任意键继续' %chose_goods['name'])
                     elif do_chose == '2':
                         do_flag = False
                     else:
                         input('输入错误,按任意键继续')
             else:
                 input('输入错误,任意键')
         else:
             input('商品列表为空')
             flag = False
Пример #5
0
 def shop():
     '''
     购物函数
     :return: 无
     '''
     # 获取所有商品列表
     all_goods = goo.get_all_goods()
     # 初始化页码
     page = 1
     flag = True
     while flag:
         #all_goods = goods.get_all_goods()
         if all_goods:
             # 如果商品列表不为空显示商品信息
             # 分页商品列表,获取分页后的商品列表及最多可以分多少页
             res_list, max_page = mylib.pagination(all_goods,
                                                   conf.MAX_PER_PAGE, page)
             # 输出分页后的商品列表
             print("商品列表")
             print('-' * 80)
             print(' %s %s %s %s %s' %
                   (mylib.myljust('序号', 6), mylib.myljust('编号', 7),
                    mylib.myljust('商品名', 45), mylib.myljust(
                        '价格', 10), mylib.myljust('分类', 8)))
             for num, goods in enumerate(res_list, 1):
                 print(' %s   %s %s %s %s' %
                       (mylib.myrjust(str(num),
                                      4), mylib.myljust(goods['id'], 7),
                        mylib.myljust(goods['name'], 45),
                        mylib.myljust(str(goods['price']), 10),
                        mylib.myljust(goods['class'], 6)))
             print('-' * 80)
             print(mylib.myrjust('当前第%s页/共%s页' % (page, max_page), 80))
             print()
             # 获取用户输入的操作选项,输入序号表示选定商品
             chose = input(
                 '操作提示:\n 输入相应序号选择商品\n 输入n进入下一页,输入b进入上一页,输入r返回上一级菜单\n 请输入: '
             ).strip()
             if chose == 'n':
                 # 选择n下一页,页码加1
                 if page < max_page:
                     page = page + 1
                 else:
                     input("已经是最后一页了,按任意键继续")
             elif chose == 'b':
                 # 选择b上一页,页码减1
                 if page == 1:
                     input("已经是第1页了,按任意键继续")
                 else:
                     page = page - 1
             elif chose == 'r':
                 # 选择r,退出循环返回主菜单
                 flag = False
             elif chose in list(
                     map(lambda x: str(x), range(1,
                                                 len(res_list) + 1))):
                 # 如果选择的是商品序号,说明选定该商品
                 # 获取选定的商品
                 chose_goods = res_list[int(chose) - 1]
                 do_flag = True
                 while do_flag:
                     # 显示商品信息
                     show_goods_info(chose_goods)
                     # 获取用户操作选项
                     do_chose = print_menu(['加入购物车', '返回'])
                     if do_chose == '1':
                         # 调用shopping对象add_to_shopping_cart将选定的商品加入到购物车
                         shopping.add_to_shopping_cart(chose_goods, 1)
                         if shopping.get_crurrent_customer():
                             logger.info(
                                 '用户%s将%s添加到购物车' %
                                 (shopping.get_crurrent_customer()
                                  ['username'], chose_goods['name']))
                         else:
                             logger.info('游客将%s添加到购物车' %
                                         chose_goods['name'])
                         input('成功将%s加入购物车,按任意键继续' % chose_goods['name'])
                     elif do_chose == '2':
                         do_flag = False
                     else:
                         input('输入错误,按任意键继续')
             else:
                 input('输入错误,任意键')
         else:
             input('商品列表为空')
             flag = False