Esempio n. 1
0
def craete_utils():

    # refereal program
    rp = ReferralProgram("10-1-1", 10, 1, 1)
    db.session.add(rp)
    rp1 = ReferralProgram("15-2-1", 15, 2, 1)
    db.session.add(rp1)
    #db.session.commit()

    rbu = PaymentSystems("Ref bonus", "logo", "url")
    rbu.unit = "USD"
    db.session.add(rbu)
    rbb = PaymentSystems("Ref bonus", "logo", "url")
    rbb.unit = "BTC"
    db.session.add(rbb)

    pm = PaymentSystems("Perfect money", "logo", "url")
    pm.unit = "USD"
    db.session.add(pm)
    bc = PaymentSystems("BitCoint", "logo", "url")
    bc.unit = "BTC"
    db.session.add(bc)

    wallet = Wallet("Perfect Money", "url")
    wallet.paymentSystem = pm
    wallet.unit = 'USD'
    db.session.add(wallet)

    wallet = Wallet("Bitcoin", "url")
    wallet.paymentSystem = bc
    wallet.unit = 'BTC'
    db.session.add(wallet)

    ip = InvestmentPlan(0, 1, 3, "3% per day", 1)
    ip1 = InvestmentPlan(0, 1, 3.5, "3.5% per day")
    db.session.add(ip)
    db.session.add(ip1)
    #db.session.commit()

    tr = TransactionType("Login")
    db.session.add(tr)
    tr = TransactionType("Logout")
    db.session.add(tr)
    tr = TransactionType("Request deposit")
    db.session.add(tr)
    tr = TransactionType("Re-invest")
    db.session.add(tr)
    tr = TransactionType("Withdraw")
    db.session.add(tr)
    tr = TransactionType("Reset password")
    db.session.add(tr)
    tr = TransactionType("Change settings")
    db.session.add(tr)
    #db.session.commit()

    return rp, wallet
Esempio n. 2
0
def create_wallet(wallet: CreateWalletRequestSchema,
                  db: Session = Depends(get_db)):
    db_wallet = Wallet(balance=wallet.balance)
    db.add(db_wallet)
    db.commit()
    db.refresh(db_wallet)
    return db_wallet
Esempio n. 3
0
    def create_wallet(self,
                      uuid,
                      created,
                      user_id,
                      is_active=True,
                      balance=current_config.START_BALANCE):
        """
       Регистрация (создание) нового кошелька
       :param uuid: UUID кошелька
       :param created: Дата создания
       :param user_id: Идентификатор пользователя
       :param is_active: Активность
       :param balance: Баланс (при регистрации равен START_BALANCE)
       :return: Результат выполнения функции (Строка)
       """
        try:
            wallet = Wallet(uuid=uuid,
                            created=created,
                            is_active=is_active,
                            balance=balance)

            self.session.add(wallet)
            self.session.flush()
            self.session.commit()

            user = self.session.query(Users).filter(
                Users.id == user_id).first()
            user.wallet_id = wallet.id

            self.session.flush()
            self.session.commit()

            return 'Поздравляем, регистрации кошелька прошла успешно.'
        except Exception as e:
            return f'Ошибка регистрации кошелька: {e}'
Esempio n. 4
0
async def registerwallet(ctx, address):
    """ Register your wallet in the DB """

    address = address.strip()
    err_embed = discord.Embed(title=":x:Error:x:",
                              colour=discord.Colour(0xf44242))
    good_embed = discord.Embed(title="{}'s Wallet".format(
        ctx.message.author.name),
                               colour=discord.Colour(0xD4AF37))
    if address is None:
        err_embed.description = "Please provide an address"
        await client.send_message(ctx.message.author, embed=err_embed)
        return

    exists = session.query(Wallet).filter(
        Wallet.userid == ctx.message.author.id).first()
    addr_exists = session.query(Wallet).filter(
        Wallet.address == address).first()
    if exists:
        good_embed.title = "Your wallet exists!".format(exists.address)
        good_embed.description = "```{}``` use `{}updatewallet <addr>` to change".format(
            exists.address, config['prefix'])
        await client.send_message(ctx.message.author, embed=good_embed)
        return
    if addr_exists:
        err_embed.description = "Address already registered by another user!"
        await client.send_message(ctx.message.author, embed=err_embed)
        return

    elif not exists and len(address) == config['addrLength']:
        w = Wallet(address, ctx.message.author.id, ctx.message.id)
        session.add(w)
        session.commit()
        good_embed.title = "Successfully registered your wallet"
        good_embed.description = "```{}```".format(address)
        await client.send_message(ctx.message.author, embed=good_embed)

        pid = gen_paymentid(address)
        balance = session.query(TipJar).filter(TipJar.paymentid == pid).first()
        if not balance:
            t = TipJar(pid, ctx.message.author.id, 0)
            session.add(t)
        else:
            balance.paymentid = pid
        session.commit()
        tipjar_addr = rpc.getAddresses()['addresses'][0]
        good_embed.title = "Your Tipjar Info"
        good_embed.description = "Deposit {} to start tipping! ```transfer 3 {} <amount> -p {}```".format(
            config['symbol'], tipjar_addr, pid)
        balance = session.query(TipJar).filter(TipJar.paymentid == pid).first()
        await client.send_message(ctx.message.author, embed=good_embed)
        return
    elif len(address) > config['addrLength']:
        err_embed.description = "Your wallet must be {} characeters long, your entry was too long".format(
            config['addrLength'])
    elif len(address) < config['addrLength']:
        err_embed.description = "Your wallet must be {} characeters long, your entry was too short".format(
            config['addrLength'])
    await client.say(embed=err_embed)
Esempio n. 5
0
    def get_wallets(self):
        """
        Get all wallets on account associated with API_KEY - Requires authentication.

        @return Array <models.Wallet>
        """
        endpoint = "auth/r/wallets"
        raw_wallets = self.post(endpoint)
        return [Wallet(*rw[:4]) for rw in raw_wallets]
Esempio n. 6
0
 def add_to_wallet(self, data):
     """
     Encapsulates the saving into the wallet
     return: wallet saved row
     """
     rec = Wallet(**data)
     rec.save()
     self.log.info('Added to wallet: %s', rec)
     return rec
Esempio n. 7
0
    async def buy(self, ctx: commands.context, code: str, count: int = 1):
        session_ = sessionmaker(bind=engine.get_engine())
        session = session_()

        if count <= 0:
            count = 1

        cn = session.query(Coin).filter_by(name=code).first()
        if cn is None:
            await ctx.reply("등록된 코인이 아닙니다.")
        else:
            wl = session.query(Wallet).filter_by(name=code,
                                                 owner=str(
                                                     ctx.author.id)).first()

            if wl is None:
                wl = Wallet()
                wl.name = code
                wl.owner = str(ctx.author.id)
                wl.count = 0

                session.add(wl)

            wl_point = session.query(Point).filter_by(
                owner=str(ctx.author.id)).first()
            if wl_point is None:
                return await ctx.reply("먼저 포인트 지갑을 만들어야 합니다")

            if wl_point.point - (cn.price * count) >= 0:
                wl.count += count
                wl_point.point -= cn.price * count
                session.commit()

                await ctx.reply("구매 성공\n"
                                "```\n"
                                "-----------------------------------\n"
                                f"- 거래한 코인: {count} 개\n"
                                f"- 코인 거래 가격: {cn.price} P\n"
                                f"- 거래 후 보유중인 코인: {wl.count} 개\n"
                                "-----------------------------------\n"
                                f"- 변동 포인트 : -{cn.price * count} P\n"
                                f"- 거래 후 남은 포인트: {wl_point.point} P\n"
                                "-----------------------------------\n"
                                "```")
            else:
                await ctx.reply("구매 실패"
                                "```\n"
                                "-----------------------------------\n"
                                f"- 거래한 코인: 0 개\n"
                                f"- 코인 거래 가격: {cn.price} P\n"
                                f"- 거래 후 보유중인 코인: {wl.count} 개\n"
                                "-----------------------------------\n"
                                f"- 변동 포인트 : -0 P\n"
                                f"- 거래 후 남은 포인트: {wl_point.point} P\n"
                                "-----------------------------------\n"
                                "```")
Esempio n. 8
0
def account():
    wallets = Wallet.get_by_idowner(current_user.id)
    form = WalletForm()
    if form.validate_on_submit():
        name = form.name.data
        key = form.key.data
        wallet = Wallet(name=name, owner_id=current_user.id, key = key)
        wallet.save()
        return redirect(url_for('account'))
    return render_template('myaccount.html', wallets=wallets, form=form)
Esempio n. 9
0
async def registerwallet(ctx, address):
    """ .registerwallet <addr> - Register your wallet in the database """

    err_embed = discord.Embed(title="Error", colour=discord.Colour(0xf44242))
    good_embed = discord.Embed(title="{}'s Wallet".format(
        ctx.message.author.name),
                               colour=discord.Colour(0xD4AF37))
    if address is None:
        err_embed.description = "Please provide an address"
        await client.send_message(ctx.message.author, embed=err_embed)
        return

    exists = session.query(Wallet).filter(
        Wallet.userid == ctx.message.author.id).first()
    addr_exists = session.query(Wallet).filter(
        Wallet.address == address).first()
    if exists:
        good_embed.title = "Your wallet exists!".format(exists.address)
        good_embed.description = "```{}``` use `{}updatewallet <addr>` to change".format(
            exists.address, config['prefix'])
        await client.send_message(ctx.message.author, embed=good_embed)
        return
    if addr_exists:
        err_embed.description = "Address already registered by another user!"
        await client.send_message(ctx.message.author, embed=err_embed)
        return

    elif not exists and len(address) == 98:
        w = Wallet(address, ctx.message.author.id, ctx.message.id)
        session.add(w)
        session.commit()
        good_embed.title = "Successfully registered your wallet"
        good_embed.description = "```{}```".format(address)
        await client.send_message(ctx.message.author, embed=good_embed)
        pid = gen_paymentid(address)
        balance = session.query(TipJar).filter(TipJar.paymentid == pid).first()
        if not balance:
            t = TipJar(pid, ctx.message.author.id, 0)
            session.add(t)
        else:
            balance.paymentid = pid
        session.commit()
        tipjar_addr = "ccx7Wga6b232eSVfy8KQmBjho5TRXxX8rZ2zoCTyixfvEBQTj1g2Ysz1hZKxQtw874W3w6BZkMFSn5h3gUenQemZ2xiyyjxBR7"
        good_embed.title = "Your Tipjar Info"
        good_embed.description = "Deposit {} to start tipping! ```transfer 0 {} <amount> -p {}```".format(
            config['symbol'], tipjar_addr, pid)
        balance = session.query(TipJar).filter(TipJar.paymentid == pid).first()
        await client.send_message(ctx.message.author, embed=good_embed)
        return
    elif len(address) > 98:
        err_embed.description = "Your wallet must be 98 characeters long, your entry was too long"
    elif len(address) < 98:
        err_embed.description = "Your wallet must be 98 characeters long, your entry was too short"
    await client.say(embed=err_embed)
Esempio n. 10
0
def create_wallet(wallet_dto):
    try:
        user = session.query(User).filter_by(
            id=int(wallet_dto['user_id'])).one()
    except:
        return HttpResponse("NOT_FOUND", 404)

    wallets = session.query(Wallet).filter_by(
        owner_id=int(wallet_dto['user_id'])).all()

    if len(wallets) >= 1:
        wallet = Wallet(balance=0,
                        owner_id=wallet_dto['user_id'],
                        is_default=False)
    else:
        wallet = Wallet(balance=0,
                        owner_id=wallet_dto['user_id'],
                        is_default=True)

    session.add(wallet)
    session.commit()
    return HttpResponse("SUCCESSFULLY_CREATED_WALLET", 201)
Esempio n. 11
0
def wallet():
    try:
        consumer = KafkaConsumer('wallet',
                                 bootstrap_servers=bootstrap_servers,
                                 value_deserializer=value_deserializer)
    except Exception as e:
        print(str(e))

    for message in consumer:
        print(message.value)
        ed = Wallet(user_id=message.value['user_id'],
                    balance=message.value['balance'])
        session.add(ed)
        session.commit()
Esempio n. 12
0
async def registerwallet(ctx, address):
    " Register your wallet in the DB " ""
    address = address.strip()
    err_embed = discord.Embed(title=":x:Error:x:",
                              colour=discord.Colour(0xf44242))
    good_embed = discord.Embed(title="{}'s Wallet".format(
        ctx.message.author.name),
                               colour=discord.Colour(0xD4AF37))
    if address == None:
        err_embed.description = "Please provide an address"
    exists = session.query(Wallet).filter(
        Wallet.userid == ctx.message.author.id).first()
    if exists:
        good_embed.title = "Your wallet exists!".format(exists.address)
        good_embed.description = "```{}``` use `!updatewallet <addr>` to change".format(
            exists.address)
        await client.say(embed=good_embed)
        return
    elif not exists and len(address) == 99 and address.startswith("TRTL"):
        w = Wallet(address, ctx.message.author.id, ctx.message.id)
        session.add(w)
        session.commit()
        good_embed.title = "Successfully registered your wallet"
        good_embed.description = "```{}```".format(address)
        await client.say(embed=good_embed)

        pid = gen_paymentid(address)
        balance = session.query(TipJar).filter(TipJar.paymentid == pid).first()
        if not balance:
            t = TipJar(pid, ctx.message.author.id, 0)
            session.add(t)
            session.commit()
        else:
            balance.paymentid = pid
        return
    elif len(address) > 99:
        err_embed.description = "Your wallet must be 99 characeters long, your entry was too long"
    elif len(address) < 99:
        err_embed.description = "Your wallet must be 99 characeters long, your entry was too short"
    elif not address.startswith("TRTL"):
        err_embed.description = "Wallets start with `TRTL`"
    await client.say(embed=err_embed)
Esempio n. 13
0
 def do_create_wallet(self, line):
     """create_wallet owner limit"""
     owner, limit = line.split()
     w = Wallet(owner, float(limit))
     self.write('Done')
     self.write_table(w.SHOW_PROPS, [w.prop_list])
Esempio n. 14
0
from datetime import datetime

from models import Session, User, Wallet, Transaction

session = Session()

user = User(first_name="me",
            last_name="mine",
            password="******",
            user_name="user_name")
user1 = User(first_name="notMe",
             last_name="notMine",
             password="******",
             user_name="Notuser_name")

wallet = Wallet(balance=100, owner_id=1, is_default=True)
wallet1 = Wallet(balance=100, owner_id=2, is_default=True)

transaction = Transaction(sender_id=1,
                          receiver_id=2,
                          amount=50,
                          time_stamp=datetime.today())

session.add(user)
session.add(user1)
session.add(wallet)
session.add(wallet1)
session.add(transaction)
session.commit()
Esempio n. 15
0
 def create_wallet(self, currency, user, balance):
     w = Wallet()
     w.currency = currency
     w.user = user
     w.balance = balance
Esempio n. 16
0
from models import Game, Wallet

if __name__ == '__main__':
    player_wallet = Wallet()
    game = Game(player_wallet, rounds=1)
    game.start_game()
    if game.is_profitable():
        print("Profitable!")
    else:
        print("Not profitable!")