예제 #1
0
def create(ctx, name, company, email,
           position):  #This command recieves the contex and the data required
    """Creates a new client"""
    client = Client(name, company, email, position)
    client_service = ClientService(ctx.obj['clients_table'])

    client_service.create_client(client)
예제 #2
0
def create(ctx, name, company, email, position):
    """Creates a new client"""

    client = Client(name, company, email, position)
    client_service = ClientService(ctx.obj['clients_table'])

    client_service.create_client(client)
예제 #3
0
def create(ctx, name, company, email, job):
    """ Creates a new client """
    click.echo(ctx)
    client = Client(name, company, email, job)
    client_services = ClientService(ctx.obj['clients_table'])

    client_services.create_client(client)
예제 #4
0
    def save_to_xlsx_format(self):
        output = io.BytesIO()

        workbook = Workbook(output, {'in_memory': True})
        worksheet = workbook.add_worksheet()

        i = 0
        clients = Client.objects.all()
        q = Client()._meta
        q = [f.name for f in q.fields]

        worksheet.write(i, 0, q[2])
        worksheet.write(i, 1, q[3])
        worksheet.write(i, 2, q[4])

        for cl in clients:
            i += 1
            worksheet.write(i, 0, cl.name)
            worksheet.write(i, 1, cl.surname)
            worksheet.write(i, 2, str(cl.birth_Day))

        workbook.close()

        output.seek(0)

        response = HttpResponse(
            output.read(),
            content_type=
            "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
        )
        response['Content-Disposition'] = "attachment; filename=test.xlsx"

        return response
예제 #5
0
def update(ctx, client_uid):
    """Update a client"""
    client_service = ClientService(ctx.obj['clients_table'])

    clients_list = client_service.list_clients()
    client = [client for client in clients_list if client['uid'] == client_uid]

    if client:
        client = _update_client_flow(Client(**client[0]))
        client_service.update_client(client)

        click.echo('Client updated')
    else:
        click.echo('Client not found')

    def _update_client_flow(client):
        click.echo('Leave empty if you don\'t want to modify a value')

        client.name = click.prompt('New name', type=str, default=client.name)
        client.company = click.prompt('New company',
                                      type=str,
                                      default=client.company)
        client.email = click.prompt('New email',
                                    type=str,
                                    default=client.email)
        client.position = click.prompt('New position',
                                       type=str,
                                       default=client.position)

        return client
예제 #6
0
def create(ctx, name, company, email, position):
    """Crete a new client."""
    client = Client(name, company, email, position)
    client_service = ClientService(
        ctx.obj['clients_table']
    )  # Del contexto saco el nombre de la tabla. Inicializo los servicios, con su respectiva tabla, es decir, paso datos del cliente

    client_service.create_client(client)  # Creo el cliente
예제 #7
0
    def setUp(self):
        secret = uuid.uuid4()
        client = Client(secret=secret)
        client.save()

        self.secret = secret
        self.client_id = client.id
        self.client = client
예제 #8
0
def create(ctx, name, company, email, position):
    """Creates a new client"""
    client = Client(name, company, email, position)
    client_service = ClientService(ctx.obj['clients_table'])

    client_service.create_client(client)

    # Listing clients after create one
    ctx.invoke(list)
예제 #9
0
 def save(self, commit=True):
     user = super(UserCreateForm, self).save(commit=False)
     user.first_name = self.cleaned_data["type"]
     if commit:
         user.save()
     if user.first_name=="client":
         client = Client(name=self.cleaned_data['username'],client_id=user.id)
         client.save()
     return user
예제 #10
0
def update(ctx, client_uid):
    """ Updates a client """
    client_service = ClientService(ctx.obj['clients_table'])
    client = [client for client in client_service.list_clients() if client['uid'] == client_uid]
    if client:
        client = _update_client_flow(Client(**client[0]))
        client_service.update_client(client)
        click.echo('Cliente updated')
    else:
        click.echo('Client not found')
예제 #11
0
def delete(ctx, client_uid):
    """Delete the information of a client"""
    client_service = ClientsServices(ctx.obj['clients_table'])
    client_list = client_service.list_clients()

    client = [client for client in client_list if client['uid'] == client_uid]

    if client:
        client_service.delete_client(Client(**client[0]))
        click.echo( 'The client was deleted')
예제 #12
0
def create(ctx, name, company, email, position):
    """Create a new client"""  #esto es un DocString (documentacion de la opcion)
    #8.- ahora inicializamos un cliente (creamos una instancia de Client) con todos
    #  sus parametros excepto uid y dejamos que uuid4 lo genere por nosotros
    client = Client(name, company, email, position)
    #9.- aqui creamos una instancia de los setvicios de cliente y en el contexto le pasamos el nombre de la tabla
    client_service = ClientService(ctx.obj['clients_table'])
    #10.-ahora de la instancia de ClientServices recien creado ejecutamos su unico metodo ( hasta ahora)
    # create_client y le pasamos la referencia de nuestro cliente y no s vamos a pv.py para declarar el nombre de
    # la tabla o archivo que vamos a utilizar
    client_service.create_client(client)
예제 #13
0
def update(ctx, client_uid):
    """Update a client"""
    client_service = ClientService(ctx.obj["clients_table"])
    client_list = client_service.list_client()
    client = [client for client in client_list if client["uid"] == client_uid]
    if client:
        clientss = _update_client_flow(Client(**client[0]))
        client_service.update_client(clientss)
        click.echo("Client updated")
    else:
        click.echo("Client not found")
예제 #14
0
def add(request):
    if (request.method == 'POST'):
        name = request.POST['name']
        email = request.POST['email']

        client = Client(name=name, email=email)
        client.save()

        return redirect('/list')
    else:
        return render(request, 'add.html')
예제 #15
0
def delete(ctx, id):
    """Delete a client"""
    client_service = ClientService(ctx.obj['file_clients'])
    clients = client_service.list_clients()
    client = [client for client in clients if client['uid'] == id]
    if client:
        client_service.delete_client(Client(**client[0]))

        click.echo('Client deleted')
    else:
        click.echo('Client not found')
예제 #16
0
def delete(ctx, client_uid):
    """Deletes a client"""
    client_service = ClientService(ctx.obj['clients_table'])
    client_list = client_service.list_clients()
    client = [client for client in client_list if client['uid'] == client_uid]
    if client:
        client = Client(**client[0])
        client_service.delete_client(client)
        click.echo('Client deleted')
    else:
        click.echo('ID not in list')
예제 #17
0
    def initial_load(self):
        # Add bikes
        Bike(make='Vairo', model='Mountain', serial_number='V001'),
        Bike(make='Vairo', model='Street', serial_number='V002'),
        Bike(make='Argon', model='Mountain', serial_number='A001'),
        Bike(make='Argon', model='Racing', serial_number='A002')

        # Add rental types
        rental_types = [('hour', 5.0), ('day', 20.0), ('week', 60.0)]
        for unit, price in rental_types:
            RentalType(unit_of_measure=unit, price=price)

        # Add promotion
        Promotion(discount_pct=30.0,
                  min_rentals_to_apply=3,
                  max_rentals_to_apply=5)

        # Add clients
        Client(first_name='John', last_name='Frusciante'),
        Client(first_name='Serj', last_name='Tankian')
예제 #18
0
    def mutate(self, info, name, id, nit):
        try:
            client = Client.objects.get(pk=id)
            client.name = name
        except:
            client = Client(name=name)

        if nit is not None:
            client.nit = nit

        client.save()
        return ClientMutation(client=client)
예제 #19
0
def delete(ctx, client_uid):
    """Delete a client"""
    client_service = ClientServices(ctx.obj['clients_table'])
    client_list = client_service.list_clients()

    client = [client for client in client_list if client['uid'] == client_uid]

    if client:
        client_service._delete_client(Client(**client[0]))
        click.echo('Remove it')
    else:
        click.echo('Client not found')
예제 #20
0
def update(ctx, id):
    """Update a client"""

    client_service = ClientService(ctx.obj['file_clients'])
    clients = client_service.list_clients()
    client = [client for client in clients if client['uid'] == id]
    if client:
        client = _update_client_flow(Client(**client[0]))
        client_service.update_client(client)

        click.echo('Client updated')
    else:
        click.echo('Client not found')
예제 #21
0
def update(ctx, client_uid):
    """Updates a client"""
    client_service = ClientService(ctx.obj['clients_table'])

    client = _find_client(client_uid)

    if client:
        client = _update_client_flow(Client(**client[0]))
        client_service.update_client(client)

        click.echo('Client updated')
    else:
        click.echo('Client not found')
예제 #22
0
def delete(ctx, client_uid):
    """Delete a client"""
    client_service = ClientService(ctx.obj["clients_table"])

    clients = client_service.list_clients()

    client = [client for client in clients if client['uid'] == client_uid]

    if client:
        client_service.delete_client(Client(**client[0]))
        print("Client deleted")
    else:
        click.echo("Client not found")
예제 #23
0
def create(context, name, company, email, position):
    """Creates a new client"""
    oClient = Client(name, company, email, position)
    #print(context.obj["clients_table"])
    #print(dir(oClient))
    #pprint(vars(oClient))
    #print(os.path.realpath(__file__))
    #sys.exit()
    sPathFile = context.obj["clients_table"]
    # print("File to open: {}".format(sPathFile))
    client_service = ClientService(sPathFile)
    # pprint(client_service)
    client_service.create_client(oClient)
예제 #24
0
def update(ctx, client_uid):
    """Updates a clients"""
    client_service = ClientService(ctx.obj['clients_table'])
    client_list = client_service.list_clients()
    client = [client for client in client_list if client['uid'] == client_uid]
    if client:
        #flujo de actualizaciones
        client = _updated_client_flow(Client(**client[0]))
        client_service.update_clients(client)

        click.echo('Client updated')
    else:
        pass
        click.echo('Client not found')
예제 #25
0
def update(ctx, client_uid):
    """Updates a client"""
    client_service = ClientService(ctx.obj['clients_table'])
    client_list = client_service.list_clients()
    client = [client for client in client_list if client['uid'] == client_uid]

    if client:
        client = _update_client_flow(
            Client(**client[0])
        )  # paso instancia de cliente, con el elemento 0, al ser un unco elemento que hace match
        client_service.update_client(client)
        click.echo('Client Updated')  # Si existe lo actualiza
    else:
        click.echo('Client not found')
예제 #26
0
def update(ctx, client_uid):
    """Update a client"""
    client_service = ClientService(ctx.obj['clients_table'])
    
    client_list = client_service.list_clients()

    client = [client for client in client_list if client['uid'] == client_uid]
    
    if client:
        client = _update_client_flow(Client(**client[0]))
        client_service.update_clients(client)
        print("Client updated")
    else:
        click.echo("Client not found")
예제 #27
0
def delete(context, client_uid):
    """Deletes a client"""
    oClientServ = ClientService(context.obj["clients_table"])
    lstClient = oClientServ.list_clients()
    dicClient = [
        dicClient for dicClient in lstClient if dicClient["uid"] == client_uid
    ]

    if dicClient:
        oClient = Client(**dicClient[0])
        oClientServ.delete_client(oClient)
        click.echo("Client {} {} deleted!".format(oClient.name, [oClient.uid]))
    else:
        click.echo("Client not found")
예제 #28
0
def delete(ctx, client_uid):
    """Deletes a client"""
    client_service = ClientService(ctx.obj['clients_table'])
    client_list = client_service.list_clients()
    client = [client for client in client_list if client['uid'] == client_uid]

    if client:
        client_to_delete = _delete_client_flow(Client(**client[0]))

        if client_to_delete:
            client_service.delete_client(client_to_delete)
            click.echo('Client deleted successfully')
        else:
            click.echo('Aborted')
예제 #29
0
def update(ctx, client_uid):
    "Update client information"
    client_service = ClientsServices(ctx.obj['clients_table'])
    client_list = client_service.list_clients()

    client = [client for client in client_list if client['uid'] == client_uid]

    if client:
        client = _updated_client_flow(Client(**client[0]))
        client_service.update_client(client)

        click.echo('Client updated')
    else:
        click.echo( 'Client not found')
예제 #30
0
 def load_clients(self)   :      
     file=open(self.file_clients,'r')
     var = json.load(file)
     clients = []
     for d in var:
         name = str(d.get("name"))
         company = str(d.get("company"))
         email = str(d.get("email"))
         position = str(d.get("position"))
         uid = str(d.get("uid"))
         client = Client(name, company, email,position,uid)
         clients.append(client)
     self.clients = list(clients)    
     file.close()