コード例 #1
0
ファイル: main.py プロジェクト: NyxLex/GL_Back-end
    def post(self):
        session = Session()
        args = wallets_put_args.parse_args()
        user = auth.current_user()
        user_id = user.user_id

        wallet = Wallets(user_id=user_id, name=args['name'], uah=args['uah'])
        session.add(wallet)
        session.commit()
        return wallet, 200
コード例 #2
0
    def get_transactions(cls, request: Request, **kwargs):
        """ Get history of transactions """
        login = request.get("login")
        period_starts = datetime.strptime(request.get("period_starts"), "%c") \
            if request.get("period_starts", None) else None

        period_ends = datetime.strptime(request.get("period_ends"), "%c") \
            if request.get("period_ends", None) else None

        return Wallets.get_transactions(login, period_starts, period_ends)
コード例 #3
0
 def transfer(cls, request: Request, **kwargs):
     """ Transfer funds from one wallet to another """
     from_login = request.get("from_login")
     from_base_currency = request.get("from_base_currency", None)
     to_login = request.get("to_login")
     to_base_currency = request.get("to_base_currency", None)
     amount = int(request.get("amount", 0))
     conversion_rate_uuid_1 = request.get("conversion_rate_uuid_1", None)
     conversion_rate_uuid_2 = request.get("conversion_rate_uuid_2", None)
     return Wallets.transfer(from_login, from_base_currency, to_login,
                             to_base_currency, amount,
                             conversion_rate_uuid_1, conversion_rate_uuid_2)
コード例 #4
0
ファイル: main.py プロジェクト: NyxLex/GL_Back-end
def create_wallet():
    session = Session()

    data = request.get_json()

    try:
        wallet = Wallets(**data)
    except:
        return jsonify({"Message": "Invalid input"}), 405
    #  if not "owner_uid" != User.user_id:
    #     abort(404, description="Wallet owner not found")

    session.add(wallet)
    session.commit()

    return jsonify({"Success": "Wallet has been created"}), 200
コード例 #5
0
ファイル: check_models.py プロジェクト: vyklyuk/python_labs
from models import Session, Users, Wallets, Transactions

session = Session()

user = Users(uid=1,
             email="*****@*****.**",
             first_name="First",
             last_name="Last")
wallet_1 = Wallets(uid=1, name="My wallet", funds=90, owner=user)
wallet_2 = Wallets(uid=2, name="My wallet", funds=110, owner=user)
transaction = Transactions(uid=1,
                           from_wallet=wallet_1,
                           to_wallet=wallet_2,
                           amount=10)

session.add(user)
session.add(wallet_1)
session.add(wallet_2)
session.add(transaction)
session.commit()

print(session.query(Users).all())
print(session.query(Wallets).all())
print(session.query(Transactions).all())

session.close()
コード例 #6
0
 def create(cls, request: Request, **kwargs):
     """ Creating new wallet """
     login = request.get("login")
     base_currency = request.get("base_currency", None)
     return Wallets.create(login, base_currency)
コード例 #7
0
 def topup(cls, request: Request, **kwargs):
     """ Top up wallet's balance """
     login = request.get("login")
     base_currency = request.get("base_currency", None)
     amount = int(request.get("amount", 0))
     return Wallets.top_up(login, base_currency, amount)
コード例 #8
0
 def get_currencies(cls, request: Request, **kwargs):
     """ Retreiving list of supported currencies """
     return Wallets.get_currencies()
コード例 #9
0
 def get_wallets(cls, request: Request, **kwargs):
     """ Retreiving wallet's data """
     login = request.get("login")
     return Wallets.get_wallets(login)
コード例 #10
0
 def get(cls, request: Request, **kwargs):
     """ Retreiving wallet's data """
     login = request.get("login")
     base_currency = request.get("base_currency", None)
     return Wallets.get(login, base_currency).describe()