Exemplo n.º 1
0
def fillTables():
    NBR_SUPPLIER=331
    NBR_DEVICE=991
    NBR_PURCHASE=5023
    NBR_ASSET=33987
    for i in range(0, NBR_SUPPLIER):
        db.session.add(models.Supplier(name="Leverancier{}".format(i), description="Beschrijving Leverancier{} : telefoonnummer, adres, contactpersoon".format(i)))
    db.session.commit()
    sid = models.Supplier.query.first().id
    print("Leveranciers toegevoegd")

    cat = ['PC', 'BEAMER', 'PRINTER', 'OTHER']
    for i in range(0, NBR_DEVICE):
        db.session.add(models.Device(brand='brand{}'.format(i), type='type{}'.format(i), category=cat[i % 4], power=i, ce=True))
    db.session.commit()
    did = models.Device.query.first().id
    print("Toestellen toegevoegd")

    for i in range(0, NBR_PURCHASE):
        db.session.add(models.Purchase(since=models.Purchase.reverse_date('10-10-{}'.format(2000 + i % 17)), value=i*10, \
                                       supplier_id=(sid +(i % NBR_SUPPLIER)), device_id=(did + (i % NBR_DEVICE))))
    db.session.commit()
    pid = models.Purchase.query.first().id
    print("Aankopen toegevoegd")

    stat = ['IN SERVICE', 'BROKEN', 'IN REPAIR', 'TO BE REPLACED', 'OTHER']
    for i in range(0, NBR_ASSET):
        db.session.add(models.Asset(name='Toestel{}'.format(i), qr_code=i, status=stat[i % 5], location='E2.0{}'.format(i % 10), purchase_id=(pid + (i % NBR_PURCHASE))))
    db.session.commit()
    print("Items     toegevoegd")
Exemplo n.º 2
0
def save_network_and_device(ip, device_hash):
    # check if exists network by ip if no add
    networks = []
    for row in db.session.query(models.Network).filter_by(ip=ip):
        networks.append(row)
    if len(networks) > 0:
        network = networks[0]
    else:
        network = models.Network(ip=ip)
        db.session.add(network)
        db.session.flush()

    # get device by hash
    devices = []
    for row in db.session.query(models.Device).filter_by(hash=device_hash):
        devices.append(row)
    if len(devices) > 0:
        device = devices[0]
    else:
        device = models.Device(hash=device_hash)
        db.session.add(device)
        db.session.flush()

    # check if network has this device if no then add
    device_exists = False
    for network_device in network.devices:
        if network_device.hash == device.hash:
            device_exists = True
    if not device_exists:
        network.devices.append(device)

    # check if device has this network if no add
    network_exists = False
    for device_network in device.networks:
        if device_network.ip == network.ip:
            network_exists = True
    if not network_exists:
        device.networksappend(network)

    db.session.commit()
Exemplo n.º 3
0
    def post(self):
        newUser = m.User()
        newUser.username = request.form['username']
        newUser.firstName = request.form['firstname']
        newUser.middleName = request.form['middlename']
        newUser.lastName = request.form['lastname']
        newUser.email = request.form['email']
        newUser.set_password(request.form['password'])

        newDevice = m.Device()
        newDevice.deviceName = names.get_last_name()
        newDevice.lastIP = request.remote_addr
        newDevice.lastConnect = 'now'
        newDevice.deviceType = request.form['platform']

        db.session.add(newDevice)
        dses= m.Device.query.filter_by(deviceName=newDevice.deviceName).first()

        newUser.lastDeviceID = dses.id

        db.session.add(newUser)
        db.session.commit()
        return jsonify({'data': [{"registered": newUser.username}]})
Exemplo n.º 4
0
def main():
    fake = Factory.create('es_ES')
    fake.seed(1024)
    print(u'Populate the database with sample data')
    print(u'  - Creating groups')
    grupos = [None]
    for i in range(1, 4): # 3 Grupos
        grp = models.Group.query.get(i)
        if not grp:
            grp = models.Group(
                id_group=i,
                name_group=fake.company(),
                url=fake.url(),
                )
            print(u'    - {}'.format(grp), end=' ')
            db.session.add(grp)
            db.session.commit()
            print(u'[OK]')
        else:
            print(u'    - {}'.format(grp), end=' ')
            print(u'[Skipped]')
        grupos.append(grp)
    print(u'  - Creating users')   
    users = []     
    for i in range(1, 24): # Usuarios 
        usr = models.User.query.get(i)
        if not usr:
            usr = models.User(
                id_user=i,
                name=fake.first_name(), 
                last_name=fake.last_name(), 
                email=fake.email(),
                phone=fake.phone_number(),
                address=fake.address(),
                rol=random_distribute((95, 5), ('usr', 'adm')),
                group=random_distribute((70,10,10,10), grupos),
                )
            print(u'    - {}'.format(usr), end=' ')
            db.session.add(usr)
            db.session.commit()
            print(u'[OK]')
        else:
            print(u'    - {}'.format(usr), end=' ')
            print(u'[skipped]')
        users.append(usr)
    print(u'  - Creating devices')
    for usr in users: # Usuarios 
        if not usr.devices:
            kind = random_distribute((50, 50), ('nfc', 'mac'))
            if kind == 'nfc':
                code = fake_nfc_id()
            else:
                code = fake_mac_address()
            dev = models.Device(user=usr, kind=kind, code=code)
            print(u'    - {}'.format(dev), end=' ')
            db.session.add(dev)
            db.session.commit()
            print(u'[OK]')
        else:
            dev = usr.devices[0]
            print(u'    - {}'.format(dev), end=' ')
            print(u'[Skipped]')
    print(u'  - Creating payments for the current month')
    today = datetime.date.today()
    month, year = today.month, today.year      
    for usr in users: # Usuarios 
        pay = models.Payment.query.filter_by(
            user=usr,
            month=month,
            year=year
            ).first()
        if not pay:
            pay = models.Payment(
                user=usr,
                month=month,
                year=year,
                f_payment=fake.date_time_this_year(),
                amount=decimal.Decimal('10.00'),
                )
            print(u'    - {}'.format(pay), end=' ')
            db.session.add(pay)
            db.session.commit()
            print(u'[OK]')
        else:
            print(u'    - {}'.format(pay), end=' ')
            print(u'[Skipped]')
Exemplo n.º 5
0
def add_device(db: Session, device: schemas.DeviceCreate, type_id: int):
    db_device = models.Device(**device.dict(), type_id=type_id)
    db.add(db_device)
    db.commit()
    db.refresh(db_device)
    return db_device
Exemplo n.º 6
0
print config.DB_TOOLS
config.DB_TOOLS = True
from app import models, db

_suppliers = [
    models.Supplier(name="Leverancier 1",
                    description="Beschrijving Leverancier 1"),
    models.Supplier(name="Leverancier 2",
                    description="Beschrijving Leverancier 2")
]

_devices = [
    models.Device(brand='Hitachi',
                  type='XL34D',
                  category='BEAMER',
                  power=345.5,
                  ce=True),
    models.Device(brand='Intel',
                  type='NUC32333',
                  category='PC',
                  power=23,
                  ce=True)
]

_purchases = [
    models.Purchase(since=models.Purchase.reverse_date('10-10-2012'),
                    value=100.25),
    models.Purchase(since=models.Purchase.reverse_date('10-10-2013'),
                    value=900.00),
    models.Purchase(since=models.Purchase.reverse_date('10-10-2013'),