Exemple #1
0
 def test_user_can_be_created(self):
     user = self.createUser()
     login = self.loginUser()
     
     role = Role(
         title = 'Cashier'
     )
     session.add(role)
     session.commit()
     
     with self.client:
         self.client.post(url_for('nonAuth.login'), data = login.data)
         
         response = self.client.post(
             url_for('auth.createUser'), 
             data = dict(
                 username = '******',
                 password = '******',
                 active = 'ACTIVE',
                 role = role.id
             )
         )
         
         users = User.query.all()
         self.assertTrue(users[1].username == 'Kwaghbee')
         self.assertRedirects(response, url_for('auth.getUsers'))
Exemple #2
0
def add_user():
    data = request.json
    username = data['username']

    payload = {}

    # Check if username exists
    user = session.query(User).filter(User.username == username).first()
    if user:
        payload['status'] = False
        payload['message'] = 'username %s already exists.' % (username)
        resp = jsonify(payload)
        resp.status_code = 403
        return resp

    try:
        # Add user to database
        new_user = User(username=username)
        session.add(new_user)
        session.commit()
    except:
        # Error saving event to database
        payload['status'] = False
        payload['message'] = 'error creating user.'
        resp = jsonify(payload)
        resp.status_code = 500
        return resp

    # Success response
    payload['status'] = True
    payload['message'] = 'user %s created successfuly.' % (username)
    resp = jsonify(payload)
    resp.status_code = 201
    return resp
Exemple #3
0
async def employee_post(employees: Employees) -> Any:
    employees = list(map(lambda x: EmployeeDB(**x.dict()),
                         employees.employees))
    for employee in employees:
        session.add(employee)

    session.commit()
    return ({'message': 'success'})
Exemple #4
0
def new_broker_entry():
    """add new broker to the journal"""
    new_broker = create_broker_from_cli()
    session.add(new_broker)
    session.commit()
    while click.confirm('do you want to continue?', abort=False):
        new_broker = create_broker_from_cli()
        session.add(new_broker)
        session.commit()
Exemple #5
0
def create_user(user: UserSchema) -> User:
    """
        Add a new user based on UserSchema passed
    """
    new_user = User(**user.__dict__)

    db.add(new_user)
    db.commit()

    return user
Exemple #6
0
def add_rule():
    data = request.json
    parameter = data['parameter']
    threshold = data['threshold']

    user_list = []
    payload = {}

    # Check if rule exists
    if session.query(Rule).filter(Rule.parameter == parameter).first():
        payload['status'] = False
        payload['message'] = 'parameter %s already exists. Edit the rule instead.' % (parameter)
        resp = jsonify(payload)
        resp.status_code = 403
        return resp

    for username in data['usernames']:
        user = session.query(User).filter(User.username == username).first()

        # Check if all usernames exist
        if user:
            user_list.append(user)

        # If a username does not exist, send an error message
        else:
            payload['status'] = False
            payload['message'] = 'username %s does not exist.' % (username)
            resp = jsonify(payload)
            resp.status_code = 404
            return resp

    try:
        # Add rule to database
        new_rule = Rule(parameter=parameter,
                        threshold=threshold,
                        user=user_list)
        session.add(new_rule)
        session.commit()

    except:
        # Error saving rule to database
        payload['status'] = False
        payload['message'] = 'error creating rule.'
        resp = jsonify(payload)
        resp.status_code = 500
        return resp

    # Success response
    payload['status'] = True
    payload['message'] = 'rule for %s with threshold %d created successfuly.' % (parameter, threshold)
    resp = jsonify(payload)
    resp.status_code = 201
    return resp
    def givePermissionsTo(self, perms):
        """ Assign permissions to a user or role
            @return permissions or null
        """

        # permissions = self.getAllPermissions(perms)
        if perms is None:
            return self

        self.permissions.extend(perms)
        session.add(self)
        session.commit()
        return self
Exemple #8
0
def new_stock_entry():
    """add new stock record to the journal"""
    if (not check_brokers()):
        print("this command requries brokers to work please enter some with the new-broker-entry command")
        return
    brokers = get_brokers(session)
    new_stock = create_stock_from_cli(brokers)
    session.add(new_stock)
    session.commit()
    while click.confirm('do you want to continue?', abort=False):
        new_stock = create_stock_from_cli(brokers)
        session.add(new_stock)
        session.commit()
Exemple #9
0
def import_csv():
    file = QFileDialog(
    )  # class que promove que os utilizadores permitam a selecao de ficheiros ou diretório
    file.setFileMode(QFileDialog.ExistingFile
                     )  # o ficheiro tem de existir para ser selecionado

    if file.exec_():  # se a procura de ficheiros incia
        filename = file.selectedFiles()[0]  # diretorio do ficheiro selecionado
        with open(filename, 'r') as csvfile:  #abre o ficheiro selecionado
            reader = csv.reader(
                csvfile)  #guarda na variavel reader o ficheiro texto csv
            next(reader)  #passa o cabeçalho
            for i in reader:
                artigo = Artigo(nome=i[0],
                                marca=i[1],
                                preco=float(i[2]),
                                imagem=i[3])  #instacia artigo
                session.add(artigo)  #adiciona a base de dados

            session.commit()  #grava na base de dados
def createPermissions():
    """ Create new system permissions."""
    permissions = getAllPermissions()
    
    form = PermissionForm()
    if not form.name.data[0].isdigit():
        if form.validate_on_submit():
            # do something here
            existing_perm = Perm.query.filter_by(name = form.name.data).first()

            if existing_perm is None:
                new_perm = Perm(
                    name = form.name.data
                )
                session.add(new_perm)
                session.commit()
                return redirect(url_for('auth.getPermissions'))
            flash('Permission already exists!')
    flash('Value entered must start with an alphabet!')
        
    return redirect(url_for('auth.getPermissions'))
def createRoles():
    """ Create new system roles."""
    roles = getAllRoles()
    
    form = RoleForm()

    if not form.title.data[0].isdigit():
        if form.validate_on_submit():
            # do something here
            existing_role = User_Role.query.filter_by(title = form.title.data).first()

            if existing_role is None:
                new_role = User_Role(
                    title = form.title.data
                )
                session.add(new_role)
                session.commit()
                return redirect(url_for('auth.getRoles'))
            flash('Role already exists!')
    flash('Value entered must start with an alphabet!')

    return redirect(url_for('auth.getRoles'))
def create():
    """ Create a new user access to the system."""

    form = CreateUserForm()

    if form.validate_on_submit():
        existing_user = User.query.filter_by(
            username=form.username.data).first()

        if existing_user is None:
            user = User(username=form.username.data,
                        active=form.active.data,
                        role_id=form.role.data)
            user.set_password(form.password.data)
            session.add(user)
            session.commit()

            return redirect(url_for('auth.getUsers'))
        flash('User already exists')

    return render_template('create_user.html',
                           form=form,
                           title='Create a New User.')
Exemple #13
0
def add_event():
    data = request.json
    parameter = data['parameter']
    value = data['value']

    payload = {}

    # Check if rule exists
    rule = session.query(Rule).filter(Rule.parameter == parameter).first()
    if not rule:
        payload['status'] = False
        payload['message'] = 'parameter %s does not exist.' % (parameter)
        resp = jsonify(payload)
        resp.status_code = 404
        return resp

    try:
        # Add event to database
        new_event = Event(value=value, rule=rule)
        session.add(new_event)
        session.commit()
    except:
        # Error saving event to database
        payload['status'] = False
        payload['message'] = 'error creating event.'
        resp = jsonify(payload)
        resp.status_code = 500
        return resp

    # Success response
    payload['status'] = True
    payload['message'] = 'event for %s with value %d created successfuly.' % (
        parameter, value)
    resp = jsonify(payload)
    resp.status_code = 201
    return resp
Exemple #14
0
 def set(self, **kwargs):
     self.model = self.model()
     for key, value in kwargs.items():
         setattr(self.model, key, value)
     session.add(self.model)
     session.commit()